下一版本的HTTP将不使用TCP

放大

Andy Maguire / Flickr

下一版本的超文本传输​​协议(HTTP) - 定义浏览器如何与Web服务器通信的网络协议 - 将与当前使用的版本形成重大突破。

今天的HTTP(版本1.0,1.1和2)都在TCP(传输控制协议)之上。TCP(定义为IP(Internet协议)层核心集的一部分)通过IP网络提供可靠,有序和错误检查的数据传输。“可靠”意味着如果在传输过程中某些数据丢失(由于硬件故障,拥塞或超时),接收端可以检测到这一点,并要求发送端重新发送丢失的数据; “有序”是指按照传输顺序接收数据; “错误检查”表示可以检测到传输过程中的任何损坏。

这些都是理想的属性,对于HTTP等协议是必需的,但TCP被设计为一种通用的解决方案,适用于任何需要这种可靠性的应用程序。它没有特别针对HTTP用于的场景类型进行调整。例如,TCP需要在客户端和服务器之间进行多次往返以建立连接; 使用SSL over TCP需要后续往返以建立加密连接。专为HTTP构建的协议可以组合这些协商并减少往返次数,从而改善网络延迟。

相反的

在不断努力提高网络联网速度的过程中,谷歌一直在研究名为QUIC的实验性网络协议:“快速UDP互联网连接”。QUIC放弃TCP,而是使用其兄弟协议UDP(用户数据报协议)。UDP是TCP的“对立面”; 它是不可靠的(从一端发送的数据可能永远不会被另一端接收,而另一端无法知道某些东西已经丢失),并且它是无序的(稍后发送的数据可能超过先前发送的数据,到达混乱)。然而,UDP非常简单,并且新协议通常建立在UDP之上。

QUIC恢复了TCP的可靠性和排序,但没有引入相同数量的往返和延迟。例如,如果客户端重新连接到服务器,则客户端可以使用第一个数据包发送重要的加密数据,使服务器能够使用与先前协商的相同加密来恢复旧连接,而无需任何额外的往返。

互联网工程任务组(IETF--协作设计网络协议的行业组织)一直致力于创建标准化的QUIC版本,该版本目前与Google的原始提案有很大差异。IETF还希望创建一个使用QUIC的HTTP版本,以前称为HTTP-over-QUIC或HTTP / QUIC。然而,HTTP-over-QUIC不是QUIC上的HTTP / 2; 它是为QUIC构建的新的HTTP更新版本。

因此,IETF的HTTP工作组和QUIC工作组主席Mark Nottingham 提议将HTTP-over-QUIC重命名为HTTP / 3,该提案似乎已被广泛接受。下一版本的HTTP将QUIC作为必不可少的整体功能,这样HTTP / 3将始终使用QUIC作为其网络协议。

  • 发表于:
  • 原文链接:https://arstechnica.com/gadgets/2018/11/the-next-version-of-http-wont-be-using-tcp

扫码关注云+社区

领取腾讯云代金券