下一代HTTP底层协议将弃用TCP协议
近日,据中国台湾地区iThome.com.tw报道,国际互联网工程任务组(Internet Engineering Task Force, IETF)将于近日商讨下一代HTTP底层协议,可能不再使用已经沿用多年的TCP协议,而有望改用以UDP协议发展出的QUIC技术,同时新一代HTTP将命名为HTTP/3。
目前,人们使用的HTTP (1.0、1.1及2)都是以TCP (Transmission Control Protocol)协议为基础实作出来。TCP作为一种传输控制协议,优点是安全、流量稳定、讲求封包的传输顺序,但缺点是效率低、连接耗时。为了提升数据在IP网络上的传输,Google提出了实验性网络层协议,称为QUIC。
QUIC并不使用TCP,而改用UDP (User Datagram Protocol)为底层,UDP虽然较不安全、可能有掉封包或封包后发先至的问题,但较简单、传输效率更高,能大幅减低延迟性。Google为QUIC提升安全性、并加入缓冲机制避免阻断服务攻击(DoS)。
虽然Google有意将QUIC提交到IETF,以便成为下一代网际网络规范,但IETF也提出了一个和Google QUIC分庭抗礼的QUIC。社区中称Google提出的QUIC为gQUIC,而IETF的为iQUIC。
另一方面,当IETF的QUIC工作小组将QUIC标准化时,它衍生出共两个协议,一个是网络传输协议,一个是HTTP层协议。网络传输层协议也可用于传输其他数据,不只为HTTP设定,但两者名称都使用了QUIC;而在iQUIC上传输的HTTP协议,长期以来就被称为HTTP-over-QUIC,或HTTP/QUIC。
为了解决种种混淆,让彼此之间更容易分别,IETF决定加以正名。HTTP工作小组暨QUIC工作小组主席Mark Nottingham倡议将HTTP-over-QUIC(HTTP/QUIC)重新命名为HTTP/3,并在上周举行的IETF HTTPBIS会议中提议,并且也广为接受。
Mozilla开发人员Daniel Stenberg日志列出了Nottigham在会中的简报,简报重申HTTP/3和之前协议之间的差异。HTTP/QUIC(HTTP/3)并非HTTP/1.1或HTTP/2的后代,也不是QUIC上的HTTP/2协议,因为它是在QUIC协议上新开发出的HTTP。下一代HTTP将是以QUIC为核心及网络传输协议的新协议。
Litespeed的工程师也宣布该公司和脸书已经完成HTTP/3实作的相容性测试。