Linux_Linux系统中安装使用Trickle来控制用户带宽,1. trickle介绍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.怎样在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的所有命令带宽
本站内容来源于网络,如有侵权请与我们联系,我们会及时删除,我们深感抱歉!
注:本站所有信息仅供用于网络技术学习参考,学习中请遵循相关法律法规!
本文地址: https://www.juheyunku.com/xt/linux/7593.shtml
相关文章
热门TAG
命令 权重 外链 企业网站 白帽 php 织梦教程 dedecms修改内容 javascript 织梦 功能 标签 调用 详解 服务器 网站流量 实例解析 Dedecms 织梦cms HTML tags标签 python jquery教程 jquery windows SEO优化 蜘蛛 搜索引擎 网站收录 JSP最新文章
-
Linux 运维需要掌握的 17 个
时间:2020-12-28
-
这里有好用又好看的Linu
时间:2020-12-28
-
使用Meld在Linux中以图形方
时间:2020-12-28
-
Linux kernel swear counts
时间:2020-12-25
-
linux 防御SYN攻击步骤详解
时间:2020-12-23
-
谈谈Linux运维人员是否需要
时间:2020-12-23
-
linux的mount(挂载)命令详
时间:2020-12-23
-
Zotero:一款帮助你收集和
时间:2020-12-23
热门文章
-
Anki:让记忆更轻松的开源神器
时间:2020-12-22
-
如何在Linux启动时自动启动LXD容器
时间:2020-12-22
-
使用Vi/Vim编辑器:基础篇
时间:2020-12-22
-
使用parallel利用起你的所有CPU资源
时间:2020-12-22
-
Zsync:一个仅下载文件新的部分的传输工
时间:2020-12-22
-
linux 防御SYN攻击步骤详解
时间:2020-12-23
-
Vim普通模式的一般性规律性总结
时间:2020-12-22
-
TLP帮助我们的Linux机器节能省电
时间:2020-12-22
-
用户操作系统Unix的前世今生
时间:2020-12-23
-
谈谈Linux里10个最危险的命令
时间:2020-12-23
