TCP - 接收器滑动窗口中的部分片段

时间:2015-10-19 22:24:23

标签: tcp sliding-window

RFC793表示,在接收方,以下检查接受传入的段:

  

此测试的第一部分检查是否为段的开头       落在窗口,测试的第二部分检查,看是否结束       该部分落入窗口;如果该段通过了该段的任何一部分       测试它包含窗口中的数据。

但是,可能存在这样一种情况:片段的开头落在窗口中,但片段的结尾不是。这是窗口中仍有空间的情况,但段大小比缓冲区中的剩余空间长。如果是这种情况怎么办?会发生什么?

TCP会丢弃此细分吗?或者它是否根据最大段大小排列缓冲区,以便它可以采用这些部分段?

TIA。

1 个答案:

答案 0 :(得分:1)

通常发送方不会发送比接收方在其窗口中可接受的数据更多的数据,因为当前窗口大小是在每个TCP标头上发送的。如果接收者的窗口正在填充,它将发送一个较小的窗口大小值,因此发送者将知道接收者可以接受多少数据,直到它填满。