How Good Is QUIC Actually? Manuel Burghard Friday 12 th July, 2019 - - PowerPoint PPT Presentation

how good is quic actually
SMART_READER_LITE
LIVE PREVIEW

How Good Is QUIC Actually? Manuel Burghard Friday 12 th July, 2019 - - PowerPoint PPT Presentation

Chair of Network Architectures and Services Department of Informatics Technical University of Munich How Good Is QUIC Actually? Manuel Burghard Friday 12 th July, 2019 Chair of Network Architectures and Services Department of Informatics


slide-1
SLIDE 1

Chair of Network Architectures and Services Department of Informatics Technical University of Munich

How Good Is QUIC Actually?

Manuel Burghard

Friday 12th July, 2019 Chair of Network Architectures and Services Department of Informatics Technical University of Munich

slide-2
SLIDE 2

Chair of Network Architectures and Services Department of Informatics Technical University of Munich

Outline What is QUIC? Weaknesses and Strengths Performance Conclusion

  • M. Burghard — QUIC

2

slide-3
SLIDE 3

What is QUIC?

  • New transport protocol
  • Built on top of UDP
  • Connection oriented & stream multiplexing
  • Always-on encryption
  • In standardization by IETF since 2016
  • Finalization scheduled for July 2019
  • M. Burghard — QUIC

3

slide-4
SLIDE 4

What is QUIC?

Key Goals of QUIC

  • Minimize connection establishment and transport latency
  • Multiplexing without head-of-line blocking
  • Secure the transported payload using TLS 1.3
  • Enable deployment without requiring changes along the path
  • Enable extensions for forward error correction and multipath
  • M. Burghard — QUIC

4

slide-5
SLIDE 5

Weaknesses and Strengths

Forward Error Correction and Multipath

  • Multipath: Not part of July milestone
  • Multipath: Scheduled for late 2019 / early 2020
  • Forward Error Correction: Out of scope of initial draft
  • Was implemented by Google, but removed in 2016
  • M. Burghard — QUIC

5

slide-6
SLIDE 6

Weaknesses and Strengths

Secure Transport Problem

  • Private businesses
  • Governments and nations
  • M. Burghard — QUIC

6

slide-7
SLIDE 7

Weaknesses and Strengths

Secure Transport Problem

  • Private businesses
  • Governments and nations

Solution

  • Always-on encryption
  • Based on TLS 1.3
  • M. Burghard — QUIC

6

slide-8
SLIDE 8

Weaknesses and Strengths

Secure Transport Problem

  • Private businesses
  • Governments and nations

Solution

  • Always-on encryption
  • Based on TLS 1.3

Strengths

  • Improved privacy, integrity, and confi-

dentiality for users

  • Broader adoption of encryption
  • M. Burghard — QUIC

6

slide-9
SLIDE 9

Weaknesses and Strengths

Secure Transport Problem

  • Private businesses
  • Governments and nations

Solution

  • Always-on encryption
  • Based on TLS 1.3

Strengths

  • Improved privacy, integrity, and confi-

dentiality for users

  • Broader adoption of encryption

Weaknesses

  • Regulatory and Compliance incompati-

bility

  • Inherited attack vectors from TLS 1.3
  • M. Burghard — QUIC

6

slide-10
SLIDE 10

Weaknesses and Strengths

Enabling Future Changes to QUIC Problem

  • Ossification of network equipment
  • Lack of support in operating systems
  • M. Burghard — QUIC

7

slide-11
SLIDE 11

Weaknesses and Strengths

Enabling Future Changes to QUIC Problem

  • Ossification of network equipment
  • Lack of support in operating systems

Solution

  • UDP as underlying transport protocol
  • Encrypt signaling information
  • Version negotiation
  • User space implementation
  • M. Burghard — QUIC

7

slide-12
SLIDE 12

Weaknesses and Strengths

Enabling Future Changes to QUIC Problem

  • Ossification of network equipment
  • Lack of support in operating systems

Solution

  • UDP as underlying transport protocol
  • Encrypt signaling information
  • Version negotiation
  • User space implementation

Strengths

  • UDP support already exists
  • Bundling with applications
  • High adoption rate
  • M. Burghard — QUIC

7

slide-13
SLIDE 13

Weaknesses and Strengths

Enabling Future Changes to QUIC Problem

  • Ossification of network equipment
  • Lack of support in operating systems

Solution

  • UDP as underlying transport protocol
  • Encrypt signaling information
  • Version negotiation
  • User space implementation

Strengths

  • UDP support already exists
  • Bundling with applications
  • High adoption rate

Weaknesses

  • UDP blocking and filtering
  • M. Burghard — QUIC

7

slide-14
SLIDE 14

Weaknesses and Strengths

Head-of-Line Blocking Problem

  • Packets/requests blocked by item ahead
  • HTTP/2 prone to TCP HOL blocking
  • M. Burghard — QUIC

8

slide-15
SLIDE 15

Weaknesses and Strengths

Head-of-Line Blocking

HTTP 1.1

TCP connection

HTTP 2

QUIC connection

HTTP 3

  • M. Burghard — QUIC

9

slide-16
SLIDE 16

Weaknesses and Strengths

Head-of-Line Blocking Problem

  • Packets/requests blocked by item ahead
  • HTTP/2 prone to TCP HOL blocking

Solution

  • Loss detection and recovery imple-

mented by QUIC itself

  • Uninvolved streams not affected
  • Retransmission of required packets only
  • M. Burghard — QUIC

10

slide-17
SLIDE 17

Weaknesses and Strengths

Head-of-Line Blocking Problem

  • Packets/requests blocked by item ahead
  • HTTP/2 prone to TCP HOL blocking

Solution

  • Loss detection and recovery imple-

mented by QUIC itself

  • Uninvolved streams not affected
  • Retransmission of required packets only

Strengths

  • Better performance
  • M. Burghard — QUIC

10

slide-18
SLIDE 18

Weaknesses and Strengths

Head-of-Line Blocking Problem

  • Packets/requests blocked by item ahead
  • HTTP/2 prone to TCP HOL blocking

Solution

  • Loss detection and recovery imple-

mented by QUIC itself

  • Uninvolved streams not affected
  • Retransmission of required packets only

Strengths

  • Better performance

Weaknesses

  • Reimplementation of loss detection and

recovery

  • Packet reordering
  • M. Burghard — QUIC

10

slide-19
SLIDE 19

Weaknesses and Strengths

Connection Establishment and Latency Problem

  • TCP and TLS handshake delay applica-

tion data

  • High latency environments
  • Poor user experience
  • M. Burghard — QUIC

11

slide-20
SLIDE 20

Weaknesses and Strengths

Connection Establishment and Latency Problem

  • TCP and TLS handshake delay applica-

tion data

  • High latency environments
  • Poor user experience

Solution

  • Combined transport and cryptographic

handshake (1-RTT)

  • 0-RTT support
  • M. Burghard — QUIC

11

slide-21
SLIDE 21

Weaknesses and Strengths

Connection Establishment and Latency Problem

  • TCP and TLS handshake delay applica-

tion data

  • High latency environments
  • Poor user experience

Solution

  • Combined transport and cryptographic

handshake (1-RTT)

  • 0-RTT support

Strengths

  • Handshake latency halved or better
  • M. Burghard — QUIC

11

slide-22
SLIDE 22

Weaknesses and Strengths

Connection Establishment and Latency Problem

  • TCP and TLS handshake delay applica-

tion data

  • High latency environments
  • Poor user experience

Solution

  • Combined transport and cryptographic

handshake (1-RTT)

  • 0-RTT support

Strengths

  • Handshake latency halved or better

Weaknesses

  • 0-RTT support for HTTP/2 with TLS 1.3
  • M. Burghard — QUIC

11

slide-23
SLIDE 23

Weaknesses and Strengths

Connection Establishment and Latency

Client Server SYN SYN ACK ACK CH SH;CERT;SHD CKE;CCS;F CCS;F

(a) TCP and TLS handshake

Client Server Inchoate CHLO REJ Complete CHLO Encrypted Request SHLO Encrypted Response

(b) QUIC 1-RTT connection establishment

Client Server Complete CHLO Encrypted Request SHLO Encrypted Response

(c) QUIC 0-RTT connection establishment Abbreviations used in the diagrams: ClientHello (CH, CHLO), ServerHello (SH, SHLO), Certificate (CERT), ServerHelloDone (SHD), ClientKeyExchange (CKE), ChangeCipherSpec (CCS), Finished (F)

  • M. Burghard — QUIC

12

slide-24
SLIDE 24

Performance

QUIC vs TCP Results observed by multiple authors

  • QUIC outperforms TCP in high delay, low bandwidth, and lossy networks
  • Gains on desktop higher than on mobile
  • TCP superior when packet reordering is required
  • M. Burghard — QUIC

13

slide-25
SLIDE 25

Performance

QUIC vs TCP Results observed by multiple authors

  • QUIC outperforms TCP in high delay, low bandwidth, and lossy networks
  • Gains on desktop higher than on mobile
  • TCP superior when packet reordering is required

Other findings

  • Higher CPU usage
  • Poor choice of default parameters of Google’s QUIC server
  • Unfair bottleneck bandwidth consumption by QUIC
  • Websites hosted on smaller number of servers performs better
  • M. Burghard — QUIC

13

slide-26
SLIDE 26

Conclusion

  • Design combines benefits of multiple protocols
  • Strengths outweigh weaknesses
  • QUIC suited to take over area of high delay, low bandwidth, and lossy networks
  • M. Burghard — QUIC

14