我有一个非常简单的问题,似乎无法找到我想要的答案。假设我在客户端和服务器之间有一个 tcp 连接,并且客户端请求包含 2 个文件的页面。我们假设 http 连接是持久的并且使用管道,因此对文件的 2 个请求在一个 tcp 段中发送到从客户端到服务器的。现在假设客户端想要的文件是 4500 字节和 3000 字节,tcp 的 MSS 是 1460 字节,因为我们使用的是以太网,所以第一个文件应该分为 1460 和 120 的 3 段,而第二个文件是分为 1460 和 80 的 2 段(至少如果 tcp 仅发送一个文件会发生这种情况)。在这种情况下,tcp 将发送多少段?第一个文件的前 4 个和第二个文件的 3 个,或者它会先将 2 个文件“合并”在一起,然后分割发送该文件?在第二种情况下,我们将有一个 7500、5 MSS + 200 字节的文件。
我在任何地方都找不到有关此问题的信息。所以最后我的问题是tcp发送的段模式如何:
3 MSS -> 120 字节 -> 2 MSS -> 80 字节或 5 MSS -> 200 字节
我不明白 tcp 如何发送包含 2 个不同文件字节的段。