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.
Supplemental Material
- 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 ScholarDigital Library
- Apple. 2018. Improving Network Reliability Using Multipath TCP. (2018). https://developer.apple.com/documentation/foundation/urlsessionconfiguration/improving_network_reliability_using_multipath_tcp.Google Scholar
- Praveen Balasubramanian. 2018. Usage for timestamp options in the wild. (Sept. 2018). https://mailarchive.ietf.org/arch/legacy/msg/tcpm/11522.Google Scholar
- 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 ScholarDigital Library
- 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 ScholarCross Ref
- 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 ScholarDigital Library
- 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 ScholarDigital Library
- Lawrence Brakmo. 2017. TCP-BPF: Programmatically tuning TCP behavior through BPF. NetDev 2.2 (2017).Google Scholar
- Marc Brockschmidt and Heidy Khlaaf. 2019. T2 Temporal Prover. http://mmjb.github.io/T2/.Google Scholar
- Ken Calvert. 2006. Reflections on network architecture: an active networking perspective. ACM SIGCOMM Computer Communication Review 36, 2 (2006), 27--30. Google ScholarDigital Library
- 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 ScholarDigital Library
- 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 ScholarCross Ref
- Lucas Clemente and Marten Seemann. 2018. quic-go. Source code. https://github.com/lucas-clemente/quic-go.Google Scholar
- 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 ScholarDigital Library
- 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 ScholarDigital Library
- Byron Cook, Andreas Podelski, and Andrey Rybalchenko. 2006. TERMINATOR: beyond safety. In International Conference on Computer Aided Verification. Springer, 415--418. Google ScholarDigital Library
- Scott A. Crosby and Dan S. Wallach. 2009. Efficient Data Structures For Tamper-Evident Logging. In USENIX Security Symposium. 317--334. Google ScholarDigital Library
- Willem de Bruijn and Eric Dumazet. 2018. Optimizing UDP for content delivery: GSO, pacing and zerocopy. In Linux Plumbers Conference.Google Scholar
- 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 ScholarDigital Library
- Quentin De Coninck and Olivier Bonaventure. 2018. Multipath Extension for QUIC. Internet-Draft draft-deconinck-quic-multipath-01. Internet Engineering Task Force.Google Scholar
- Quentin De Coninck and Olivier Bonaventure. 2019. The Case for Protocol Plugins. Technical Report. https://hdl.handle.net/2078.1/216493Google Scholar
- 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 ScholarDigital Library
- 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 ScholarDigital Library
- 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 Scholar
- 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 ScholarDigital Library
- Jake Edge. 2015. A seccomp overview. Linux Weekly News (September 2015). https://old.lwn.net/Articles/656307/.Google Scholar
- 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 Scholar
- Ronald Aylmer Fisher. 1935. The design of experiments. Oliver & Boyd.Google Scholar
- 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 ScholarDigital Library
- Matt Fleming. 2017. A thorough introduction to eBPF. Linux Weekly News (December 2017). https://old.lwn.net/Articles/740157/.Google Scholar
- 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 ScholarDigital Library
- 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 Scholar
- 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 ScholarDigital Library
- Ron Frederick, Stephen L. Casner, Van Jacobson, and Henning Schulzrinne. 1996. RTP: A Transport Protocol for Real-Time Applications. RFC 1889. (Jan. 1996).Google Scholar
- Kensuke Fukuda. 2011. An analysis of longitudinal TCP passive measurements (short paper). In International Workshop on Traffic Monitoring and Analysis. Springer, 29--36. Google ScholarDigital Library
- 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 ScholarDigital Library
- Brendan Gregg. 2015. eBPF: One Small Step. (May 2015). http://www.brendangregg.com/blog/2015-05-15/ebpf-one-small-step.html.Google Scholar
- 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 ScholarDigital Library
- 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 ScholarDigital Library
- 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 Scholar
- Stephen Hemminger. 2005. Network emulation with NetEm. In Australia's National Linux Conference. 18--23.Google Scholar
- 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 ScholarDigital Library
- 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 ScholarDigital Library
- 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 ScholarDigital Library
- 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 ScholarDigital Library
- 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 ScholarDigital Library
- 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 Scholar
- Christian Huitema. 2018. picoquic. Source code. https://github.com/private-octopus/picoquic.Google Scholar
- IO Visor Project. 2018. Userspace eBPF VM. Source code. https://github.com/iovisor/ubpf.Google Scholar
- Janardhan Iyengar and Ian Swett. 2018. QUIC: Developing and Deploying a TCP Replacement for the Web. In Netdev 0x12.Google Scholar
- 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 Scholar
- Van Jacobson, Robert Braden, and Dave Borman. 1992. TCP Extensions for High Performance. RFC1323. (May 1992), 37 pages. Google ScholarDigital Library
- 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 ScholarDigital Library
- 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 ScholarDigital Library
- Jim Keniston, Prasanna S. Panchamukhi, and Masami Hiramatsu. 2016. Kernel probes (kprobes). (2016). Documentation provided with the Linux kernel sources.Google Scholar
- 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 Scholar
- Heidy Khlaaf, Marc Brockschmidt, Stephan Falke, Deepak Kapur, and Carsten Sinz. 2015. llvm2KITTeL tailored for T2. Source code. https://github.com/hkhlaaf/llvm2kittel.Google Scholar
- 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 ScholarDigital Library
- Ben Laurie, Adam Langley, and Emilia Kasper. 2013. Certificate Transparency. RFC 6962. (June 2013), 27 pages. https://www.rfc-editor.org/rfc/rfc6962.txtGoogle Scholar
- 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 ScholarDigital Library
- Tim Lindholm, Frank Yellin, Gilad Bracha, and Alex Buckley. 2014. The Java virtual machine specification. Pearson Education. Google ScholarDigital Library
- LLVM Team. 2019. Clang: a C language family frontend for LLVM. (2019). https://clang.llvm.org/.Google Scholar
- 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 ScholarDigital Library
- 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 ScholarDigital Library
- Matt Mathis, Jamshid Mahdavi, Sally Floyd, and Allyn Romanow. 1996. TCP Selective Acknowledgment Options. RFC2018. (Oct. 1996), 12 pages. Google ScholarDigital Library
- 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 ScholarDigital Library
- 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 ScholarDigital Library
- 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 ScholarDigital Library
- 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 Scholar
- Nagendra Modadugu and Eric Rescorla. 2004. The Design and Implementation of Datagram TLS. In Network and Distributed System Security Symposium (NDSS'04).Google Scholar
- 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 ScholarDigital Library
- George C. Necula. 2002. Proof-carrying code. Design and implementation. In Proof and system-reliability. Springer, 261--288.Google Scholar
- 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 ScholarDigital Library
- 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 ScholarDigital Library
- Tommy Pauly, Eric Kinnear, and David Schinazi. 2018. An Unreliable Datagram Extension to QUIC. Internet-Draft draft-pauly-quic-datagram-01.Google Scholar
- 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 ScholarDigital Library
- 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 ScholarCross Ref
- Andreas Podelski and Andrey Rybalchenko. 2005. Transition predicate abstraction and fair termination. ACM SIGPLAN Notices 40, 1 (2005), 132--144. Google ScholarDigital Library
- Jon Postel. 1981. Transmission Control Protocol. RFC793. (Sept. 1981), 91 pages.Google Scholar
- 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 ScholarDigital Library
- 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 ScholarDigital Library
- Luigi Rizzo. 1997. Effective erasure codes for reliable computer communication protocols. ACM SIGCOMM computer communication review 27 , 2 (1997), 24--36. Google ScholarDigital Library
- 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 Scholar
- Florentin Rochet, Olivier Bonaventure, and Olivier Pereira. 2019. Flexible Anonymous Network. In 12th Workshop on Hot Topics in Privacy Enhancing Technologies (HotPETs 2019).Google Scholar
- 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 ScholarDigital Library
- 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 ScholarDigital Library
- 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 ScholarCross Ref
- 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 ScholarCross Ref
- Madhavapeddi Shreedhar and George Varghese. 1996. Efficient fair queuing using deficit round-robin. IEEE/ACM Transactions on networking 4, 3 (1996), 375--385. Google ScholarDigital Library
- 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 Scholar
- 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 Scholar
- 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 ScholarCross Ref
- 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 ScholarDigital Library
- David L. Tennenhouse and David J. Wetherall. 1996. Towards an active network architecture. ACM SIGCOMM Computer Communication Review 26, 2 (1996), 5--17. Google ScholarDigital Library
- 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 Scholar
- Brian Trammell and Mirja Kuehlewind. 2018. The QUIC Latency Spin Bit. Internet-Draft draft-ietf-quic-spin-exp-01.Google Scholar
- 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 Scholar
- Ultimate Team. 2018. Ultimate. Source code. https://github.com/ultimate-pa/ultimate.Google Scholar
- 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 ScholarCross Ref
- 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 ScholarDigital Library
- 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 Scholar
- Magnus Westerlund. 2018. Proposal for adding ECN support to QUIC. (2018). https://github.com/quicwg/base-drafts/pull/1372.Google Scholar
- 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 Scholar
- 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 ScholarCross Ref
- 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 ScholarDigital Library
- 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 ScholarDigital Library
Index Terms
- Pluginizing QUIC
Recommendations
Implementing the plugin distribution system
SIGCOMM '21: Proceedings of the SIGCOMM '21 Poster and Demo SessionsRecent works proposed to dynamically extend protocol implementations through protocol plugins. While addressing deployment issues, they raise safety concerns (do they terminate, do they act maliciously,. . . ). To fill this gap, a system distributing ...
Towards QUIC debuggability
EPIQ'18: Proceedings of the Workshop on the Evolution, Performance, and Interoperability of QUICQUIC has been called the mother of all web protocols, as it deeply integrates aspects of TCP (reliability, flow control, congestion control, loss recovery), TLS (handshake, encryption keys) and HTTP/2 (streams, prioritization) together into one cross-...
QUIC Throughput and Fairness over Dual Connectivity
AbstractDual Connectivity (DC) is an important lower-layer feature accelerating the transition from 4G to 5G that also is expected to play an important role in standalone 5G radio networks. However, even though the packet reordering introduced ...
Comments