Thoughts on the Evolution of TCP in the Internet (version 2) Sally Floyd ICIR Wednesday Lunch March 17, 2004 www.icir.org/floyd/talks.html.

Slides:



Advertisements
Similar presentations
CSIT560 Internet Infrastructure: Switches and Routers Active Queue Management Presented By: Gary Po, Henry Hui and Kenny Chong.
Advertisements

Hui Zhang, Fall Computer Networking TCP Enhancements.
Equation-Based Congestion Control for Unicast Applications Sally Floyd, Mark Handley, Jitendra Padhye and Jörg Widmer Presented by Ankur Upadhyaya for.
Congestion Control Created by M Bateman, A Ruddle & C Allison As part of the TCP View project.
Congestion Control: TCP & DC-TCP Swarun Kumar With Slides From: Prof. Katabi, Alizadeh et al.
CS 268: Lecture 7 (Beyond TCP Congestion Control) Ion Stoica Computer Science Division Department of Electrical Engineering and Computer Sciences University.
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.
TFRC for Voice: the VoIP Variant Sally Floyd, Eddie Kohler. March 2005, presentation to AVT draft-ietf-dccp-tfrc-voip-01.txt.
XCP: Congestion Control for High Bandwidth-Delay Product Network Dina Katabi, Mark Handley and Charlie Rohrs Presented by Ao-Jan Su.
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 1 ECSE-4690: Experimental Networking Informal Quiz: TCP Shiv Kalyanaraman:
Network Congestion Gabriel Nell UC Berkeley. Outline Background: what is congestion? Congestion control – End-to-end – Router-based Economic insights.
Equation-Based Congestion Control for Unicast Applications Sally Floyd, Mark Handley, Jitendra Padhye and Jörg Widmer Cuong Le CPSC 538A.
An Implementation and Experimental Study of the eXplicit Control Protocol (XCP) Yongguang Zhang and Tom Henderson INFOCOMM 2005 Presenter - Bob Kinicki.
1 Equation-Based Congestion Control for Unicast Applications Sally Floyd, Mark Handley, Jitendra Padhye & Jorg Widmer August 2000, ACM SIGCOMM Computer.
TDC365 Spring 2001John Kristoff - DePaul University1 Internetworking Technologies Transmission Control Protocol (TCP)
Networks: Congestion Control1 Congestion Control.
High speed TCP’s. Why high-speed TCP? Suppose that the bottleneck bandwidth is 10Gbps and RTT = 200ms. Bandwidth delay product is packets (1500.
Internet Research Needs a Critical Perspective Towards Models –Sally Floyd –IMA Workshop, January 2004.
1 689 Lecture 2 Review of Last Lecture Networking basics TCP/UDP review.
High-performance bulk data transfers with TCP Matei Ripeanu University of Chicago.
Congestion Control and Resource Allocation
Promoting the Use of End-to- End Congestion Control in the Internet Sally Floyd and Kevin Fall Presented by Scott McLaren.
ACN: Congestion Control1 Congestion Control and Resource Allocation.
Random Early Detection Gateways for Congestion Avoidance
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.
Reliable Transport Layers in Wireless Networks Mark Perillo Electrical and Computer Engineering.
Promoting the Use of End-to-End Congestion Control & Random Early Detection of Network Congestion.
Transport Level Protocol Performance Evaluation for Bulk Data Transfers Matei Ripeanu The University of Chicago Abstract:
Congestion Control for High Bandwidth-delay Product Networks Dina Katabi, Mark Handley, Charlie Rohrs.
Congestion Control for High Bandwidth-Delay Product Environments Dina Katabi Mark Handley Charlie Rohrs.
Whither Congestion Control? Sally Floyd E2ERG, July
1 Robust Transport Protocol for Dynamic High-Speed Networks: enhancing XCP approach Dino M. Lopez Pacheco INRIA RESO/LIP, ENS of Lyon, France Congduc Pham.
Changes in CCID 2 and CCID 3 Sally Floyd August 2004 IETF.
Quick-Start for TCP and IP A.Jain, S. Floyd, M. Allman, and P. Sarolahti ICSI, April 2006 This and earlier presentations::
CONGESTION CONTROL and RESOURCE ALLOCATION. Definition Resource Allocation : Process by which network elements try to meet the competing demands that.
Link Scheduling & Queuing COS 461: Computer Networks
Datagram Congestion Control Protocol
U Innsbruck Informatik - 1 CADPC/PTP in a nutshell Michael Welzl
ACN: RED paper1 Random Early Detection Gateways for Congestion Avoidance Sally Floyd and Van Jacobson, IEEE Transactions on Networking, Vol.1, No. 4, (Aug.
MaxNet NetLab Presentation Hailey Lam Outline MaxNet as an alternative to TCP Linux implementation of MaxNet Demonstration of fairness, quick.
TFRC for Voice: the VoIP Variant Sally Floyd, Eddie Kohler. August 2005 draft-ietf-dccp-tfrc-voip-02.txt Slides:
1 Standardizing New Congestion Control Algorithms Sally Floyd Workshop on High-speed TCP Microsoft February 5-6, 2007 Slides:
Requirements for Simulation and Modeling Tools Sally Floyd NSF Workshop August 2005.
Quick-Start for TCP and IP Draft-amit-quick-start-04.txt A.Jain, S. Floyd, M. Allman, and P. Sarolahti TSVWG, March 2005 Presentation last IETF:
Quick-Start for TCP and IP Draft-amit-quick-start-03.txt A.Jain, S. Floyd, M. Allman, and P. Sarolahti ICIR, December
Un-Cooperative Congestion Control Kartikeya Chandrayana Prof. Shivkumar Kalyanaraman ECSE Dept., R.P.I. (
DCCP: Issues From the Mailing List Sally Floyd, Eddie Kohler, Mark Handley, et al. DCCP WG March 4, 2004.
TFRC for Voice: the VoIP Variant Sally Floyd, Eddie Kohler. March draft-ietf-dccp-tfrc-voip-01.txt
AQM & TCP models Courtesy of Sally Floyd with ICIR Raj Jain with OSU.
Improving our Evaluation of Transport Protocols Sally Floyd Hamilton Institute July 29, 2005.
Transport Layer 3-1 Chapter 3 Transport Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley March
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.
XCP: eXplicit Control Protocol Dina Katabi MIT Lab for Computer Science
Thoughts on the Evolution of TCP in the Internet Sally Floyd PFLDnet 2004 February 16, 2004.
Queue Management Mike Freedman COS 461: Computer Networks Lectures: MW 10-10:50am in Architecture N101
Revisiting Transport Congestion Control Jian He UT Austin 1.
Dynamic Behavior of Slowly Responsive Congestion Control Algorithms (Bansal, Balakrishnan, Floyd & Shenker, 2001)
Congestion Control for High Bandwidth-Delay Product Networks Dina Katabi, Mark Handley, Charlie Rohrs Presented by Yufei Chen.
U Innsbruck Informatik - 1 Specification of a Network Adaptation Layer for the Grid GGF7 presentation Michael Welzl University.
Impact of New CC on Cross Traffic
CS 268: Lecture 6 Scott Shenker and Ion Stoica
Queue Management Jennifer Rexford COS 461: Computer Networks
TFRC for Voice: VoIP Variant and Faster Restart.
HighSpeed TCP for Large Congestion Windows
Internet Congestion Control Research Group
Queuing and Queue Management
Internet Research Needs a Critical Perspective Towards Models
TCP Congestion Control
DCCP: Issues From the Mailing List
Presentation transcript:

Thoughts on the Evolution of TCP in the Internet (version 2) Sally Floyd ICIR Wednesday Lunch March 17,

Themes: Proposing a new mechanism is easy. It is harder, and more interesting, to consider: – the exact problem being solved; – the range of possible solutions; – the architectural tradeoffs involved in picking this particular solution.

Example: convergence times. How to improve convergence times with HighSpeed TCP? Architectural questions raised: –Explicit feedback from routers? –Flow-specific state in routers (or in packet headers)? –QoS? –What are the limitations of TCP, or of no per-flow state in routers, or of best-effort service, for high-speed flows (e.g., 10 Gbps)?

Example: DCCP’s congestion control Question: How far can DCCP go in providing faster startup, faster recovery after idle periods, etc.? Architectural questions raised: –Limitations of window-based congestion control? –Of no per-flow state in routers/packet headers? –Of best-effort traffic?

Past history of TCP Reno/NewReno/SACK: –Half of servers use SACK, many others use NewReno. –Almost all browsers use SACK. –DON’T use Reno in simulations or experiments!!! Delay-based congestion control: –Vegas, FAST –TCP-Nice and TCP-LowPriority use delay-based congestion control for low priority TCP. ECN: –Explicit instead of implicit notification. –Standardized but not deployed.

Past history of TCP Quality of Service: –Intserv, diffserv, etc. –Limited deployment. New transport protocols: –SCTP: multi-streaming, multihomed transport. –DCCP: for unreliable, congestion-controlled transport.

TCP’s response function

Convergence Times for HighSpeed TCP et al: Different models give different results! –Model #1: DropTail queues with global synchronization for loss events. –Model #2: Drop Tail queues, some synchronization, depending on traffic mix. –Model #3: RED queues, some synchronization. –Model #4: RED queues, no synchronization Which model is the best fit for the current or future Internet?

Convergence times for HighSpeed TCP et al: What would improve convergence times? –TCP changes: Less aggressive increases after loss events? –Explicit feedback from routers to transport: Finer-grained congestion feedback? –Router changes: Flow-specific state in routers (or in packet headers)? –QoS: Something other than best-effort service.

Additional Feedback from Routers? Examples: XCP, QuickStart. Explicit feedback from routers would be useful (and necessary) for faster startups. –Also for faster recovery after idle periods. Per-packet feedback (as in XCP) would give greater power, at greater cost.

Evaluating additional feedback from routers: Possible kinds: –Needed from all routers along the path (e.g., QuickStart, XCP); –Needed only from one router (e.g., ECN). Possible semantics: –Faster startup (e.g., QuickStart, XCP); –Advice/instruction to slow down, or to increase less aggressively (e.g., ECN, XCP). –Info from link layer (e.g., corruption, link-up). –…

Flow-specific state in routers? What are the cost/benefit tradeoffs for maintaining state in routers/packet headers for very large flows? –E.g., for a 10Gbps TCP flow? Flow-specific marking or dropping, for faster convergence? Flow-specific state to help use the bandwidth promptly when a short fat flow ends? –(short in time, fat in bytes)

How far can DCCP go in providing faster startup, fast recovery after idle periods, etc. Many of DCCP’s target applications want: –Faster startup; –Abrupt changes in the sending rate; –To start up fast after idle periods; –To minimize changes in sending rates; How much can this be done with: –Window-based congestion control? –Best-effort traffic but no per-flow state in routers or in packet headers? –Best-effort traffic?

Fundamental limitations of window-based congestion control? The jostling of ACKs can lead to unnecessary burstiness? –Rate-based pacing could help. –Equation-based congestion control (e.g., TFRC) is another alternative. Slow start-up? –Explicit feedback from routers could help. Decreasing the window after a loss event. –“Decreasing” does not necessarily require “halving”. – TFRC is another alternative.

Fundamental limitations of no per-flow state in routers/packet headers? For environments with high link utilization, there are limits to faster start-up, and to faster convergence. –E.g., a new flow starting up in a high-bandwidth environment with a small number of competing flows. For environments with short fat flows, there are limits to link utilization. –E.g., many flows wanting to use high bandwidth, each for a fraction of an RTT.

Fundamental limitations of best-effort service? Best-effort flows need to avoid persistent, high drop rates. In environments with FIFO scheduling at congested links, best-effort flows need to pay attention to per-flow fairness. There are no common assumptions about average or worst-case queueing delay. Some flows prefer better-than-best-effort delay, throughput, or loss rates. A best-effort flow can’t assume that bandwidth is available when the flow is ready to use it.

Extra viewgraphs:

Interactions between transport and link layers: Wireless links with variable delay, throughput, corruption, etc? Hints from transport to link layers, e.g., about robustness to reordering or to delay? New issues raised by optical networks, e.g., by optical burst switching?