Multipath TCP and the Resource Pooling Principle

Slides:



Advertisements
Similar presentations
An Integrated, Distributed Traffic Control Strategy for Future Internet An Integrated, Distributed Traffic Control Strategy for Future Internet H. Che.
Advertisements

Multihoming and Multi-path Routing
Path Splicing with Network Slicing Nick Feamster Murtaza Motiwala Santosh Vempala.
Data Center Networking with Multipath TCP
Improving Datacenter Performance and Robustness with Multipath TCP
Giảng viên : Ts. Lê Anh Ngọc Học viên: Trịnh Hồng Điệp Nguyễn Minh H ư ớng 1.
Cs/ee 143 Communication Networks Chapter 6 Internetworking Text: Walrand & Parekh, 2010 Steven Low CMS, EE, Caltech.
1 Address Selection, Failure Detection and Recovery in MULTI6 draft-arkko-multi6dt-failure-detection-00.txt Multi6 Design Team -- Jari Arkko, Marcelo Bagnulo,
Restless bandits and congestion control Mark Handley, Costin Raiciu, Damon Wischik UCL.
Architectural Stresses and Attempted Solutions Mark Handley UCL.
Advanced Computer Networking Congestion Control for High Bandwidth-Delay Product Environments (XCP Algorithm) 1.
Resource Pooling A system exhibits complete resource pooling if it behaves as if there was a single pooled resource. The Internet has many mechanisms for.
Comparing flow-oblivious and flow-aware adaptive routing Sara Oueslati and Jim Roberts France Telecom R&D CISS 2006 Princeton March 2006.
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 1 Exterior Gateway Protocols: EGP, BGP-4, CIDR Shivkumar Kalyanaraman Rensselaer Polytechnic Institute.
On Multi-Path Routing Aditya Akella 03/25/02. What is Multi-Path Routing?  Dynamically route traffic Multiple paths to a destination Path taken dependant.
Combining Multipath Routing and Congestion Control for Robustness Peter Key.
Multipath Protocol for Delay-Sensitive Traffic Jennifer Rexford Princeton University Joint work with Umar Javed, Martin Suchara, and Jiayue He
Multipath Routing CS 522 F2003 Beaux Sharifi. Agenda Description of Multipath Routing Necessity of Multipath Routing 3 Major Components Necessary for.
Building a Strong Foundation for a Future Internet Jennifer Rexford ’91 Computer Science Department (and Electrical Engineering and the Center for IT Policy)
Routing of Outgoing Packets with MP-TCP draft-handley-mptcp-routing-00 Mark Handley Costin Raiciu Marcelo Bagnulo.
Lecture 1, 1Spring 2003, COM1337/3501Computer Communication Networks Rajmohan Rajaraman COM1337/3501 Textbook: Computer Networks: A Systems Approach, L.
1 Content Distribution Networks. 2 Replication Issues Request distribution: how to transparently distribute requests for content among replication servers.
DARD: Distributed Adaptive Routing for Datacenter Networks Xin Wu, Xiaowei Yang.
Sharing Information across Congestion Windows CSE222A Project Presentation March 15, 2005 Apurva Sharma.
Models of multipath resource allocation Damon Wischik, UCL.
Computing Infrastructure for Large Ecommerce Systems -- based on material written by Jacob Lindeman.
Congestion control for Multipath TCP (MPTCP) Damon Wischik Costin Raiciu Adam Greenhalgh Mark Handley THE ROYAL SOCIETY.
S4-Chapter 3 WAN Design Requirements. WAN Technologies Leased Line –PPP networks –Hub and Spoke Topologies –Backup for other links ISDN –Cost-effective.
Some questions about multipath Damon Wischik, UCL Trilogy UCL.
Use Cases for High Bandwidth Query and Control of Core Networks Greg Bernstein, Grotto Networking Young Lee, Huawei draft-bernstein-alto-large-bandwidth-cases-00.txt.
1 Transport Layer: Basics Outline Intro to transport UDP Congestion control basics.
1 Traffic Engineering By Kavitha Ganapa. 2 Introduction Traffic engineering is concerned with the issue of performance evaluation and optimization of.
Internet Traffic Engineering Motivation: –The Fish problem, congested links. –Two properties of IP routing Destination based Local optimization TE: optimizing.
Network Processing Systems Design
Multipath Transport, Resource Pooling, and implications for Routing
Confluent vs. Splittable Flows
Lecture (2).
New Directions in Routing
P4P : Provider Portal for (P2P) Applications Haiyong Xie, Y
Whirlwind Tour Of Lectures So Far
Zueyong Zhu† and J. William Atwood‡
ASYNCHRONOUS TRANSFER MODE(ATM) Sangram Sekhar Choudhuri
Improving Datacenter Performance and Robustness with Multipath TCP
Computer Networks and Internets, 5e By Douglas E. Comer
Network Load Balancing Functionality
IP (slides derived from past EE122 sections)
Improving Datacenter Performance and Robustness with Multipath TCP
Multipath TCP Yifan Peng Oct 11, 2012
Introduction to Internet Routing
Transport Layer Unit 5.
CPE 401 / 601 Computer Network Systems
Module 5 - Switches CCNA 3 version 3.0.
Overlay Networking Overview.
NTHU CS5421 Cloud Computing
An Update on Multihoming in IPv6 Report on IETF Activity
PRESENTATION COMPUTER NETWORKS
Internet and Web Simple client-server model
Specialized Cloud Architectures
Optical communications & networking - an Overview
Computer Networking A Top-Down Approach Featuring the Internet
Chapter-5 Traffic Engineering.
EE 122: Lecture 22 (Overlay Networks)
Routing and the Network Layer (ref: Interconnections by Perlman
Resource Pooling A system exhibits complete resource pooling if it behaves as if there was a single pooled resource. I propose ‘extent of resource pooling’
Resource Negotiation, Pricing and QoS
Computer Networks Protocols
Intro to Data & Internet
Multicasting Unicast.
Towards Predictable Datacenter Networks
Chapter 8 – Data switching and routing
Presentation transcript:

Multipath TCP and the Resource Pooling Principle Mark Handley, UCL and XORP, Inc Also: Damon Wischik, UCL Marcelo Bagnulo Braun, UC3M The members of Trilogy project: www.trilogy-project.org

Resource Pooling? Make a network's resources behave like a single pooled resource. Aim is to increase reliability, flexibility and efficiency. Method is to build mechanisms for shifting load between the various parts of the network. 6 Mb/s 10 Mb/s 6 4 8 2 10 Srca Srcb Srcc Dsta Dstb Dstc

Resource Pooling is not new… Computer communication is bursty, so a virtual circuit-based model with rate allocations gives poor utilization. A packet-switched network pools the capacity of a single link. Router queues pool capacity from one time interval to the next

Everyone keeps reinventing resource pooling Original internet motivation: statistical multiplexing for bursty traffic  link resource pooling. Goal: high utilization Router queues: resource pool link capacity over time. Goal: high utilization, robustness to arrival patterns

We’re doing resource pooling in routing BGP traffic engineering: Slow manual process to pool resources across peering links. Financial goal - match revenues to costs. Robustness goal - prevent overload. OSPF/MPLS traffic engineering: Slow manual process to pool resources across internal ISP links. Primary: Robustness - prevent overload. Secondary: Higher utilization. BT, AT&T (and others) dynamic alternative routing Robustness to overload. Provide higher availability than the availability of the links/switches themselves (pool reliability)

Recent resource pooling trends Multihoming Primary goal: pool reliability. Secondary goal: pool capacity Google, Akamai, CDNs Pool reliability of servers, datacenters, ISPs. Pool bandwidth. Pool latency?? Bittorrent Overall: Pool upstream capacity (over space and time) Per-chunk: pool for reliability from unreliable servers.

Summary: Motivations for Resource Pooling Robustness Increased capacity or utilization

Currently two main resource pooling mechanisms: Routing-based traffic engineering. Inter-domain routing is too slow and doesn't scale well (especially if a human is in the control loop) Intra-domain routing is better, but not fast enough with a human in the loop, not stable if automatic. There are many examples where no network-based flow-based mechanism can achieve pooling. Application-based load-balancing between multiple servers. Pretty effective, but strong tussle with what the network operators are doing.

The requirements have changed Need a more robust Internet than we can get from simply making better components. Traditional routing can’t solve this in a scalable way. Applications are becoming more demanding: VoIP, TV, Games. Most of the end-systems will be mobile, with multiple radios that can be used simultanously.

So what might work? Multipath. Only real way to get robustness is redundancy. Multihoming, via multiple addresses. Can aggregate routing information. Mobility, via adding and removing addresses. No need to involve the routing system, or use non-aggregatable addresses.

So what might work? Multipath-capable transport layers. Use multiple subflows within transport connections. Congestion control them independently. Traffic moves to the less congested paths. Note the involvement of congestion control is crucial. You can’t solve this problem at the IP layer. Moves some of the stresses out of the routing system. Might be able to converge slowly, and no-one cares?

Multipath transport ARPAnet resource pooling: Multipath transport allows multiple links to be treated as a single pooled resource. Traffic moves away from congested links. Larger bursts can be accommodated. Multipath resource pooling:

Resource pooling allows a wider range of traffic matrices Srca Dstb Resource pooling allows a wider range of traffic matrices 100Mb/s 100Mb/s 100Mb/s Srcb 100Mb/s Dsta Flow a (Mb/s) Flow b Possible traffic flows 100 No multi-path flows Only flow a is multi-path. Both flows are multi-path

Existing Multipath Transport We already have it: BitTorrent. Providing traffic engineering for free to ISPs who don’t want that sort of traffic engineering :-) If flows were accountable for congestion, BitTorrent would be optimizing for cost. The problem for ISPs is that it reveals their pricing model is somewhat suboptimal.

Multipath Traffic Engineering Src Src Add congestion marking $$$ Dst Dst Balancing across dissimilar speed links balancing across dissimilar cost links

End-systems can optimize globally (often ISPs cannot) X Y Z Dst Dst

Robustness at an Affordable Price What if all flows looked a bit like BitTorrent? Can we build an extremely robust and cost effective network for billions of mobile hosts based on multipath transport and multi-server services? I think we can.

The “Resource Pooling Principle” Observation 1: Resource pooling is often the only practical way to achieve resilience at acceptable cost. Observation 2: Resource pooling is also a cost-effective way to achieve flexibility and high utilization. Consequence: At every place in a network architecture where sufficient diversity of resources is available, designers will attempt to design their own resource pooling mechanisms. Principle: A network architecture is effective overall, only if the resource pooling mechanisms used by its components are both effective and do not conflict with each other.

The “Resource Pooling Principle” (2) Principle: A network architecture is effective overall, only if the resource pooling mechanisms used by its components are both effective and do not conflict with each other. Corollary: The most effective way to do resource pooling in the Internet is to harness the responsiveness of the end systems in the most generic way possible, as this maximizes the benefits while minimizing the conflicts.

Multipath Transport Design Space Multipath TCP: So obvious it’s been proposed at least four times (originally by Huitema?). SCTP is already going there. We now understand the motivation better, and the consequences of not solving the issue in a general way. Multi-server HTTP: Request chunks of file, each from a different server. Better pooling, but less general. P2P interactions with ISPs.

Where are we today? Good theoretical understanding of the issues: Kelly and Voice Key, Massouilié and Towsley Working on the details for TCP: How well does it work in practice? When to start additional flows? Are there cases where multipath does worse? How much of the traffic engineering problems does this solve? How much remains to be done in routing? How to manage such dynamic networks?