V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
edis0n0
V2EX  ›  宽带症候群

SFTP 传文件(不过墙)上下行都只能跑到带宽十分之一,怎么排查哪里的问题?好几个月了,一点相关资料都找不到。FTP(S)要开多个端口。除了这 3 个似乎没有别的稍微主流一点的原生支持上传的断点续传的协议了

  •  
  •   edis0n0 · 2023-01-10 02:30:55 +08:00 · 2011 次点击
    这是一个创建于 692 天前的主题,其中的信息可能已经有所发展或是发生改变。
    16 条回复    2023-01-18 07:46:39 +08:00
    1423
        1
    1423  
       2023-01-10 02:40:02 +08:00
    http ,上传就是对面在下载,隧道打好,对面 aria2c 下载 http
    cnbatch
        2
    cnbatch  
       2023-01-10 02:51:40 +08:00
    还有一种可能性,运营商主动限制了单线程的速度。

    已经有先例:
    https://www.v2ex.com/t/906804
    主题是 IPv6 的,而回帖当中有人提到部分地区、运营商连 IPv4 都有这种限速,所以还得考虑运营商是否限了速。
    cnbatch
        3
    cnbatch  
       2023-01-10 03:00:21 +08:00
    至于支持断点续传的主流协议,别忘了还有 BT 协议,双向断点续传毫无问题。
    不想自己制作种子文件的话,用 Syncthing 即可。
    edis0n0
        4
    edis0n0  
    OP
       2023-01-10 03:07:20 +08:00
    @cnbatch #2 但我单线程 HTTP 上传也能跑满上行。为了防止 SSH 流量被 QoS ,我套国内 VPN 也测试了一遍,SSH 速度还是只有同样套 VPN 传的 HTTP 的 1/10 。
    ryd994
        5
    ryd994  
       2023-01-10 03:26:00 +08:00 via Android
    filezilla 可以多线程
    edis0n0
        6
    edis0n0  
    OP
       2023-01-10 03:34:06 +08:00
    @ryd994 #5 都说了不是多线程的问题
    Vneix
        7
    Vneix  
       2023-01-10 03:38:34 +08:00
    1.接收端 CPU 性能不足,接收数据时因为解密导致性能下降。(可能性较大)
    2.使用非 22 端口试试。
    eason1874
        8
    eason1874  
       2023-01-10 03:39:03 +08:00
    参数配置要调优吧。我同一台内网机器,用 SMB 大概 115MB/s ,用 SFTP 大概 25MB/s (服务器使用率很低,不知是哪个配置锁死了,我懒得管,不知道怎么调)
    davidyin
        10
    davidyin  
       2023-01-10 08:01:38 +08:00
    SFTP 加密解密开销太大?
    jacy
        11
    jacy  
       2023-01-10 10:00:45 +08:00
    同问,同服务器 http/https 很快,ss 确超慢
    edis0n0
        12
    edis0n0  
    OP
       2023-01-10 12:43:14 +08:00
    @Vneix #7
    @davidyin #10 非标端口,两边都是近 5 年主流配置独立服务器,CPU 占用小于<1%
    cnbatch
        13
    cnbatch  
       2023-01-10 13:06:50 +08:00
    那大概率就是加解密的原因了。

    这里有一份 SSH 调优参考:
    https://www.nsoftware.com/kb/articles/legacy/sbb/6-lowtransferspeedsftp.rst
    它第一条就讲清楚了,SSH 一般情况下只有 1-1.5 Mb/s 的速度,想要让速度变快,首先要做的就是调整加密算法,最好换成 AES (因为大概率有硬件加速)。

    所以可以尝试下让 SSH 优先使用 AES 。
    edis0n0
        14
    edis0n0  
    OP
       2023-01-10 13:10:49 +08:00
    @cnbatch 我的宽带是 100Mbps 下行 50Mbps 上行,HTTP 单线程两者都能跑满,SFTP 只有 10Mbps 下行和 3.5Mbps 还稳不住的上行,就算没有硬件加速也不可能这么慢的
    cnbatch
        15
    cnbatch  
       2023-01-10 13:54:29 +08:00
    SSH 还真的会这么慢,一点都不奇怪,我用 SCP 复制文件经常只有 1~2 MB/s 的速度,速度快的反倒极少遇到,换成 SFTP 才好点但也不保证万能。

    那份 SSH 调优参考是这么说的:
    DES and 3DES are very slow, RC4 is the fastest, and AES is relatively fast
    DES 和 3DES 非常慢,RC4 最快,AES 相对较快

    some clients started to use hardware support for processor instructions that make AES faster
    某些客户端使用硬件指令集支持让 AES 更快

    如果你的 SSH 恰好就用 DES 或者 3DES ,它还真的可以慢到气死人
    datocp
        16
    datocp  
       2023-01-18 07:46:39 +08:00 via Android
    stunnel 有关于各种算法的性能测试

    Performance was tested on:

    Intel® Core™ i5-3570K CPU @ 3.40GHz
    Ubuntu 14.10, kernel 3.18.11-031811-generic x86_64
    OpenSSL 1.0.2a (built from source with gcc-4.9)
    stunnel 5.16 running on a single CPU core (taskset -c 0)
    (1) 2048-bit RSA certificate
    (2) Negotiated encryption: ECDHE-RSA-AES256-GCM-SHA384
    (3) Negotiated encryption: PSK-AES256-CBC-SHA
    (4) In order to handle N concurrent connections on a Unix platform, stunnel requires nfile (ulimit -n) to be higher than 2*N, and nproc (ulimit -u) to be higher than N

    ECDHE-RSA-AES128-GCM-SHA256 688 MB/s 5.5 Gbit/s
    ECDHE-RSA-AES256-GCM-SHA384 648 MB/s 5.2 Gbit/s
    ECDHE-RSA-AES128-SHA256 244 MB/s 2.0 Gbit/s
    ECDHE-RSA-AES256-SHA384 204 MB/s 1.6 Gbit/s
    DES-CBC3-SHA 28 MB/s 0.22 Gbit/s
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5602 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 07:13 · PVG 15:13 · LAX 23:13 · JFK 02:13
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.