1 Manpreet Singh, Prashant Pradhan* and Paul Francis * MPAT: Aggregate TCP Congestion Management as a Building Block for Internet QoS.

Slides:



Advertisements
Similar presentations
1 TCP Vegas: New Techniques for Congestion Detection and Avoidance Lawrence S. Brakmo Sean W. O’Malley Larry L. Peterson Department of Computer Science.
Advertisements

TCP Vegas: New Techniques for Congestion Detection and Control.
Transport Layer3-1 TCP AIMD multiplicative decrease: cut CongWin in half after loss event additive increase: increase CongWin by 1 MSS every RTT in the.
Advanced Computer Networking Congestion Control for High Bandwidth-Delay Product Environments (XCP Algorithm) 1.
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.
1 USC INFORMATION SCIENCES INSTITUTE RAP: An End-to-End Congestion Control Mechanism for Realtime Streams in the Internet Reza Rejaie, Mark Handley, Deborah.
The War Between Mice and Elephants Presented By Eric Wang Liang Guo and Ibrahim Matta Boston University ICNP
Adaptive Packet Marking for Maintaining End-to-End Throughput in a Differentiated-Services Internet Wu-Chang Feng, Dilip D.Kandlur, Member, IEEE, Debanjan.
Rice Networks Group Aleksandar Kuzmanovic & Edward W. Knightly TCP-LP: A Distributed Algorithm for Low Priority Data Transfer.
1 EE 627 Lecture 11 Review of Last Lecture UDP & Multimedia TCP & UDP Interaction.
Explicit Congestion Notification ECN Tilo Hamann Technical University Hamburg-Harburg, Germany.
High-performance bulk data transfers with TCP Matei Ripeanu University of Chicago.
TCP Congestion Control TCP sources change the sending rate by modifying the window size: Window = min {Advertised window, Congestion Window} In other words,
1 Minseok Kwon and Sonia Fahmy Department of Computer Sciences Purdue University {kwonm, TCP Increase/Decrease.
1 TCP-LP: A Distributed Algorithm for Low Priority Data Transfer Aleksandar Kuzmanovic, Edward W. Knightly Department of Electrical and Computer Engineering.
Medium Start in TCP-Friendly Rate Control Protocol CS 217 Class Project Spring 04 Peter Leong & Michael Welch.
Lecture 5: Congestion Control l Challenge: how do we efficiently share network resources among billions of hosts? n Last time: TCP n This time: Alternative.
The War Between Mice and Elephants By Liang Guo (Graduate Student) Ibrahim Matta (Professor) Boston University ICNP’2001 Presented By Preeti Phadnis.
All rights reserved © 2006, Alcatel Accelerating TCP Traffic on Broadband Access Networks  Ing-Jyh Tsang 
ICTCP: Incast Congestion Control for TCP in Data Center Networks∗
Introduction 1 Lecture 14 Transport Layer (Congestion Control) slides are modified from J. Kurose & K. Ross University of Nevada – Reno Computer Science.
Multicast Congestion Control in the Internet: Fairness and Scalability
TCP: flow and congestion control. Flow Control Flow Control is a technique for speed-matching of transmitter and receiver. Flow control ensures that a.
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.
Adaptive Packet Marking for Providing Differentiated Services in the Internet Wu-chang Feng, Debanjan Saha, Dilip Kandlur, Kang Shin October 13, 1998.
CS540/TE630 Computer Network Architecture Spring 2009 Tu/Th 10:30am-Noon Sue Moon.
An Integrated Congestion Management Architecture for Internet Hosts Hari Balakrishnan MIT Lab for Computer Science
1 On Class-based Isolation of UDP, Short-lived and Long-lived TCP Flows by Selma Yilmaz Ibrahim Matta Computer Science Department Boston University.
27th, Nov 2001 GLOBECOM /16 Analysis of Dynamic Behaviors of Many TCP Connections Sharing Tail-Drop / RED Routers Go Hasegawa Osaka University, Japan.
High-speed TCP  FAST TCP: motivation, architecture, algorithms, performance (by Cheng Jin, David X. Wei and Steven H. Low)  Modifying TCP's Congestion.
Congestion control for Multipath TCP (MPTCP) Damon Wischik Costin Raiciu Adam Greenhalgh Mark Handley THE ROYAL SOCIETY.
HighSpeed TCP for High Bandwidth-Delay Product Networks Raj Kettimuthu.
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.
Lecture 9 – More TCP & Congestion Control
What is TCP? Connection-oriented reliable transfer Stream paradigm
Transport Layer 3-1 Chapter 3 Transport Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley March
CS640: Introduction to Computer Networks Aditya Akella Lecture 15 TCP – III Reliability and Implementation Issues.
Computer Networking Lecture 18 – More TCP & Congestion Control.
CS640: Introduction to Computer Networks Aditya Akella Lecture 15 TCP – III Reliability and Implementation Issues.
Transport Layer3-1 Chapter 3 outline r 3.1 Transport-layer services r 3.2 Multiplexing and demultiplexing r 3.3 Connectionless transport: UDP r 3.4 Principles.
We used ns-2 network simulator [5] to evaluate RED-DT and compare its performance to RED [1], FRED [2], LQD [3], and CHOKe [4]. All simulation scenarios.
1 Computer Networks Congestion Avoidance. 2 Recall TCP Sliding Window Operation.
Random Early Detection (RED) Router notifies source before congestion happens - just drop the packet (TCP will timeout and adjust its window) - could make.
Flow Control in Multimedia Communication Multimedia Systems and Standards S2 IF Telkom University.
Murari Sridharan Windows TCP/IP Networking, Microsoft Corp. (Collaborators: Kun Tan, Jingmin Song, MSRA & Qian Zhang, HKUST)
L Subramanian*, I Stoica*, H Balakrishnan +, R Katz* *UC Berkeley, MIT + USENIX NSDI’04, 2004 Presented by Alok Rakkhit, Ionut Trestian.
XCP: eXplicit Control Protocol Dina Katabi MIT Lab for Computer Science
1 Advanced Transport Protocol Design Nguyen Multimedia Communications Laboratory March 23, 2005.
Peer-to-Peer Networks 13 Internet – The Underlay Network
1 Protocols and Protocol Layering. 2 Protocol Agreement about communication Specifies –Format of messages –Meaning of messages –Rules for exchange –Procedures.
Achievable Service Differentiation with Token Bucket Marking for TCP S. Sahu, D.Towsley University of Massachusetts P. Nain INRIA C. Diot Sprint Labs V.
TCP/IP1 Address Resolution Protocol Internet uses IP address to recognize a computer. But IP address needs to be translated to physical address (NIC).
OverQos: An Overlay based Architecture for Enhancing Internet Qos L Subramanian*, I Stoica*, H Balakrishnan +, R Katz* *UC Berkeley, MIT + USENIX NSDI’04,
Accelerating Peer-to-Peer Networks for Video Streaming
MPTCP Implementation: Use cases for Enhancement Opportunities
Corelite Architecture: Achieving Rated Weight Fairness
Approaches towards congestion control
Chapter 3 outline 3.1 transport-layer services
TCP Vegas: New Techniques for Congestion Detection and Avoidance
TCP-LP Distributed Algorithm for Low-Priority Data Transfer
TCP-LP: A Distributed Algorithm for Low Priority Data Transfer
Lecture 19 – TCP Performance
An Integrated Congestion Management Architecture for Internet Hosts
RAP: Rate Adaptation Protocol
The War Between Mice & Elephants by, Matt Hartling & Sumit Kumbhar
TCP Congestion Control
CSE 4213: Computer Networks II
Review of Internet Protocols Transport Layer
Presentation transcript:

1 Manpreet Singh, Prashant Pradhan* and Paul Francis * MPAT: Aggregate TCP Congestion Management as a Building Block for Internet QoS

2 Each TCP flow gets equal bandwidth

3 Our Goal: enable bandwidth apportionment among TCP flows in a best-effort network

4 Transparency : – No network support: ISPs, routers, gateways, etc. Clients unmodified –TCP-friendliness “Total” bandwidth should be the same

5 Why is it so hard? Fair share of a TCP flow keeps changing dynamically with time. Server Client bottleneck Lot of cross-traffic

6 Why not open extra TCP flows ? pTCP scheme [Sivakumar et. al.] –Open more TCP flows for a high-priority application Resulting behavior is unfriendly to the network Large number of flows active at a bottleneck lead to significant unfairness in TCP

7 Why not modify the AIMD parameters? mulTCP scheme [ Crowcroft et. al. ] –Use different AIMD parameters for each flow Increase more aggressively on successful transmission. Decrease more conservatively on packet loss.  Unfair to the background traffic  Does not scale to larger differentials –Large number of timeouts –Two mulTCP flows running together try to “compete” with each other

8 Properties of MPAT Key insight: send the packets of one flow through the open congestion window of another flow. Scalability –Substantial differentiation between flows (demonstrated up to 95:1) –Hold fair share (demonstrated up to 100 flows) Adaptability –Changing performance requirements –Transient network congestion Transparency –Changes only at the server side –Friendly to other flows

9 MPAT: an illustration Server Unmodified client Congestion window Target 4:1 Flow158 Flow252 Total congestion window = 10

10 MPAT: transmit processing Send three additional red packets through the congestion window of blue flow. TCP1 cwnd TCP2 cwnd

11 MPAT: implementation New variable: MPAT window Actual window = min ( MPAT window, recv window) Map each outgoing packet to one of the congestion windows. SeqnoCongestion window 1Red Blue Maintain a virtual mapping

12 Incoming Acks For every ACK received on a flow, update the congestion window through which that packet was sent. MPAT: receive processing TCP1 cwnd TCP2 cwnd Seqnowindow 1Red Blue

13 TCP-friendliness Invariant: Each congestion window experiences the same loss rate.

14 MPAT decouples reliability from congestion control Red flow is responsible for the reliability of all red packets. – (e.g. buffering, retransmission, etc. ) Does not break the “end-to-end” principle.

15 Experimental Setup Wide-area network test-bed Planet-lab Experiments over the real internet User-level TCP implementation Unconstrained buffer at both ends Goal: Test the fairness and scalability of MPAT

16 MPAT can apportion available bandwidth among its flows, irrespective of the total fair share Bandwidth Apportionment

17 Scalability of MPAT 95 times differential achieved in experiments 95

18 Responsiveness MPAT adapts itself very quickly to dynamically changing performance requirements

19 Fairness MPAT flows Target ratio: 1 : 2 : 3 : … : 15 : standard TCP flows in background

20 Applicability in real world Deployment: –Enterprise network –Grid applications Gold vs Silver customers Background transfers

21 Sample Enterprise network (runs over the best-effort Internet) San Jose (database server) Zurich (transaction server) New York (web server) New Delhi (application server)

22 Background transfers Data that humans are not waiting for –Non-deadline-critical Examples –Pre-fetched traffic on the Web –File system backup –Large-scale data distribution services –Background software updates –Media file sharing Grid Applications

23 Future work Benefit short flows: –Map multiple short flows onto a single long flow –Warm start Middle box –Avoid changing all the senders Detect shared congestion: –Subnet-based aggregation

24 Conclusions MPAT is a very promising approach for bandwidth apportionment Highly scalable and adaptive: Substantial differentiation between flows (demonstrated up to 95:1) Adapts very quickly to transient network congestion Transparent to the network and clients: Changes only at the server side Friendly to other flows

25 Extra slides…

26 MPAT exhibits much lower variance in throughput than mulTCP Reduced variance

27 Multiple MPAT aggregates “cooperate” with each other Fairness across aggregates

28 Multiple MPAT aggregates running simultaneously cooperate with each other

29 Congestion Manager (CM) CM Congestion controller Scheduler Per-”aggregate” statistics (cwnd, ssthresh, rtt, etc) Per-flow scheduling Flow integration Sender TCP4TCP1TCP2TCP3 Receiver API Callbacks Data Feedback An end-system architecture for congestion management. CM abstracts all congestion-related info into one place. Separates reliability from congestion control. An end-system architecture for congestion management. CM abstracts all congestion-related info into one place. Separates reliability from congestion control. Goal: To ensure fairness

30 Issues with CM Congestion Manager Unfair allocation of bandwidth to CM flows CM maintains one congestion window per “aggregate” TCP1 TCP2 TCP3 TCP4 TCP5

31 mulTCP Goal: Design a mechanism to give N times more bandwidth to one flow over another. TCP throughput = f(α, β) / (rtt *sqrt(p)) α: additive increase factor β: multiplicative decrease factor p: loss probability rtt: round-trip time Set α = N and β = 1 - 1/(2N) Increase more aggressively on successful transmission. Decrease more conservatively on packet loss.  Does not scale with N Loss process induced is much different from that of N standard TCP flows. Unstable controller as N increases.

32 Gain in throughput of mulTCP

33 Drawbacks of mulTCP Does not scale with N Large number of timeouts The loss process induced by a single mulTCP flow is much different Increased variance with N Amplitude increases with N Unstable controller as N grows Two mulTCP flows running together try to “compete” with each other

34 TCP Nice Two-level prioritization scheme Only give less bandwidth to low-priority applications Cannot give more bandwidth to deadline- critical jobs