  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.
