时间:2021-05-24
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.怎样在Linux上安装Trickle
trickle工具有一些依赖包,安装和使用trickle之前必须安装“libevent 库”,不过这个库在大多数现在的Linux机器上已经默认安装。
在 Debian/Ubuntu/Linux Mint 上
在Debian/Ubuntu/Mint 机器上运行 apt-get install trickle进行安装。请确保源列表已经更新,接着安装你想要的应用。
复制代码代码如下:
$ sudo apt-get update
$ sudo apt-get install trickle
在 RHEL/CentOS/Fedora 上
首先你需要更新系统,然后使用下面的命令安装trickle。
复制代码代码如下:
# yum update
# yum install trickle
Trickle如何工作?
Trickle通过控制socket数据读写量来控制和限制应用的上传/下载速度。它使用另一个版本的BSD套接字API,但是区别是trickle还管理socket调用。
要注意的是trickle使用动态链接和加载,所以它只对于使用“Glibc库”的程序有用。由于trickle可以设置数据在socket上的传输延迟,所以它可以用来限制一个应用的网络带宽。
Trickle不能做什么?
Trickle不能用于限制使用UDP协议的应用的带宽,它只可用于TCP连接,但是你要知道它也并不是对所有的TCP连接有效。如果你一直仔细地看这篇文章,你可以猜到原因是什么。
还要说一下,trickle无法工作在使用静态链接的可执行程序上。
4. 使用trickle
复制代码代码如下:
# trickle --help
Usage: trickle [-hvVs] [-d <rate>] [-u <rate>] [-w <length>] [-t <seconds>]
[-l <length>] [-n <path>] command ...
-h Help (this)
-v Increase verbosity level
-V Print trickle version
-s 在独立模式下独立运行
-d <rate> 设置最大累计下载速率为 <rate> KB/s
-u <rate> 设置最大累计上传速度为 <rate> KB/s
-w <length> 设置窗口长度为 <length> KB 。默认512KB。
-t <seconds> 设置默认的平滑时间 <seconds> s 。平滑时间决定多少时间间隔trickle将尝试让应用程序传输数据。较小的值(0.1 - 1秒)会导致更连续(平滑)会话,非常适合于交互式应用。而较大的值(1 - 10秒)可能会产生一阵阵的发送和接收数据,对需要大量带宽的应用程序更好。
-l <length> 设置默认的平滑长度 <length> KB 。 默认10 KB。
-n <path> 指定trickled socket名称 <path> 。 默认/tmp/.trickled.sock 。
-L <ms> 设置延时。
5. 举例
限制wget下载速度为50KB/s
6. 限制一个shell的所有命令带宽
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
在Linux系统中,如果在下载东西的话浏览网页就会变得非常卡,这时就需要对下载网速进行一定的限制,而Trickle就是一款很好的宽带控制工具,下面小编就给大
Linux软件的安装和卸载一直是困扰许多新用户的难题。在Windows中,我们可以使用软件自带的安装卸载程序或在控制面板中的"添加/删除程序"来实现。与其相类似
使用DenyHosts能够进行自动屏ip的功能,掌握DenyHosts在Linux系统中的安装是很有必要的,那么在Linux系统中要如何安装DenyHost
当初才接触linux的时候,因为条件限制,只能在虚拟机中安装linux系统使用,由于是小白,爬了好多坑。于是决定写一篇关于在虚拟机中安装linux系统的博客。一
Git是一个分布式版本控制系统,而GitHub是基于Git的网站,为用户提供Git服务,下面小编就给大家介绍下Linux如何安装和使用GitHub,并解决G