TCP 参数 SACK 和窗口缩放在 Ubuntu 16.04 上不会改变

TCP 参数 SACK 和窗口缩放在 Ubuntu 16.04 上不会改变

我想在 Windows 10 上的 VMware 虚拟机中运行的 Ubuntu 16.04 中关闭 TCP 中的 SACK 和窗口缩放选项。实际上,我通过 Ubuntu 向嵌入式设备发送一些数据包,该设备通过 LAN 电缆直接连接到我的计算机。否则没有互联网连接。

我在 Windows 10 和 ubuntu 虚拟机上安装了wireshark,以在将以下行添加到 /etc/sysctl.conf 后跟踪 SYN 数据包中的 SACK_PERM 标志是否消失(并且窗口缩放已关闭)

net.ipv4.tcp_sack = 0
net.ipv4.tcp_window_scaling=0

因为上述文件中缺少这两行。

现在的问题是,当我在Windows上查看wireshark中的SYN数据包时,存在SACK_PERM标志,但在ubuntu内运行的wireshark上我没有看到任何这样的标志。

所以,我不知道关闭 SACK 是否有效。任何有关此问题的帮助将不胜感激。

答案1

TCP 扩展选项 SACK、时间戳和 Windows 缩放必须包含在两个方向的 SYN 中,以便任何一方都可以使用连接的功能。

如果 Windows 计算机在 SYN 中发送选项,而 Ubuntu 计算机未在 SYN ACK 中发送选项,则双方都不会使用连接选项。

相关内容