It will be interesting to see how their native implementation compares.
It will be interesting to see how their native implementation compares.
Implementing QUIC seems no fun and there are almost no implementations. Almost everybody claiming HTTP/3 support uses Quiche under the hood for QUIC (besides some outliers and AWS who are one of the very small group of orgs who have their own QUIC lib). I was under the impression NGINX kept building on the current foundations with Quiche.
A more or less full list of implementations is here:
https://github.com/quicwg/base-drafts/wiki/Implementations
But I personalty would have qualms with all the C implementations. Crypto and very complex protocols are nothing one should implement in C, imho. This cries for disaster. And what's left, especially in an usable state, is quite underwhelming currently.
Higher level libs / frameworks like Java's Netty and Rusts Hyper chose Quiche for QUIC.
The only other ready to use libs I've found were AIOQUIC for Python and quic-go. Those are also the only ones with a working WebTransport feature currently.
Looking on the above linked inter-op tables MS will need some time to catch up. QUIC is indeed complex.