1 / 43

Solutions for Improving TCP Performance over Emerging Networks

Solutions for Improving TCP Performance over Emerging Networks. K.R.Renjish Kumar kaleelaz@comp Centre for Internet Research. Outline. Introduction Emerging Networks TCP TCP over Emerging Networks Issues Solutions TCP HACK MBM. Introduction. Internet has come a long way with:

aden
Download Presentation

Solutions for Improving TCP Performance over Emerging Networks

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Solutions for Improving TCP Performance over Emerging Networks K.R.Renjish Kumar kaleelaz@comp Centre for Internet Research

  2. Outline • Introduction • Emerging Networks • TCP • TCP over Emerging Networks • Issues • Solutions • TCP HACK • MBM

  3. Introduction • Internet has come a long way with: • Different kinds of networks • increasing number of users • innumerable applications which require better quality of service.

  4. Emerging Networks • Lossy Link networks • Wireless networks like wavelans • Satellite networks • Quality of Service(QoS) model based networks • Integrated Services (IntServ): Provides QoS in a per connection basis • Differentiated Services (DiffServ): Provides QoS for an aggregate flow. Much more scalable compared to IntServ.

  5. Transmission Control Protocol (TCP) • De facto Transport layer Protocol • 95% of data byte share in the Internet • Common applications like Telnet,FTP and HTTP uses TCP

  6. TCP contd… • TCP Header • Sequence Number : the first byte of data in this segment. • Options: For any additional features. • Rate Control • Slow start,fast retransmit,recovery, congestion avoidance. • Segments send equal to the minimum of the sender’s window(cwnd) and receivers window.

  7. Emerging Networks-Lossy Networks • Access Networks are increasingly becoming wireless eg: wavelans • Acts as bottlenecks. Bandwidth limited. • Prone to higher rate of corruption

  8. TCP over Lossy Links … • Issues • performs poorly in lossy links where the rate of corruption of packets are higher • Reason: TCP assumes that loss of packets are due to congestion and not corruption, thus reducing the cwnd and thus reducing the throughput.

  9. Solution • TCP HACK: TCP Header Checksum Option to Improve Performance over Lossy Links. IEEE INFOCOM 2001,Anchorage,Alaska R.K.Balan,B.P.Lee,K.R.R.Kumar,L.Jacob,W.K.G.Seah, A.L.Ananda, IEEE INFOCOM 2001,Anchorage,Alaska

  10. TCP HACK • Key Observations • For most data transfers, the data portion of a TCP packet is much larger than the header portion of the packet (may not be true for interactive traffic) • As such, corruptions are far more likely to occur in the data portion and not the header portion • Given this scenario, can we make use of the intact header to make TCP perform better?

  11. TCP Hack Algorithm contd.. • On receiving this specially marked ACK packet, the sender will know that packet corruption and not congestion has occurred • As such, the sender will retransmit the corrupted packet and will not half its congestion window

  12. Kind=14 Length=4 1’s complement checksum of TCP header and pseudo-IP header Kind=15 Length=6 32-bit sequence number of corrupted segment to resend Header Checksum option TCP Header Checksum option TCP Header Checksum ACK option

  13. Data segment to be sent No Header checksum option enabled? Yes Modifications to the TCP sender Continue as per normal • ) Calculate header checksum of segment • ) Continue as per normal TCP Sender

  14. TCP Receiver Data segment received No TCP segment corrupted? Continue as per normal Yes Header portion corrupted? Yes Discard Packet No • ) Recover sequence number of corrupted segment from header. • ) Generate ‘special’ ACK (option 15) containing the sequence number of the corrupted segment.

  15. 1) Extract sequence number of corrupted segment • ) Selectively retransmit the segment • ) ACK is discarded without further processing ACK Processing ACK segment received No Option 15 present in the segment? Yes Modification to the ACK processing

  16. Note • For TCP HACK to be effective, link layer retransmissions and error recovery should be turned off • Corrupted packets should be sent up to the TCP layer where TCP HACK will do the retransmissions

  17. Error / Delay Box Client Server Experimental test bed Experimental Setup • Implemented into the Linux 2.2.10 kernel • Test bed was set up comprising of 3 machines • Client and server were running TCP HACK • 2 different models were used • Single packet corruption. • Burst corruption with differing burst lengths

  18. 1 2 3 4 Throughput versus percentage packet loss for short latency (10 ms) link with random single packet errors 2 1 3 4 Low Latency Links

  19. Throughput versus percentage packet loss for long latency (300 ms) link with random single packet errors 1 2 3 4 3 1 4 2 High Latency Links

  20. Fig. 7: Average number of slow-starts for long latency link with random single packet errors Number of slow starts

  21. Observations • Both SACK and TCP-HACK are better than NewReno • Hence NewReno was removed from the tests when burst errors were introduced

  22. Burst errors Throughput for 2% burst error for various burst lengths Throughput for 5% burst error for various burst lengths

  23. Throughput versus Time graph for various TCP implementations (5% packet error rate with burst length of 5) Throughput vs Time

  24. Inference • How is TCP HACK doing retransmissions a good idea? • Could help stabilize TCP and prevent it’s RTT calculation from fluctuating widely (especially useful when using a long latency link) • Provides more information to TCP, thus preventing it from unnecessarily timing out • Distinguishes between congestion and corruption • Improves overall TCP performance

  25. Emerging QoS Network Architecture • Differentiated Services (DiffServ) • Provides QoS for aggregate flows using different per hop forwarding behaviours at the core routers. • Basic building blocks of DiffServ • Classifiers • Meters • Markers • Policers

  26. DiffServ Meter Packet Classifier Marker Policer Logical View of a Packet Classifier and Traffic Conditioner

  27. TCP over QoS based Networks • Issues • Bias against connections with long Round Trip Time (RTT) • Reason:Long RTT flows takes longer time to ramp up. • Bias against connections with smaller window sizes • Reason: Smaller windows mean smaller throughput • Protection from unruly traffic like UDP traffic. • Reason: UDP traffic has no rate control mechanism and hence kills TCP traffic.

  28. Solution • A Memory-Based Approach for a TCP-Friendly Traffic Conditioner in DiffServ Networks.to appear in Proc. of the 9th IEEE International Conference on Network Protocols (ICNP 2001), Riverside, California.  K.R.R.Kumar, A.L.Ananda, Lillykutty Jacob

  29. Topology

  30. Memory-Based Marker (MBM) • Key observations • Markers, one of the building blocks of a traffic conditioner play a major role for resource allocation in a DiffServ network. • TCP performance is highly influenced by two parameters, namely RTT, and window size. • Markers are mostly deployed at the edge routers, which cannot easily decide the window size and RTT of the various TCP connections passing through.

  31. What is needed? • Marking algorithm • Least sensitive to both the marker and TCP parameters • Should be transparent to end hosts. • Maintain optimum marking • Tracks the TCP dynamics

  32. Why memory-based marker? • During the period when TCP flows experience congestion, either or both of the following occurs: a) The cwnd reduces reducing the value of W b) The RTT increases causing a decrease in throughput or rate of flow.

  33. Why memory-based marker? • TheTCP window size W and the round trip time RTT arerelated to the throughput by the equation: BW = ¾*(MSS*W)/(RTT) where W is expressed in number of segments. • Any variation in W or RTT is reflected as subsequent changes in BW, i.e., in our case, the avg_rate. • The parameter previous average rate(par)is compared with the present average rate to track any change in the rate of flow and thus indirectly extract the variations in RTT or W.

  34. MBM Algo. explained • In the expression for the marking probability mp, • (par – avgrate)/avgrate tracks the variations in RTT and window size (W) and thus increases or decreases the marking probability according to the changes in the flow rate. • (1- avgrate)/cir constantly compares the average rate observed with the target rate to keep the rate closer to the target.

  35. For each packet arrival If avg_rate  cir then mp=mp+(1-avg_rate/cir)+(par- avg_rate)/avg_rate; par = avg_rate; mark the packet using: cp 11 w.p. mp cp 00 w.p. (1-mp) else if avg_rate > cir then mp= mp + (par – avg_rate)/avg_rate; par=avg_rate; mark the packet using: cp 11 w.p. mp cp 00 w.p. (1-mp) MBM Algorithm

  36. MBM Algo. Contd… • where, avg_rate= the rate estimate upon each packet arrival mp = marking probability (1) cir = committed information rate (i.e., the target rate) par = previous average rate cp denotes ‘codepoint’ and w.p. denotes ‘with probability’.

  37. Experiments • We used FTP bulk data transfer for the TCP traffic in all our experiments. • We conducted simulation studies in NS for: • Assured service for aggregates with different target rates. • Effect of different RTTs • Effect of different window sizes • Protection from best effort UDP flows • Effect of UDP flows with target rates.

  38. Results Achieved Rates (Ra) for different Target Rates (Rt).

  39. Results…. Achieved Rates (Ra) for different RTT values Achieved Rates (Ra) for different window sizes

  40. More results Achieved Rates in presence of BE UDP and TCP Achieved Rates in presence of AS UDP and BE TCP

  41. Inference • MBM • Achieves transparency from the end hosts, simplicity, and least sensitivity to parameters of both TCP as well as its own parameters. • helps in achieving the target rate, with a better fairness in terms of sharing the excess bandwidth among flows. • provides the TCP flows, a greater degree of insulation from differences in RTT and window sizes. • The overall link utilization also seems to be much better.

  42. Future work • Working on a 3 colour marker, Memory-Based Three color Marker (MBTCM) which is apt for DiffServ with AF per hop behaviour in its core. • Study of TCP dynamics and its performance improvements over broadband networks.

  43. Related Links….. • http://www.comp.nus.edu.sg/~srijith/cir/papers.html • http://www.comp.nus.edu.sg/~kaleelaz

More Related