a comparison of mechanisms for improving tcp performance
play

A Comparison of Mechanisms for Improving TCP Performance over - PowerPoint PPT Presentation

A Comparison of Mechanisms for Improving TCP Performance over Wireless Links Hari Balakrishnan Venkata N. Padmanabhan Randy H. Katz University of California at Berkeley Srinivasan Seshan IBM T. J. Watson Research Center SIGCOMM


  1. A Comparison of Mechanisms for Improving TCP Performance over Wireless Links Hari Balakrishnan Venkata N. Padmanabhan Randy H. Katz University of California at Berkeley Srinivasan Seshan IBM T. J. Watson Research Center SIGCOMM ‘96, Stanford, CA August 30, 1996

  2. Outline • Motivation • Description of proposed solutions • Objectives • Experimental methodology • Results and analysis • Conclusions • Future work

  3. TCP over Wireless Links • Wireless links are inherently error-prone – fades, noise, attenuation – errors often happen in bursts • Difficult for the TCP sender to distinguish wireless losses from buffer overflows – incorrect invocation of congestion control in response to wireless losses • Error bursts often lead to coarse timeouts • Sender retransmission is the only option – inefficient use of network bandwidth

  4. WaveLAN Packet Errors Distance (feet) 1.000 0 50 100 150 Packet ErrorRate 0.100 0.010 0.001 0.000 • Packet errors versus distance from base station • 2 Mbps AT&T WaveLAN, 1400-byte packets • Taken from Nguyen et al. [ NKNS96 ]

  5. Scenario Base Station D Sender D A D A Mobile Host

  6. Proposed Solutions • Reliable link-layer protocols – error-correcting codes: hardware implementation, overhead even when no losses, not very effective with long error bursts – local retransmission • End-to-end protocols – selective acks, explicit loss notification • Split-connection protocols – separate connections for wired path and last wireless hop

  7. Reliable Link-Layer Protocols • Local retransmision over wireless link ( LL ) – more aggressive retransmission than TCP – bandwidth not wasted on wired links • Snoop [ BSAK95 ] ( LL-TCP-AWARE ) – base station caches unacknowledged packets – uses TCP acks to determine missing packets – local retx. with suppression of duplicate acks – per-connection state at base station is soft • Addition of selective acks yields LL-SACK and LL-STCP-AWARE

  8. End-to-End Protocols • TCP-Reno ( E2E ) • SMART selective acks [ KM96 ] ( E2E-SACK ) – ack includes sequence number of data packet that triggered it – sender can determine lost transmissions provided packets are not reordered • Explicit loss notification ( E2E-ELN ) – acks contain a flag indicating wireless loss – loss recovery without congestion control

  9. Split-Connection Protocols • Separate connections for wired path and wireless hop ( SPLIT) – TCP sender does not deal with wireless losses – sender at base station does retransmission – per-connection state at base station is hard – example: Indirect-TCP [BB94] • Specialized protocol for wireless connection ( SPLIT-SACK ) – selective acks – example: [YB94]

  10. Goals • Evaluate the different protocols on a uniform platform – importance of TCP-aware link layer – usefulness of selective acks and explicit loss notifications – importance of splitting the connection to effectively shield the sender from wireless losses • Metrics – throughput – goodput: both on wired and wireless links

  11. Experimental Methodology 1400 byte packets Sender Base Station Mobile Host 16 Internet hops 2 Mb/s AT&T WaveLAN acks • LAN wired path: 10 Mb/s Ethernet • WAN wired path: 16 Internet hops across the US; T1 bottleneck link; no congestion • Poisson-distributed bidirectional errors (with a mean rate of 1 every 64 KB) • 8 KB and 32 KB socket buffers, 2 MB transfers • Instrumented BSD/OS kernel to record TCP events

  12. Results: Link-layer 1.4 1.2 Throughput (Mbps) 1 0.8 LAN 0.6 WAN 0.4 0.2 0 LL LL-TCP-AWARE LL-SACK LL-STCP-AWARE • With no losses: LAN: 1.5 Mbps, WAN: 1.35 Mbps • TCP-awareness – 13% better throughput in LAN, 30% in WAN • Selective acks – 8% higher throughput in LAN, 13% in WAN

  13. Analysis: Link-layer Congestion Window (KB) 60 LL-TCP-AWARE 50 40 30 20 10 LL 0 0 10 20 40 50 70 80 30 60 Time (sec) • LL retx. does not prevent out-of-order packets • TCP fast retx. causes sender window to fluctuate Suppressing duplicate acks prevents sender from invoking fast retransmission and results in good performance

  14. Results: End-to-End 1.4 Throughput (Mbps) 1.2 1 LAN 0.8 WAN 0.6 0.4 0.2 0 E2E E2E-SACK E2E-ELN • E2E (TCP Reno) – coarse timeouts reduce throughput to 50% of optimal in LAN, 25% in WAN – wireless goodput is optimal because of conservative retransmissions • SMART and ELN : significantly better throughput

  15. Analysis: ELN Congestion Window (KB) 60 50 40 E2E-ELN 30 E2E 20 10 0 0 50 100 150 200 250 Time (sec) ELN helps maintain a larger average congestion window size, yielding better throughput

  16. Results: Split-Connection 1.4 Throughput (Mbps) 1.2 1 LAN 0.8 WAN 0.6 0.4 0.2 0 SPLIT SPLIT-SACK • Specialized protocol for wireless connection (SPLIT-SACK) offers a significant benefit • Throughput with SPLIT-SACK is 5-10% lower than LL-TCP-AWARE

  17. Analysis: Split-Connection Congestion Window (KB) Wired connection 60 50 40 30 Wireless connection 20 10 0 0 20 40 60 80 100 120 Time (sec) Wired connection maintains a large congestion window but slow progress of wireless connection causes sender to stall

  18. Analysis: Split-Connection Advertised Window (KB) WAN experiment 60 50 40 30 20 10 0 120 0 20 40 60 80 100 Time (sec) • Time average of receiver advertised window for wired connection is 14 KB • Bandwidth-delay product is 25-30 KB

  19. Burst Losses Throughput (Mbps) 1.2 LL-TCP-AWARE 0.8 LL-STCP-AWARE 0.4 0 2 4 6 Length of error burst (packets) While LL-TCP-AWARE can recover from small amounts of burst loss, LL-STCP-AWARE uses SACKs to perform better

  20. Conclusions • Link-layer protocols – retransmission without in-order delivery do not prevent adverse interaction with TCP – suppressing duplicate acks helps significantly • End-to-end protocols – SMART selective acks and ELN significantly help recovery from wireless losses • Split-connection protocols – slow progress of wireless connection stalls sender of wired connection

  21. Future Work • Use wireless error traces [ NKNS96 ] • Effectiveness of IETF SACKs in dealing with wireless losses • Other types of networks (e.g., asymmetric bandwidth, multi-hop wireless networks) • Different workloads (e.g., Web accesses) Web page: http://daedalus.cs.berkeley.edu

Recommend


More recommend