使用linux下的TC进行服务器流量控制(2)
来源:asp之家 发布时间:2009-09-09 08:39:00
TC对最对高速度的控制
Rate ceiling 速率限度
参数ceil指定了一个类可以用的最大带宽, 用来限制类可以借用多少带宽。缺省的ceil是和速率一样
这个特性对于ISP是很有用的, 因为他们一般限制被服务的用户的总量即使其他用户没有请求服务。(ISPS 很想用户付更多的钱得到更好的服务) ,注根类是不允许被借用的, 所以没有指定ceil
注: ceil的数值应该至少和它所在的类的速率一样高, 也就是说ceil应该至少和它的任何一个子类一样高
Burst 突发
网络硬件只能在一个时间发送一个包这仅仅取决于一个硬件的速率。 链路共享软件可以利用这个能力动态产生多个连接运行在不同的速度。 所以速率和ceil不是一个即时度量只是一个在一个时间里发送包的平均值。 实际的情况是怎样使一个流量很小的类在某个时间类以最大的速率提供给其他类。 burst 和cburst 参数控制多少数据可以以硬件最大的速度不费力的发送给需要的其他类。
如果cburst 小于一个理论上的数据包他形成的突发不会超过ceil 速率, 同样的方法TBF的最高速率也是这样。
你可能会问, 为什么需要bursts . 因为它可以很容易的提高向应速度在一个很拥挤的链路上。 比如WWW 流量是突发的。 你访问主页。 突发的获得并阅读。 在空闲的时间burst将再"charge"一次。
注: burst 和cburst至少要和其子类的值一样大。
TC命令格式:
加入
tc qdisc [ add | change | replace | link ] dev DEV [ parent qdisc-id | root ] [ handle qdisc-id ] qdisc [ qdisc specific parameters ]
tc class [ add | change | replace ] dev DEV parent qdisc-id [ classid class-id ] qdisc [ qdisc specific parameters ]
tc filter [ add | change | replace ] dev DEV [ parent qdisc-id | root ] protocol protocol prio priority filtertype [ filtertype specific parameters ] flowid flow-id
显示
tc [-s | -d ] qdisc show [ dev DEV ]
tc [-s | -d ] class show dev DEV tc filter show dev DEV
查看TC的状态
tc -s -d qdisc show dev eth0
tc -s -d class show dev eth0
删除tc规则
tc qdisc del dev eth0 root
实例
一、下载
下载限制单个IP
tc qdisc add dev eth0 root handle 1: htb r2q 1
tc class add dev eth0 parent 1: classid 1:1 htb rate 30mbit ceil 60mbit
tc filter add dev eth0 parent 1: protocol ip prio 16 u32 match ip dst 192.168.1.2 flowid 1:1
就可以限制192.168.1.2的下载速度为30Mbit最高可以60Mbit
r2q,是指没有default的root,使整个网络的带宽没有限制
下载整段IP
tc qdisc add dev eth0 root handle 1: htb r2q 1
tc class add dev eth0 parent 1: classid 1:1 htb rate 50mbit ceil 1000mbit
tc filter add dev eth0 parent 1: protocol ip prio 16 u32 match ip dst 192.168.111.0/24 flowid 1:1
就可以限制192.168.111.0 到255 的带宽为3000k了,实际下载速度为200k左右。
这种情况下,这个网段所有机器共享这200k的带宽。
还可以加入一个sfq(随机公平队列)
tc qdisc add dev eth0 root handle 1: htb r2q 1
tc class add dev eth0 parent 1: classid 1:1 htb rate 3000kbit burst 10k
tc qdisc add dev eth0 parent 1:1 handle 10: sfq perturb 10
tc filter add dev eth0 parent 1: protocol ip prio 16 u32 match ip dst 192.168.111.168 flowid 1:1
sfq,他可以防止一个段内的一个ip占用整个带宽。
猜你喜欢
- 在Windows xp、Windows 2000操作系统下如果需要调试Asp程序,首先需要判断您所安装的系统是否具备调试Asp的环境,IIS
- Windows 2000 专业版是微软最新推出的商用操作系统,它在Windows 9x的各种长处之上又集成了各种新技术,它可以增强你的系统的
- 通常地,大多数Web站点的设计目标都是:以最易接受的方式,为访问者提供即时的信息访问。在过去的几年中,越来越多的黑客、病毒和蠕虫带来的安全问
- 写这篇的动力源于上一篇中反复出现的robots,它让我想起了spider(蜘蛛)与crawler(爬虫)。此二者一样?不一样?以前就看过一篇
- 作为一个blogger或者blog读者,你一定对垃圾评论(comment spam)并不陌生。Google Blog的Preventing
- 无论你是一个Web开发人员,网页设计师或博客,你可能不得不为许多不同大小和不同格式的图像处理转换的事而感到头痛。如果你把所有图片放在手头上,
- xingTemplate 是一个基于PHP的模板引擎,主要对于PHP程序的方面快速开发而设计。它可以通过简易快捷的模板语法编译为PHP文件,
- 在"授权模式"对话框,选择客户端的授权模式,可以是"每客户"或"每服务器"方式。
- 不远的将来,手机上网wap2.0将成为人们日常生活所需。相关文章:wap中的ASP技术 1、中国经济的快速发展,人民生活水平日益提高。这是生
- 1、经常规律性的更新文章2、确保服务器工作正常3、使页面尽量简洁,确保打开速度快4、检查内部链接结构,去除死链接和重复链接5、尽量多从正规和
- 现在,很多人都拥有自己的电脑,并且通过固定的IP连接到互联网。于是,他们开始在自己的电脑上架设服务器。在自己的电脑上架设服务器,无论你使用L
- 国内关于proftp设置的文档实在太少,只能看着官方文档慢慢学习,特把学习经验分享给大家。proftp+mysql+quota。安装prof
- 前段时间,一位使用帝国CMS的朋友问我,帝国的碎片是什么意思,是做什么用的?我是这样回答的:现在很多门户网站的首页的信息大部分不是自动读取的
- 网聊时代,大家总是喜欢寻找更多的快乐,所以我们看到了火星文、看到了搞笑的聊天表情、看到了QQ闪字…。这些,都是我们网上网下生活的调剂。今天,
- 大家好,我也是个站长。普通的站长,今天跟大家分享下做站心得。标题就是流量。首先,谈到网站,大家自然而然就会联想到流量,没错,一个网站,流量是
- 你是否厌烦了在电脑上一张张的点击翻看照片?你有没有想过让自己的照片舞动起来?一般制作一个具有FLASH动画效果的电子相册,网友需要使用一个专
- 国产网游在经历了飞速发展的同时,内容低俗、同质化等现象也日趋严重。日前,继下令关闭45款低俗暴力网络游戏之后,国家新闻出版总署整治网游市场再
- 在德国举行的Tech·Ed 2009大会上,微软商业软件部门总裁Stephen Elop正式发布了新一代企业电子邮件服务软件“Exchang
- 在众多网络应用中,FTP(文件传输协议)有着非常重要的地位。Internet中一个十分重要的资源就是软件资源,而各种各样的软件资源大多数都放
- 网赚如今也是一个行业,不管你承认不承认,这个行业造就了一批百千万富翁。如果你连网赚有疑问,还会搜索“网赚是真的吗”,我想你真的是要out啦。