【问题标题】:Mechanism for determining MSS during TCP 3-Way HandshakeTCP 3 次握手期间确定 MSS 的机制
【发布时间】:2016-10-04 22:24:25
【问题描述】:

我正在排查导致 PPPoE 服务出现碎片的 MTU/MSS 问题。下面是来自与我的问题相关的不同服务(按预期工作)的 TCP 3-Way Handshake 的数据包转储。

我理解 PMTUD 的工作方式是这样的:通过将 IP 标头中的不分片 (DF) 位设置为 1,到达目的地的路径上需要对数据包进行分段的路由器将 ICMP 发送回主机相应地调整 MSS 大小。但是,我的理解是,这只会在发生碎片时发生(数据包大于路径 MTU)。这表明 PMTUD 在数据交换阶段起作用,而不是在协商 TCP 3-Way Handshake 时(因为这些是小数据包,在这种情况下为 78 个字节)。

在上述数据包捕获中,SYN 数据包发送 MSS=1460(由于 PPPoE 的 8 字节开销,该数据太大了),并且来自服务器的 SYN/ACK 响应发送回正确的 MSS=1452。在这个交换过程中,TCP 使用什么机制来确定 MSS?

【问题讨论】:

    标签: networking tcp


    【解决方案1】:

    也许,在此三次握手期间,服务器尚未计算 MSS。例如,如果系统管理员观察到很多碎片,他可以将整个系统的 MSS 设置为 1452(使用命令ip tcp adjust-mss 1452),所以当您进行三次握手时,服务器只做广告它的默认 MSS。它适用于你的情况吗?

    【讨论】:

      猜你喜欢
      • 2011-07-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-04-09
      • 2014-12-16
      • 2016-05-24
      • 2020-09-18
      • 1970-01-01
      相关资源
      最近更新 更多