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

Slides:



Advertisements
Similar presentations
Martin Suchara, Ryan Witt, Bartek Wydrowski California Institute of Technology Pasadena, U.S.A. TCP MaxNet Implementation and Experiments on the WAN in.
Advertisements

An Adaptive TCP Protocol for Lossy Mobile Environment Choong Seon Hong Feb. 27, 2003.
Using Edge-To-Edge Feedback Control to Make Assured Service More Assured in DiffServ Networks K.R.R.Kumar, A.L.Ananda, Lillykutty Jacob Centre for Internet.
Improving TCP over Wireless by Selectively Protecting Packet Transmissions Carla F. Chiasserini Michele Garetto Michela Meo Dipartimento di Elettronica.
Tiziana Ferrari Differentiated Services Test: Report1 Differentiated Service Test REPORT TF-TANT Tiziana Ferrari Frankfurt, 1 Oct.
1 Transport Protocols & TCP CSE 3213 Fall April 2015.
Hui Zhang, Fall Computer Networking TCP Enhancements.
Doc.: IEEE /0604r1 Submission May 2014 Slide 1 Modeling and Evaluating Variable Bit rate Video Steaming for ax Date: Authors:
1 End to End Bandwidth Estimation in TCP to improve Wireless Link Utilization S. Mascolo, A.Grieco, G.Pau, M.Gerla, C.Casetti Presented by Abhijit Pandey.
The War Between Mice and Elephants LIANG GUO, IBRAHIM MATTA Computer Science Department Boston University ICNP (International Conference on Network Protocols)
Congestion Control An Overview -Jyothi Guntaka. Congestion  What is congestion ?  The aggregate demand for network resources exceeds the available capacity.
XCP: Congestion Control for High Bandwidth-Delay Product Network Dina Katabi, Mark Handley and Charlie Rohrs Presented by Ao-Jan Su.
Explicit Congestion Notification ECN Tilo Hamann Technical University Hamburg-Harburg, Germany.
Multiple Sender Distributed Video Streaming Thinh Nguyen, Avideh Zakhor appears on “IEEE Transactions On Multimedia, vol. 6, no. 2, April, 2004”
1 Traffic Sensitive Quality of Service Controller Masters Thesis Submitted by :Abhishek Kumar Advisors: Prof Mark Claypool Prof Robert Kinicki Reader:
Traffic Sensitive Active Queue Management - Mark Claypool, Robert Kinicki, Abhishek Kumar Dept. of Computer Science Worcester Polytechnic Institute Presenter.
Performance Enhancement of TFRC in Wireless Ad Hoc Networks Travis Grant – Mingzhe Li, Choong-Soo Lee, Emmanuel.
Medium Start in TCP-Friendly Rate Control Protocol CS 217 Class Project Spring 04 Peter Leong & Michael Welch.
Department of Electronic Engineering City University of Hong Kong EE3900 Computer Networks Transport Protocols Slide 1 Transport Protocols.
Reliable Transport Layers in Wireless Networks Mark Perillo Electrical and Computer Engineering.
The War Between Mice and Elephants By Liang Guo (Graduate Student) Ibrahim Matta (Professor) Boston University ICNP’2001 Presented By Preeti Phadnis.
CMPE 257 Spring CMPE 257: Wireless and Mobile Networking Spring 2005 E2E Protocols (point-to-point)
1 K. Salah Module 6.1: TCP Flow and Congestion Control Connection establishment & Termination Flow Control Congestion Control QoS.
TCP. Learning objectives Reliable Transport in TCP TCP flow and Congestion Control.
TCP Congestion Control
Congestion Control for High Bandwidth-delay Product Networks Dina Katabi, Mark Handley, Charlie Rohrs.
Discriminating Congestion Losses from Wireless Losses using Inter- Arrival Times at the Receiver By Saad Biaz,Nitin H.Vaidya Texas A&M University IEEE.
Lect11.ppt - 03/15/05 CDA 6505 Network Architecture and Client/Server Computing Lecture 11 Link-Level Flow and Error Control by Zornitza Genova Prodanoff.
Link-Level Flow and Error Control
Lect3..ppt - 09/12/04 CIS 4100 Systems Performance and Evaluation Lecture 3 by Zornitza Genova Prodanoff.
3: Transport Layer3b-1 Principles of Congestion Control Congestion: r informally: “too many sources sending too much data too fast for network to handle”
Transport Layer 4 2: Transport Layer 4.
MaxNet NetLab Presentation Hailey Lam Outline MaxNet as an alternative to TCP Linux implementation of MaxNet Demonstration of fairness, quick.
Transport Layer Moving Segments. Transport Layer Protocols Provide a logical communication link between processes running on different hosts as if directly.
TCP-Friendly Congestion Control presented by Hyunjoo Kim.
Transport over Wireless Networks Myungchul Kim
Chapter 12 Transmission Control Protocol (TCP)
CSE679: Computer Network Review r Review of the uncounted quiz r Computer network review.
Transport Layer3-1 Announcements r Collect homework r New homework: m Ch3#3,4,7,10,12,16,18-20,25,26,31,33,37 m Due Wed Sep 24 r Reminder: m Project #1.
HighSpeed TCP for High Bandwidth-Delay Product Networks Raj Kettimuthu.
Congestion Control for High Bandwidth-Delay Product Networks D. Katabi (MIT), M. Handley (UCL), C. Rohrs (MIT) – SIGCOMM’02 Presented by Cheng.
TCP Trunking: Design, Implementation and Performance H.T. Kung and S. Y. Wang.
Vertical Optimization Of Data Transmission For Mobile Wireless Terminals MICHAEL METHFESSEL, KAI F. DOMBROWSKI, PETER LANGENDORFER, HORST FRANKENFELDT,
CHAMELEON - A System for Adaptive QoS Provisioning Rajesh Krishna Balan.
Copyright © Lopamudra Roychoudhuri
1 TCP - Part II Relates to Lab 5. This is an extended module that covers TCP data transport, and flow control, congestion control, and error control in.
Transport Layer3-1 TCP throughput r What’s the average throughout of TCP as a function of window size and RTT? m Ignore slow start r Let W be the window.
Transport Layer 3-1 Chapter 3 Transport Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley March
1 CS 4396 Computer Networks Lab TCP – Part II. 2 Flow Control Congestion Control Retransmission Timeout TCP:
Low Latency Adaptive Streaming over TCP Authors Ashvin Goel Charles Krasic Jonathan Walpole Presented By Sudeep Rege Sachin Edlabadkar.
The Macroscopic behavior of the TCP Congestion Avoidance Algorithm.
Explicit Allocation of Best-Effort Service Goal: Allocate different rates to different users during congestion Can charge different prices to different.
TCP Congestion Control 컴퓨터공학과 인공지능 연구실 서 영우. TCP congestion control2 Contents 1. Introduction 2. Slow-start 3. Congestion avoidance 4. Fast retransmit.
TCP continued. Discussion – TCP Throughput TCP will most likely generate the saw tooth type of traffic. – A rough estimate is that the congestion window.
Analysis and Design of an Adaptive Virtual Queue (AVQ) Algorithm for AQM By Srisankar Kunniyur & R. Srikant Presented by Hareesh Pattipati.
IP1 The Underlying Technologies. What is inside the Internet? Or What are the key underlying technologies that make it work so successfully? –Packet Switching.
TCP/IP1 Address Resolution Protocol Internet uses IP address to recognize a computer. But IP address needs to be translated to physical address (NIC).
Ch 3. Transport Layer Myungchul Kim
Congestion Control for High Bandwidth-Delay Product Networks Dina Katabi, Mark Handley, Charlie Rohrs Presented by Yufei Chen.
Ch 3. Transport Layer Myungchul Kim
1 ICCCN 2003 Modelling TCP Reno with Spurious Timeouts in Wireless Mobile Environments Shaojian Fu School of Computer Science University of Oklahoma.
Other Methods of Dealing with Congestion
The Transport Layer Implementation Services Functions Protocols
Corelite Architecture: Achieving Rated Weight Fairness
COMP 431 Internet Services & Protocols
Khiem Lam Jimmy Vuong Andrew Yang
SCTP v/s TCP – A Comparison of Transport Protocols for Web Traffic
TCP Westwood(+) Protocol Implementation in ns-3
Other Methods of Dealing with Congestion
Review of Internet Protocols Transport Layer
Presentation transcript:

Solutions for Improving TCP Performance over Emerging Networks K.R.Renjish Kumar 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: – Different kinds of networks – increasing number of users – innumerable applications which require better quality of service.

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.

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

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.

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

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.

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

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?

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

Header Checksum option 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 TCP Header Checksum option TCP Header Checksum ACK option

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

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

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

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

Experimental Setup Implemented into the Linux 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 Client Server Error / Delay Box Experimental test bed

Low Latency Links Throughput versus percentage packet loss for short latency (10 ms) link with random single packet errors

High Latency Links Throughput versus percentage packet loss for long latency (300 ms) link with random single packet errors

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

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

Burst errors Throughput for 2% burst error for various burst lengthsThroughput for 5% burst error for various burst lengths

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

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

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

DiffServ Classifier Meter MarkerPolicer Packet Logical View of a Packet Classifier and Traffic Conditioner

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.

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

Topology

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.

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

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.

Why memory-based marker? The TCP window size W and the round trip time RTT are related 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.

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.

MBM Algorithm 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 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’.

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.

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

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

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

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.

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.

Related Links….. html html