是否可以从命令行对scp / sftp / rsync / etc传输进行速率限制?即,在单个命令上的手动QoS?


10

具体来说,我希望对通话本身中scpsftp会话(或其他任意网络通话)进行速率限制。

例如,假设我要将100MB复制到一台服务器,将1GB复制到另一台服务器。我希望能够同时运行这两个程序,但要为“正常”计算机使用率保持QoS-有点类似于如何对bittorrent进行速率限制。

有没有一种方法可以在不接触网络硬件的情况下进行操作?

我正在设想类似于:

magic-qos-tool 'scp file user@host:/path/to/file'

要么..

scp -rate 40kbps file user@host:/path/to/file

Answers:


12

是的,有一个应用程序与您的“ magic-qos-tool”完全一样,称为“ trickle ”。

EXAMPLES
     trickle -u 10 -d 20 ncftp

     Launch ncftp(1) limiting its upload capacity to 10 KB/s, and download ca-
     pacity at 20 KB/s.

1
谢谢,@davr-一个包装器工具与学习每个包装器的所有选项都有很大的改进:)
沃伦2010年


7

Rsync使您轻松实现这一目标,它可以选择执行以下操作: --bwlimit=KBPS


2

sftp 从这些发行版开始,具有Debian 7和Ubuntu 12.04的节流标志:

-l limit

    限制使用的带宽,以Kbit / s为单位。

(当然这是小写L。)

资源: stfp(1)

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.