SlideShare a Scribd company logo
0-RTT TCP Converters
draft-bonaventure-mptcp-converters-01
IETF99, July 2017
O. Bonaventure
M. Boucadair
B. Peirens
Motivation
• Instead of tuning MPTCP to cope with
middleboxes, can we design middleboxes that
would benefit to MPTCP ?
Some proposed solutions
Converter
• Motivation
– Far more MPTCP enabled clients than MPTCP
enabled servers
– Clients want to benefit from MPTCP at least on a
fraction of the end-to-end path
Key points of email discussion
• Using the converter should not significantly increase
the connection establishment delay
– 0-RTT
• Clients can decide to use a converter based on policies
• Clients should be able to bypass the converter when
the server supports MPTCP
• TFO must be used if data is placed in SYN
– For client-converter exchanges
– Clients using converter should still be able to use TFO with
servers
• The design should be extensible and future-proof…
• …and should avoid defining new TCP Options
A cleaner design
• Converter Protocol is an application-level
protocol listening on a specific TCP port
• Client commands and converter responses are
encoded as TLV messages
– Ensures extensibility
• Converter Protocol leverages TFO
– Commands and responses can be sent inside SYNs
• Clients can learn TCP options supported by
servers
– Allows clients to bypass the converter
A Simplified example
@c @s
@t
SYN
SYN+ACK
SYN+ACK [ ]
TLV message
in SYN payload
TCP Options
TFO cookie (t) from
converter
SYN (TFO:t) [Connect @s:p]
MPTCP connection through converter
@c @s
@t
SYN(MPC)
SYN+ACK (MPC(Ks))
SYN+ACK(MPC(Kc))
[ ExtTCPH(MPC(Ks)) ]
SYN (TFO:t,MPC)
[Connect @s:p]
Copy of the extended
TCP header returned
by server
TFO connection through the converter
@c @s
@t
SYN(TFO)
SYN+ACK (TFO:sc)
SYN+ACK [ ExtTCPH(TFO:sc) ]
SYN (TFO:t)
[Connect @s:p
TCPOpt:TFO]
Empty TFO option Server cookie: sc
Client learns
server cookie
Empty TFO
TFO connection through the converter
second connection to server
@c @s
@t
SYN(TFO:sc) Data
SYN+ACKSYN+ACK [ ]
SYN (TFO:t)
[Connect @s:p
TCPOpt:TFO:sc]
Data
Server recognises
cookie sc and
accepts data
About extensibility
• Two dimensions were considered in the design
– Extensibility of the Converter protocol
• Version number and TLV format ensure that the protocol can
be extended for different use cases
– Evolution of TCP
• Converter protocol is designed with MPTCP in mind, but
other TCP extensions could benefit from it as well
• Clients can detect which TCP options are supported by the
server and decide to bypass the converter
Criteria
Main criteria (email from Phil/Yoshi)
• No changes to MPTCP (RFC6824bis)
– Converter uses application layer protocol leveraging TFO
• Proxy is simple to operate and deploy
– Converter uses reserved service name/port
– Leverages on existing BCPs
• A session can be initiated from either end
• The set-up time is minimized
– 0-RTT leveraging TFO
• The design minimises the amount of overhead on data
– TLV messages appear only in SYN
– No encapsulation
• The solution works if end to end encryption is in use
Criteria
• Criteria specific to solutions for the single-ended proxy
scenario:
– the proxy is unlikely to be on both default paths
• No assumption is made about the location of the converter
– clarify whether the proxy simply forwards
• The Converter terminates TCP connections and maintains states as per
IETF BCPs
– allows hosts to have traffic that doesn’t get proxied
• Clients can bypass the converter (policies or if server supports)
– end host and proxy need to authenticate
• Other authentication and authorization schemes can be used such as
leveraging on the authentication required during network attachment
• Not in draft-00 but can be added as new TLV messages
Conclusion
• A NEW design which takes into account major
comments raised during email discussions
– Application level protocol
• Service name/port to be reserved by IANA
– Provides 0-RTT using TFO
– Client can bypass converter if server supports option
• We request WG adoption for charter item
– Finally, the working group will explore whether an
MPTCP-aware middlebox would be useful, where at
least one end host is MPTCP-enabled.
Backup slides
Fixed Header
• Sent by client and converter
Current version=1
Length of all
TLV messages in
blocks of 32 bits
The Connect TLV
IPv6 address
The Extended TCP Header TLV
Copy of the Extended
TCP header returned
by server in SYN+ACK
Bootstrap procedure
@c @s
@t
SYN+ACK (TFO:t) [ Supported TCP Options(MPTCP) ]
SYN (TFO)
[Bootstrap]
Empty TFO
TCP Extensions
supported by Converter
Converter
cookie
Bootstrap

More Related Content

PPTX
Innovation is back in the transport and network layers
PPTX
Making our networking stack truly extensible
PPTX
IPv6 Entreprise Multihoming
PPTX
IPv6 Segment Routing : an end-to-end solution ?
PPTX
10 routing-bgp
PPTX
BGP Advanced topics
PPTX
Implementing IPv6 Segment Routing in the Linux kernel
PPTX
Future Internet protocols
Innovation is back in the transport and network layers
Making our networking stack truly extensible
IPv6 Entreprise Multihoming
IPv6 Segment Routing : an end-to-end solution ?
10 routing-bgp
BGP Advanced topics
Implementing IPv6 Segment Routing in the Linux kernel
Future Internet protocols

What's hot (20)

PPT
Internet innovation with Multipath TCP
PPTX
12 ethernet-wifi
PPTX
TCPLS presentation @ietf 109
PPTX
Part 9 : Congestion control and IPv6
PPTX
Multipath TCP
PPTX
Building the Internet of Things with Thingsquare and Contiki - day 2 part 2
PDF
Beyond TCP: The evolution of Internet transport protocols
PPTX
Advanced Internet of Things firmware engineering with Thingsquare and Contiki...
PPT
Sctp tutorial
PPTX
Beyond TCP: The evolution of Internet transport protocols
PDF
Taking Security Groups to Ludicrous Speed with OVS (OpenStack Summit 2015)
PPTX
Part 11 : Interdomain routing with BGP
PPTX
ContikiMAC : Radio Duty Cycling Protocol
PDF
FreeRangeRouting - A new Quagga fork with more open development
PDF
BIRD Routing Daemon
PDF
MPLS + BGP Presentation
PPT
BGP Overview
PPT
PPT
Quality of Service(Queuing Methods)
Internet innovation with Multipath TCP
12 ethernet-wifi
TCPLS presentation @ietf 109
Part 9 : Congestion control and IPv6
Multipath TCP
Building the Internet of Things with Thingsquare and Contiki - day 2 part 2
Beyond TCP: The evolution of Internet transport protocols
Advanced Internet of Things firmware engineering with Thingsquare and Contiki...
Sctp tutorial
Beyond TCP: The evolution of Internet transport protocols
Taking Security Groups to Ludicrous Speed with OVS (OpenStack Summit 2015)
Part 11 : Interdomain routing with BGP
ContikiMAC : Radio Duty Cycling Protocol
FreeRangeRouting - A new Quagga fork with more open development
BIRD Routing Daemon
MPLS + BGP Presentation
BGP Overview
Quality of Service(Queuing Methods)
Ad

Similar to 0-RTT TCP converters (20)

PPTX
0-RTT TCP Converters
PDF
Transaction TCP
PDF
TFTP - Trivial File Transfer Protocol
PPTX
Privacy Enhanced RTP Conferencing with WebRTC - PERC
PPT
ftp.07f.ppt
PPTX
13 coms 525 tcpip - applications - file transfer protocol
PPT
TCP Over Wireless
PPTX
Tcp ip presentation
PDF
TCP - IP Presentation
PPT
Transmission Control Protocol (TCP) connection oriented
PDF
features of tcp important for the web
PPTX
File transfer protocol- Gowdham
PPT
Chap 19 ftp & tftp
PPT
Netkitmig
PDF
cisco-mpls-tp-solutions-moustafa-kattan.pdf
PPT
Ftp tftp
PDF
加快互联网核心协议,提高Web速度yuchungcheng
PPT
Ftp
PPTX
tcp-ippresentation-150614172243-lva1-app6892.pptx
PPT
patelchodu
0-RTT TCP Converters
Transaction TCP
TFTP - Trivial File Transfer Protocol
Privacy Enhanced RTP Conferencing with WebRTC - PERC
ftp.07f.ppt
13 coms 525 tcpip - applications - file transfer protocol
TCP Over Wireless
Tcp ip presentation
TCP - IP Presentation
Transmission Control Protocol (TCP) connection oriented
features of tcp important for the web
File transfer protocol- Gowdham
Chap 19 ftp & tftp
Netkitmig
cisco-mpls-tp-solutions-moustafa-kattan.pdf
Ftp tftp
加快互联网核心协议,提高Web速度yuchungcheng
Ftp
tcp-ippresentation-150614172243-lva1-app6892.pptx
patelchodu
Ad

More from Olivier Bonaventure (20)

PPTX
Part3-reliable.pptx
PPTX
Part10-router.pptx
PPTX
Part1-Intro-Apps.pptx
PPTX
Part9-congestion.pptx
PPTX
Part2-Apps-Security.pptx
PPTX
Part11-lan.pptx
PPTX
Part5-tcp-improvements.pptx
PPTX
Part8-ibgp.pptx
PPTX
Part4-reliable-tcp.pptx
PPTX
Part7-routing.pptx
PPTX
Part6-network-routing.pptx
PPTX
Part1-Intro-Apps.pptx
PPTX
Part2-Apps-Security.pptx
PPTX
Part4-reliable-tcp.pptx
PPTX
Part3-reliable.pptx
PPTX
A personal journey towards more reproducible networking research
PPTX
Part 12 : Local Area Networks
PPTX
Part 10 : Routing in IP networks and interdomain routing with BGP
PPTX
Part 8 : TCP and Congestion control
PPTX
Part 7 : HTTP/2, UDP and TCP
Part3-reliable.pptx
Part10-router.pptx
Part1-Intro-Apps.pptx
Part9-congestion.pptx
Part2-Apps-Security.pptx
Part11-lan.pptx
Part5-tcp-improvements.pptx
Part8-ibgp.pptx
Part4-reliable-tcp.pptx
Part7-routing.pptx
Part6-network-routing.pptx
Part1-Intro-Apps.pptx
Part2-Apps-Security.pptx
Part4-reliable-tcp.pptx
Part3-reliable.pptx
A personal journey towards more reproducible networking research
Part 12 : Local Area Networks
Part 10 : Routing in IP networks and interdomain routing with BGP
Part 8 : TCP and Congestion control
Part 7 : HTTP/2, UDP and TCP

Recently uploaded (20)

PDF
The Internet -By the Numbers, Sri Lanka Edition
PDF
Tenda Login Guide: Access Your Router in 5 Easy Steps
PDF
Slides PDF The World Game (s) Eco Economic Epochs.pdf
PPTX
Power Point - Lesson 3_2.pptx grad school presentation
PPTX
international classification of diseases ICD-10 review PPT.pptx
DOCX
Unit-3 cyber security network security of internet system
PPTX
INTERNET------BASICS-------UPDATED PPT PRESENTATION
PPTX
SAP Ariba Sourcing PPT for learning material
PDF
Sims 4 Historia para lo sims 4 para jugar
PPTX
E -tech empowerment technologies PowerPoint
PDF
Introduction to the IoT system, how the IoT system works
PPTX
Introuction about WHO-FIC in ICD-10.pptx
PDF
Unit-1 introduction to cyber security discuss about how to secure a system
PPT
Design_with_Watersergyerge45hrbgre4top (1).ppt
PDF
FINAL CALL-6th International Conference on Networks & IOT (NeTIOT 2025)
PDF
Decoding a Decade: 10 Years of Applied CTI Discipline
PPTX
Slides PPTX World Game (s) Eco Economic Epochs.pptx
PPTX
Introduction to Information and Communication Technology
PDF
WebRTC in SignalWire - troubleshooting media negotiation
PPT
isotopes_sddsadsaadasdasdasdasdsa1213.ppt
The Internet -By the Numbers, Sri Lanka Edition
Tenda Login Guide: Access Your Router in 5 Easy Steps
Slides PDF The World Game (s) Eco Economic Epochs.pdf
Power Point - Lesson 3_2.pptx grad school presentation
international classification of diseases ICD-10 review PPT.pptx
Unit-3 cyber security network security of internet system
INTERNET------BASICS-------UPDATED PPT PRESENTATION
SAP Ariba Sourcing PPT for learning material
Sims 4 Historia para lo sims 4 para jugar
E -tech empowerment technologies PowerPoint
Introduction to the IoT system, how the IoT system works
Introuction about WHO-FIC in ICD-10.pptx
Unit-1 introduction to cyber security discuss about how to secure a system
Design_with_Watersergyerge45hrbgre4top (1).ppt
FINAL CALL-6th International Conference on Networks & IOT (NeTIOT 2025)
Decoding a Decade: 10 Years of Applied CTI Discipline
Slides PPTX World Game (s) Eco Economic Epochs.pptx
Introduction to Information and Communication Technology
WebRTC in SignalWire - troubleshooting media negotiation
isotopes_sddsadsaadasdasdasdasdsa1213.ppt

0-RTT TCP converters

  • 1. 0-RTT TCP Converters draft-bonaventure-mptcp-converters-01 IETF99, July 2017 O. Bonaventure M. Boucadair B. Peirens
  • 2. Motivation • Instead of tuning MPTCP to cope with middleboxes, can we design middleboxes that would benefit to MPTCP ?
  • 4. Converter • Motivation – Far more MPTCP enabled clients than MPTCP enabled servers – Clients want to benefit from MPTCP at least on a fraction of the end-to-end path
  • 5. Key points of email discussion • Using the converter should not significantly increase the connection establishment delay – 0-RTT • Clients can decide to use a converter based on policies • Clients should be able to bypass the converter when the server supports MPTCP • TFO must be used if data is placed in SYN – For client-converter exchanges – Clients using converter should still be able to use TFO with servers • The design should be extensible and future-proof… • …and should avoid defining new TCP Options
  • 6. A cleaner design • Converter Protocol is an application-level protocol listening on a specific TCP port • Client commands and converter responses are encoded as TLV messages – Ensures extensibility • Converter Protocol leverages TFO – Commands and responses can be sent inside SYNs • Clients can learn TCP options supported by servers – Allows clients to bypass the converter
  • 7. A Simplified example @c @s @t SYN SYN+ACK SYN+ACK [ ] TLV message in SYN payload TCP Options TFO cookie (t) from converter SYN (TFO:t) [Connect @s:p]
  • 8. MPTCP connection through converter @c @s @t SYN(MPC) SYN+ACK (MPC(Ks)) SYN+ACK(MPC(Kc)) [ ExtTCPH(MPC(Ks)) ] SYN (TFO:t,MPC) [Connect @s:p] Copy of the extended TCP header returned by server
  • 9. TFO connection through the converter @c @s @t SYN(TFO) SYN+ACK (TFO:sc) SYN+ACK [ ExtTCPH(TFO:sc) ] SYN (TFO:t) [Connect @s:p TCPOpt:TFO] Empty TFO option Server cookie: sc Client learns server cookie Empty TFO
  • 10. TFO connection through the converter second connection to server @c @s @t SYN(TFO:sc) Data SYN+ACKSYN+ACK [ ] SYN (TFO:t) [Connect @s:p TCPOpt:TFO:sc] Data Server recognises cookie sc and accepts data
  • 11. About extensibility • Two dimensions were considered in the design – Extensibility of the Converter protocol • Version number and TLV format ensure that the protocol can be extended for different use cases – Evolution of TCP • Converter protocol is designed with MPTCP in mind, but other TCP extensions could benefit from it as well • Clients can detect which TCP options are supported by the server and decide to bypass the converter
  • 12. Criteria Main criteria (email from Phil/Yoshi) • No changes to MPTCP (RFC6824bis) – Converter uses application layer protocol leveraging TFO • Proxy is simple to operate and deploy – Converter uses reserved service name/port – Leverages on existing BCPs • A session can be initiated from either end • The set-up time is minimized – 0-RTT leveraging TFO • The design minimises the amount of overhead on data – TLV messages appear only in SYN – No encapsulation • The solution works if end to end encryption is in use
  • 13. Criteria • Criteria specific to solutions for the single-ended proxy scenario: – the proxy is unlikely to be on both default paths • No assumption is made about the location of the converter – clarify whether the proxy simply forwards • The Converter terminates TCP connections and maintains states as per IETF BCPs – allows hosts to have traffic that doesn’t get proxied • Clients can bypass the converter (policies or if server supports) – end host and proxy need to authenticate • Other authentication and authorization schemes can be used such as leveraging on the authentication required during network attachment • Not in draft-00 but can be added as new TLV messages
  • 14. Conclusion • A NEW design which takes into account major comments raised during email discussions – Application level protocol • Service name/port to be reserved by IANA – Provides 0-RTT using TFO – Client can bypass converter if server supports option • We request WG adoption for charter item – Finally, the working group will explore whether an MPTCP-aware middlebox would be useful, where at least one end host is MPTCP-enabled.
  • 16. Fixed Header • Sent by client and converter Current version=1 Length of all TLV messages in blocks of 32 bits
  • 18. The Extended TCP Header TLV Copy of the Extended TCP header returned by server in SYN+ACK
  • 19. Bootstrap procedure @c @s @t SYN+ACK (TFO:t) [ Supported TCP Options(MPTCP) ] SYN (TFO) [Bootstrap] Empty TFO TCP Extensions supported by Converter Converter cookie