mptcp – multipath tcp
Download
Report
Transcript mptcp – multipath tcp
WELCOME!
Multipath TCP
Implementors Workshop
Saturday 24th July
Maastricht
Philip Eardley
MPTCP WG Co-chair
Objective
• The objective of the workshop is to help make MPTCP real, i.e., to
get it implemented in many operating systems and to get it used by
key applications.
• Interactive workshop with
– Designers who would use MPTCP,
– OS implementors who would implement and ship MPTCP
– MPTCP WG people who are designing and standardising MPTCP
• Discuss the use cases for Multipath TCP –
– What are the gotchas and how can the protocol designers increase the
usefulness of MPTCP?
• Discuss the process through which Multipath TCP could make its
way into OSes.
– What are the potential stumbling blocks for MPTCP's implementation
(real world requirements and constraints) and how could the protocol
designers lower the deployment barriers?
Note
• The workshop is organised under the
auspices of the MPTCP working group,
but is not a formal WG meeting - for
instance, WG consensus calls will not be
made.
• Please assume that the ‘Note Well’ applies
Note Well
•
Any submission to the IETF intended by the Contributor for publication as all or part of an IETF
Internet-Draft or RFC and any statement made within the context of an IETF activity is considered
an "IETF Contribution". Such statements include oral statements in IETF sessions, as well as
written and electronic communications made at any time or place, which are addressed to:
•
•
•
* The IETF plenary session
* The IESG, or any member thereof on behalf of the IESG
* Any IETF mailing list, including the IETF list itself, any working group or design team list, or
any other list functioning under IETF auspices
* Any IETF working group or portion thereof
* The IAB or any member thereof on behalf of the IAB
* The RFC Editor or the Internet-Drafts function
•
•
•
•
All IETF Contributions are subject to the rules of RFC 5378 and RFC 3979 (updated by RFC
4879).
•
Statements made outside of an IETF session, mailing list or other function, that are clearly not
intended to be input to an IETF activity, group or function, are not IETF Contributions in the
context of this notice.
•
Please consult RFC 5378 and RFC 3979 for details.
•
A participant in any IETF activity is deemed to accept all IETF rules of process, as documented in
Best Current Practices RFCs and IESG Statements.
•
A participant in any IETF activity acknowledges that written, audio and video records of meetings
may be made and may be available to the public.
Agenda
• Intro, background, assumptions
– Philip Eardley
• Demo of implementation
– Sebastien Barre / Costin Raicu
• Use cases discussion
– Mobility - discussion led by Lars Eggert
– Data centres - discussion led by Costin Raicu
• OS implementation discussion
– Led by Sebastien Barre and Costin Raicu
– Changes to Linux kernel – priorities etc
– How to get into mainline Linux kernel
– How to get into other OS
Introduction
• Overview of Multipath TCP (MPTCP)
– Uses and benefits
• Status of MPTCP
– Assumptions & design decision by WG
MPTCP: The Basic Idea
• Enable a single TCP connection to use
multiple paths simultaneously
– Stop hiding multihoming
– Establish more than one path between the
same pair of endpoints for the same
connection.
– Use congestion control to determine traffic on
each path
– Move congestion, not just spread it out over
more time
Possible scenario: Mobile client
3G celltower
Mobile client
Server
Scenario: Mobile Client
Mobile client
Server
Wifi
Wifi
Scenario: Mobile Client
Server
Mobile client
Wifi
Wifi
Scenario: Mobile Client
Server
Wifi
Mobile client
Wifi
Possible scenarios & benefits
• A mobile node with 3G and
WiFi
– A form of mobility
• A campus with 2 providers
– Resilience
• Inside a network
– Fast TE
– Increase utilisation, resource
pooling
• Inside a data centre
– Load balancing
Trilogy – Re-architecting the Internet
12
Feb 19, 2009
Status of MPTCP
• WG established
– Charter runs to March 2011
– output is experimental or informational
– Good progress on work items
•
•
•
•
•
•
High level design decisions
Protocol
Congestion control algorithm
Security threats
Application considerations
Optional extended API
• Implementations
– User space, early implementation
– Linux kernel ‘reference’ implementation
Goals & assumptions
• Improve throughput
– Better than regular TCP on best path
• Be “fair”
– To regular TCP at shared bottlenecks
– Paths may not be disjoint
• Improve resilience
– Use multiple paths interchangeably
– Paths may disappear
– Assume identify paths by IP addresses
• Application compatibility
– Same API as regular TCP
• Network compatibility
– Work on current Internet
– Traverse predominant middleboxes
• Fallback to regular TCP
Design decisions
• Improve throughput & Be “fair”
– Congestion control: coupled increases algorithm
• Improve resilience
– Either end can add paths
– Re-transmit on any path
• Application compatibility
– TCP API – no mods to apps
– Modify TCP stack
• Network compatibility
–
–
–
–
Subflows look like regular TCP
Connection & subflow sequence spaces, acks…
Signal “MPTCP capable” with TCP option on SYN
Sunsequent signalling under discussion
• Fallback to regular TCP
Multipath TCP
Implementors workshop
• Interactive workshop to help make Multipath TCP real
– to get it implemented in many operating systems and to get it used by key
applications.
• Intro, background, assumptions
• Demo of implementation
– Sebastien Barre / Costin Raicu
• Use cases discussion
– Mobility - discussion led by Lars Eggert
– Data centres - discussion led by Costin Raicu
• OS implementation discussion
–
–
–
–
Led by Sebastien Barre and Costin Raicu
Changes to Linux kernel – priorities etc
How to get into mainline Linux kernel
How to get into other OS