admin管理员组

文章数量:1568304

问题描述:

一直以来,服务器上传文件都是使用sftp协议,由于现在有很多大文件的上传需求,但是sftp的上传速度表现不佳,于是决定使用ftp协议来替代sftp协议以提升上传性能。

使用ftp后,上传速度确实有数倍的提升(只看了部署机为Linux的情况)。然而,一些使用者却反馈上传速度过慢。

使用者网络环境如下:

操作系统:Win10

上行带宽:100Mbit/s,相当于12Mb/s。

由于使用者上传客户端和服务端之间网络条件极好,理论上ftp的上传速度应该可以接近上行带宽的限制。但经过使用者演示,实际上传速度只能达到2Mb/s左右,甚至比不上sftp的上传速度,完全没有道理。更换了多台Win10/11电脑测试,表现皆是如此,ftp上传速度只能达到2Mb/s左右,但是如果同时启动多个ftp上传,则每个ftp连接的上传速度都能维持在2Mb/s左右。这就说明ftp上传速度并未触及网络带宽瓶颈,且这一问题在Win10系统下具有共性,并非个例。

根据以上表现,开始怀疑ftp的上传速度在Win10/11系统上面受到了限制,单个ftp连接的上传速度被限制在了2Mb/s。于是,在同样的网络环境下,使用Win7系统和Linux系统来执行了进一步的测试,结果和预期一致,ftp上传速度能够跑满带宽。而如果同时启动多个ftp上传连接,则单个ftp连接的上传速度会降下来,但多个ftp连接的上传速度合并起来也是能够占满带宽的。

结论:

ftp的上传速度在Win10/11系统上面受到了限制,在上行带宽为100Mbit/s(12Mbyte/s)的网络条件下,单个ftp连接的上传速度被限制在了2Mbyte/s。

问题原因:

根据以上结论,在网络上搜索了相关信息,发现确实有不少用户都发现了Win10/11针对ftp的限速问题。令人震惊的是,这个问题从Win10一直持续到了Win11,并且至今依然存在,可能会一直存在下去。

为什么win10/11会对smb和ftp的局域网分享传输速度限制?

Redirecting

Remote connections speed limited to about 1.5 MB / s

Remote connections speed limited to about 1.5 MB / s - Microsoft Q&A

Ftp传输在win10下被系统限速的问题分析和解决

https://zhuanlan.zhihu/p/387363606

Windows 10 - Network upload speed limited to 0.60 Mbps after upgrade from Windows 7

Redirecting

Remote connections speed limited to about 1.5 MB / s

windows 10 - Remote connections speed limited to about 1.5 MB / s - Super User

解决方案:

找到了问题后,问题似乎不难解决,然而,情况异常复杂。

根据上面的网络资料,尝试了网友,以及微软官方人员提供的一些解决方案,通通无效。也尝试修改了ftp客户端本身的Qos设置、Win系统本身的Qos策略、网卡设置、注册表设置等,仍然没有效果。

正如上面的一位网友所述,他反复重装系统,以高昂的代价进行了ftp的限速问题测试。

他每次重装Win10系统时,首次启动系统,ftp上传速度一切正常,但是在经过若干次重启后,ftp的上传速度就会受到限制;而在这几次重启过程中,他没有修改过任何系统配置,甚至他的ftp上传也是基于局域网的,Win10系统没有连接过外网。也就是说,Win10系统没有经过任何“污染”的情况下,仅仅是几次重启之后,就“激活”了对ftp的上传速度限制。

然而,令人绝望的是,这位网友向微软官方人员反馈了这一现象后,微软并不承认这是一个问题。

至此,我没有找到通过调整Win10/11系统来解决ftp网速限制的方法。

剩下能想到的办法就是弃用Win10/11系统,或者为Win10/11系统主机使用网络代理了。

  1. 如果文件部署机不要求使用Windows系统,可以直接弃用Win10/11系统,改用Linux系统。

  1. 如果文件部署机必须使用Windows系统,则可以考虑将系统降级为Win7,然而,由于Windows操作系统硬件平台的限制,例如较新的主板芯片不支持Win7系统等,某些情况下降级Windows可能存在一些困难。

  1. 如果文件部署机必须使用Windows系统,又没有降级Win10/11系统到Win7系统的条件,则可以考虑使用网络代理。在局域网中使用非Win10/11系统的主机搭建一个socks网络代理,让使用Win10/11系统的文件部署机通过该代理来使用网络,进而绕过Win10/11针对ftp的限速问题。

在本文的网络场景中,经测试,在没有启用网络代理的情况下,Win10/11部署机的ftp上传速度只能达到15Mbit/s(2Mbyte/s)左右。当启用网络代理后,则ftp上传速度能够将带宽跑满,达到100Mbit/s(12Mbyte/s)左右,翻了6倍以上,速度提升效果非常明显。

本文标签: 系统FTP