An Analysis of TCP Startup over an Experimental DVB-RCS Platform Alberto Gotta, Francesco Potortì, Raffaello Secchi Italian National Research Council (CNR) Istituto di Scienza e Tecnologie dell’Informazione “A. Faedo” (ISTI) Madrid –September 15th 2006 Raffaello Secchi – IWSSC06 Istituto di Scienza e Tecnologie dell’Informazione “A Faedo” Outline • The Skyplex satellite platform • TCP measurement over Skyplex • Focusing on the TCP startup phase – The congestion window model – Transfer time during startup • Consideration on parameters choice • Conclusions Madrid –September 15th 2006 Raffaello Secchi – IWSSC06 Istituto di Scienza e Tecnologie dell’Informazione “A Faedo” Assumptions • High performance in satellite mesh networks – Powerful error-correcting scheme and adaptive modulation and coding (DVB-S2) – High link availability: transmission virtually immune from packet losses for most of time • Share of satellite bandwidth (DVB-RCS) – Demand Assigned Multiple Access (DAMA) schemes used to share uplink channel (CRA, RBDC, VBDC, FCA) Madrid –September 15th 2006 Raffaello Secchi – IWSSC06 Istituto di Scienza e Tecnologie dell’Informazione “A Faedo” Research topics (Motivations) • TCP issues – TCP universally used for reliable data delivery across the Internet – TCP startup phase is critical • The short flows (web, interactive applications, etc.) are concluded within the SlowStart phase • Current DAMA Implementations – Satellite bandwidth allocation schemes do not consider the efficiency of short connection transfers – The long loop delay of satellite links slows down the Slow-Start phase • Bandwidth assigned on the basis of stations’ requests, which in turn depend on the current transmission rate (transmission backlog respectively) • Demand-assignment delay is at least 500 ms on satellite links • Since the throughput of TCP increases at each RTT, the allocated bandwidth is always less than the offered traffic Madrid –September 15th 2006 Raffaello Secchi – IWSSC06 Istituto di Scienza e Tecnologie dell’Informazione “A Faedo” SkyplexTM platform overview • Skyplex Data from Eutelsat – Enables low-cost meshed networks – Support a range of data, television and audio applications • Eutelsat will offer its Skyplex Data service – Ka band transponders on its Hot Bird 6 satellite located at 13° E. – Wide bandwidth • the downlink stream is up to 36 Mb/s from 6 carriers • User Terminal – User terminals can employ small antennas 90 cm – Low-power consumption (2 W SSPAs) – The terminal is a compact unit (30 cm wide by 4.5 cm high) – Low-cost equipment • Skyplex Data bandwidth access – Permanent bandwidth assignment – Multiple access mode (Demand Assignment Multiple Access) Madrid –September 15th 2006 Raffaello Secchi – IWSSC06 Istituto di Scienza e Tecnologie dell’Informazione “A Faedo” Test-bed platform DVB-RCS DVB-S LAN Ethernet LAN Ethernet testbed specifications channel capacity active stations available bandwidth 2.1 Mb/s Medium Access Control TDMA/TDM • The bandwidth allocation uses a DAMA scheme • It implements a variant of Rate Based Dynamic Capacity (RBDC) 18 ~1.2 Mb/s slots per frame 48 frame duration 273 ms bandwidth granularity 44 kb/s guaranteed bandwidth 44 kb/s mean RTT 840 ms Madrid –September 15th 2006 • Raffaello Secchi – IWSSC06 Istituto di Scienza e Tecnologie dell’Informazione “A Faedo” Experiment Setup • Linux 2.6 TCP/IP stack – Windows scale option enable net.ipv4.tcp_window_scaling – Sack option was enabled/disabled net.ipv4.tcp_sack – Transmitting and receiving buffer are sized big enough not to limit TCP throughput • FreeBSD 5.4 TCP/IP stack – Uses standard settings Madrid –September 15th 2006 Raffaello Secchi – IWSSC06 Istituto di Scienza e Tecnologie dell’Informazione “A Faedo” Linux 2.6 without SACK • The bottleneck buffer fills up at the end of the Slow Start phase – many packet losses when the buffer overflows Madrid –September 15th 2006 • The subsequent Fast Recovery phase is not fast enough to avoid a timeout • TCP retransmits a high number of already transmitted packets, whose duplicate ACKs do not contribute to increasing the congestion window Raffaello Secchi – IWSSC06 Istituto di Scienza e Tecnologie dell’Informazione “A Faedo” TCP Newreno on DAMA Madrid –September 15th 2006 Raffaello Secchi – IWSSC06 Istituto di Scienza e Tecnologie dell’Informazione “A Faedo” Linux 2.6 with SACK • Linux with SACK behaves much better – The loss recovery is fast thanks to SACKs Madrid –September 15th 2006 • The resulting throughput is, on average, as fast as the channel permits • The flow of packets is very irregular Raffaello Secchi – IWSSC06 Istituto di Scienza e Tecnologie dell’Informazione “A Faedo” FreeBSD 5.4 stack • FreeBSD estimates available bandwidth using ACK interarrival times – the estimate is used to cap the rate of packet transmission Madrid –September 15th 2006 • A single connection occupies almost all the channel capacity • The packet rate is extremely regular without even a loss • The RTT is only slightly greater than the minimum. Raffaello Secchi – IWSSC06 Istituto di Scienza e Tecnologie dell’Informazione “A Faedo” Focusing on TCP Startup • Relevant parameters observed during TCP startup – Initial Window (IW) • Linux 2.6 sets the Initial Window to three packets according to the specification of RFC 3390 • FreeBSD 5.4 conservatively sets the IW to one packet – Round Trip Time (RTT) – Allocation Delay • the delay between making a request and receiving the respective allocation – Delayed ACK Madrid –September 15th 2006 Raffaello Secchi – IWSSC06 Istituto di Scienza e Tecnologie dell’Informazione “A Faedo” TCP Startup Comparison FreeBSD TCP Linux TCP bandwidth limited increasing phase • We analyze the first 20 sec of transmission – • about 1.5MB are transmitted during this phase, which is enough for most interactive applications The only significant difference between TCP flavors during startup is the Initial Window Madrid –September 15th 2006 Raffaello Secchi – IWSSC06 Istituto di Scienza e Tecnologie dell’Informazione “A Faedo” Basic DAMA scheme • Each station periodically submits to a master station an allocation request based on the incoming traffic rate or traffic backlog at the terminal – The time interval between subsequent allocation requests is called request period (Tr) • The master station collects the request of all the active stations, computes a burst time plan and broadcasts it back to the terminals – The allocation period (Ta) is the time interval between subsequent allocation assignments • When the stations receive the burst time plan, they get to know their allocation – The allocation delay is the overall time between making a request and receiving the corresponding allocation Madrid –September 15th 2006 Raffaello Secchi – IWSSC06 Istituto di Scienza e Tecnologie dell’Informazione “A Faedo” Timeline for DAMA scheme mean request period (Tr/2) half RTT (t/2) mean allocation period (Ta/2) half RTT (t/2) master the terminal issues the request the request is received the request is delivered the allocation t is delivered the allocation is received terminal Average allocation delay Ta Tr Da t 2 2 Madrid –September 15th 2006 Raffaello Secchi – IWSSC06 Istituto di Scienza e Tecnologie dell’Informazione “A Faedo” Interaction of DAMA with TCP • During the Slow Start phase the growth of the segment transmit rate depends on the ACK reception rate • The ACK reception rate depends on the rate the other TCP end receives the segments, that is, on the bandwidth allocation • When using DAMA, the bandwidth allocation received by the earth station has been computed based on the segment transmit rate that the TCP connection had an allocation delay before (at least 500 ms) • Thus, the larger the allocation delay, the slower the growth of the congestion window – DAMA delays the time the bandwidth is available to TCP connections, which in turns delay congestion window growth Madrid –September 15th 2006 Raffaello Secchi – IWSSC06 Istituto di Scienza e Tecnologie dell’Informazione “A Faedo” Modeling TCP startup on DAMA • We model the performance of TCP during startup on a rate-based DAMA • We derive the expression of the congestion window evolution as a function of the initial window, RTT and allocation delay • We show that the congestion window evolution is similar to the one without DAMA, but with an increased RTT • Using the expression for the congestion window, we estimate the connection completion time for short flows Madrid –September 15th 2006 Raffaello Secchi – IWSSC06 Istituto di Scienza e Tecnologie dell’Informazione “A Faedo” Model Assumptions • Single greedy connection • No losses due to corruption – ideal channel conditions (e.g. clear sky) • No throughput limitations – receiving and transmitting buffer sufficiently large • Satellite link idle before connection starts • Slow Start threshold big enough that the Slow Start phase does not end before the channel is saturated • No delayed ACK – Modern TCP implementations disable DelACK during startup – Even if DelACK is enabled, the ACK inter-arrival time is larger that DelACK retransmission timeout Madrid –September 15th 2006 Raffaello Secchi – IWSSC06 Istituto di Scienza e Tecnologie dell’Informazione “A Faedo” Congestion Window Equation • During Slow-Start phase the congestion window growth is equal to the ACK reception rate dw(t ) da (t ) dt dt w(t) congestion window in segments a(t) number of ACK in [0:t] • If enough space is available on the channel, the resource scheduler assign the requested bandwidth dw(t ) da(t ) w(t T ) k dt dt t ACK rate Madrid –September 15th 2006 T t Da Requested/Assigned bandwidth Raffaello Secchi – IWSSC06 Istituto di Scienza e Tecnologie dell’Informazione “A Faedo” Model Analysis • We solve this equation using a second order approximation of its Laplace transform and we obtain a closed form representation of congestion window w(t ) 2 s T 2 W0 s2T s1T s 2T e 0 t ts SN • • The expression is valid for 0 < t < ts, where ts is the time when the TCP rate equals the available capacity m For t > ts the ACK rate is capped by m and the growth of the congestion window depends on the exact implementation time ts Madrid –September 15th 2006 Raffaello Secchi – IWSSC06 Istituto di Scienza e Tecnologie dell’Informazione “A Faedo” Equivalent RTT for rate-based DAMA • This expression of w(t) just derived is equivalent to having a fixed allocation policy but with increased RTT: Equivalent RTT t eq t 1 / 2 1 3 / 2 2 3/ 2 17 / 4 T t – The equivalent RTT is an increasing function of ρ, that is, of allocation delay – Rate-based DAMA slows down the Slow Start phase of TCP connections – This effect can be partially compensated by requesting more bandwidth for starting connections Madrid –September 15th 2006 Raffaello Secchi – IWSSC06 Istituto di Scienza e Tecnologie dell’Informazione “A Faedo” Transfer Time During Startup • From the expression for w(t), we can estimate the amount of data N(t) transferred in the time interval [0:t] • By integrating the TCP throughput (w(t)/t, we obtain the time D required to transmit N packets as a function of the initial window W0, the round trip time t and the value of T 1 N W0 s2T s2T s1T ln W0 2 s2T s D 2 1 N N (t ) t s s m Madrid –September 15th 2006 N N (t s ) N N (t s ) Raffaello Secchi – IWSSC06 Istituto di Scienza e Tecnologie dell’Informazione “A Faedo” Transfer Time Comparison actual values max DAMA performance constant allocation Madrid –September 15th 2006 Raffaello Secchi – IWSSC06 Istituto di Scienza e Tecnologie dell’Informazione “A Faedo” Consideration on Parameter Choice • The harmful effect of DAMA on TCP startup could be compensated by assigning more bandwidth to a starting TCP connection – Ideally, a DAMA scheduler should provide enough bandwidth to double the congestion window every RTT • The terminal requests k times the measured incoming traffic rate when detects a new connections is initiated from that station • Using our model, we determine the condition over k allowing to exploit the assigned bandwidth share without buffering and without wasting channel resources – In the case of Skyplex, we estimate k=4.8 Madrid –September 15th 2006 Raffaello Secchi – IWSSC06 Istituto di Scienza e Tecnologie dell’Informazione “A Faedo” Connection Duration Madrid –September 15th 2006 Raffaello Secchi – IWSSC06 • The completion time improves with increasing k (down to a value of k near to 4.8) • Improvements are most significant for bigger data volume Istituto di Scienza e Tecnologie dell’Informazione “A Faedo” Assigned Slot Utilization Madrid –September 15th 2006 Raffaello Secchi – IWSSC06 • The channel utilization worsens with increasing k • Worsening is most significant for smaller volume of data Istituto di Scienza e Tecnologie dell’Informazione “A Faedo” Conclusions • Experimental and simulative studies on Skyplex Data highlights how rate-based DAMA can significantly slow down the transmission of small volume of data using TCP • We presented an analytical modeling of this phenomenon – we show it is similar to what would happen on a traditional fixed-allocation satellite system if the RTT was increased • A small change in allocation policy can bring significant benefits to short TCP connections in terms of channel utilization • Further studies required in order to modify the allocation algorithm to make it more responsive to starting TCP connections Madrid –September 15th 2006 Raffaello Secchi – IWSSC06 Istituto di Scienza e Tecnologie dell’Informazione “A Faedo”