微软宣布开源MsQuic:QUIC协议跨平台实现
微软在其技术社区官方博客宣布,已开源自己的内部QUIC库,即MsQuic。
QUIC(QuickUDPInternetConnections,快速UDP网络连接)是一种实验性的网络传输协议,正在由IETF进行标准化。QUIC最初由谷歌开发,在2013年实现。谷歌希望使用这个协议来取代HTTPS/HTTP协议,使网页传输速度加快。2018年,基于QUIC协议的HTTP(HTTPoverQUIC)成为即将到来的HTTP/3,正式被确定为下一代网络规范。
微软的MsQuic是实现QUIC传输协议的跨平台通用库,主要用于支持其产品内部的QUIC数据连接。MsQuic针对多种使用模式进行了优化,已经被多个微软产品和服务使用,包括但不限于:
Windows将在内核中附带MsQuic,WindowsHTTP/3堆栈也是基于MsQuic构建的。
Microsoft365正在使用HTTP/3测试IIS的预览版。
.NETCore已在MsQuic的基础上在Kestrel和HttpClient中构建了对HTTP/3的支持(在.NETCore5.0预览版中可用)。
Windows中的SMB将MsQuic用法作为原型。
微软在博客文章中表示,“MsQuic为许多重要的网络方案带来了性能和安全性的改进。”并称其在线服务从这些性能改进(例如减少尾部延迟和更快的连接设置)中受益最大,“我们的连接将能够无缝切换网络,因为它们可以承受IP地址/端口更改的影响。”
MsQuic仍在开发中,当前处于预览状态,在Windows和Linux上可用。