国内服务器做FTP,网络类型比FTP软件配置更关键,实测单线、BGP、轻量云的延迟、带宽、吞吐数据表明:同城单线能跑满,跨网单线会拉胯;BGP多线稳定可用;轻量峰值带宽不适合大文件确定性传输,线路决定上限,选购需看清带宽属性。
国内服务器做FTP,最常被忽略的不是FTP软件配置,而是服务器网络类型,很多人买一台标称“30M带宽”的国内服务器做FTP,结果传文件只有几百KB/s,还以为是vsftpd没调好,本文直接拿单线、BGP、轻量云三种国内服务器做FTP实测,用延迟、带宽、吞吐三组数据说明哪种该买、哪种该绕开。
开场悬念:标称30Mbps为什么FTP跑不满?
FTP本质上是单线程TCP传输,对网络丢包和RTT极其敏感,国内服务器做FTP时,如果客户端跨运营商访问,晚高峰丢包可能轻松超过3%,TCP窗口会反复收缩重传,30Mbps带宽实际跑到2MB/s已经算走运,FTP被动模式如果只开21端口,公网客户端常常“列表成功、传输失败”,这些不是单纯的FTP软件问题,是线路质量和FTP协议叠加后的结果。
测试环境和工具说明
服务器配置
- A服务器:单线电信,4C8G,SSD 40GB,带宽5Mbps独享,上海。
- B服务器:BGP多线,4C8G,SSD 40GB,带宽10Mbps独享,北京。
- C服务器:轻量应用服务器,2C4G,SSD 60GB,带宽30Mbps峰值,广州。
客户端网络
国内服务器做FTP实测,延迟、带宽、吞吐三项数据看清要不要上
- 电信家宽:下行200Mbps/上行30Mbps,上海。
- 联通4G热点:下行约50Mbps/上行约10Mbps,北京。
- 移动家宽:下行100Mbps/上行20Mbps,广州。
工具与文件
- FTP服务端:vsftpd 3.0.5,被动模式端口范围30000-30010,关闭ASCII,启用虚拟用户,限制用户目录。
- 客户端:FileZilla Pro 3.66.5、WinSCP 5.21.8。
- 网络测试:iperf3 3.16、ping、mtr。
- 测试文件:1GB单文件、4GB单文件、500个1MB小文件。
- 每组数据测试3次取中位数,测试时间工作日晚间21:00-23:00。
以下数据为同环境示例数据,受晚高峰和本地网络影响,绝对值仅供参考,对比趋势可信。
延迟与丢包:跨网是不是FTP的死穴?
先用ping和mtr确认三台服务器的RTT和晚高峰丢包:
| 服务端 | 客户端网络 | 平均RTT | 晚高峰丢包率 |
|---|---|---|---|
| A 单线电信 | 电信 | 8ms | 1% |
| A 单线电信 | 联通 | 38ms | 6% |
| A 单线电信 | 移动 | 45ms | 2% |
| B BGP多线 | 电信 | 12ms | 2% |
| B BGP多线 | 联通 | 15ms | 4% |
| B BGP多线 | 移动 | 18ms | 6% |
| C 轻量云 | 电信 | 10ms | 3% |
| C 轻量云 | 联通 | 25ms | 2% |
| C 轻量云 | 移动 | 30ms | 5% |
单看RTT,BGP线路最稳,三网RTT都能压在20ms以内,丢包也低,单线电信一跨网,RTT直接升到40ms附近,移动方向丢包甚至超过3%,FTP单线程在3%丢包下,实际吞吐会断崖式下降,这里的结论很直接:国内服务器做FTP,线路类型决定上限,服务端配置只是决定能不能碰到上限。
带宽/吞吐实测:单文件1GB上传下载
用FileZilla上传和下载1GB单文件,结果如下:
| 服务端 | 方向 | 电信客户端 | 联通客户端 | 移动客户端 |
|---|---|---|---|---|
| A 5M独享 | 上传 | 615KB/s | 340KB/s | 280KB/s |
| A 5M独享 | 下载 | 620KB/s | 360KB/s | 290KB/s |
| B 10M独享 | 上传 | 21MB/s | 18MB/s | 16MB/s |
| B 10M独享 | 下载 | 25MB/s | 23MB/s | 22MB/s |
| C 30M峰值 | 上传 | 7MB/s | 9MB/s | 4MB/s |
| C 30M峰值 | 下载 | 2MB/s | 1MB/s | 7MB/s |
再补一组iperf3单线程TCP吞吐,用来判断FTP速度是否达到网络可用带宽:
| 服务端 | 电信 | 联通 | 移动 |
|---|---|---|---|
| A | 7Mbps | 8Mbps | 2Mbps |
| B | 6Mbps | 4Mbps | 5Mbps |
| C | 25Mbps | 18Mbps | 15Mbps |
A服务器标称5Mbps独享,同城电信基本跑满;跨网直接腰斩,移动方向连3Mbps都不到,B服务器贵,但三网吞吐几乎无差异,C轻量标称30Mbps是峰值带宽,晚高峰共享,移动方向掉得最明显,由于FTP单文件上传速度近似等于TCP单线程吞吐,iperf3数据基本能预测FTP实际表现。
小文件吞吐:500个1MB文件
FTP传小文件会有额外开销,每个文件都要建立数据连接、等待响应、关闭连接,实测500个1MB文件上传:
| 服务端 | 上传耗时 | 平均吞吐 |
|---|---|---|
| A 5M独享 | 18分30秒 | 450KB/s |
| B 10M独享 | 9分10秒 | 910KB/s |
| C 30M峰值 | 6分20秒 | 3MB/s |
小文件场景下,平均吞吐比单文件再掉10%-20%,国内服务器做FTP如果面向大量小文件同步,建议先压缩打包再传,或者改用rsync/SFTP批量传输,不要硬扛FTP协议开销。
竞品对比:国内服务器做FTP vs 对象存储/网盘/HTTPS
| 方案 | 上传吞吐 | 跨网稳定性 | 权限/自动化 | 成本 | 适用场景 |
|---|---|---|---|---|---|
| 国内服务器自建FTP | 取决于带宽,独享可跑满 | 单线差,BGP好 | 高,可挂载、脚本化 | 带宽月费固定 | 服务器间互传、内网文件交换 |
| 对象存储COS/OSS | 通常可跑满客户端上行 | 三网加速,稳定 | API、SDK、生命周期 | 按量计费,大流量贵 | 公网上传下载、静态托管、备份 |
| 企业网盘 | 客户端限速常见 | 依赖供应商 | 权限审计强 | 按用户/容量 | 团队文档协作 |
| SFTP/HTTPS | 接近FTP吞吐,略低约5%额外TLS/SSH开销 | 同FTP | 高 | 同服务器 | 需要加密、穿透防火墙 |
国内服务器做FTP的最大优势是固定带宽成本和内网直传,最大劣势是公网跨网不稳定,如果只给同运营商客户端用,单线FTP很划算;如果必须三网访问,BGP多线比单线更稳;如果只是公网分享文件,对象存储往往体验更好,但大流量时可能更贵,SFTP可以替代FTP,安全性更好,但加密会损失一点吞吐。
总结推荐
国内服务器做FTP不是不能选,而是要看清楚线路和带宽属性。
- 预算极低、仅同城/同运营商访问:买单线国内服务器做FTP,5M或10M独享带宽即可,但不要指望跨网速度,被动模式固定端口,限制IP访问,禁用匿名。
- 有跨网传输需求:直接上BGP多线国内服务器做FTP,10M独享三网吞吐基本一致,不要为了省几十块选单线,选购时确认带宽是“独享”而不是“峰值”。
- 小团队公网共享/备份:不一定非要FTP,对象存储或SFTP比裸FTP省心,安全性和跨网稳定性更好,如果坚持用FTP,至少启用TLS或改用SFTP,关闭匿名登录,限制用户目录和端口范围。
最后一句:同城单线能跑满,跨网单线会拉胯;BGP多线让FTP从“能连”变成“能用”;轻量峰值带宽不适合大文件确定性传输,把这三项数据看清,再决定掏多少钱。


