skip to main content
10.1145/3341302.3342078acmconferencesArticle/Chapter ViewAbstractPublication PagescommConference Proceedingsconference-collections
research-article

Pluginizing QUIC

Published:19 August 2019Publication History

ABSTRACT

Application requirements evolve over time and the underlying protocols need to adapt. Most transport protocols evolve by negotiating protocol extensions during the handshake. Experience with TCP shows that this leads to delays of several years or more to widely deploy standardized extensions. In this paper, we revisit the extensibility paradigm of transport protocols.

We base our work on QUIC, a new transport protocol that encrypts most of the header and all the payload of packets, which makes it almost immune to middlebox interference. We propose Pluginized QUIC (PQUIC), a framework that enables QUIC clients and servers to dynamically exchange protocol plugins that extend the protocol on a per-connection basis. These plugins can be transparently reviewed by external verifiers and hosts can refuse non-certified plugins. Furthermore, the protocol plugins run inside an environment that monitors their execution and stops malicious plugins. We demonstrate the modularity of our proposal by implementing and evaluating very different plugins ranging from connection monitoring to multipath or Forward Erasure Correction. Our results show that plugins achieve expected behavior with acceptable overhead. We also show that these plugins can be combined to add their functionalities to a PQUIC connection.

Skip Supplemental Material Section

Supplemental Material

p59-de_coninck.mp4

mp4

1.9 GB

References

  1. Nadav Amit and Michael Wei. 2018. The design and implementation of hyper-upcalls. In 2018 USENIX Annual Technical Conference (USENIX ATC 18). 97--112. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. Apple. 2018. Improving Network Reliability Using Multipath TCP. (2018). https://developer.apple.com/documentation/foundation/urlsessionconfiguration/improving_network_reliability_using_multipath_tcp.Google ScholarGoogle Scholar
  3. Praveen Balasubramanian. 2018. Usage for timestamp options in the wild. (Sept. 2018). https://mailarchive.ietf.org/arch/legacy/msg/tcpm/11522.Google ScholarGoogle Scholar
  4. Andrew Begel, Steven McCanne, and Susan L. Graham. 1999. BPF+: Exploiting global data-flow optimization in a generalized packet filter architecture. ACM SIGCOMM Computer Communication Review 29, 4 (1999), 123--134. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. Karthikeyan Bhargavan, Bruno Blanchet, and Nadim Kobeissi. 2017. Verified models and reference implementations for the TLS 1.3 standard candidate. In 2017 IEEE Symposium on Security and Privacy (SP). IEEE, 483--502.Google ScholarGoogle ScholarCross RefCross Ref
  6. Steve Bishop, Matthew Fairbairn, Michael Norrish, Peter Sewell, Michael Smith, and Keith Wansbrough. 2005. Rigorous specification and conformance testing techniques for network protocols, as applied to TCP, UDP, and sockets. In ACM SIGCOMM Computer Communication Review, Vol. 35. ACM, 265--276. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. Pat Bosshart, Dan Daly, Glen Gibb, Martin Izzard, Nick McKeown, Jennifer Rexford, Cole Schlesinger, Dan Talayco, Amin Vahdat, George Varghese, and David Walker. 2014. P4: Programming protocol-independent packet processors. ACM SIGCOMM Computer Communication Review 44, 3 (2014), 87--95. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. Lawrence Brakmo. 2017. TCP-BPF: Programmatically tuning TCP behavior through BPF. NetDev 2.2 (2017).Google ScholarGoogle Scholar
  9. Marc Brockschmidt and Heidy Khlaaf. 2019. T2 Temporal Prover. http://mmjb.github.io/T2/.Google ScholarGoogle Scholar
  10. Ken Calvert. 2006. Reflections on network architecture: an active networking perspective. ACM SIGCOMM Computer Communication Review 36, 2 (2006), 27--30. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. Georg Carle and Ernst W Biersack. 1997. Survey of error recovery techniques for IP-based audio-visual multicast applications. IEEE Network 11, 6 (1997), 24--36. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. Andrey Chudnov, Nathan Collins, Byron Cook, Joey Dodds, Brian Huffman, Colm MacCáarthaigh, Stephen Magill, Eric Mertens, Eric Mullen, Tasiran Serdar, Aaron Tomb, and Eddy Westbrook. 2018. Continuous formal verification of Amazon s2n. In International Conference on Computer Aided Verification. Springer, 430--446.Google ScholarGoogle ScholarCross RefCross Ref
  13. Lucas Clemente and Marten Seemann. 2018. quic-go. Source code. https://github.com/lucas-clemente/quic-go.Google ScholarGoogle Scholar
  14. Byron Cook, Alexey Gotsman, Andreas Podelski, Andrey Rybalchenko, and Moshe Y. Vardi. 2007. Proving that programs eventually do something good. ACM SIGPLAN Notices 42, 1 (2007), 265--276. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. Byron Cook, Eric Koskinen, and Moshe Vardi. 2011. Temporal property verification as a program analysis task. In International Conference on Computer Aided Verification. Springer, 333--348. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. Byron Cook, Andreas Podelski, and Andrey Rybalchenko. 2006. TERMINATOR: beyond safety. In International Conference on Computer Aided Verification. Springer, 415--418. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. Scott A. Crosby and Dan S. Wallach. 2009. Efficient Data Structures For Tamper-Evident Logging. In USENIX Security Symposium. 317--334. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. Willem de Bruijn and Eric Dumazet. 2018. Optimizing UDP for content delivery: GSO, pacing and zerocopy. In Linux Plumbers Conference.Google ScholarGoogle Scholar
  19. Quentin De Coninck and Olivier Bonaventure. 2017. Multipath QUIC: Design and Evaluation. In Proceedings of the 13th International Conference on emerging Networking EXperiments and Technologies. ACM, 160--166. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. Quentin De Coninck and Olivier Bonaventure. 2018. Multipath Extension for QUIC. Internet-Draft draft-deconinck-quic-multipath-01. Internet Engineering Task Force.Google ScholarGoogle Scholar
  21. Quentin De Coninck and Olivier Bonaventure. 2019. The Case for Protocol Plugins. Technical Report. https://hdl.handle.net/2078.1/216493Google ScholarGoogle Scholar
  22. Piet De Vaere, Tobias Bühler, Mirja Kühlewind, and Brian Trammell. 2018. Three Bits Suffice: Explicit Support for Passive Measurement of Internet Latency in QUIC and TCP. In Proceedings of the Internet Measurement Conference 2018. ACM, 22--28. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. Dan Decasper, Zubin Dittia, Guru Parulkar, and Bernhard Plattner. 1998. Router plugins: A software architecture for next generation routers. ACM SIGCOMM Computer Communication Review 28, 4 (1998), 229--240. Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. Martin Duke, Robert Braden, Wesley M. Eddy, Ethan Blanton, and Alexander Zimmermann. 2015. A Roadmap for Transmission Control Protocol (TCP) Specification Documents. RFC7414. (Feb. 2015), 57 pages.Google ScholarGoogle Scholar
  25. Tom Dunigan, Matt Mathis, and Brian Tierney. 2002. A TCP tuning daemon. In SC'02: Proceedings of the 2002 ACM/IEEE Conference on Supercomputing. IEEE, 1--16. Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. Jake Edge. 2015. A seccomp overview. Linux Weekly News (September 2015). https://old.lwn.net/Articles/656307/.Google ScholarGoogle Scholar
  27. Manuel Egele, Christopher Kruegel, Engin Kirda, and Giovanni Vigna. 2011. PiOS: Detecting Privacy Leaks in iOS Applications. In Network and Distributed System Security Symposium (NDSS' 11). 177--183.Google ScholarGoogle Scholar
  28. Ronald Aylmer Fisher. 1935. The design of experiments. Oliver & Boyd.Google ScholarGoogle Scholar
  29. Tobias Flach, Nandita Dukkipati, Andreas Terzis, Barath Raghavan, Neal Cardwell, Yuchung Cheng, Ankur Jain, Shuai Hao, Ethan Katz-Bassett, and Ramesh Govindan. 2013. Reducing web latency: the virtue of gentle aggression. In ACM SIGCOMM Computer Communication Review, Vol. 43. ACM, 159--170. Google ScholarGoogle ScholarDigital LibraryDigital Library
  30. Matt Fleming. 2017. A thorough introduction to eBPF. Linux Weekly News (December 2017). https://old.lwn.net/Articles/740157/.Google ScholarGoogle Scholar
  31. Sally Floyd and Van Jacobson. 1995. Link-sharing and resource management models for packet networks. IEEE/ACM transactions on Networking 3, 4 (1995), 365--386. Google ScholarGoogle ScholarDigital LibraryDigital Library
  32. Alan Ford, Costin Raiciu, Mark Handley, and Olivier Bonaventure. 2013. TCP Extensions for Multipath Operation with Multiple Addresses. RFC 6824. (Jan. 2013), 64 pages. https://www.rfc-editor.org/rfc/rfc6824.txtGoogle ScholarGoogle Scholar
  33. Christina Fragouli, Jean-Yves Le Boudec, and Jörg Widmer. 2006. Network coding: an instant primer. ACM SIGCOMM Computer Communication Review 36, 1 (2006), 63--68. Google ScholarGoogle ScholarDigital LibraryDigital Library
  34. Ron Frederick, Stephen L. Casner, Van Jacobson, and Henning Schulzrinne. 1996. RTP: A Transport Protocol for Real-Time Applications. RFC 1889. (Jan. 1996).Google ScholarGoogle Scholar
  35. Kensuke Fukuda. 2011. An analysis of longitudinal TCP passive measurements (short paper). In International Workshop on Traffic Monitoring and Analysis. Springer, 29--36. Google ScholarGoogle ScholarDigital LibraryDigital Library
  36. Nicolas Geoffray, Gaël Thomas, Julia Lawall, Gilles Muller, and Bertil Folliot. 2010. VMKit: a substrate for managed runtime environments. ACM Sigplan Notices 45, 7 (2010), 51--62. Google ScholarGoogle ScholarDigital LibraryDigital Library
  37. Brendan Gregg. 2015. eBPF: One Small Step. (May 2015). http://www.brendangregg.com/blog/2015-05-15/ebpf-one-small-step.html.Google ScholarGoogle Scholar
  38. Haryadi S. Gunawi, Andrea C. Arpaci-Dusseau, and Remzi H. Arpaci-Dusseau. 2004. Deploying Safe User-Level Network Services with icTCP. In OSDI. 317--332. Google ScholarGoogle ScholarDigital LibraryDigital Library
  39. Andreas Haas, Andreas Rossberg, Derek L. Schuff, Ben L. Titzer, Michael Holman, Dan Gohman, Luke Wagner, Alon Zakai, and JF Bastien. 2017. Bringing the web up to speed with WebAssembly. ACM SIGPLAN Notices 52, 6 (2017), 185--200. Google ScholarGoogle ScholarDigital LibraryDigital Library
  40. Ryan Hamilton, Janardhan Iyengar, Ian Swett, and Alyssa Wilk. 2016. QUIC: A UDP-Based Secure and Reliable Transport for HTTP/2. Internet-Draft draft-hamilton-early-deployment-quic-00.Google ScholarGoogle Scholar
  41. Stephen Hemminger. 2005. Network emulation with NetEm. In Australia's National Linux Conference. 18--23.Google ScholarGoogle Scholar
  42. Benjamin Hesmans, Fabien Duchene, Christoph Paasch, Gregory Detal, and Olivier Bonaventure. 2013. Are TCP extensions middlebox-proof?. In Proceedings of the 2013 workshop on Hot topics in middleboxes and network function virtualization. ACM, 37--42. Google ScholarGoogle ScholarDigital LibraryDigital Library
  43. Michael Hicks, Pankaj Kakkar, Jonathan T. Moore, Carl A. Gunter, and Scott Nettles. 1998. PLAN: A packet language for active networks. ACM SIGPLAN Notices 34, 1 (1998), 86--93. Google ScholarGoogle ScholarDigital LibraryDigital Library
  44. Matti A. Hiltunen, Richard D. Schlichting, Xiaonan Han, Melvin M. Cardozo, and Rajsekhar Das. 1999. Real-time dependable channels: Customizing QoS attributes for distributed systems. IEEE Transactions on Parallel and Distributed Systems 10, 6 (1999), 600--612. Google ScholarGoogle ScholarDigital LibraryDigital Library
  45. Michio Honda, Felipe Huici, Costin Raiciu, Joao Araujo, and Luigi Rizzo. 2014. Rekindling network protocol innovation with user-level stacks. ACM SIGCOMM Computer Communication Review 44, 2 (2014), 52--58. Google ScholarGoogle ScholarDigital LibraryDigital Library
  46. Michio Honda, Yoshifumi Nishida, Costin Raiciu, Adam Greenhalgh, Mark Handley, and Hideyuki Tokuda. 2011. Is it still possible to extend TCP?. In Proceedings of the 2011 ACM SIGCOMM conference on Internet measurement conference. ACM, 181--194. Google ScholarGoogle ScholarDigital LibraryDigital Library
  47. Osamu Honda, Hiroyuki Ohsaki, Makoto Imase, Mika Ishizuka, and Junichi Murayama. 2005. Understanding TCP over TCP: effects of TCP tunneling on end-to-end throughput and latency. In Performance, Quality of Service, and Control of Next-Generation Communication and Sensor Networks III, Vol. 6011. International Society for Optics and Photonics, 60110H.Google ScholarGoogle Scholar
  48. Christian Huitema. 2018. picoquic. Source code. https://github.com/private-octopus/picoquic.Google ScholarGoogle Scholar
  49. IO Visor Project. 2018. Userspace eBPF VM. Source code. https://github.com/iovisor/ubpf.Google ScholarGoogle Scholar
  50. Janardhan Iyengar and Ian Swett. 2018. QUIC: Developing and Deploying a TCP Replacement for the Web. In Netdev 0x12.Google ScholarGoogle Scholar
  51. Jana Iyengar and Martin Thomson. 2018. QUIC: A UDP-Based Multiplexed and Secure Transport. Internet-Draft draft-ietf-quic-transport-14. Work in Progress.Google ScholarGoogle Scholar
  52. Van Jacobson, Robert Braden, and Dave Borman. 1992. TCP Extensions for High Performance. RFC1323. (May 1992), 37 pages. Google ScholarGoogle ScholarDigital LibraryDigital Library
  53. Trevor Jim, Gregory Morrisett, Dan Grossman, Michael Hicks, James Cheney, and Yanling Wang. 2002. Cyclone: A Safe Dialect of C. In USENIX Annual Technical Conference, General Track. 275--288. Google ScholarGoogle ScholarDigital LibraryDigital Library
  54. Arash Molavi Kakhki, Samuel Jero, David Choffnes, Cristina Nita-Rotaru, and Alan Mislove. 2017. Taking a long look at QUIC: an approach for rigorous evaluation of rapidly evolving transport protocols. In Proceedings of the 2017 Internet Measurement Conference. ACM, 290--303. Google ScholarGoogle ScholarDigital LibraryDigital Library
  55. Jim Keniston, Prasanna S. Panchamukhi, and Masami Hiramatsu. 2016. Kernel probes (kprobes). (2016). Documentation provided with the Linux kernel sources.Google ScholarGoogle Scholar
  56. Ben Kenwright. 2012. Fast Efficient Fixed-Size Memory Pool: No Loops and No Overhead. In The Third International Conference on Computational Logics, Algebras, Programming, Tools, and Benchmarking.Google ScholarGoogle Scholar
  57. Heidy Khlaaf, Marc Brockschmidt, Stephan Falke, Deepak Kapur, and Carsten Sinz. 2015. llvm2KITTeL tailored for T2. Source code. https://github.com/hkhlaaf/llvm2kittel.Google ScholarGoogle Scholar
  58. Adam Langley, Alistair Riddoch, Alyssa Wilk, Antonio Vicente, Charles Krasic, Dan Zhang, Fan Yang, Fedor Kouranov, Ian Swett, Janardhan Iyengar, Jeff Bailey, Jeremy Dorfman, Jim Roskind, Kulik, Joanna, Patrik Westin, Raman Tenneti, Robbie Shade, Ryan Hamilton, Victor Vasiliev, Wan-Teh Chang, and Zhongyi Shi. 2017. The QUIC transport protocol: Design and Internet-scale deployment. In Proceedings of the Conference of the ACM Special Interest Group on Data Communication. ACM, 183--196. Google ScholarGoogle ScholarDigital LibraryDigital Library
  59. Ben Laurie, Adam Langley, and Emilia Kasper. 2013. Certificate Transparency. RFC 6962. (June 2013), 27 pages. https://www.rfc-editor.org/rfc/rfc6962.txtGoogle ScholarGoogle Scholar
  60. Li Li, Alexandre Bartel, Tegawendé F Bissyandé, Jacques Klein, Yves Le Traon, Steven Arzt, Siegfried Rasthofer, Eric Bodden, Damien Octeau, and Patrick McDaniel. 2015. IccTA: Detecting inter-component privacy leaks in Android apps. In Proceedings of the 37th International Conference on Software Engineering. IEEE Press, 280--291. Google ScholarGoogle ScholarDigital LibraryDigital Library
  61. Tim Lindholm, Frank Yellin, Gilad Bracha, and Alex Buckley. 2014. The Java virtual machine specification. Pearson Education. Google ScholarGoogle ScholarDigital LibraryDigital Library
  62. LLVM Team. 2019. Clang: a C language family frontend for LLVM. (2019). https://clang.llvm.org/.Google ScholarGoogle Scholar
  63. Daniel Lukaszewski and Geoffrey Xie. 2017. Multipath transport for virtual private networks. In 10th USENIX Workshop on Cyber Security Experimentation and Test (CSET 17). USENIX. Google ScholarGoogle ScholarDigital LibraryDigital Library
  64. Matt Mathis, John Heffner, and Raghu Reddy. 2003. Web100: extended TCP instrumentation for research, education and diagnosis. ACM SIGCOMM Computer Communication Review 33, 3 (2003), 69--79. Google ScholarGoogle ScholarDigital LibraryDigital Library
  65. Matt Mathis, Jamshid Mahdavi, Sally Floyd, and Allyn Romanow. 1996. TCP Selective Acknowledgment Options. RFC2018. (Oct. 1996), 12 pages. Google ScholarGoogle ScholarDigital LibraryDigital Library
  66. Nick McKeown, Tom Anderson, Hari Balakrishnan, Guru Parulkar, Larry Peterson, Jennifer Rexford, Scott Shenker, and Jonathan Turner. 2008. OpenFlow: enabling innovation in campus networks. ACM SIGCOMM Computer Communication Review 38, 2 (2008), 69--74. Google ScholarGoogle ScholarDigital LibraryDigital Library
  67. Marcela Melara, Aaron Blankstein, Joseph Bonneau, Edward Felten, and Michael Freedman. 2015. CONKS: Bringing Key Transparency to End Users. In USENIX Security Symposium, Vol. 2015. 383--398. Google ScholarGoogle ScholarDigital LibraryDigital Library
  68. Ralph C. Merkle. 1987. A digital signature based on a conventional encryption function. In Conference on the theory and application of cryptographic techniques. Springer, 369--378. Google ScholarGoogle ScholarDigital LibraryDigital Library
  69. François Michel, Quentin De Coninck, and Olivier Bonaventure. 2019. QUIC-FEC: Bringing the benefits of Forward Erasure Correction to QUIC. IFIP Networking (2019).Google ScholarGoogle Scholar
  70. Nagendra Modadugu and Eric Rescorla. 2004. The Design and Implementation of Datagram TLS. In Network and Distributed System Security Symposium (NDSS'04).Google ScholarGoogle Scholar
  71. Akshay Narayan, Frank Cangialosi, Deepti Raghavan, Prateesh Goyal, Srinivas Narayana, Radhika Mittal, Mohammad Alizadeh, and Hari Balakrishnan. 2018. Restructuring endpoint congestion control. In Proceedings of the 2018 Conference of the ACM Special Interest Group on Data Communication. ACM, 30--43. Google ScholarGoogle ScholarDigital LibraryDigital Library
  72. George C. Necula. 2002. Proof-carrying code. Design and implementation. In Proof and system-reliability. Springer, 261--288.Google ScholarGoogle Scholar
  73. Shankara Pailoor, Andrew Aday, and Suman Jana. 2018. MoonShine: Optimizing OS Fuzzer Seed Selection with Trace Distillation. In 27th USENIX Security Symposium (USENIX Security 18). 729--743. Google ScholarGoogle ScholarDigital LibraryDigital Library
  74. Parveen Patel, Andrew Whitaker, David Wetherall, Jay Lepreau, and Tim Stack. 2003. Upgrading transport protocols using untrusted mobile code. ACM SIGOPS Operating Systems Review 37, 5 (2003), 1--14. Google ScholarGoogle ScholarDigital LibraryDigital Library
  75. Tommy Pauly, Eric Kinnear, and David Schinazi. 2018. An Unreliable Datagram Extension to QUIC. Internet-Draft draft-pauly-quic-datagram-01.Google ScholarGoogle Scholar
  76. Maxime Piraux, Quentin De Coninck, and Olivier Bonaventure. 2018. Observing the Evolution of QUIC Implementations. In Proceedings of the Workshop on the Evolution, Performance, and Interoperability of QUIC. ACM, 8--14. Google ScholarGoogle ScholarDigital LibraryDigital Library
  77. Andreas Podelski and Andrey Rybalchenko. 2004. Transition invariants. In Proceedings of the 19th Annual IEEE Symposium on Logic in Computer Science, 2004. IEEE, 32--41. Google ScholarGoogle ScholarCross RefCross Ref
  78. Andreas Podelski and Andrey Rybalchenko. 2005. Transition predicate abstraction and fair termination. ACM SIGPLAN Notices 40, 1 (2005), 132--144. Google ScholarGoogle ScholarDigital LibraryDigital Library
  79. Jon Postel. 1981. Transmission Control Protocol. RFC793. (Sept. 1981), 91 pages.Google ScholarGoogle Scholar
  80. Costin Raiciu, Christoph Paasch, Sebastien Barre, Alan Ford, Michio Honda, Fabien Duchene, Olivier Bonaventure, and Mark Handley. 2012. How hard can it be? Designing and implementing a deployable multipath TCP. In Proceedings of the 9th USENIX conference on Networked Systems Design and Implementation. USENIX Association, 399--412. Google ScholarGoogle ScholarDigital LibraryDigital Library
  81. K. K. Ramakrishnan, Sally Floyd, and David L. Black. 2001. The Addition of Explicit Congestion Notification (ECN) to IP. RFC 3168. (Sept. 2001), 63 pages. Updated by RFCs 4301, 6040, 8311. Google ScholarGoogle ScholarDigital LibraryDigital Library
  82. Luigi Rizzo. 1997. Effective erasure codes for reliable computer communication protocols. ACM SIGCOMM computer communication review 27 , 2 (1997), 24--36. Google ScholarGoogle ScholarDigital LibraryDigital Library
  83. Vincent Roca, Ian Swett, and Marie-Jose Montpetit. 2019. Sliding Window Random Linear Code (RLC) Forward Erasure Correction (FEC) Schemes for QUIC. Internet-Draft draft-roca-nwcrg-rlc-fec-scheme-for-quic-01. IETF Secretariat.Google ScholarGoogle Scholar
  84. Florentin Rochet, Olivier Bonaventure, and Olivier Pereira. 2019. Flexible Anonymous Network. In 12th Workshop on Hot Topics in Privacy Enhancing Technologies (HotPETs 2019).Google ScholarGoogle Scholar
  85. John P. Rula, Fabián E. Bustamante, and David R. Choffnes. 2016. When IPs Fly: A Case for Redefining Airline Communication. In Proceedings of the 17th International Workshop on Mobile Computing Systems and Applications. ACM, 9--14. Google ScholarGoogle ScholarDigital LibraryDigital Library
  86. John P. Rula, James Newman, Fabián E. Bustamante, Arash Molavi Kakhki, and David Choffnes. 2018. Mile High WiFi: A First Look At In-Flight Internet Connectivity. In Proceedings of the 2018 World Wide Web Conference on World Wide Web. International World Wide Web Conferences Steering Committee, 1449--1458. Google ScholarGoogle ScholarDigital LibraryDigital Library
  87. Jan Rüth, Ingmar Poese, Christoph Dietzel, and Oliver Hohlfeld. 2018. A First Look at QUIC in the Wild. In International Conference on Passive and Active Network Measurement. Springer, 255--268.Google ScholarGoogle ScholarCross RefCross Ref
  88. Jenny Santiago, Magalie Claeys-Bruno, and Michelle Sergent. 2012. Construction of space-filling designs using WSP algorithm for high dimensional spaces. Chemometrics and Intelligent Laboratory Systems 113 (2012), 26--31.Google ScholarGoogle ScholarCross RefCross Ref
  89. Madhavapeddi Shreedhar and George Varghese. 1996. Efficient fair queuing using deficit round-robin. IEEE/ACM Transactions on networking 4, 3 (1996), 375--385. Google ScholarGoogle ScholarDigital LibraryDigital Library
  90. Emile Stephan, Mathilde Cayla, Arnaud Braud, and Fred Fieau. 2017. QUIC Interdomain Troubleshooting. (July 2017). Internet draft, draft-stephan-quic-interdomain-troubleshooting-00.txt, work in progress.Google ScholarGoogle Scholar
  91. Randall R. Stewart, Qiaobing Xie, Ken Morneault, Chip Sharp, Hanns Juergen Schwarzbauer, Tom Taylor, Ian Rytina, Malleswar Kalla, Lixia Zhang, and Vern Paxson. 2000. Stream Control Transmission Protocol. RFC2960. (Oct. 2000), 134 pages.Google ScholarGoogle Scholar
  92. Jay Kumar Sundararajan, Devavrat Shah, Muriel Médard, Szymon Jakubczak, Michael Mitzenmacher, and João Barros. 2011. Network coding meets TCP: Theory and implementation. Proc. IEEE 99, 3 (2011), 490--512.Google ScholarGoogle ScholarCross RefCross Ref
  93. David L. Tennenhouse, Jonathan M. Smith, W. David Sincoskie, David J. Wether-all, and Gary J. Minden. 1997. A survey of active network research. IEEE communications Magazine 35, 1 (1997), 80--86. Google ScholarGoogle ScholarDigital LibraryDigital Library
  94. David L. Tennenhouse and David J. Wetherall. 1996. Towards an active network architecture. ACM SIGCOMM Computer Communication Review 26, 2 (1996), 5--17. Google ScholarGoogle ScholarDigital LibraryDigital Library
  95. Alin Tomescu, Vivek Bhupatiraju, Dimitrios Papadopoulos, Charalampos Pa-pamanthou, Nikos Triandopoulos, and Srinivas Devadas. 2018. Transparency Logs via Append-only Authenticated Dictionaries. Cryptology ePrint Archive, Report 2018/721. (2018). https://eprint.iacr.org/2018/721.Google ScholarGoogle Scholar
  96. Brian Trammell and Mirja Kuehlewind. 2018. The QUIC Latency Spin Bit. Internet-Draft draft-ietf-quic-spin-exp-01.Google ScholarGoogle Scholar
  97. Viet Hoang Tran and Olivier Bonaventure. 2019. Beyond socket options: making the Linux TCP stack truly extensible. IFIP Networking (2019). http://hdl.handle.net/2078.1/214176Google ScholarGoogle Scholar
  98. Ultimate Team. 2018. Ultimate. Source code. https://github.com/ultimate-pa/ultimate.Google ScholarGoogle Scholar
  99. Tobias Viernickel, Alexander Froemmgen, Amr Rizk, Boris Koldehofe, and Ralf Steinmetz. 2018. Multipath QUIC: A deployable multipath transport protocol. In 2018 IEEE International Conference on Communications (ICC). IEEE, 1--7.Google ScholarGoogle ScholarCross RefCross Ref
  100. Robert Wahbe, Steven Lucco, Thomas E. Anderson, and Susan L. Graham. 1994. Efficient software-based fault isolation. ACM SIGOPS Operating Systems Review 27, 5 (1994), 203--216. Google ScholarGoogle ScholarDigital LibraryDigital Library
  101. Kunshan Wang, Yi Lin, Stephen M. Blackburn, Michael Norrish, and Antony L. Hosking. 2015. Draining the swamp: Micro virtual machines as solid foundation for language development. In LIPIcs-Leibniz International Proceedings in Informatics, Vol. 32. Schloss Dagstuhl-Leibniz-Zentrum fuer Informatik.Google ScholarGoogle Scholar
  102. Magnus Westerlund. 2018. Proposal for adding ECN support to QUIC. (2018). https://github.com/quicwg/base-drafts/pull/1372.Google ScholarGoogle Scholar
  103. David J. Wetherall, John V. Guttag, and David L. Tennenhouse. 1998. ANTS: A toolkit for building and dynamically deploying network protocols. In Open Architectures and Network Programming, 1998 IEEE. IEEE, 117--129.Google ScholarGoogle Scholar
  104. Gary Wong, Matti Hiltunen, and Richard Schlichting. 2001. A configurable and extensible transport protocol. In Proceedings IEEE INFOCOM 2001. Conference on Computer Communications. Twentieth Annual Joint Conference of the IEEE Computer and Communications Society. IEEE, 319--328.Google ScholarGoogle ScholarCross RefCross Ref
  105. Jonathan Woodruff, Robert N. M. Watson, David Chisnall, Simon W. Moore, Jonathan Anderson, Brooks Davis, Ben Laurie, Peter G. Neumann, Robert Norton, and Michael Roe. 2014. The CHERI capability model: Revisiting RISC in an age of risk. In ACM/IEEE 41st International Symposium on Computer Architecture (ISCA). IEEE, 457--468. Google ScholarGoogle ScholarDigital LibraryDigital Library
  106. Bennet Yee, David Sehr, Gregory Dardyk, J. Bradley Chen, Robert Muth, Tavis Ormandy, Shiki Okasaka, Neha Narula, and Nicholas Fullagar. 2009. Native client: A sandbox for portable, untrusted x86 native code. In 30th IEEE Symposium on Security and Privacy. IEEE, 79--93. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Pluginizing QUIC

      Recommendations

      Comments

      Login options

      Check if you have access through your login credentials or your institution to get full access on this article.

      Sign in
      • Published in

        cover image ACM Conferences
        SIGCOMM '19: Proceedings of the ACM Special Interest Group on Data Communication
        August 2019
        526 pages
        ISBN:9781450359566
        DOI:10.1145/3341302

        Copyright © 2019 ACM

        Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

        Publisher

        Association for Computing Machinery

        New York, NY, United States

        Publication History

        • Published: 19 August 2019

        Permissions

        Request permissions about this article.

        Request Permissions

        Check for updates

        Qualifiers

        • research-article

        Acceptance Rates

        Overall Acceptance Rate554of3,547submissions,16%

      PDF Format

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader