Chair of Network Architectures and Services Department of Informatics Technical University of Munich
QUIC - Next generation multiplexed transport over UDP Mehdi Yosofie - - PowerPoint PPT Presentation
QUIC - Next generation multiplexed transport over UDP Mehdi Yosofie - - PowerPoint PPT Presentation
Chair of Network Architectures and Services Department of Informatics Technical University of Munich QUIC - Next generation multiplexed transport over UDP Mehdi Yosofie Friday 25 th January, 2019 Chair of Network Architectures and Services
SLIDE 1
SLIDE 2
Agenda
- Motivation
- Comparison with TCP/TLS stack
- QUIC Features
- Handshake
- Security
- Stream Multiplexing
- Loss Recovery
- Congestion Control
- Flow Control
- Car Park Problem
- Implementation and Testing
- Conclusion
- Bibliography
- M. Yosofie — QUIC
2
SLIDE 3
Motivation
Why QUIC?
- Current TCP/TLS stack
- Handshake latency
- Head of line blocking
- Slow TCP release cycle
- QUIC goals
Latency reduction Removing head-of-line-blocking Faster deployability
- M. Yosofie — QUIC
3
SLIDE 4
Motivation
IP TCP TLS HTTP/2.0 IP HTTP/3.0 QUIC UDP
Application Security Transport Network
Figure 1: QUIC in relation to TCP/TLS, adapted from [4]
- M. Yosofie — QUIC
4
SLIDE 5
QUIC
Features
- Handshake
- Stream Multiplexing
- Security
- Loss Recovery
- Congestion Control
- Flow Control
- And many more...
- M. Yosofie — QUIC
5
SLIDE 6
Handshake
Sender Receiver
TCP 1 RTT Figure 2: Handshakes in comparison, adapted from [1]
- M. Yosofie — QUIC
6
SLIDE 7
Handshake
Sender Receiver
TCP 1 RTT
Sender Receiver TCP TLS Data
TCP + TLS 1.2 3 RTT Figure 2: Handshakes in comparison, adapted from [1]
- M. Yosofie — QUIC
6
SLIDE 8
Handshake
Sender Receiver
TCP 1 RTT
Sender Receiver TCP TLS Data
TCP + TLS 1.2 3 RTT
Sender Receiver TCP TLS Data
TCP + TLS 1.3 2 RTT Figure 2: Handshakes in comparison, adapted from [1]
- M. Yosofie — QUIC
6
SLIDE 9
Handshake
Sender Receiver
QUIC 1 RTT
Figure 3: Handshakes in comparison, adapted from [1]
- M. Yosofie — QUIC
7
SLIDE 10
Handshake
Sender Receiver
QUIC 1 RTT
Sender Receiver
QUIC 0 RTT
Figure 3: Handshakes in comparison, adapted from [1]
- M. Yosofie — QUIC
7
SLIDE 11
Security
- Google used own crypto library at first
- TLS 1.3 recently (August 2018) standardized
- TLS 1.3 decided as security layer in QUIC [5]
- Transport + Security layer together in one layer -> 0-RTT possible
- M. Yosofie — QUIC
8
SLIDE 12
Stream Multiplexing
Figure 4: Data flow in comparison [2]
- M. Yosofie — QUIC
9
SLIDE 13
Stream Multiplexing
Figure 4: Data flow in comparison [2]
- M. Yosofie — QUIC
9
SLIDE 14
Stream Multiplexing
Figure 4: Data flow in comparison [2]
- M. Yosofie — QUIC
9
SLIDE 15
Loss Recovery
- Increasing packet numbers
- No retransmission-ambiguity-problem like in TCP
- Lost packet gets new sequence number and sent again
- M. Yosofie — QUIC
10
SLIDE 16
Congestion Control
Not overwhelming the network (Not the same as flow control)
- QUIC has pluggable congestion control interface
i m p l e m e n t a t i o n
Cubic
2014 2019
Cubic/Reno
- 1. IETF draft
latest IETF draft
NewReno
2016
Figure 5: Congestion Control in QUIC [3]
- M. Yosofie — QUIC
11
SLIDE 17
Flow Control
Not overwhelming the sender (Not the same as congestion control)
- Stream level flow control
- Connection level flow control
- M. Yosofie — QUIC
12
SLIDE 18
"Car Park Problem"
Figure 6: QUIC connection with different IP addresses [1]
- M. Yosofie — QUIC
13
SLIDE 19
Implementation and Testing
Chrome/Chromium, Youtube Android and all Google web services
Figure 7: QUIC in Chromium
- M. Yosofie — QUIC
14
SLIDE 20
Conclusion
- New paradigm
→ Transport + Security in user space → 0-RTT
- UDP as transport layer
- Benefits
→ Faster Deployability → No head-of-line-blocking
- Google’s leading position
- Standardization process by IETF
- Influence on TCP/TLS Stack
- M. Yosofie — QUIC
15
SLIDE 21
Bibliography
[1] Quic @ google developers live, february 2014. [2]
- Y. Cui, T. Li, C. Liu, X. Wang, and M. Kühlewind.
Innovating transport with quic: Design approaches and research challenges. IEEE Internet Computing, 21(2):72–76, 2017. [3]
- J. Iyengar and I. Swett.
QUIC Loss Detection and Congestion Control. Internet-Draft draft-ietf-quic-recovery-18, Internet Engineering Task Force, Jan. 2019. Work in Progress. [4]
- A. Langley, A. Riddoch, A. Wilk, A. Vicente, C. Krasic, D. Zhang, F. Yang, F. Kouranov, I. Swett, J. Iyengar, J. Bailey,
- J. Dorfman, J. Roskind, J. Kulik, P
. Westin, R. Tenneti, R. Shade, R. Hamilton, V. Vasiliev, W.-T. Chang, and Z. Shi. The quic transport protocol: Design and internet-scale deployment. In Proceedings of the Conference of the ACM Special Interest Group on Data Communication, SIGCOMM ’17, pages 183– 196, New York, NY, USA, 2017. ACM. [5]
- M. Thomson and S. Turner.
Using TLS to Secure QUIC. Internet-Draft draft-ietf-quic-tls-18, Internet Engineering Task Force, Jan. 2019. Work in Progress.
- M. Yosofie — QUIC
16
SLIDE 22
Backup
Questions
- Why QUIC? Why not building a new transport protocol?
- Because middleboxes (firewalls) do not forward unknown protocols. With UDP as underlying
protocol, the chance is higher to get QUIC packets forwarded.
- M. Yosofie — QUIC
17