【发布时间】:2011-07-08 05:26:44
【问题描述】:
我正在使用 IPERF 将一些数据包从一台 PC 发送到另一台 PC。使用 IPERF 测试 MSS(最大分段大小)时观察到以下情况。
发送 MSS = 20 字节的数据包:
iperf -c 192.168.1.98 -P 1 -i 5 -p 5001 -M 20 -m
我们预计上述命令将发送 MSS = 20 字节的数据包
MTU = MSS + 40Bytes = 60 字节,但 IPERF 显示 MSS = 36 字节(MTU = 76 字节)。
我们看到 IPERF 总是发送大小为比我们指定的少 12 字节的 MSS。
在这里我应该指出,我发送数据包的 PC 是一台 Linux 机器,而接收这些数据包的电脑是一台 Windows 机器。我们在 Linux 中使用 IPERF 命令生成数据包,而在 Windows 上,JPERF 正在运行,我们可以看到有关传入数据包的信息。
另一件重要的事情是,Windows 机器上的 JPERF 在收到我们发送的数据包后,会说如下: MSS 和 MTU 大小未知(操作系统不支持 TCP_MAXSEG?)
知道 MSS 是如何/为什么减少的吗?
【问题讨论】:
标签: networking packets iperf mtu mss