【问题标题】:Will IP layer split TCP segments?IP 层会拆分 TCP 段吗?
【发布时间】:2015-09-18 00:27:01
【问题描述】:

我知道来自应用层的数据被传输层(如 TCP)分成多个段。此外,数据链路层可能会将数据报拆分为多个帧。

互联网层呢? IP 层会简单地封装该段还是进一步拆分它?

谢谢, 帕万。

【问题讨论】:

    标签: tcp-ip


    【解决方案1】:

    IP 层不能将单个 TCP 数据包拆分成多个 TCP 数据包,因为它不知道 TCP 是什么。但是,网络路径上的路由器可能会选择将 IP 数据包本身分成多个部分。这些片段中的每一个都只包含 TCP 数据包的一小部分,因此在 TCP 层开始工作之前,它们都需要被接收。 (就此而言,发送机器可以根据需要发送预先分段的数据包,尽管通常会尝试调整 TCP 数据包的大小,因此不必这样做。)

    这就是理论。在实践中,IP 分片并不常见,应尽可能避免。此外,IPv6 根本不支持分片。

    【讨论】:

    • 你好像在自相矛盾?路由器可以拆分 IP 数据包的原因是因为它们不知道也不关心它们是什么,当然同样适用于 TCP 和 IP。 IP 层可以将一个 TCP 数据包拆分成多个 IP 数据包,然后在目的地重新组合它们?
    • @ollie299792458 关键是,TCP 数据包的片段本身并不是 TCP 数据包。相反,IP 数据包的片段本身就是 IP 数据包。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-07-26
    • 2018-01-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-07-21
    • 2011-09-18
    相关资源
    最近更新 更多