![在 Windows 7 中应执行哪些 TCP/网络调整才能获得最佳互联网性能且不会产生导致问题的合理风险?](https://linux22.com/image/1467312/%E5%9C%A8%20Windows%207%20%E4%B8%AD%E5%BA%94%E6%89%A7%E8%A1%8C%E5%93%AA%E4%BA%9B%20TCP%2F%E7%BD%91%E7%BB%9C%E8%B0%83%E6%95%B4%E6%89%8D%E8%83%BD%E8%8E%B7%E5%BE%97%E6%9C%80%E4%BD%B3%E4%BA%92%E8%81%94%E7%BD%91%E6%80%A7%E8%83%BD%E4%B8%94%E4%B8%8D%E4%BC%9A%E4%BA%A7%E7%94%9F%E5%AF%BC%E8%87%B4%E9%97%AE%E9%A2%98%E7%9A%84%E5%90%88%E7%90%86%E9%A3%8E%E9%99%A9%EF%BC%9F.png)
我想知道在 Windows 7 中应该进行哪些网络/tcp 调整才能确保最佳性能(但不会造成问题的合理风险)。以下是我目前所做的(以下命令在提升的命令提示符中运行):
禁用可能会干扰接收窗口缩放设置的启发式方法
netsh interface tcp set heuristics disabled
将接收窗口自动调整设置为正常(当我设置它时,这在吞吐量上产生了巨大的差异 - 到距离约 1500 英里的服务器的吞吐量提高了 3 倍以上)
netsh interface tcp set global autotuninglevel=normal
将拥塞控制设置为复合 TCP (CTCP)
netsh interface tcp set global congestionprovider=ctcp
对于不熟悉此内容的人,有一个提示,您可以使用以下命令查看当前设置:
netsh interface tcp show global
答案1
您已经在 中找到大多数设置netsh interface tcp show global
,因此您不需要我们解释这些设置,您可以自己尝试。我只想指出,其中一些设置取决于发送和接收计算机的硬件以及参与消息流的路由器的硬件等变量,因此并不总是产生相同的结果。Windows 可能会在运行时动态改进某些参数。
您未列出的一个设置是 MTU。例如,将其减小到 1492 可能会提高性能,因为在某些配置下,默认值 1500 可能需要将消息拆分为两个消息。请参阅以下命令:
netsh int ipv4 show subinterface
netsh int ipv4 set subinterface "Name of NIC" mtu=1492 store=persistent
有时启用巨型帧时相反的做法会有所帮助:
netsh int ipv4 set subint "Name of NIC" mtu=9000 store=persistent
但是,没有一种设置能够提高所有情况和所有配置下的速度。Windows 默认设置为最常见的情况,当然可能与您的情况不同。您必须进行实验,看看哪些参数最适合您的环境。
答案2
您从未说过这两个位置的 ISP 速度是多少,因此很难说它的速度有多快,但有几个因素需要仔细检查。
- 硬件 - 防火墙、路由器和调制解调器会影响速度。通过直接连接到调制解调器(或尽可能靠近)找到基准并查看速度。您的计算机和您尝试访问的另一台计算机之间有什么关系?
- 软件 - AV、防火墙甚至 Windows 都会降低速度。您已在 Windows 中做了一些调整,但您是否测试过其他任何操作,例如在安全模式下运行或减少软件对连接/带宽的影响?
- 两个站点之间的连接 - 您如何访问另一个站点?VPN、FTP、http 等?如果是 VPN,它是通过硬件还是通过计算机上的软件?
- 测试 - 您如何测试速度?听起来您移动/下载一个大文件并检查其速度,但最好再检查一下。
这只是一些基本信息,但了解您尝试了多少以及尝试了什么很有帮助。如果没有这些信息,我只能假设您认为是 Windows 的问题,然后才发现是您的网络或 AV 软件导致速度变慢。我会先找到瓶颈,否则您可能会浪费数小时进行调整,而这些调整并不能解决您遇到的问题。
您的连接可能没问题,但这就是我问这些问题并获取这些信息的原因。如果我获得更多信息,我会修改我的答案,但现在我认为这与您连接到另一个网站的方式或两台计算机之间的某些事情有关。