博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
trickle 限制用户空间带宽
阅读量:6708 次
发布时间:2019-06-25

本文共 1403 字,大约阅读时间需要 4 分钟。

  hot3.png

对于用户量大的情况下,可能一个程序就占用了你所有的网络带宽。这种情况可以通过nethogs来查看。具体参见: 《 》。这种情况下,你就需要临时限制下带宽,来确保你的网络带宽不会被一个程序耗而对其他应用造成影响。下面来介绍一款轻量级的用户空间带宽控制管理的工具------trickle。
1. trickle介绍 trickle是一款轻量级的用户空间带宽控制管理的工具,用来限制如浏览器Firefox等, FTP , SSH,curl,wget,scp等等使用网络带宽。 trickle通过控制socket数据读写量来控制和限制应用的上传和下载速度。要注意的是trickle使用动态链接和加载,所以只对于使用libc.so库的程序有用,其他的则无效的。由于trickle可以设置数据在socket上的传输延迟,因此就可以用来限制应用程序的网络带宽。 trickle不能用于限制使用UDP协议的应用的带宽,只可用于TCP连接。也无法工作在使用静态链接的可执行程序上。
2. 如何判定trickle对有个应用程序有效 根据是否使用libc.so库来判断。 可以通过ldd命令来查看某个应用程序是否使用了libc.so库。如果应用程序使用了这个库,就可以用trickle来限制网络带宽,否则不行。
# ldd /usr/bin/wget | grep libc.so libc.so.6 => /lib64/libc.so.6 (0x00002adc30397000)
3. 安装trickle 需要先安装EPEL源,参见《 》。
# yum install trickle
4. 使用trickle
# trickle --helpUsage: trickle [-hvVs] [-d 
] [-u
] [-w
] [-t
] [-l
] [-n
] command ... -h Help (this) -v Increase verbosity level -V Print trickle version -s 在独立模式下独立运行 -d
设置最大累计下载速率为
KB/s -u
设置最大累计上传速度为
KB/s -w
设置窗口长度为
KB 。默认512KB。 -t
设置默认的平滑时间
s 。平滑时间决定多少时间间隔trickle将尝试让应用程序传输数据。较小的值(0.1 - 1秒)会导致更连续(平滑)会话,非常适合于交互式应用。而较大的值(1 - 10秒)可能会产生一阵阵的发送和接收数据,对需要大量带宽的应用程序更好。 -l
设置默认的平滑长度
KB 。 默认10 KB。 -n
指定trickled socket名称
。 默认/tmp/.trickled.sock 。 -L
设置延时。
5. 举例 限制wget下载速度为50KB/s
6.  限制一个shell的所有命令带宽 转载请注明来自运维生存时间:http://www.ttlsa.com/html/4103.html

转载于:https://my.oschina.net/766/blog/211442

你可能感兴趣的文章
hystrix源码之插件
查看>>
jawr使用
查看>>
Spark MLlib之协同过滤
查看>>
php绝对路径与相对路径之间关系的研究
查看>>
rocketmq rest 控制台
查看>>
ipad上的电子阅读器们
查看>>
graphite
查看>>
思科路由交换基础命令详解!
查看>>
Sharding-JDBC 最大努力型事务理解
查看>>
js工具
查看>>
AD密码过期提醒
查看>>
排序算法
查看>>
Angular 服务
查看>>
CSS兼容整理-1
查看>>
修改电脑MAC地址的方法
查看>>
golang生成二维码
查看>>
xtrabackup备份和恢复MySQL
查看>>
PHP 5.3.27 编译安装
查看>>
http协议的实现 httpd的基础配置
查看>>
Linux pthread_create内存泄漏问题
查看>>