Multicast enables efficient one-to-many communications. Several applications benefit from its scalability properties, e.g., live-streaming and large-scale software updates. Historically, multicast applications have used specialized transport protocols. The flexibility of the recently standardized QUIC protocol opens the possibility of providing both unicast and multicast services to applications with a single transport protocol. We present MCQUIC, an extended version of the QUIC protocol that supports multicast communications. We show how QUIC features and built-in security can be leveraged for multicast transport. We present the design of MCQUIC and implement it in Cloudflare quiche. We assess its performance through benchmarks and in emulated networks under realistic scenarios. We also demonstrate MCQUIC in a campus network. By coupling QUIC with our multicast extension, applications can rely on multicast for efficiency with the possibility to fall back on unicast in case of incompatible network conditions.
翻译:多播能够实现高效的一对多通信,许多应用得益于其可扩展性,例如直播和大型软件更新。历史上,多播应用通常使用专用传输协议。而近期标准化的QUIC协议具有灵活性,为使用单一传输协议向应用同时提供单播和多播服务开辟了可能性。我们提出MCQUIC,这是QUIC协议的扩展版本,支持多播通信。我们展示了如何利用QUIC的特性及其内置安全性来实现多播传输。我们介绍了MCQUIC的设计,并在Cloudflare quiche中实现了该协议。我们通过基准测试以及在模拟网络中的真实场景下评估其性能。此外,我们还在校园网络中演示了MCQUIC。通过将QUIC与我们的多播扩展相结合,应用可以依赖多播实现高效传输,并在网络条件不兼容时回退至单播。