SlideShare a Scribd company logo
1 of 53
Innovation is back in the
transport and network layers
Olivier Bonaventure
http://inl.info.ucl.ac.be
February 2018
Agenda
• Today's Internet
• Transport Layer : evolution or revolution ?
– Multipath TCP
– QUIC
• Network Layer evolution
– IPv6 Segment Routing
The Protocol Hourglasss
Steve Deering, IETF 51, London, August 2001
Innovation in the protocol hourglass
• Higher layers
– Lots of innovation in the applications even if HTTP and
TLS play a very important role
• Lower layers
– Lots of innovation with new wireless and fixed local
area network technologies
• Network and transport layers
– It took us 20 years to deploy IPv6
– SCTP, DCCP, HIP, shim6, did not get enough traction
Why is innovation so difficult
in the network layer ?
• The Internet is already too large
• Any change in the network layer involves a too
large number of stakeholders
• Why was IPv6 eventually deployed ?
Source http://www.potaroo.net/ispcol/2018-01/addr2017.html
Why is innovation so difficult
in the transport layer ?
• Application developers will use a new
transport protocol if it gives benefits and has a
large installed based
• Kernel developers will implement and deploy
a new transport if it gives benefits and is
requested by many application developers
But there is another hurdle …
• Internet architecture as seen by students
Physical
Datalink
Network
Transport
Application
Physical
Physical
Datalink
Physical
Datalink
Network
O. Bonaventure, Computer networking : Principles, Protocols and Practice, open ebook, http://cnp3book.info.ucl.ac.be
The end-to-end principle
Physical
Datalink
Network
Transport
Application
Physical
Datalink
Network
Transport
Application
Physical
Datalink
Network
Physical
Datalink
TCP
In reality
– almost as many middleboxes as routers
– various types of middleboxes are deployed
Sherry, Justine, et al. "Making middleboxes someone else's problem: Network processing as a cloud service."
Proceedings of the ACM SIGCOMM 2012 conference. ACM, 2012.
A middlebox zoo
http://www.cisco.com/web/about/ac50/ac47/2.html
Web Security
Appliance
NAC Appliance
ACE XML
Gateway
Streamer
VPN Concentrator
SSL
Terminator
Cisco IOS Firewall
IP Telephony
Router
PIX Firewall
Right and Left
Voice
GatewayVVVV
Content
Engine
NAT
How to model those middleboxes ?
• In the official architecture, they do not exist
• In reality...
Physical
Datalink
Network
Transport
Application
Physical
Datalink
Network
Transport
Application
Physical
Datalink
Network
TCP
Physical
Datalink
Network
Transport
Application
TCP segments processed by a router
Source port Destination port
Checksum Urgent pointer
THL Reserved Flags
Acknowledgment number
Sequence number
Window
Ver IHL ToS Total length
ChecksumTTL Protocol
Flags Frag. Offset
Source IP address
Identification
Destination IP address
Payload
Options
Source port Destination port
Checksum Urgent pointer
THL Reserved Flags
Acknowledgment number
Sequence number
Window
Ver IHL ToS Total length
ChecksumTTL Protocol
Flags Frag. Offset
Source IP address
Identification
Destination IP address
Payload
Options
IP
TCP
TCP segments processed by a NAT
Source port Destination port
Checksum Urgent pointer
THL Reserved Flags
Acknowledgment number
Sequence number
Window
Ver IHL ToS Total length
ChecksumTTL Protocol
Flags Frag. Offset
Source IP address
Identification
Destination IP address
Payload
Options
Source port Destination port
Checksum Urgent pointer
THL Reserved Flags
Acknowledgment number
Sequence number
Window
Ver IHL ToS Total length
ChecksumTTL Protocol
Flags Frag. Offset
Source IP address
Identification
Destination IP address
Payload
Options
Problems caused by middleboxes
• Most middleboxes make assumptions about
the format of protocol headers
– Headers changes are almost impossible
• Many middleboxes modify some fields of the
network and/or transport header
– A field set by the client may not reach the server
• Many middleboxes restrict the utilisation of
protocol extensions that they do not support
– Firewalls are the classical example
End-to-end transparency today
Source port Destination port
Checksum Urgent pointer
THL Reserved Flags
Acknowledgment number
Sequence number
Window
Ver IHL ToS Total length
ChecksumTTL Protocol
Flags Frag. Offset
Source IP address
Identification
Destination IP address
Payload
Options
Source port Destination port
Checksum Urgent pointer
THL Reserved Flags
Acknowledgment number
Sequence number
Window
Ver IHL ToS Total length
ChecksumTTL Protocol
Flags Frag. Offset
Source IP address
Identification
Destination IP address
Payload
Options
Middleboxes don't change
the Protocol field, but
many discard packets with an
unknown Protocol field
Agenda
• Today's Internet
• Transport Layer : evolution or revolution ?
– Multipath TCP
– QUIC
• Network Layer evolution
– IPv6 Segment Routing
Design objectives
• Multipath TCP is an evolution of TCP
• Design objectives
– Support unmodified applications
– Work over today’s networks (IPv4 and IPv6)
– Works in all networks where regular TCP works
A naïve Multipath TCP
SYN+ACK+Option
ACK
seq=123, "abc"
seq=126, "def"
SYN+Option
A naïve Multipath TCP
In today's Internet ?
SYN+Option
SYN+ACK+Option
ACK
seq=123, "abc"
seq=126, "def"
There is no
corresponding
TCP connection
Design decision
– A Multipath TCP connection is composed of one or
more regular TCP subflows that are combined
• Each host maintains state that glues the TCP subflows
that compose a Multipath TCP connection together
• Each TCP subflow is sent over a single path and appears
like a regular TCP connection along this path
Multipath TCP and the architecture
Physical
Datalink
Network
Transport
Application Multipath TCP
TCP1
socket
TCP2 TCPn...
Application
A. Ford, C. Raiciu, M. Handley, S. Barre, and J. Iyengar, “Architectural guidelines for multipath TCP
development", RFC6182 2011.
A regular TCP connection
• What is a regular TCP connection ?
– It starts with a three-way handshake
• SYN segments may contain special options
– All data segments are sent in sequence
• There is no gap in the sequence numbers
– It is terminated by using FIN or RST
Multipath TCP
SYN+MP_CAPABLE
SYN+ACK+MP_CAPABLE
ACK
SYN+MP_JOIN
SYN+ACK+MP_JOIN
ACK
TCP subflows
• Which subflows can be associated to a
Multipath TCP connection ?
– At least one of the elements of the four-tuple
needs to differ between two subflows
• Local IP address
• Remote IP address
• Local port
• Remote port
• Number of subflows can change during the
lifetime of a Multipath TCP connection
How to transfer data ?
seq=123,"a"
seq=124,"b"
seq=125,"c"
seq=126,"d"
ack=124
ack=126
ack=125
ack=127
How to transfer data
in today's Internet ?
seq=123,"a"
seq=124,"b"
seq=125,"c"
ack=124
ack=126
ack=125
Gap in sequence numbering space
Some DPI will not allow this !
Multipath TCP Data transfer
• Two levels of sequence numbers
Multipath TCP
TCP1
socket
TCP2
Multipath TCP
TCP1
socket
TCP2
ABCDEF
Data sequence #
TCP1 sequence #
TCP2 sequence #
A. Ford, C. Raiciu, M. J. Handley, and O. Bonaventure, “TCP Extensions for
Multipath Operation with Multiple Addresses,” RFC6824, 2013
Multipath TCP
Data transfer
Dseq=0,seq=123,"a"
DSeq=1, seq=456,"b"
DSeq=2, seq=124,"c"
DAck=1,ack=124
DAck=3, ack=125
DAck=2,ack=457
Multipath TCP
How to deal with losses ?
• Data losses over one TCP subflow
– Fast retransmit and timeout as in regular TCP
Dseq=0,seq=123,"a"
DAck=1,ack=12
4Dseq=0,seq=123,"a"
DAck=1,ack=124
Multipath TCP
• What happens when a TCP subflow fails ?
Dseq=0,seq=123,"a"
DSeq=1, seq=456,"b"
DAck=0,ack=457
Dseq=0,seq=457,"a"
DAck=2,ack=458
Multipath TCP use cases
High bandwidth on smartphones
• Koreans want 800+ Mbps on smartphones
WiFi
4G/LTE
Multipath TCP Regular TCP
SOCKS
O. Bonaventure, S. Seo, Multipath TCP Deployments, IETF Journal, November 2016,
http://www.ietfjournal.org/multipath-tcp-deployments/
Multipath TCP use cases
Low latency for Siri since 2013
• Long-lived TLS connections
WiFi
3G/LTE
Voice samples
Voice samples
On iOS11, any app can
Use Multipath TCP
O. Bonaventure, S. Seo, Multipath TCP Deployments, IETF Journal, November 2016,
http://www.ietfjournal.org/multipath-tcp-deployments/
Faster broadband networks ?
Multipath TCP use cases
Hybrid Access Networks
DSL
4G/LTE
Multipath TCP Regular TCP
Hybrid Access
Gateway
TCP
TCP
See https://www.tessares.net and
O. Bonaventure, M. Boucadair, B. Peirens, S. Seo, A. Nandugudi, 0-RTT TCP Converter, draft-ietf-tcpm-converters-00,
Feb. 2018
Why is Multipath TCP interesting for
networking researchers ?
• Availability of multiple paths opens new questions
– Path management
• When should a host create a subflow ?
• When should a host terminate a subflow ?
– Packet scheduling
• Which data should be sent over which subflow ?
• How to perform retransmissions when there are n subflows ?
– Congestion control
• Becomes a spatial problem and not anymore a temporal one
• Commercial deployment and open-source implem.
– http://www.multipath-tcp.org
Agenda
• Today's Internet
• Transport Layer : evolution or revolution ?
– Multipath TCP
– QUIC
• Network Layer evolution
– IPv6 Segment Routing
Google's quest for a faster web
• How to reduce web request latencies ?
– Deploy Google caches everywhere
– Tune TCP within the IETF
• Increase TCP's initial congestion window
• Tail Loss Probe
• TCP Fast Open
– Tune HTTP
• SPDY
• HTTP/2
– Tune TLS with TLS1.3
[RFC6829]
[RFC7413]
[RFC7540]
A conversation at IETF'93
Can you improve web performance
influencing both endpoints ?
The QUIC revolution
• What are the benefits ?
– Deploy without convincing kernel developers/ SDO
HTTP/2
TLS
TCP
IP
Application
QUIC
IP
Application
UDP
QUIC evolves quickly
J. Ruth, et al. "A First Look at QUIC in the Wild" PAM2018, to appear, https://arxiv.org/abs/1801.05168
Who is using QUIC today ?
J. Ruth, et al. "A First Look at QUIC in the Wild" PAM2018, to appear, https://arxiv.org/abs/1801.05168
QUIC handshake
• No delay (0-rtt) between connection
establishment and web request/response
– Needs to remain secure
Client Hello
Server Hello
Encrypted request
Server Response
QUIC Handshake (2)
• Full handshake
Client Hello[incomplete]
Reject[Cert, H(CIP,Secret), ServerDHpubkey]
Server Hello [ServerDHkey, …]initialkey
Client Hello[H(CIP,Secret),ClientDHkey…]
Encrypted Request[GET …] initialkey
Encrypted Response[ServerDHkey, …]sessionkey
Main features of QUIC
• Support for multiple bytestreams
– Required for HTTP/2, but opens many possibilities
• Almost everything is encrypted (most headers)
– Prevents ossification caused by middleboxes
• Extensible protocol design
– Easy to add new frames
• Flexible packet numbering schemes
– Sequence numbers are never reused
• Flow control, congestion control
– Easy to add a new congestion control scheme
Why is QUIC interesting
for networking researchers
• QUIC is implemented in user space
– This makes experimentation much easier than
kernel space protocols
– It is easy for researchers to deploy QUIC+ apps
– Several open-source implementations exist
• QUIC is easy to extend
– Easy to add new types of frames
– Sample extension : Multipath QUIC, see
http://www.multipath-quic.org
Agenda
• Today's Internet
• Transport Layer : evolution or revolution ?
– Multipath TCP
– QUIC
• Network Layer evolution
– IPv6 Segment Routing
Segment Routing
• A radical simplification of MPLS networks
• Basic principles
– Data plane is unchanged (32 bits shim header)
– Control plane becomes much simpler
• LDP
• RSVP-TE
• BGP
• OSPF or ISIS Simple extension
Segment Routing in one slide
• Each router has a label advertised by the IGP
– Packets follow shortest path to top label
R1
R4
R3
R5
R2 R7
R8 R9
100
3:7
3:7 7
8:4:7:3 4:7:3
7:3 7:3
3
Benefits Segment Routing
for network researchers
• Any network path becomes a succession of
shortest paths
• Reconsider algorithms to solves problems like
– Traffic engineering
• SR is different than IGP weights or MPLS tunnels
– Disjoint paths for resilience and fast reroute
– Monitoring
• With SR, a monitoring station can send packets on a
loop so that they return back to itselfs
IPv6 Segment Routing
• Differences with regular Segment Routing
– 128 bits IPv6 addresses are used to encode
intermediate nodes
• Router loopback addresses
• Network interface addresses
• Endhost addresses
– New IPv6 Extension Header inside each packet
– Endhosts can actively participate in the creation of
segmented paths
IPv6 Segment Routing
Network Programming
• IPv6 SR enables more than non-shortest paths
– Each nodes advertises one or more prefixes
R4 R5
R2 R7
R8 R9
IGP : 2001:…:4/40
FCT1:param
FCT2:param
Locator Function Param
C. Filsfils et al., SRv6 Network Programming, draft-filsfils-spring-srv6-
network-programming-03, Dec. 2017
Conclusion
• Innovation is back in the core Internet protocols
– Network researchers should participate
• Multipath TCP
– Spatial dimension opens many new challenges
• QUIC
– Truly extensible secure transport, interesting
opportunities
• IPv6 Segment Routing
– Non shortest paths and network programming
http://www.multipath-tcp.org
http://www.segment-routing.org
http://fd.io
https://quicwg.github.io

More Related Content

What's hot

Multipath TCP
Multipath TCPMultipath TCP
Multipath TCP
Olivier Bonaventure
 

What's hot (20)

BGP Advanced topics
BGP Advanced topicsBGP Advanced topics
BGP Advanced topics
 
Building the Internet of Things with Thingsquare and Contiki - day 2 part 2
Building the Internet of Things with Thingsquare and Contiki - day 2 part 2Building the Internet of Things with Thingsquare and Contiki - day 2 part 2
Building the Internet of Things with Thingsquare and Contiki - day 2 part 2
 
Multipath TCP
Multipath TCPMultipath TCP
Multipath TCP
 
Part 11 : Interdomain routing with BGP
Part 11 : Interdomain routing with BGPPart 11 : Interdomain routing with BGP
Part 11 : Interdomain routing with BGP
 
BIRD Routing Daemon
BIRD Routing DaemonBIRD Routing Daemon
BIRD Routing Daemon
 
SEGMENT Routing
SEGMENT RoutingSEGMENT Routing
SEGMENT Routing
 
Building day 2 upload Building the Internet of Things with Thingsquare and ...
Building day 2   upload Building the Internet of Things with Thingsquare and ...Building day 2   upload Building the Internet of Things with Thingsquare and ...
Building day 2 upload Building the Internet of Things with Thingsquare and ...
 
Taking Security Groups to Ludicrous Speed with OVS (OpenStack Summit 2015)
Taking Security Groups to Ludicrous Speed with OVS (OpenStack Summit 2015)Taking Security Groups to Ludicrous Speed with OVS (OpenStack Summit 2015)
Taking Security Groups to Ludicrous Speed with OVS (OpenStack Summit 2015)
 
EVPN Introduction
EVPN IntroductionEVPN Introduction
EVPN Introduction
 
Sctp tutorial
Sctp tutorialSctp tutorial
Sctp tutorial
 
BGP Overview
BGP OverviewBGP Overview
BGP Overview
 
Mpls
MplsMpls
Mpls
 
MPLS + BGP Presentation
MPLS + BGP PresentationMPLS + BGP Presentation
MPLS + BGP Presentation
 
FreeRangeRouting - A new Quagga fork with more open development
FreeRangeRouting - A new Quagga fork with more open developmentFreeRangeRouting - A new Quagga fork with more open development
FreeRangeRouting - A new Quagga fork with more open development
 
Silverlight Wireshark Analysis
Silverlight Wireshark AnalysisSilverlight Wireshark Analysis
Silverlight Wireshark Analysis
 
Ingest oct-9-update
Ingest oct-9-updateIngest oct-9-update
Ingest oct-9-update
 
CMAF Live Ingest Uplink Protocol
CMAF Live Ingest Uplink ProtocolCMAF Live Ingest Uplink Protocol
CMAF Live Ingest Uplink Protocol
 
SDN Traffic Engineering, A Natural Evolution
SDN Traffic Engineering, A Natural EvolutionSDN Traffic Engineering, A Natural Evolution
SDN Traffic Engineering, A Natural Evolution
 
Traffic Engineering Using Segment Routing
Traffic Engineering Using Segment Routing Traffic Engineering Using Segment Routing
Traffic Engineering Using Segment Routing
 
IP/MAC Address Translation
IP/MAC Address TranslationIP/MAC Address Translation
IP/MAC Address Translation
 

Similar to Innovation is back in the transport and network layers

Web technologies: recap on TCP-IP
Web technologies: recap on TCP-IPWeb technologies: recap on TCP-IP
Web technologies: recap on TCP-IP
Piero Fraternali
 
Ip, the internet & its impact on the maritime industry paul jolley-v1-2012
Ip, the internet & its impact on the maritime industry paul jolley-v1-2012Ip, the internet & its impact on the maritime industry paul jolley-v1-2012
Ip, the internet & its impact on the maritime industry paul jolley-v1-2012
Wire & Ether Communications
 
A new perspective on Network Visibility - RISK 2015
A new perspective on Network Visibility - RISK 2015A new perspective on Network Visibility - RISK 2015
A new perspective on Network Visibility - RISK 2015
Network Performance Channel GmbH
 
Intro to Project Calico: a pure layer 3 approach to scale-out networking
Intro to Project Calico: a pure layer 3 approach to scale-out networkingIntro to Project Calico: a pure layer 3 approach to scale-out networking
Intro to Project Calico: a pure layer 3 approach to scale-out networking
Packet
 

Similar to Innovation is back in the transport and network layers (20)

Beyond TCP: The evolution of Internet transport protocols
Beyond TCP: The evolution of Internet transport protocolsBeyond TCP: The evolution of Internet transport protocols
Beyond TCP: The evolution of Internet transport protocols
 
Protocol and Integration Challenges for SDN
Protocol and Integration Challenges for SDNProtocol and Integration Challenges for SDN
Protocol and Integration Challenges for SDN
 
FD.IO Vector Packet Processing
FD.IO Vector Packet ProcessingFD.IO Vector Packet Processing
FD.IO Vector Packet Processing
 
FD.io Vector Packet Processing (VPP)
FD.io Vector Packet Processing (VPP)FD.io Vector Packet Processing (VPP)
FD.io Vector Packet Processing (VPP)
 
Cleaning Up the Dirt of the Nineties - How New Protocols are Modernizing the Web
Cleaning Up the Dirt of the Nineties - How New Protocols are Modernizing the WebCleaning Up the Dirt of the Nineties - How New Protocols are Modernizing the Web
Cleaning Up the Dirt of the Nineties - How New Protocols are Modernizing the Web
 
Primer to Browser Netwroking
Primer to Browser NetwrokingPrimer to Browser Netwroking
Primer to Browser Netwroking
 
02 coms 525 tcpip - introduction to tcpip
02   coms 525 tcpip -  introduction to tcpip02   coms 525 tcpip -  introduction to tcpip
02 coms 525 tcpip - introduction to tcpip
 
WebRTC DataChannels demystified
WebRTC DataChannels demystifiedWebRTC DataChannels demystified
WebRTC DataChannels demystified
 
Master Class : TCP/IP Mechanics from Scratch to Expert
Master Class : TCP/IP Mechanics from Scratch to ExpertMaster Class : TCP/IP Mechanics from Scratch to Expert
Master Class : TCP/IP Mechanics from Scratch to Expert
 
In Defence of NATs
In Defence of NATsIn Defence of NATs
In Defence of NATs
 
2018 10-31 modern-http_routing-lisa18
2018 10-31 modern-http_routing-lisa182018 10-31 modern-http_routing-lisa18
2018 10-31 modern-http_routing-lisa18
 
Web technologies: recap on TCP-IP
Web technologies: recap on TCP-IPWeb technologies: recap on TCP-IP
Web technologies: recap on TCP-IP
 
Migration of corperate networks from ipv4 to ipv6 using dual stack
Migration of corperate networks from ipv4 to ipv6 using dual stackMigration of corperate networks from ipv4 to ipv6 using dual stack
Migration of corperate networks from ipv4 to ipv6 using dual stack
 
DPDK summit 2015: It's kind of fun to do the impossible with DPDK
DPDK summit 2015: It's kind of fun  to do the impossible with DPDKDPDK summit 2015: It's kind of fun  to do the impossible with DPDK
DPDK summit 2015: It's kind of fun to do the impossible with DPDK
 
DPDK Summit 2015 - NTT - Yoshihiro Nakajima
DPDK Summit 2015 - NTT - Yoshihiro NakajimaDPDK Summit 2015 - NTT - Yoshihiro Nakajima
DPDK Summit 2015 - NTT - Yoshihiro Nakajima
 
Ip, the internet & its impact on the maritime industry paul jolley-v1-2012
Ip, the internet & its impact on the maritime industry paul jolley-v1-2012Ip, the internet & its impact on the maritime industry paul jolley-v1-2012
Ip, the internet & its impact on the maritime industry paul jolley-v1-2012
 
A new perspective on Network Visibility - RISK 2015
A new perspective on Network Visibility - RISK 2015A new perspective on Network Visibility - RISK 2015
A new perspective on Network Visibility - RISK 2015
 
Tcp model by ananya shukla
Tcp model by ananya shuklaTcp model by ananya shukla
Tcp model by ananya shukla
 
Intro to Project Calico: a pure layer 3 approach to scale-out networking
Intro to Project Calico: a pure layer 3 approach to scale-out networkingIntro to Project Calico: a pure layer 3 approach to scale-out networking
Intro to Project Calico: a pure layer 3 approach to scale-out networking
 
L6 6 lowpan
L6 6 lowpanL6 6 lowpan
L6 6 lowpan
 

More from Olivier Bonaventure

More from Olivier Bonaventure (20)

Part3-reliable.pptx
Part3-reliable.pptxPart3-reliable.pptx
Part3-reliable.pptx
 
Part10-router.pptx
Part10-router.pptxPart10-router.pptx
Part10-router.pptx
 
Part1-Intro-Apps.pptx
Part1-Intro-Apps.pptxPart1-Intro-Apps.pptx
Part1-Intro-Apps.pptx
 
Part9-congestion.pptx
Part9-congestion.pptxPart9-congestion.pptx
Part9-congestion.pptx
 
Part2-Apps-Security.pptx
Part2-Apps-Security.pptxPart2-Apps-Security.pptx
Part2-Apps-Security.pptx
 
Part11-lan.pptx
Part11-lan.pptxPart11-lan.pptx
Part11-lan.pptx
 
Part5-tcp-improvements.pptx
Part5-tcp-improvements.pptxPart5-tcp-improvements.pptx
Part5-tcp-improvements.pptx
 
Part8-ibgp.pptx
Part8-ibgp.pptxPart8-ibgp.pptx
Part8-ibgp.pptx
 
Part4-reliable-tcp.pptx
Part4-reliable-tcp.pptxPart4-reliable-tcp.pptx
Part4-reliable-tcp.pptx
 
Part7-routing.pptx
Part7-routing.pptxPart7-routing.pptx
Part7-routing.pptx
 
Part6-network-routing.pptx
Part6-network-routing.pptxPart6-network-routing.pptx
Part6-network-routing.pptx
 
Part1-Intro-Apps.pptx
Part1-Intro-Apps.pptxPart1-Intro-Apps.pptx
Part1-Intro-Apps.pptx
 
Part2-Apps-Security.pptx
Part2-Apps-Security.pptxPart2-Apps-Security.pptx
Part2-Apps-Security.pptx
 
Part4-reliable-tcp.pptx
Part4-reliable-tcp.pptxPart4-reliable-tcp.pptx
Part4-reliable-tcp.pptx
 
Part3-reliable.pptx
Part3-reliable.pptxPart3-reliable.pptx
Part3-reliable.pptx
 
A personal journey towards more reproducible networking research
A personal journey towards more reproducible networking researchA personal journey towards more reproducible networking research
A personal journey towards more reproducible networking research
 
Part 12 : Local Area Networks
Part 12 : Local Area Networks Part 12 : Local Area Networks
Part 12 : Local Area Networks
 
Part 10 : Routing in IP networks and interdomain routing with BGP
Part 10 : Routing in IP networks and interdomain routing with BGPPart 10 : Routing in IP networks and interdomain routing with BGP
Part 10 : Routing in IP networks and interdomain routing with BGP
 
Part 9 : Congestion control and IPv6
Part 9 : Congestion control and IPv6Part 9 : Congestion control and IPv6
Part 9 : Congestion control and IPv6
 
Part 8 : TCP and Congestion control
Part 8 : TCP and Congestion controlPart 8 : TCP and Congestion control
Part 8 : TCP and Congestion control
 

Recently uploaded

Kuwait City MTP kit ((+919101817206)) Buy Abortion Pills Kuwait
Kuwait City MTP kit ((+919101817206)) Buy Abortion Pills KuwaitKuwait City MTP kit ((+919101817206)) Buy Abortion Pills Kuwait
Kuwait City MTP kit ((+919101817206)) Buy Abortion Pills Kuwait
jaanualu31
 
Standard vs Custom Battery Packs - Decoding the Power Play
Standard vs Custom Battery Packs - Decoding the Power PlayStandard vs Custom Battery Packs - Decoding the Power Play
Standard vs Custom Battery Packs - Decoding the Power Play
Epec Engineered Technologies
 
scipt v1.pptxcxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx...
scipt v1.pptxcxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx...scipt v1.pptxcxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx...
scipt v1.pptxcxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx...
HenryBriggs2
 
Integrated Test Rig For HTFE-25 - Neometrix
Integrated Test Rig For HTFE-25 - NeometrixIntegrated Test Rig For HTFE-25 - Neometrix
Integrated Test Rig For HTFE-25 - Neometrix
Neometrix_Engineering_Pvt_Ltd
 

Recently uploaded (20)

Kuwait City MTP kit ((+919101817206)) Buy Abortion Pills Kuwait
Kuwait City MTP kit ((+919101817206)) Buy Abortion Pills KuwaitKuwait City MTP kit ((+919101817206)) Buy Abortion Pills Kuwait
Kuwait City MTP kit ((+919101817206)) Buy Abortion Pills Kuwait
 
Signal Processing and Linear System Analysis
Signal Processing and Linear System AnalysisSignal Processing and Linear System Analysis
Signal Processing and Linear System Analysis
 
Memory Interfacing of 8086 with DMA 8257
Memory Interfacing of 8086 with DMA 8257Memory Interfacing of 8086 with DMA 8257
Memory Interfacing of 8086 with DMA 8257
 
PE 459 LECTURE 2- natural gas basic concepts and properties
PE 459 LECTURE 2- natural gas basic concepts and propertiesPE 459 LECTURE 2- natural gas basic concepts and properties
PE 459 LECTURE 2- natural gas basic concepts and properties
 
8th International Conference on Soft Computing, Mathematics and Control (SMC ...
8th International Conference on Soft Computing, Mathematics and Control (SMC ...8th International Conference on Soft Computing, Mathematics and Control (SMC ...
8th International Conference on Soft Computing, Mathematics and Control (SMC ...
 
S1S2 B.Arch MGU - HOA1&2 Module 3 -Temple Architecture of Kerala.pptx
S1S2 B.Arch MGU - HOA1&2 Module 3 -Temple Architecture of Kerala.pptxS1S2 B.Arch MGU - HOA1&2 Module 3 -Temple Architecture of Kerala.pptx
S1S2 B.Arch MGU - HOA1&2 Module 3 -Temple Architecture of Kerala.pptx
 
8086 Microprocessor Architecture: 16-bit microprocessor
8086 Microprocessor Architecture: 16-bit microprocessor8086 Microprocessor Architecture: 16-bit microprocessor
8086 Microprocessor Architecture: 16-bit microprocessor
 
Max. shear stress theory-Maximum Shear Stress Theory ​ Maximum Distortional ...
Max. shear stress theory-Maximum Shear Stress Theory ​  Maximum Distortional ...Max. shear stress theory-Maximum Shear Stress Theory ​  Maximum Distortional ...
Max. shear stress theory-Maximum Shear Stress Theory ​ Maximum Distortional ...
 
Online food ordering system project report.pdf
Online food ordering system project report.pdfOnline food ordering system project report.pdf
Online food ordering system project report.pdf
 
Standard vs Custom Battery Packs - Decoding the Power Play
Standard vs Custom Battery Packs - Decoding the Power PlayStandard vs Custom Battery Packs - Decoding the Power Play
Standard vs Custom Battery Packs - Decoding the Power Play
 
Online electricity billing project report..pdf
Online electricity billing project report..pdfOnline electricity billing project report..pdf
Online electricity billing project report..pdf
 
COST-EFFETIVE and Energy Efficient BUILDINGS ptx
COST-EFFETIVE  and Energy Efficient BUILDINGS ptxCOST-EFFETIVE  and Energy Efficient BUILDINGS ptx
COST-EFFETIVE and Energy Efficient BUILDINGS ptx
 
Electromagnetic relays used for power system .pptx
Electromagnetic relays used for power system .pptxElectromagnetic relays used for power system .pptx
Electromagnetic relays used for power system .pptx
 
Introduction to Serverless with AWS Lambda
Introduction to Serverless with AWS LambdaIntroduction to Serverless with AWS Lambda
Introduction to Serverless with AWS Lambda
 
scipt v1.pptxcxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx...
scipt v1.pptxcxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx...scipt v1.pptxcxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx...
scipt v1.pptxcxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx...
 
Employee leave management system project.
Employee leave management system project.Employee leave management system project.
Employee leave management system project.
 
Ground Improvement Technique: Earth Reinforcement
Ground Improvement Technique: Earth ReinforcementGround Improvement Technique: Earth Reinforcement
Ground Improvement Technique: Earth Reinforcement
 
Integrated Test Rig For HTFE-25 - Neometrix
Integrated Test Rig For HTFE-25 - NeometrixIntegrated Test Rig For HTFE-25 - Neometrix
Integrated Test Rig For HTFE-25 - Neometrix
 
Augmented Reality (AR) with Augin Software.pptx
Augmented Reality (AR) with Augin Software.pptxAugmented Reality (AR) with Augin Software.pptx
Augmented Reality (AR) with Augin Software.pptx
 
Introduction to Geographic Information Systems
Introduction to Geographic Information SystemsIntroduction to Geographic Information Systems
Introduction to Geographic Information Systems
 

Innovation is back in the transport and network layers

  • 1. Innovation is back in the transport and network layers Olivier Bonaventure http://inl.info.ucl.ac.be February 2018
  • 2. Agenda • Today's Internet • Transport Layer : evolution or revolution ? – Multipath TCP – QUIC • Network Layer evolution – IPv6 Segment Routing
  • 3. The Protocol Hourglasss Steve Deering, IETF 51, London, August 2001
  • 4. Innovation in the protocol hourglass • Higher layers – Lots of innovation in the applications even if HTTP and TLS play a very important role • Lower layers – Lots of innovation with new wireless and fixed local area network technologies • Network and transport layers – It took us 20 years to deploy IPv6 – SCTP, DCCP, HIP, shim6, did not get enough traction
  • 5. Why is innovation so difficult in the network layer ? • The Internet is already too large • Any change in the network layer involves a too large number of stakeholders • Why was IPv6 eventually deployed ? Source http://www.potaroo.net/ispcol/2018-01/addr2017.html
  • 6. Why is innovation so difficult in the transport layer ? • Application developers will use a new transport protocol if it gives benefits and has a large installed based • Kernel developers will implement and deploy a new transport if it gives benefits and is requested by many application developers
  • 7. But there is another hurdle … • Internet architecture as seen by students Physical Datalink Network Transport Application Physical Physical Datalink Physical Datalink Network O. Bonaventure, Computer networking : Principles, Protocols and Practice, open ebook, http://cnp3book.info.ucl.ac.be
  • 9. In reality – almost as many middleboxes as routers – various types of middleboxes are deployed Sherry, Justine, et al. "Making middleboxes someone else's problem: Network processing as a cloud service." Proceedings of the ACM SIGCOMM 2012 conference. ACM, 2012.
  • 10. A middlebox zoo http://www.cisco.com/web/about/ac50/ac47/2.html Web Security Appliance NAC Appliance ACE XML Gateway Streamer VPN Concentrator SSL Terminator Cisco IOS Firewall IP Telephony Router PIX Firewall Right and Left Voice GatewayVVVV Content Engine NAT
  • 11. How to model those middleboxes ? • In the official architecture, they do not exist • In reality... Physical Datalink Network Transport Application Physical Datalink Network Transport Application Physical Datalink Network TCP Physical Datalink Network Transport Application
  • 12. TCP segments processed by a router Source port Destination port Checksum Urgent pointer THL Reserved Flags Acknowledgment number Sequence number Window Ver IHL ToS Total length ChecksumTTL Protocol Flags Frag. Offset Source IP address Identification Destination IP address Payload Options Source port Destination port Checksum Urgent pointer THL Reserved Flags Acknowledgment number Sequence number Window Ver IHL ToS Total length ChecksumTTL Protocol Flags Frag. Offset Source IP address Identification Destination IP address Payload Options IP TCP
  • 13. TCP segments processed by a NAT Source port Destination port Checksum Urgent pointer THL Reserved Flags Acknowledgment number Sequence number Window Ver IHL ToS Total length ChecksumTTL Protocol Flags Frag. Offset Source IP address Identification Destination IP address Payload Options Source port Destination port Checksum Urgent pointer THL Reserved Flags Acknowledgment number Sequence number Window Ver IHL ToS Total length ChecksumTTL Protocol Flags Frag. Offset Source IP address Identification Destination IP address Payload Options
  • 14. Problems caused by middleboxes • Most middleboxes make assumptions about the format of protocol headers – Headers changes are almost impossible • Many middleboxes modify some fields of the network and/or transport header – A field set by the client may not reach the server • Many middleboxes restrict the utilisation of protocol extensions that they do not support – Firewalls are the classical example
  • 15. End-to-end transparency today Source port Destination port Checksum Urgent pointer THL Reserved Flags Acknowledgment number Sequence number Window Ver IHL ToS Total length ChecksumTTL Protocol Flags Frag. Offset Source IP address Identification Destination IP address Payload Options Source port Destination port Checksum Urgent pointer THL Reserved Flags Acknowledgment number Sequence number Window Ver IHL ToS Total length ChecksumTTL Protocol Flags Frag. Offset Source IP address Identification Destination IP address Payload Options Middleboxes don't change the Protocol field, but many discard packets with an unknown Protocol field
  • 16. Agenda • Today's Internet • Transport Layer : evolution or revolution ? – Multipath TCP – QUIC • Network Layer evolution – IPv6 Segment Routing
  • 17. Design objectives • Multipath TCP is an evolution of TCP • Design objectives – Support unmodified applications – Work over today’s networks (IPv4 and IPv6) – Works in all networks where regular TCP works
  • 18. A naïve Multipath TCP SYN+ACK+Option ACK seq=123, "abc" seq=126, "def" SYN+Option
  • 19. A naïve Multipath TCP In today's Internet ? SYN+Option SYN+ACK+Option ACK seq=123, "abc" seq=126, "def" There is no corresponding TCP connection
  • 20. Design decision – A Multipath TCP connection is composed of one or more regular TCP subflows that are combined • Each host maintains state that glues the TCP subflows that compose a Multipath TCP connection together • Each TCP subflow is sent over a single path and appears like a regular TCP connection along this path
  • 21. Multipath TCP and the architecture Physical Datalink Network Transport Application Multipath TCP TCP1 socket TCP2 TCPn... Application A. Ford, C. Raiciu, M. Handley, S. Barre, and J. Iyengar, “Architectural guidelines for multipath TCP development", RFC6182 2011.
  • 22. A regular TCP connection • What is a regular TCP connection ? – It starts with a three-way handshake • SYN segments may contain special options – All data segments are sent in sequence • There is no gap in the sequence numbers – It is terminated by using FIN or RST
  • 24. TCP subflows • Which subflows can be associated to a Multipath TCP connection ? – At least one of the elements of the four-tuple needs to differ between two subflows • Local IP address • Remote IP address • Local port • Remote port • Number of subflows can change during the lifetime of a Multipath TCP connection
  • 25. How to transfer data ? seq=123,"a" seq=124,"b" seq=125,"c" seq=126,"d" ack=124 ack=126 ack=125 ack=127
  • 26. How to transfer data in today's Internet ? seq=123,"a" seq=124,"b" seq=125,"c" ack=124 ack=126 ack=125 Gap in sequence numbering space Some DPI will not allow this !
  • 27. Multipath TCP Data transfer • Two levels of sequence numbers Multipath TCP TCP1 socket TCP2 Multipath TCP TCP1 socket TCP2 ABCDEF Data sequence # TCP1 sequence # TCP2 sequence # A. Ford, C. Raiciu, M. J. Handley, and O. Bonaventure, “TCP Extensions for Multipath Operation with Multiple Addresses,” RFC6824, 2013
  • 28. Multipath TCP Data transfer Dseq=0,seq=123,"a" DSeq=1, seq=456,"b" DSeq=2, seq=124,"c" DAck=1,ack=124 DAck=3, ack=125 DAck=2,ack=457
  • 29. Multipath TCP How to deal with losses ? • Data losses over one TCP subflow – Fast retransmit and timeout as in regular TCP Dseq=0,seq=123,"a" DAck=1,ack=12 4Dseq=0,seq=123,"a" DAck=1,ack=124
  • 30. Multipath TCP • What happens when a TCP subflow fails ? Dseq=0,seq=123,"a" DSeq=1, seq=456,"b" DAck=0,ack=457 Dseq=0,seq=457,"a" DAck=2,ack=458
  • 31. Multipath TCP use cases High bandwidth on smartphones • Koreans want 800+ Mbps on smartphones WiFi 4G/LTE Multipath TCP Regular TCP SOCKS O. Bonaventure, S. Seo, Multipath TCP Deployments, IETF Journal, November 2016, http://www.ietfjournal.org/multipath-tcp-deployments/
  • 32. Multipath TCP use cases Low latency for Siri since 2013 • Long-lived TLS connections WiFi 3G/LTE Voice samples Voice samples On iOS11, any app can Use Multipath TCP O. Bonaventure, S. Seo, Multipath TCP Deployments, IETF Journal, November 2016, http://www.ietfjournal.org/multipath-tcp-deployments/
  • 34. Multipath TCP use cases Hybrid Access Networks DSL 4G/LTE Multipath TCP Regular TCP Hybrid Access Gateway TCP TCP See https://www.tessares.net and O. Bonaventure, M. Boucadair, B. Peirens, S. Seo, A. Nandugudi, 0-RTT TCP Converter, draft-ietf-tcpm-converters-00, Feb. 2018
  • 35. Why is Multipath TCP interesting for networking researchers ? • Availability of multiple paths opens new questions – Path management • When should a host create a subflow ? • When should a host terminate a subflow ? – Packet scheduling • Which data should be sent over which subflow ? • How to perform retransmissions when there are n subflows ? – Congestion control • Becomes a spatial problem and not anymore a temporal one • Commercial deployment and open-source implem. – http://www.multipath-tcp.org
  • 36. Agenda • Today's Internet • Transport Layer : evolution or revolution ? – Multipath TCP – QUIC • Network Layer evolution – IPv6 Segment Routing
  • 37. Google's quest for a faster web • How to reduce web request latencies ? – Deploy Google caches everywhere – Tune TCP within the IETF • Increase TCP's initial congestion window • Tail Loss Probe • TCP Fast Open – Tune HTTP • SPDY • HTTP/2 – Tune TLS with TLS1.3 [RFC6829] [RFC7413] [RFC7540]
  • 38. A conversation at IETF'93
  • 39. Can you improve web performance influencing both endpoints ?
  • 40. The QUIC revolution • What are the benefits ? – Deploy without convincing kernel developers/ SDO HTTP/2 TLS TCP IP Application QUIC IP Application UDP
  • 41. QUIC evolves quickly J. Ruth, et al. "A First Look at QUIC in the Wild" PAM2018, to appear, https://arxiv.org/abs/1801.05168
  • 42. Who is using QUIC today ? J. Ruth, et al. "A First Look at QUIC in the Wild" PAM2018, to appear, https://arxiv.org/abs/1801.05168
  • 43. QUIC handshake • No delay (0-rtt) between connection establishment and web request/response – Needs to remain secure Client Hello Server Hello Encrypted request Server Response
  • 44. QUIC Handshake (2) • Full handshake Client Hello[incomplete] Reject[Cert, H(CIP,Secret), ServerDHpubkey] Server Hello [ServerDHkey, …]initialkey Client Hello[H(CIP,Secret),ClientDHkey…] Encrypted Request[GET …] initialkey Encrypted Response[ServerDHkey, …]sessionkey
  • 45. Main features of QUIC • Support for multiple bytestreams – Required for HTTP/2, but opens many possibilities • Almost everything is encrypted (most headers) – Prevents ossification caused by middleboxes • Extensible protocol design – Easy to add new frames • Flexible packet numbering schemes – Sequence numbers are never reused • Flow control, congestion control – Easy to add a new congestion control scheme
  • 46. Why is QUIC interesting for networking researchers • QUIC is implemented in user space – This makes experimentation much easier than kernel space protocols – It is easy for researchers to deploy QUIC+ apps – Several open-source implementations exist • QUIC is easy to extend – Easy to add new types of frames – Sample extension : Multipath QUIC, see http://www.multipath-quic.org
  • 47. Agenda • Today's Internet • Transport Layer : evolution or revolution ? – Multipath TCP – QUIC • Network Layer evolution – IPv6 Segment Routing
  • 48. Segment Routing • A radical simplification of MPLS networks • Basic principles – Data plane is unchanged (32 bits shim header) – Control plane becomes much simpler • LDP • RSVP-TE • BGP • OSPF or ISIS Simple extension
  • 49. Segment Routing in one slide • Each router has a label advertised by the IGP – Packets follow shortest path to top label R1 R4 R3 R5 R2 R7 R8 R9 100 3:7 3:7 7 8:4:7:3 4:7:3 7:3 7:3 3
  • 50. Benefits Segment Routing for network researchers • Any network path becomes a succession of shortest paths • Reconsider algorithms to solves problems like – Traffic engineering • SR is different than IGP weights or MPLS tunnels – Disjoint paths for resilience and fast reroute – Monitoring • With SR, a monitoring station can send packets on a loop so that they return back to itselfs
  • 51. IPv6 Segment Routing • Differences with regular Segment Routing – 128 bits IPv6 addresses are used to encode intermediate nodes • Router loopback addresses • Network interface addresses • Endhost addresses – New IPv6 Extension Header inside each packet – Endhosts can actively participate in the creation of segmented paths
  • 52. IPv6 Segment Routing Network Programming • IPv6 SR enables more than non-shortest paths – Each nodes advertises one or more prefixes R4 R5 R2 R7 R8 R9 IGP : 2001:…:4/40 FCT1:param FCT2:param Locator Function Param C. Filsfils et al., SRv6 Network Programming, draft-filsfils-spring-srv6- network-programming-03, Dec. 2017
  • 53. Conclusion • Innovation is back in the core Internet protocols – Network researchers should participate • Multipath TCP – Spatial dimension opens many new challenges • QUIC – Truly extensible secure transport, interesting opportunities • IPv6 Segment Routing – Non shortest paths and network programming http://www.multipath-tcp.org http://www.segment-routing.org http://fd.io https://quicwg.github.io

Editor's Notes

  1. c
  2. arrive fort tard