), the congestion window is expressed in segments, and through t
, the time at which half of the ssthresh value γ is reached, we use the following rule for a slow start phase:
By expressing the value
of the congestion window in MSS units, the cwnd update rules for each ACK reception are given by
We will show in the simulation that this kind of increase function, called an S-function, can avoid multiple packet losses owing to the known problem of a slow start overshoot by reducing its increasing window rate around the network BDP value.
- 3.2 Congestion avoidance behavior
During the congestion avoidance phase, the A-LIAD protocol performs a logarithmic increase step, adjusting its increasing rate adaptively according to its RTT after a delay-based max-probing step, followed by an adaptive decrease step when a packet loss is detected based on the reception of three consecutive duplicate ACKs.
For a logarithmic increase as the first step in the congestion avoidance phase, the maximum window size,
, should be determined. The only information we can use to predict an impending congestion and the resulting occurrence of a packet loss is a delay. Packet delays increase abruptly just before a loss, although they change very slowly even when network congestion increases
. When the ratio of the current RTT to the minimum RTT is smaller than the threshold
, the congestion window increases rapidly following a logarithmic increase with an increasing factor
= 2 since this region can be considered far from the severe congestion level. On the other hand, the congestion window increases slowly with a linear increase when the delay ratio becomes larger than the threshold since the congestion loss is impending. From the simulation,
= 1.93 gives the best results, and thus this value is used throughout the simulation. The window update rule for each ACK reception is presented in (3).
After determining the maximum window size,
, through the delay-based max-probing step, the protocol enters an adaptive logarithmic increase step after reducing the window through the decreasing parameter,
Thus, the protocol starts the adaptive logarithmic increase step from (1-
and increases the window until a packet loss occurs. We call the time period between the last packet loss and current packet loss the congestion epoch. As shown in
, during each congestion epoch, the congestion window increases from (1-
) with the elapsed time since the last packet loss occurred, the congestion window is expressed in segments as
denotes the time when the last packet loss takes place. Note that the increasing rate is governed by the parameter
. Different from the existing protocols adopting a logarithmic increase with a fixed increasing rate of
=2, which leads to a binary increase
, we adaptively change the increasing parameter
in the RTT function. Increasing parameter should be higher, and thus the protocol should be able to increase the window faster as the RTT becomes longer such that consequently the protocol can provide good RTT fairness when flows with different RTTs are competing in the same bottleneck link. The method for determining the value of
in terms of a flow's RTT is detailed in section 3.
We need to give the per ACK increment rules according to the window increasing function in (4) to react to each ACK reception. We derive the total number of packets sent in the k-th RTT,
, and then convert this number into the per-ACK increment.
Equation (5) shows the per-RTT increment rule of cwnd. Now, we can then derive the per-ACK increment rules for the i-th ACK reception as follows
For an adaptive decrease of the congestion window upon a packet loss event happening after entering an adaptive logarithmic increase phase, A-LIAD takes the network congestion level into account in a similar way as H-TCP. Since it is difficult to assume that the bottleneck buffer size is equal to the bandwidth-delay product in a high-speed network, setting the decrease parameter as
= 0.5 is not practical. Therefore, we adopt an adaptive decrease mechanism such that the throughput is matched before and after a decrease, and decrease parameter
can be calculated as in (7).
are the minimum and maximum RTTs experienced by the flow, respectively.
- 3.3 Analysis of the growth function in CA
This section analyzes A-LIAD's growth function during the congestion avoidance phase, as indicated in
. If the increasing parameter
of all flows is the same regardless of their RTTs, the duration of the congestion epoch for a short RTT flow will be shorter than that for a long RTT flow. For this reason, the window of a long RTT flow will increase slower than that of a short RTT flow, and therefore the RTT fairness characteristic worsens.
Window dynamics of two flows with different RTTs
The basic concept of A-LIAD is to adjust the increasing parameter
in terms of the RTT. The window growth function of A-LIAD increases more aggressively with a higher
, yielding a faster increase. Therefore, if
can be adjusted to be proportional to the RTT, it can guarantee RTT fairness between flows with different RTTs, and provide a significant advantage for the protocol to be used in recent high BDP networks with wireless links. To the best of our knowledge, this property is unique, and the existing logarithmic increase protocols cannot provide this characteristic since they adopt a fixed increasing parameter
= 2, leading to the same movement as a binary increase. This is the main point of using A-LIAD.
The objective here is to determine α in the RTT function, and to this end, the window dynamics of A-LIAD are analyzed.
When the congestion window increases from (1-
, the total number of RTTs,
, within a congestion epoch is
and the throughput
of the increasing period,
, can be computed by
denotes the total number of TCP segments sent in the period,
In (9), the response function of the protocol, which represents the average sending rate during a congestion epoch, needs to be independent of the round-trip time. For this purpose, we have to select the value of
that can absorb the effect of the RTT so that each congestion epoch has the same duration of time regardless of its RTT. In other words, we have to be able to reduce the duration to a certain level by adjusting the
value according to the RTT when the RTT of a flow is long. This condition derives the following equation.
) denote the
values when their increasing factors are
We need to decide how much we should reduce the congestion epoch duration according to the RTT, and therefore determine the reference levels to which we want to reduce the congestion epoch duration. In A-LIAD, we try to keep the performance of LIAD when the RTT is 75 ms, and thus
= 2 and
= 0.075. With the reference values, we can reduce (10) into the following form:
is the function of
, and thus this equation is difficult to solve in a closed form. To construct a mathematical function for
, we use the curve fitting method, and as a consequence, derive
as the function of the RTT.
4. Performance Evaluation
- 4.1 Network model
This section first defines the network model for an NS-2 simulation. Several performance metrics, including goodput, fairness, and friendliness, are then defined for evaluations under different topologies in heterogeneous wireless networks.
A network topology is shown in
. The satellite TCP connections consist of wired links followed by a satellite link, while the wired background traffic uses entirely wired paths. All connections share an R1-R2 bottleneck link, whose bandwidth was deliberately limited to 10 or 50 Mbps according to the metrics.
Network model used for the simulation
- 4.2 Start-up performance
In this section, we evaluate the ability of each TCP variant to exploit the available bandwidth of a GEO satellite network under the most favorable conditions (i.e., in the absence of congestion owing to wired cross traffic and wireless link losses). To evaluate the start-up dynamics, the throughput in
is measured at different elapsed times.
Throughput performance at the start-up of a GEO satellite connection
As a general comment, all protocols proposed for a high-speed and long-distance network present a fast exploitation of bandwidth during a start-up duration of 30 sec. CUBIC, BIC, STCP, and HSTCP have the highest throughput during the start-up phase. While the proposed A-LIAD has the second highest throughput during the start-up, it also has about 80% of the bandwidth, which is an acceptable level since the difference between CUBIC and A-LIAD is about 3% of the bandwidth.
We also show the congestion window dynamics of several TCP protocols in
to demonstrate how to respond at the start-up. In particular, CUBIC operates at the network capacity level, including the link capacity and network buffer, since its decrease factor β takes a smaller value than other variants. Moreover, note that the SACK option is enabled for all variants such that multiple losses during a slow-start phase can be nearly recovered within a few rounds. Without the SACK option, which was not originally included in the variants, the start-up performance would suffer from multiple losses during a slow-start phase.
Comparison of cwnd dynamics at a start-up
To further investigate the start-up performance in terms of the overshooting problem during a slow-start phase, let us examine the cwnd dynamics given in
. It is known that standard TCP has an overshooting problem during a slow-start phase since its exponential increase is so aggressive that cwnd becomes almost twice the BDP, causing multiple losses and thus many retransmissions and timeouts. The hybrid scheme adopted by A-LIAD tries to reduce the increasing rate at around ssthresh estimated in the initial stage of the connection by introducing a logarithmic increase triggered after the second half of ssthresh. From the simulation evaluation, A-LIAD does not experience an overshooting during the SS phase and enters the CA phase at the proper level, as shown in
(a), while TCP-W and CUBIC are shown to experience multiple window reductions after the end of the SS phase in
(b). If the SACK option is not enabled for the simulation, the performance of TCP-W and CUBIC during the start-up phase will be affected by these multiple losses more severely than the results in
(b). This property of the hybrid scheme leads to the avoidance of multiple losses even without the SACK option. This becomes important for short transfer flows since they make up more than 70% of Internet traffic.
Start-up performance of A-LIAD (a) and the comparison with other variants (b)
- 4.3 Fairness
In this section, we conduct simulations in the same multiple flow environment with C = 50 Mbps RTT = 100 ms, and varying PERs of 0%, 0.1%, and 1% in order to ensure the intra-fairness property in the presence of packet losses. Even if some flows take more than max fair rate, as shown in
, most flows share almost an equal amount of bandwidth on average over each PER level, and Jain’s fairness index of each case is around 99.5%.
Intra-fairness: Throughput of 6 competing A-LIAD flows in terms of PER
Next, we evaluate the RTT fairness of the proposed A-LIAD. One of the design goals is for A-LIAD to have less sensitivity to a long RTT by adapting increasing factor α proportionally to the RTT. A simulation was performed with a single flow at C = 10 Mbps for various RTTs, and the results are compared with CUBIC in
. Within the range of 50 to 600 msec, the results show that A-LIAD is almost unaffected by the RTT variations.
RTT fairness: throughput performance in terms of RTT.
- 4.4 Impact of packet loss
In this section, the effects of wireless channel errors are investigated. In
, variable PERs are considered for a GEO satellite connection with RTT = 600 msec in the absence of competing flows. A PER value of 0.1% significantly affects all variants, including those designed to be error resilient, such as Westwood. This negative effect is dramatically increased for a very high PER (e.g., 1%). This is mainly due to the slow reopening of cwnd, which is caused by a very long RTT, after the loss recovery phases. Although the utilization of A-LIAD is also affected by the wireless packet loss, resulting in around a 60% bandwidth utilization, A-LIAD maintains the highest throughput in both PER = 0.1% and 1%.
Wireless packet loss impact on throughput
To better highlight this point, we investigated the window size dynamics of the variants in
. While the other variants operate at much below BDP (in this case, 700 packets), A-LIAD works at around a comparatively higher window leading to less sensitivity to a wireless packet loss. This property is mainly due to the logarithmic increase during a lossless period resulting in fast recovery of losses.
Window dynamics of variants in terms of packet loss
- 4.5 Friendliness
To evaluate the friendliness (sometimes called inter-protocol fairness in other papers), we configured five Group B flows to always run the NewReno protocol, while one flow of Group A runs different TCP variants. As stated in section 2, the main reason behind a friendliness evaluation is to ensure the possibility for incremental deployment of the proposed protocol. This means that the proposed protocol should not necessarily be perfectly fair with the most widely implemented TCP, New-Reno. However, its deployment should not degrade the NewReno performance greatly.
Following this observation, we measured the throughput share of Group B flows running the NewReno protocol, and Group A running different protocols, including NewReno and other variants. According to the results presented in
, which are obtained from a simulation with C = 10 Mbps and RTT = 25 msec for 300 sec, HSTCP and CUBIC demonstrate the best friendliness characteristic owing to their TCP mode. On the other hand, STCP and A-LIAD show the worst friendliness property for a short RTT, and they reduce the throughput of the NewReno flows in Group B by 45% and 38%, respectively, while CUBIC reduces the share of NewReno flows by 11%. However, as the delay increases, CUBIC also steals significant bandwidth from the NewReno flows since its aggressiveness, shown in
, has one of the highest values, along with STCP and A-LIAD, in the case of RTT = 600 msec. This is not in the favor of incremental deployment for the current Internet, where most flows are based on the NewReno protocol. However, taking into account that CUBIC is already a part of the OS Linux kernel, and its friendliness is the lowest among all the evaluated protocols, A-LIAD will remain an attractive alternative for high-speed and long-distance networks.
Friendliness with Reno: RTT = 25 ms, PER = 0
Aggressiveness of A-LIAD against Reno in terms of RTT
In this paper, we presented the adaptive logarithmic increase and adaptive decrease algorithm, or A-LIAD, as an alternative to the current TCP congestion control algorithm. We described that the convex curve is not appropriate for the increasing function of the congestion window, and thus proposed a logarithmic increasing function that adaptively adjusts its increasing rate in the RTT function. We defined a new increasing function in the fashion of a logarithm depending on the increasing factor
, which is different from other logarithmic increase algorithms adopting a fixed value of
= 2, leading to a binary increase. A mathematical analysis for the throughput of A-LIAD is represented, and the
value is derived for an RTT function through this analysis. With a modification of the increasing function applied for the CA phase, a hybrid scheme was also presented for a slow-start phase. We used the logarithmic increase function for the second half of a slow-start period, while for the first half period of a slow start, an exponential increase function is used in the same way as standard TCP. From this hybrid scheme, we can avoid an overshooting problem during a slow-start phase even without a SACK option. To verify the feasibility of the algorithm for deployment in a high-speed and long-distance network, several aspects were evaluated through an NS-2 simulation. We performed simulations for the start-up performance, intra-fairness, and inter-fairness as well as the packet loss impacts under different conditions of varying RTT, bandwidth, and PER. From these simulations, we showed that although A-LIAD is not the best option in every aspect, it provides a competitive performance in almost all aspects, especially during a start-up and for a packet loss impact, and thus can be an alternative TCP congestion control algorithm for high BDP networks including satellite networks.
Minsu Shin received his BS and MS degrees in electrical engineering from Korea Aerospace University, Seoul, Korea in 1998 and 2000, respectively, and Ph.D degrees in Computer Networks from Chungnam National University in 2011. Since he joined the Electronics and Telecommunications Research Institute (ETRI) in 2000, he has worked for satellite communication systems and broadcasting systems until now. Now his research interests are satellite communication network design, wireless resource management, wireless TCP and cross-layer enhancement.
Mankyu Park received the B.S. and M.S. degrees, from Kongju National University in 1999 and 2001, respectively. He received the Ph.D. degree in Computer Networks from Chungnam National University in 2011. In 2009, he joined the Electronics and Telecommunications Research Institute (ETRI), where he is a Senior Member of Engineering Staff in Satellite Broadcasting and Telecommunications Convergence Research Team. His research interests include Internet protocols, traffic control, TCP congestion control, performance analysis and mobile communication.
Deockgil Oh received his B.S. degree in Electronics Engineering Department from Seoul National University (SNU) in 1980. He received the M.S. and Ph.D degrees in Electronics Engineering from SNU, Korea, in 1984 and 1996, respectively. He joined ETRI in 1982, where he is currently working as a team leader at Team of Satellite Broadcasting and Communication Convergence. His research interests include wireless access technology, mobile communication and broadcasting system and future generation satellite broadcasting architectures.
Byungchul Kim received the B.S. degree in electronics engineering from Seoul National University in 1988, and M.S. and Ph.D degrees in electronic engineering from Korea Advanced Institute of Science and Technology (KAIST), Korea, in 1990 and 1996, respectively. He is currently a professor at the Department of Information and Communication Engineering of Chungnam National University, Korea since 1999. Also, from 1993 to 1999, he worked as a Research Engineer at the Samsung Electronics. His research interests include computer networks, wireless internet, sensor networks and mobile communications.
Jaeyong Lee received the B.S. degree in Electronics engineering from Seoul National University in 1988, and M.S. and Ph.D degrees in electronic engineering from Korea Advanced Institute of Science and Technology (KAIST), Korea, in 1990 and 1995. He is currently a professor at the Department of Information and Communication Engineering of Chungnam National University, Korea since 1995. Also, from 1990 to 1995, he worked as a research engineer at the Digicom Institute of Information and Communications. His research interests include Internet protocols, traffic control, performance analysis and mobile internet.
Park J. M.
Ahn D. S.
Lee H. J.
“Feasibility of Coexistence of Mobile-Satellite Service and Mobile Service in Cofrequency Bands”
DOI : 10.4218/etrij.10.1409.0066
Kim B. Y.
Bang M. S.
Kim S. H.
“A Study on Feasibility of Dual-Channel 3DTV Service via ATSC-M/H”
DOI : 10.4218/etrij.12.0111.0270
Li V. O. H.
“Satellite-based internet: a tutorial”
IEEE Communications Magazine
DOI : 10.1109/35.910604
“Congestion avoidance and control”
ACM Computer Communication Review
DOI : 10.1145/52325.52356
Internet RFC 6582, The NewReno Modification to TCP’s Fast Recovery algorithm
Internet RFC 2018, TCP Selective Acknowledgment Options
“Modeling TCP throughput: A simple model and its empirical validation”
in Proc. of ACM SIGCOMM
Chang B. J.
Lin S. Y.
Jin J. Y.
“LIAD: Adaptive bandwidth prediction based Logarithmic Increase Adaptive Decrease for TCP congestioncontrol in heterogeneous wireless networks”
DOI : 10.1016/j.comnet.2009.05.010
“Logarithmic window increase for TCP Westwood+ for improvement in high speed, longdistance networks”
DOI : 10.1016/j.comnet.2008.04.018
“Binary increase congestion control for fast long-distance networks”
in Proc. of IEEE INFOCOM
“CUBIC : A new TCP-friendly high-speed TCPvariant”
ACM SIGOPS Operating Systems Review
DOI : 10.1145/1400097.1400105
“TCP Westwood : end-to-end congestion control for wired/wireless networks”
DOI : 10.1023/A:1016590112381
Cessa R. R.
“Measurement Scheme for One-Way Delay Variation with Detection and Removal of Clock Skew”
DOI : 10.4218/etrij.10.0109.0611
Fu C. P.
Liew S. C.
“TCP Veno : TCP enhancement for transmission over wireless access network”
IEEE J. Sel. Areas Commun.
DOI : 10.1109/JSAC.2002.807336
“TCP-Jersey for wireless IP communications”
IEEE J. Sel. Areas Commun.
DOI : 10.1109/JSAC.2004.825989
“Improving TCP performance in integrated wireless communications networks”
DOI : 10.1016/j.comnet.2004.07.006
“Host-to-Host Control for TCP”
IEEE Communications Survey & Tutorials
Third Quarter, Article(CrossRef Link)
DOI : 10.1109/SURV.2010.042710.00114
Akyildiz I. F.
“TCP peach : A new congestion control scheme for satellite IP networks”
IEEE/ACM Trans. Networking
DOI : 10.1109/90.929853
Akuildiz I. F.
“TCP Peach+ : enhancement of TCP Peach for satellite IP networks”
IEEE Communications Letters
DOI : 10.1109/LCOMM.2002.801317
“TCP Hybla: a TCP Enhancement for Heterogeneous Networks”
International Journal of Satellite Communications and Networking
DOI : 10.1002/sat.799
Zabir S. M. S.
“TCP-Cherry : A new approach for TCP congestion control over satellite IP networks”
DOI : 10.1016/j.comcom.2008.03.029
Leith D. J.
Shorten R. N.
“Experimental Evaluation of Cubic-TCP”
in Proc. of Protocols for Fast Long Distance Networks (PFLDnet)
Moon S. B.
Measurement and Analysis of End-to-End Delay and Loss in the Internet
University of Massachusetts Amherst
“Analytical Models for Understanding Space, Backoff and Flow Correlation in CSMA Wireless Networks”
DOI : 10.1007/s11276-012-0474-8