不久前,我发现我的 MS SQL 服务器以 590 字节的数据包发送数据,将大响应分成大约 30-50 个单独的数据包,如Wireshark 截图所示。
我尝试更改max packet size
为 1500,但即使在重新启动服务器后,它对 tcp 数据包的实际大小也没有影响。我试图进行一些诊断,我发现了什么:
- 问题不在于客户端或服务器的 MTU。
- 数据包路径上没有 MTU 小于 1500 字节的设备。
ping -l -f 1472
从服务器到任何客户端的命令都是成功的。- 服务器和客户端之间的 TCP 连接几乎总是有 1024 字节的窗口大小。
所以,一个问题 - 为什么max packet size
不影响实际的网络数据包大小?我对不正确的硬件或操作系统设置没有想法。可能是 MS SQL Server 本身的问题?有没有人遇到过类似的问题?
运行 Windows Server 2008 R2 Enterprise 的服务器。
客户端 - Windows 7。