odnoklassniki/one-nio

quic and http3 plans

avrecko opened this issue · 6 comments

Do you have any plans to add quic and http3 support?

Yes, there are long-term plans for that, but it's unlikely that a production-ready solution will appear here in the nearest months.

I'd say, RPC is NOT a good example for QUIC (if we talk about RPC in the context of communication between microservices).

QUIC is mostly beneficial for end user experience, especially when used over mobile and wireless networks. In a datacenter, where you have a high-bandwith wired connection, where a packet loss is rare, QUIC is just an unnecessary waste of resources. Basic TCP/TLS gives you higher throughput, while consuming much less CPU.

To extend my previous message: nearly all benefits of QUIC are useless in the RPC scenario:

  • Zero RTT: not important, since a connection to another service is typically opened once and kept for the service lifetime.
  • Multiplexing: not needed, as there is no problem in opening a large pool of connections.
  • Head-of-line blocking: not relevant, parallel requests simply use different connections.
  • Connection migration: not needed, there are no mobile <-> wi-fi transitions.
  • Congestion control: makes much more sense for wireless networks.

300 ms RTT is the opposite side of the globe. I just don't have experience of doing RPC in such configuration.