据外媒报道,微软Edge浏览器已经加入了对TCP Fast Open的支持,这项技术使得Edge能够降低通过网络交换的加密数据的往返时间(RTT)。当前其仅在Windows Insider Preview build 14352或更高版本的Edge浏览器中使用,EdgeHTML的版本号为14.14361或以上。
Edge浏览器支持TCP Fast Open(图片来自cnbeta)
除了早已在准备的TLS 1.3,微软还开始了让3-RTT变得更少、更快速的工作(1-2轮)。通过TCP Fast Open和TLS False Start的使用,可减少约50ms的页面加载时间。
为理解服务器和客户端之间的“握手”信号交换流程,可以参考如上所示的图表。当前TLS的三次握手中,包含了开始和结束的那两次,而加密数据的传输就夹杂在最中间那次。
当用户首次访问网站的时候,TCP Fast Open流程中可以插入一个空白的cookie,这个空位会从服务器端请求回一个cookie,并在之后每次访问该网站时使用。
当Fast Open启用的时候,cookie数据可在TLS Client Hello和开始握手序列时同时进行。这就意味着,在数据送往服务器之前,只有1次RTT。
IETF有望于今夏晚些时候发布TLS 1.3,而微软早已做好了跳上这块甲板的准备。他们的下一个目标,或许会是0-RTT,即让加密数据始终随着TLS Client Hello和此前存储的服务器信息而同时被发送。