QUIC的全称是 Quick UDP Internet Connections protocol,由 Google 设计提出,目前由 IETF 工作组推动进展,其设计的目标是替代 TCP 成为 HTTP/3 的数据传输层协议。熹乐科技在物联网(IoT)和边缘计算(Edge Computing)场景也一直在打造底层基于 QUIC 通讯协议的边缘计算微服务框架YoMo,长时间关注 QUIC 协议的发展,本文章整理目前各大厂及主流编程语言的开源 QUIC 实现。
在线社区:discord/quic
维护者:YoMo
C/C++
Name
Version
Roles
Handshake
Microsoft's MsQuic
draft-27/28/29/30/31/32
client, server
TLS 1.3 RFC
Facebook's mvfst
draft-29
library, client, server
TLS 1.3
Google's Chromium
Q043, Q046, Q050, T050, T051, draft-27, draft-29
library, client, server
QUIC Crypto, TLS
ats (Apache Traffic Server)
draft-29
client. server
TLS 1.3
LiteSpeed's lsquic
Draft-32, Draft-29, Draft-28, Draft-27, Q043, Q046, and Q050.
library, client, server
QUIC Crypto, RFC 8446
draft-29, draft-30, draft-31, and draft-32
library, client, server
TLSv1.3 (RFC 8446)
Cloudflare's nginx-cloudflare
draft-27, draft-28, draft-29
server
TLSv1.3 (RFC8446)
draft-32/31/30/29/28/27
library and test tools, test client, test server
TLS 1.3 (using picotls)
draft-29
library, client, server
TLS 1.3 (using picotls)
draft-32draft-32
library, client, server
TLS 1.3
Fastly's quicly
draft-27
client, server
TLS 1.3 (final)
draft-27 .. draft-32
server
TLSv1.3 (RFC8446)
Rust
Name
Version
Roles
Handshake
Cloudflare's quiche
draft-27, draft-28, draft-29
library, client, server
TLSv1.3 (RFC8446)
Mozilla/Firefox's Neqo
draft-30
library, client, server
TLS 1.3
draft-28
library, client, server
TLS 1.3
Go
Name
Version
Roles
Handshake
always the current draft
library, client, server
TLS 1.3 RFC
Node.js
Name
Version
Roles
Handshake
draft-25
client, server
TLS 1.3
Python
Name
Version
Roles
Handshake
draft-29
library, client, server
TLS 1.3
Haskell
Name
Version
Roles
Handshake
draft-29
library, client, server
TLS 1.3
Java
Name
Version
Roles
Handshake
draft-29, draft-30, draft-31, draft-32
library, client
TLS 1.3