Traffic Shaping

Posted on 2008-11-30 05:43 fcp 阅读(962) 评论(0)  编辑  收藏 所属分类: Linux

一直想继续学习java的东西,可是就是没时间,该死的破课
可是课上学的东西也不能忘了,我这人急性不好,还是写下来的保险

Traffic Shaping就是控制网络的流量
在ubuntu下有两个好用的工具可以完成这个工作
Wonder Shaper和cbq.init
实际上真正起作用的是一个叫tc的linux命令
这个两个工具都是脚本,估计是bash,都在内部调用tc来实现traffic shaping
说白了就是给咱们弄了个简单的接口,不用了解太多内部的东西,就能实现traffic shaping

1,Wonder Shaper
安装 apt-get install wondershaper
使用 wondershaper [NIC] [DOWN] [UP]

NIC: 你要限制的设备名,例如eth0
DOWN: 下载的最大速度,单位Kbps
UP: 上传的最大速度,单位Kbps

例子: wondershaper eth0 1024 512
假设你用eth0连接到Internet,你的下载速度最大到1024kps,上传速度最大到512kps

当然你可以取消限制
wondershaper clear eth0
查看状态
wondershaper eth0

2,cbq.init
这个也是个脚本,比上面的复杂,当然功能也多,
上面这个只能针对网卡进行限制,如果你想对某个IP的地址的流量进行限制的时候就无能为力了
但是这个东东可以

在ubuntu下他叫shaper
安装apt-get install shaper
配置文件在/etc/shaper下,开始是空的

当然你也可以自己下这个脚本的原版
http://sourceforge.net/projects/cbqinit/

这个脚本是根据配置文件里的信息进行限制的,所以第一步是创建配置文件
文件名有固定的格式
cbq-<0002 ~ FFFF>.<name>
例子:cbq-0002.download  cbq-0003.http

文件的内容:
DEVICE=eth0,10Mbit,1Mbit
RATE=1600Kbit
WEIGHT=160Kbit
RULE=192.168.1.100.192.168.1.101
DEVICE就是你要限制的网卡设备名称,网卡的设计带宽
RATE就是你要限制的带宽,但是限制的是谁呢,这个由RULE决定
RULE按照上面的例子就是只限制从192.168.1.100到192.168.1.101的带宽,其他的流量一律不管

当然还有一下其他的参数,高级,还可以跟iptables结合,利用iptables在特定的流量上打标记-j MARK好像是这个
然后在cbq的配置文件里用MAKR指定这个标记,这样就可以不用RULE来判断了

启动:/etc/init.d/shaper compile
/etc/init.d/shaper start

停止:/etc/init.d/shaper stop


不过说实话,我试了好几次,cbq可以正常的启动,但是根本没效果。。。应该是我配置的错误吧

只有注册用户登录后才能发表评论。


网站导航:
 

posts - 0, comments - 4, trackbacks - 0, articles - 15

Copyright © fcp