握手时延

建立TCP连接之前会进行三次握手
每次握手的数据包最小为20个字节,这个交换过程会严重降低HTTP性能

客户端的ACK会一起带上HTTP请求数据

延迟确认

网络无法保证可靠的分组传输,TCP实现了自己的确认机制确保数据成功传输

每个TCP段都有一个序列号和数据完整性校验和

延迟确认算法:把输出确认存放在缓冲区中 100 - 200 毫秒,以寻找能够捎带它的输出数据分组。 如果这个时间段内没有输出数据分组,就将确认信息放在单独的分组中传送

HTTP 双峰特征:请求多响应多,请求少响应少

❌ 延迟确认算法的缺陷:
双峰特征导致延迟确认算法效果不好,且易引入相当大的时延:
比如请求少的时候,可能每次请求都会等待 200 毫秒才收到响应