当前位置:首页 >> 服务器 >> 其他服务器 >> 内容

Windows Server 2016向外请求慢的坑,导致小程序登录过程延时9秒

时间:2022/11/5 22:56:32 作者:不详 来源:网络 浏览:

,

Windows Server 2016 服务器 telnet远程设备,需要等9秒多才能连上,ping 正常,网上找各种原因,尝试了反向域名解析的方法,还是无效。

后来通过抓包发现:

第一次,发送等待3秒,失败;第二次发送等待6秒,失败,第三次成功。

查询官方文档,因为windows server 2016中的ECN功能默认是开启的,ECN利用了TCP/IP中未使用的字段来支持功能,目的是为了减少网络拥堵,但网络中间的各种设备可能不支持,并把该字段不为0的包丢弃。


telnet的时候第一次发送带ECN标志的SYN包,3秒后未收到响应,接着发第二次,6秒后未收到相应,第三次会采用不带ECN的SYN包,即可成功,所以导致telnet需要9秒多才可以连上。


解决办法很简单,管理员模式运行CMD,执行 netsh int tcp set global ecncapability=disabled 关闭此功能即可。

=======================================================================================================

Windows server 2016系统下,默认打开了ECN功能。ECN的作用主要是在网络出现拥塞的时候通知TCP,减少TCP连接中被丢弃的数据包数量,以避免重传、减少等待时间,网络堵塞时提高整体的传输速度,尤其是网络抖动。但是也有一些网络设备的实现和配置规则不能很好的与ECN兼容。可能会将ECN交换包视为非法,丢弃已设置ECN的数据包,导致网络延迟问题。此时可以通过关闭ECN功能尝试解决。如何关闭ECN功能呢?

1.打开“运行”,输入cmd,点击“确定”

2.在命令行界面输入netsh interface tcp show global按回车可以查看信息,enabled说明功能是启用状态

3.输入netsh int tcp set global ecn=disable,按回车即可关闭ECN功能

4.此时输入netsh interface tcp show global按回车可以查看ECN功能已处于关闭状态


  • 上一篇:windows server 2016配置ftp的坑
  • 下一篇:没有了
  • 共有评论 0相关评论
    发表我的评论
    • 大名:
    • 内容:
    本类推荐
    • 暂无信息
    本类固顶
    • 暂无信息
  • 徐汉涛(www.xuhantao.com) © 2024 版权所有 All Rights Reserved.
  • 部分内容来自网络,如有侵权请联系站长尽快处理 站长QQ:965898558(广告及站内业务受理) 网站备案号:蒙ICP备15000590号-1