multipath quic design and evaluation
play

Multipath QUIC: Design and Evaluation Quentin De Coninck , Olivier - PowerPoint PPT Presentation

Multipath QUIC: Design and Evaluation Quentin De Coninck , Olivier Bonaventure quentin.deconinck@uclouvain.be multipath-quic.org QUIC = Quick UDP Internet Connection TCP/TLS1.3 atop UDP Stream multiplexing HTTP/2 use case 0-RTT


  1. Multipath QUIC: Design and Evaluation Quentin De Coninck , Olivier Bonaventure quentin.deconinck@uclouvain.be multipath-quic.org

  2. QUIC = Quick UDP Internet Connection ● TCP/TLS1.3 atop UDP ● Stream multiplexing → HTTP/2 use case ● 0-RTT establishment (most of the time) HTTP/2 shim HTTP/2 TLS QUIC TCP UDP IP IP 2

  3. QUIC Packet Flags Connection ID Packet Number Encrypted Payload... 3

  4. QUIC Packet Flags Connection ID Packet Number Encrypted Payload... Cleartext Public Header 4

  5. QUIC Packet Does not depend on 4-tuple Flags Connection ID Packet Number Encrypted Payload... Cleartext Public Header 5

  6. QUIC Packet Monotonically Increasing Does not depend on 4-tuple Flags Connection ID Packet Number Encrypted Payload... Cleartext Public Header 6

  7. QUIC Packet Monotonically Increasing Contains control/data frames Does not depend on 4-tuple Flags Connection ID Packet Number Encrypted Payload... Cleartext Public Header 7

  8. QUIC Data Transfer H1 H2 8

  9. QUIC Data Transfer H1 H2 F CID PN=25 STREAM(id=5,of==):”Some data in my long frame” 9

  10. QUIC Data Transfer Actual data H1 H2 F CID PN=25 STREAM(id=5,of==):”Some data in my long frame” 10

  11. QUIC Data Transfer H1 H2 F CID PN=25 STREAM(id=5,of==):”Some data in my long frame” F CID PN=19 ACK(25) MAX_DATA(for stream=5): 1=24 11

  12. QUIC Data Transfer H1 H2 F CID PN=25 STREAM(id=5,of==):”Some data in my long frame” Control Frames F CID PN=19 ACK(25) MAX_DATA(for stream=5): 1=24 12

  13. QUIC Data Transfer H1 H2 F CID PN=25 STREAM(id=5,of==):”Some data in my long frame” F CID PN=19 ACK(25) MAX_DATA(for stream=5): 1=24 PN=26 STREAM(id=5,of=26):”.” STREAM(id=7,of==):”Y” ACK(19) F CID 13

  14. QUIC Data Transfer H1 H2 F CID PN=25 STREAM(id=5,of==):”Some data in my long frame” F CID PN=19 ACK(25) MAX_DATA(for stream=5): 1=24 Multiplexing PN=26 STREAM(id=5,of=26):”.” STREAM(id=7,of==):”Y” ACK(19) F CID 14

  15. QUIC Data Transfer H1 H2 F CID PN=25 STREAM(id=5,of==):”Some data in my long frame” F CID PN=19 ACK(25) MAX_DATA(for stream=5): 1=24 PN=26 STREAM(id=5,of=26):”.” STREAM(id=7,of==):”Y” ACK(19) F CID F CID PN=2= ACK(26) 15

  16. Why Multipath QUIC? ● QUIC assumes a single-path foo 16

  17. Why Multipath QUIC? ● QUIC assumes a single-path foo 17

  18. Why Multipath QUIC? ● QUIC assumes a single-path foo 18

  19. Why Multipath QUIC? ● QUIC assumes a single-path foo ● Multipath QUIC – Bandwidth aggregation – Seamless network handover ● Can try new WiFi while keeping using LTE 19

  20. Design of Multipath QUIC ● Connection is composed of a set of paths 20

  21. Design of Multipath QUIC ● Connection is composed of a set of paths 21

  22. Design of Multipath QUIC ● Connection is composed of a set of paths ? Pkt Performance monitoring? Loss detection? Path congestion control? 22

  23. Design of Multipath QUIC ● Connection is composed of a set of paths Pkt 23

  24. Design of Multipath QUIC ● Connection is composed of a set of paths Pkt Flags Connection ID Path ID Packet Number Encrypted Payload... Explicit path identifcation 24

  25. Design of Multipath QUIC ● Connection is composed of a set of paths Pkt Flags Connection ID Path ID Packet Number Encrypted Payload... Explicit path identifcation No path handshake 25

  26. Design of Multipath QUIC ● Connection is composed of a set of paths Pkt Flags Connection ID Path ID Packet Number Encrypted Payload... Per-path numbering space Explicit path identifcation No path handshake 26

  27. Multipath QUIC Data Transfer Server Server Phone via WiFi via LTE Path 1: WiFi Path 2: L TE 27

  28. Multipath QUIC Data Transfer Server Server Phone via WiFi via LTE F CID 1 PN=1 STR(id=5) Path 1: WiFi Path 2: L TE 28

  29. Multipath QUIC Data Transfer Server Server Phone via WiFi via LTE F CID 1 PN=1 STR(id=5) F CID 1 PN=1 STR(id=7,of==) F CID 2 PN=1 STR(id=7,of=1=24) Path 1: WiFi Path 2: L TE 29

  30. Multipath QUIC Data Transfer Server Server Phone via WiFi via LTE F CID 1 PN=1 STR(id=5) F CID 1 PN=1 STR(id=7,of==) F CID 2 PN=1 STR(id=7,of=1=24) F CID 1 PN=2 ACK(pid=1,1) ACK(pid=2,1) Path 1: WiFi Path 2: L TE 30

  31. Multipath QUIC Data Transfer Server Server Phone via WiFi via LTE F CID 1 PN=1 STR(id=5) F CID 1 PN=1 STR(id=7,of==) F CID 2 PN=1 STR(id=7,of=1=24) F CID 1 PN=2 ACK(pid=1,1) ACK(pid=2,1) Multiple paths acked on a single path Path 1: WiFi Path 2: L TE 31

  32. Multipath Mechanisms ● Path management IP1 IP3 IP2 IP4 32

  33. Multipath Mechanisms ● Path management IP1 IP3 IP2 IP4 33

  34. Multipath Mechanisms ● Path management IP1 IP3 IP2 IP4 ● Packet scheduling 2= ms RTT 10 ms RTT 34

  35. Multipath Mechanisms ● Path management IP1 IP3 IP2 IP4 ● Packet scheduling 2= ms RTT 10 ms RTT 35

  36. Multipath Mechanisms ● Path management IP1 IP3 IP2 IP4 ● Packet scheduling 2= ms RTT 2= ms RTT ? 10 ms RTT 36

  37. Multipath Mechanisms ● Path management IP1 IP3 IP2 IP4 ● Packet scheduling 2= ms RTT 2= ms RTT Duplicate ? 10 ms RTT 37

  38. Multipath Mechanisms ● Path management IP1 IP3 IP2 IP4 ● Packet scheduling 2= ms RTT 2= ms RTT Duplicate ? 10 ms RTT ● Congestion control – Opportunistic Linked Increase Algorithm 38

  39. Evaluation of Multipath QUIC ● (Multipath) QUIC vs. (Multipath) TCP – Multipath QUIC: quic-go – Linux Multipath TCP v=.91 with default settings ● Mininet environment oith 2 paths 39

  40. Evaluating Bandoith Aggregation ● Doonload of 20 MB fle – Over a single stream – Collect the transfer time 40

  41. Evaluating Bandoith Aggregation ● Doonload of 20 MB fle 2=ms RTT, 2= Mbps – Over a single stream – Collect the transfer time 4=ms RTT, 15 Mbps ● For a loss-free scenario 41

  42. Evaluating Bandoith Aggregation ● Doonload of 20 MB fle 2=ms RTT, 2= Mbps – Over a single stream – Collect the transfer time 4=ms RTT, 15 Mbps ● For a loss-free scenario – MPQUIC has 13% speedup compared to MPTCP 42

  43. Evaluating Bandoith Aggregation ● Doonload of 20 MB fle 2=ms RTT, 2= Mbps – Over a single stream – Collect the transfer time 4=ms RTT, 15 Mbps ● For a loss-free scenario – MPQUIC has 13% speedup compared to MPTCP ● But ohat about other topologies? 43

  44. Evaluating Bandoidth Aggregation ● Experimental design, WSP algorithm ● 2x253 netoork scenarios – Vary the initial path ● Median over 15 runs Factor Minimum Maximum Capacity [Mbps] 0.1 100 Round-Trip-Time [ms] 0 50 Queuing Delay [ms] 0 100 Random Loss [%] 0 2.5 44

  45. Large File Doonload – No Loss TCP better QUIC better 45

  46. Large File Doonload – No Loss Single-path TCP better QUIC better 46

  47. Large File Doonload – No Loss 47

  48. Large File Doonload – No Loss MPQUIC better in 85% of cases 48

  49. Large File Doonload – No Loss MPQUIC better in 85% of cases Our extracted scenario 49

  50. Large File Doonload – No Loss Path 1: 49.4 ms RTT, 18.9= Mbps, 82 ms queing delay MPQUIC better Path 2: 1=.6 ms RTT, =.43 Mbps, in 85% of cases 11 ms queuing delay Path 1: 27.2 ms RTT, =.14 Mbps, 34 ms queuing delay Our extracted scenario Path 2: 46.4 ms RTT, 49.72 Mbps, 47 ms queuing delay 50

  51. Large File Doonload – Losses 51

  52. Large File Doonload – Losses QUIC copes better with losses 52

  53. Additional Results (see paper) ● QUIC benefts more of Multipath than TCP ● Bandoidth aggregation in high BDP – MPQUIC still better performs than MPTCP ● Short fle transfers – (MP)QUIC better thanks to its low latency handshake ● Netoork handover – MPQUIC can be very efcient – New frame to communicate path state 53

  54. Conclusion ● Multipath should be part of any transport protocol – Most devices are multihomed ● Designed and implemented Multipath QUIC – Source code + artifacts + IETF draft available – See multipath-quic.org ● Multipath more promising oith QUIC than TCP 54

  55. What’s Next? ● Perform tests in actual netoorks – Does (MP)QUIC work in your networks? – Does MPQUIC provides better performances? – Application running on iOS11 https://itunes.apple.com/fr/app/quictester/id1322=19644?mt=8 ● – Feel free to provide feedback :-) QUICTester 55

  56. Thanks! multipath-quic.org 56

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend