假设给定的 TCP 片段被分割成两个 IP 数据报,并且第一个数据报到达 TCP 服务器,但第二个数据报永远不会到达。
经过一段时间后,TCP 服务器会发送一个 keepalive 消息,并确定客户端处于活动状态。那么 TCP 服务器会如何处理第一个数据报?是等待第二个数据报到达,还是丢弃第一个数据报?
答案1
片段重组超时到期后,片段将被丢弃;另一端需要重新传输。
此超时通常是可配置的。在 Linux 上,默认为 30 秒,通过 进行控制/proc/sys/net/ipv4/ipfrag_time
。