![我如何限制 znapzend 的速率?](https://linux22.com/image/690431/%E6%88%91%E5%A6%82%E4%BD%95%E9%99%90%E5%88%B6%20znapzend%20%E7%9A%84%E9%80%9F%E7%8E%87%EF%BC%9F.png)
我正在使用 znapzend 进行一些备份,不幸的是它淹没了我的千兆以太网连接。我希望能够限制 znapsend 的速率。例如:
zfs 发送 | pv -L 200m | ssh $host zfs recv
有什么建议么?
答案1
您可以尝试限制mbuffer
znapzend 使用的:
-r <rate> : limit read rate to <rate> B/s, where <rate> can be given in b,k,M,G
如果无法通过配置文件完成此操作,则可能需要为 mbuffer 可执行文件本身添加别名:
# initially (for testing, I believe this is only for the current shell):
alias /usr/bin/mbuffer-limited="/usr/bin/mbuffer -r 10M"
# in znapzendzetup:
[...] --mbuffer=/usr/bin/mbuffer-limited [...]
您还可以在 Github 页面上添加功能请求,它可能会得到实现。
答案2
看Linux 流量控制简介。或者,您可以优先考虑您的流量而不是速率限制,这样您仍然可以获得快速备份。
http://tldp.org/HOWTO/Traffic-Control-HOWTO/intro.html
Linux 提供了一套非常丰富的工具来管理和操纵数据包的传输。Linux 社区中的大部分人都非常熟悉 Linux 中用于数据包处理和防火墙的工具(netfilter,以及之前的 ipchains),以及可以在操作系统上运行的数百种网络服务。社区内部和 Linux 社区外部的人都很少意识到流量控制子系统的巨大威力,该子系统在内核 2.2 和 2.4 下已经发展成熟。
本 HOWTO 旨在介绍流量控制的概念、传统元素(一般而言)、Linux 流量控制实现的组件并提供一些指导方针。本 HOWTO 是对 LARTC HOWTO、各个项目的文档以及重要的 LARTC 邮件列表在一段研究期间的收集、合并和综合。
对于没有耐心、只想立即尝试的人,建议使用 tcng 和 HTB HOWTO 以及 LARTC HOWTO 进行流量控制,以立即获得满足。