skip to main content
10.1145/3405796.3405826acmconferencesArticle/Chapter ViewAbstractPublication PagesconextConference Proceedingsconference-collections
research-article

Automating QUIC Interoperability Testing

Published:10 August 2020Publication History

ABSTRACT

We present QuicInteropRunner (QIR) [1, 2], a test framework for automated and on-demand interoperability testing between implementations of the QUIC protocol [3]. QIR is a framework in which QUIC clients and servers interact with each other over a network that simulates various network conditions using ns-3 [4]. QIR automates QUIC interoperability testing by running a suite of test cases between containerized QUIC implementations. We describe the key constraints and insights that defined our work, recent innovations that made the framework possible, a high-level overview of our design, and a few exemplary tests. QIR is now supported and used by ten QUIC implementations as part of their development process, confirming our thesis that there is a need for automating interoperability testing and making it available on demand.

References

  1. QUIC Interop Runner. https://github.com/marten-seemann/quic-interop-runner.Google ScholarGoogle Scholar
  2. QUIC Interop Runner Web Interface. https://interop.seemann.io.Google ScholarGoogle Scholar
  3. J. Iyengar and M. Thompson. QUIC: A UDP-Based Multiplexed and Secure Transport. February 2020. https://tools.ietf.org/html/draft-ietf-quic-transport-27.Google ScholarGoogle Scholar
  4. The ns-3 Network Simulator. https://www.nsnam.org/.Google ScholarGoogle Scholar
  5. S. Bradner. RFC 2026: The Internet Standards Process - Revision 3. October 1996.Google ScholarGoogle Scholar
  6. R. Stewart. RFC 4960: Stream Control Transmission Protocol. September 2007.Google ScholarGoogle Scholar
  7. QUIC Interop Wiki. https://github.com/quicwg/base-drafts/wiki/17th- Implementation- Draft.Google ScholarGoogle Scholar
  8. QUIC Working Group. https://quicwg.org.Google ScholarGoogle Scholar
  9. QUIC Interop Runner Documentation. https://github.com/marten-seemann/quic-interop-runner/.Google ScholarGoogle Scholar
  10. Docker. https://docker.com.Google ScholarGoogle Scholar
  11. Docker Compose. https://docs.docker.com/compose/.Google ScholarGoogle Scholar
  12. Docker Hub. https://hub.docker.com.Google ScholarGoogle Scholar
  13. E. Rescorla. RFC 8446: The Transport Layer Security (TLS) Protocol Version 1.3. August 2018.Google ScholarGoogle Scholar
  14. NSS Key Log Format. https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/Key_Log_Format.Google ScholarGoogle Scholar
  15. pyshark: Python wrapper for tshark. https://kiminewt.github.io/pyshark/.Google ScholarGoogle Scholar
  16. Wireshark protocol analyzer. https://www.wireshark.org/.Google ScholarGoogle Scholar
  17. iPerf- The ultimate speed test tool for TCP, UDP and SCTP. https://iperf.fr/.Google ScholarGoogle Scholar
  18. M. Piraux, Q. De Coninck, and O. Bonaventure. Observing the Evolution of QUIC Implementations. August 2018.Google ScholarGoogle Scholar
  19. Boring SSL test runner. https://boringssl.googlesource.com/boringssl/+/refs/heads/master/ssl/test/runner/.Google ScholarGoogle Scholar

Index Terms

  1. Automating QUIC Interoperability Testing

      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
        EPIQ '20: Proceedings of the Workshop on the Evolution, Performance, and Interoperability of QUIC
        August 2020
        44 pages
        ISBN:9781450380478
        DOI:10.1145/3405796

        Copyright © 2020 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: 10 August 2020

        Permissions

        Request permissions about this article.

        Request Permissions

        Check for updates

        Qualifiers

        • research-article
        • Research
        • Refereed limited

        Acceptance Rates

        Overall Acceptance Rate6of8submissions,75%

      PDF Format

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader