一、解决Windows Server 2012R2上网巨慢问题
解决步骤:
执行netsh int tcp show global 查看默认TCP全局参数等相关设置(发现ECN功能默认开启,在网上搜索Server 2012上网慢问题多因此引起):
执行netsh int tcp set global ecn=disable 关闭ECN,问题得到解决:
再次执行netsh int tcp show global 查看默认全局参数,确定本环境ECN已关闭成功:
ECN简介:
Ecncapability:显式拥塞通知 (ECN) 是一种互联网协议和传输控制协议的扩展,在RFC 3168 (2001 年)中定义。ECN 使得不会丢弃数据包的端到端的网络拥塞通知。ECN 是可能之间两个 ECN 启用终结点基本的网络基础结构也支持它时使用的可选功能。
传统上,TCP/IP 网络信号拥堵被丢弃的数据包。ECN 成功进行谈判时,ECN 意识到路由器可能而不是为了发信号即将发生拥塞下降一个数据包的 IP 标头中设置一个标记。数据包的接收回声拥塞指示向发件人,从而降低其传输速率,仿佛它检测到丢失的数据包。而不是做出正确的反应或忽略位,一些过时的或有缺陷的网络设备丢弃已设置的ECN 位的数据包。
二、Windows7/8/10网络参数调优
用netsh int tcp show global查看当前系统网络参数状态
然后逐项输入命令:
接收方缩放状态:netsh int tcp set global rss=enabled
烟囱卸载状态 :netsh int tcp set global chimney=automatic
NetDMA 状态:netsh int tcp set global netdma=enabled
直接缓存访问(DCA):netsh int tcp set global dca=enabled
接收窗口自动调谐级别:netsh int tcp set global autotuninglevel=normal
附加拥塞控制提供程序:netsh int tcp set global congestionprovider=none
ECN 功能:netsh int tcp set global ecncapability=disabled
RFC 1323 时间戳:netsh int tcp set global timestamps=enabled
最后结果如下:
再加一条优化网卡缓存配合使用 网上流传的
在"运行"对话框中输入"MSINFO32.EXE"命令
依次展开"硬件资源→IRQ",然后在右侧的资源框中找出网卡所使用的IRQ资源
以本人机器为例,它无线网卡使用IRQ16,有线网卡使用IRQ19,接着就开始修改"system.ini"文件,开始,搜索system.ini (必须取得管理员权限)
然后找到"[386enh]"段落,在下面加上"IRQ16=6144"和"IRQ19=6144"保存该文件,重新启动系统
其实具体原理本人也了解不详,更改前可先复制默认状态,觉得不好,把最后的参数与你的默认值匹配就好了。
已有 220490 位网友参与,快来吐槽:
发表评论