超文本传输协议(HTTP)是Web浏览器用来与服务器对话的系统,它是使用传输控制协议(TCP)构建的。TCP有许多特性使它对HTTP很有吸引力,但它也包含了大量过多的代码。通过放弃它,使用更简单的用户数据报协议(UDP),然后添加HTTP所需的内容,传输可以更平稳和更快。
HTTPv1、v1.1和v2都使用了TCP,因为它是将可靠性、顺序和错误检查集成到Internet协议(IP)中的最有效方法。在这种情况下,可靠性是指服务器检查在传输过程中是否丢失了任何数据的能力,顺序是指是否按照发送的顺序接收数据,而错误检查意味着服务器可以检测传输过程中发生的损坏。
如ArsTechnica注意,UDP比TCP简单得多,但没有包含可靠性或订单。但是TCP也不是完美的,它是一个适合所有数据传输的解决方案,因此包括HTTP不需要的内容。Google已经设法通过开发QuickUDPInternetProtocol(Quic)来纠正这种情况,Quic是HTTP的协议基础,它维护了UDP的简单性,但是增加了HTTP需要的一些东西,比如可靠性和顺序。
从理论上讲,这应能提高稳定性和速度。例如,在客户端和服务器之间建立安全连接时,TCP必须多次往返才能建立连接,只有在传输层安全(TransportLayerSecurity,TLS)协议进行访问之后才能建立加密连接。Quic可以同时完成这两项任务,从而减少了消息的总数。
互联网工程任务组(负责建立互联网协议)最近刚刚批准了Quic的使用,并且命名为