您现在的位置是:首页 > 文章详情

腾讯开源高性能轻量级跨平台 QUIC 协议库-TQUIC

日期:2023-11-08点击:112

腾讯开源了一个基于 RUST 语言开发的 QUIC 协议库 - TQUIC旨在打造一个稳定、快速、高性能并具有广泛技术影响力的传输协议库。

由于QUIC所具备的广泛性、长期性、创新性特点,我们开源了自研的TQUIC协议库,也希望借TQUIC开源的机会, 吸引更多的同学共建,一起促进传输协议的发展,提升互联网快速和安全的传输体验。

TQUIC协议库具有如下的优势:

  • 快传输:TQUIC是业界支持拥塞控制算法最丰富的协议库,在全部场景下表现符合RFC预期,在弱网和部分场景下传输效果领先2%-30%。
  • 高性能:TQUIC在大部分测试场景下的单机处理性能优于同类开源产品5%,部分场景下单机处理性能领先20%。
  • 高质量QUIC 协议栈涵盖10+篇核心的RFC标准或草案,同时涉及到传输层、安全层、应用层,复杂度远大于TCP。TQUIC单元测试覆盖率95%以上,与业界四个主流 QUIC实现的互操性测试用例通过率为100%, 同时采用基于形式化规范(SIGCOMM2019论文成果)的测试方法,严格保障了协议一致性。
  • 易用性:TQUIC易于使用,支持灵活的配置和丰富的可观察性;TQUIC提供了Rust/C/C++多语言接口,未来计划进一步提供Kotlin/Swift等语言接口。
  • 基于RUSTTQUIC基于内存安全语言编写,不受缓冲区溢出漏洞和其他与内存相关缺陷影响。
  • 丰富特性TQUIC支持所有QUIC和HTTP/3规范的重要特性。

架构图:

TQUIC将跨平台兼容及多并发模型支持作为关键的设计目标。TQUIC核心采用了网络IO及事件循环抽象化设计。TQUIC核心并不依赖于套接字,而是通过用户提供的回调来实现。同时,TQUIC核心没有强加特定的事件循环要求,它提供了帮助用户调度事件的函数。TQUIC的灵活性使得易于在各种系统中的定制和集成。

TQUIC接口层提供了面向主流平台编程语言的高层级封装接口,支持同步、异步语义接口,兼容不同的并发模型,并简化用户的使用。

后续规划:

  • 对接开源技术生态,扩大TQUIC使用场景,进一步提升TQUIC使用体验。
  • 发表相关论文,并逐步开源更多TQUIC高级特性和算法。
  • 追踪QUIC协议的演进和创新,并持续提升TQUIC核心能力。
原文链接:https://www.oschina.net/news/265538
关注公众号

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。

持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。

转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。

文章评论

共有0条评论来说两句吧...

文章二维码

扫描即可查看该文章

点击排行

推荐阅读

最新文章