为什么 TFO 可以将 TCP 降低到 0 次握手?
因为 TCP 协议栈不同版本间存在差异,所以本文的前提是 TCP 三次握手时不传输数据,也就是传统的 TCP 三次握手。一、概述
在之前的文章 为什么 TCP 建立连接需要三次握手 中,关于下面 3 个问题给出了简单的回答:
简单来说,传统的 TCP 建立连接时需要三次握手,而且这三次握手只发送简单的SYN和ACK报文。
从网络带宽的资源利用的角度来看,传输层的 TCP 头部 + 网络层的 IP 头部,最少有 40 个字节,为了发送几个字节的报文数据包,而额外组装了 40 个字节的头部,这有点类似前面讲 TCP 滑动窗口时,所谓的 “糊涂窗口综合症”。
从应用优化的角度来看,因为要等到 TCP 经过三次握手建立连接之后才能发送应用层数据,所以会造成应用程序首次发送数据时存在一定的延迟,尤其是短连接、移动设备等场景中,这种副作用会加剧。
那么这种问题如何解决呢?使用TFO解决方案。
© 版权声明