Performance Measurements and Comparison of Modified TCP Control Algorithms Over Rain-Faded Satellite Channels
Performance Measurements and Comparison of Modified TCP Control Algorithms Over Rain-Faded Satellite Channels
Laboratory setting
Laboratory setting
(contd)
We have emulated the satellite link by using the facilities offered by the CNIT National Laboratory for Multimedia Communications in Naples, Italy. The LAN consists of a set of hosts devoted to generate TCP traffic. According to the specific test, up to ten connections can be running at the same time. All packets produced feed the router # 1 (CISCO 3640), which conveys them to a serial V.35 interface, adopting a HDLC protocol at the data link layer. The synchronous data flow is input to a Fairchild SM290 modem (modem # 1), operating in quadrature phase-shift keying (QPSK), at an information rate of 2048 kbit/s, with 3/4 sequential FEC. The outgoing modulated signal is applied to a Channel Simulator (here used as a simple programmable attenuator) and then added to a Gaussian noise, produced by a noise generator. Both the attenuation and noise variance are suitably changed, to reproduce the effects of real world fading as concerns the bit error probability observed at the receiver end.
Laboratory setting
(contd)
The link budget was derived according to the Italsat satellite characteristics (G/T=23 dB at the receiver, under the adopted parameter values). After a delay of 250 ms, the corrupted signal feeds the receiver portion of a second modem, which interfaces with the router # 2. The return channel (i.e., the link connecting the outgoing signal from modem # 2 to the input of modem # 1) introduces again a delay of 250 ms, but it is not affected by errors. Fading attenuation values are taken from the results of the propagation experiment carried out in Ka band on the Olympus satellite by the CSTS (Centro Studi sulle Telecomunicazioni Spaziali) Institute, on behalf of the Italian Space Agency (ASI). The attenuation samples considered were 1second averages, expressed in dB, of the signal power attenuation with respect to clear sky conditions. The adopted patterns are taken from data recorded at the Spino dAdda (Northern Italy) station on September 21 and 23, 1992, respectively.
Fading [dB]
12
10
Time [s]
TCP modifications
We have investigated the behaviour of 3 TCP modifications, and compared it with that of New Reno: TCP Westwood TCP Peach Complete Knowledge Satellite Transport Protocol (CK-STP) The first two introduce modifications to the congestion control mechanism; the third one only acts on the TCP New Reno parametrization, by assuming that the characteristics of the satellite bandwidth pipe are known at the transmitting station and losses are only due to channel errors.
TCP Westwood
The main features of Westwood are the following:
End-to-end, sender-side estimate of the bandwidth B available to a TCP connection and seen at the receiver, obtained by measuring and low-pass filtering the rate of returning ACKs. When 3 DUPACKs are received: ssthresh = (B* RTTmin) / seg_size; cwnd = ssthresh. When a coarse timeout expires: ssthresh = (B* RTTmin) / seg_size; cwnd = 1. When ACKs are successfully received, TCPW increases cwnd according to Reno's congestion control algorithm.
TCP Peach
TCP Peach implements Congestion Avoidance and Fast Retransmit (the same as Reno), and two new algorithms: Rapid Recovery and Sudden Start, which are based on the use of dummy segments, low priority segments generated by the sender as a copy of the last transmitted data packet. If a router is congested, it discards dummy segments first, due to their low priority. On the contrary, the sender interprets the ACKs for dummy segments as the evidence that there are unused resources on the link and, accordingly, it can increase the transmission rate.
Complete Knowledge Satellite Transport Protocol Complete Knowledge (CK-STP) Satellite Transport Protocol (CK-STP)
It follows the TCP New Reno implementation, with the adoption of the SACK option. "Complete Knowledge" refers to the assumed knowledge about the physical characteristics of the satellite link, in terms of propagation delay and channel bandwidth. It assumes that all losses over the satellite link are due exclusively to link errors. A constant transmission window set to the bandwidth-delay product is employed, in order to achieve the maximum channel bandwidth. With respect to the TCP implementation, the slow start phase is no longer entered, and for each received acknowledgement, the congestion window keeps its constant value. As far as the loss detection is concerned, the arrival of only one duplicate acknowledgement is necessary to trigger the recovery phase, which consists of retransmitting the lost data segments. Once the recovery phase has terminated, the protocol continues transmitting with the constant transmission window as set previously. The sender buffer is adjusted according to the bandwidth delay-product.
Complete Knowledge Satellite Transport Protocol (CK-STP) We have used the original fading patterns over a longer time window (900 s), by replicating each sample 3 times, in order to have a longer time scale for observing the TCP reaction. Fading pattern A is milder, whereas B is quite severe, and produces a loss of receiver synchronization for over 100 seconds, starting at 400 s. All graphs are obtained by averaging the results of 5 repeated experiments (under the same fading pattern), in order to increase their statistical significance. In all kernel implementations adopted for the various protocols (except CKSTP) the sender buffer dimension has been left untouched, with respect to the native New Reno implementation for the Linux Kernel 2.4.18 (64 kbytes). The sender buffer is set at 320 kbytes for STP (independently of the number of connections).
Experimental measurements
Throughput (goodput) vs. time of the different TCP implementations with only one connection active over a noisy satellite link (fading pattern A)
250
200
Throughput [kbyte/s]
Westwood 150
New Reno
ST P
Peach
100
50
100
200
300
600
700
800
900
Aggregate throughput vs. time of the different TCP implementations with 2 connections active over a noisy satellite link (fading pattern A).
300 250
Throughput [kbyte/s]
1 00
2 00
3 00
4 00 5 00 T i me [s ]
6 00
7 00
8 00
9 00
Aggregate throughput vs. time of the different TCP implementations with 5 connections active over a noisy satellite link (fading pattern A).
300
250
Throughput [kbyte/s]
200
150
100
50
Westwood
New Reno
ST P
Peach
100
200
300
400
500
600
700
800
900
Time [s]
Throughput vs. time of the different TCP implementations with only one connection active over a noisy satellite link (fading pattern B).
250 Westwood 200 New Reno ST P Peach
Throughput [kbyte/s]
150
100
50
100
200
300
400
500
600
700
800
900
Time [s]
Aggregate throughput vs. time of the different TCP implementations with 2 connections active over a noisy satellite link (fading pattern B).
250 Westwood 200
Throughput [kbyte/s]
Reno
SDR
Peach
150
100
50
100
200
300
600
700
800
900
Aggregate throughput vs. time of the different TCP implementations with 5 connections active over a noisy satellite link (fading pattern B).
250 Westwood 200 New Reno STP Peach
Throughput [kbyte/s]
150
100
50
100
200
300
600
700
800
900
Throughput vs. time of three connections out of 5, measured during the realization of a single experiment with STP, under fading pattern A.
100 90 80
Throughput [kbyte/s]
70 60 50 40 30 20 10
100
200
300
400
500
600
700
800
Time [s]
Throughput vs. time of three connections out of 5, measured during the realization of a single experiment with Westwood+, under fading pattern A.
100 90 80
Throughput [kbyte/s]
70 60 50 40 30 20 10
100
200
300
400
500
600
700
800
Time [s]