XQUIC 是什么?
阿里巴巴发布的 XQUIC 库是 …
… 一个符合 IETF 规范的 QUIC 和 HTTP/3 的客户端和服务器实现。 目前支持的 QUIC 版本是 v1 和 draft-29。
… 操作系统和平台无关。 目前支持 Android、iOS、HarmonyOS、Linux、macOS 和 Windows。多数代码已在我们的产品中被使用,并在 android、iOS 应用程序以及服务器上进行了大规模测试。
… 仍在开发中。 互通性测试 定期与其他 QUIC 实现进行互通性测试。
标准化
所有基本特性符合 RFC 9000、RFC9001、RFC9002、RFC9114 和 RFC9204,包括 QUIC 和 TLS 之间的接口、0-RTT 连接建立、HTTP/3 和 QPACK。
符合 RFC7301 的 ALPN 扩展
功能特性
插件式拥塞控制:NewReno、Cubic、BBR 和 BBRv2 等。
插件式加密,集成 BoringSSL 和 BabaSSL
不可靠数据报扩展
跨平台实现,支持 Android、iOS、HarmonyOS、Linux、macOS 和 Windows(v1.2.0)
基于 qlog (draft-ietf-quic-qlog-main-schema, draft-ietf-quic-qlog-quic-events 和 draft-ietf-quic-qlog-h3-events) 的 QUIC 事件日志记录
尚未标准化的特性
环境准备
如果你是第一次使用 XQUIC,请参阅 环境准备 以设置环境。
若要在特定平台上编译 XQUIC,请参阅以下说明:
尝试运行以下示例:
有关 XQUIC 的更多详细信息,请参阅 深入探讨
使用 API 时,请参阅 API 文档
对于其他常见问题,请参阅 故障排除指南
贡献
我们非常欢迎你对 XQUIC 进行贡献,帮助使其变得更好!所有类型的贡献都受到鼓励和重视。感谢 所有贡献者。有关更多信息,请参阅我们的 贡献指南。
如果你有任何问题,请随时在我们的 讨论论坛 中创建一个新的讨论主题。
谁在使用 XQUIC?
XQUIC 已应用于许多产品,包括:
- 淘宝移动版
如果你的产品正在使用 XQUIC,请通过 联系我们 告诉我们。
许可证
XQUIC 依据 Apache 2.0 许可证发布。
联系我们
请通过以下方式联系我们:
- 电子邮件:xquic@alibaba-inc.com
- 钉钉群:34059705
- Slack 频道:quicdev 频道 #xquic