论坛风格切换切换到宽版
  • 733阅读
  • 7回复

[问题求助][CentOS] Traffic Control 问题 [复制链接]

上一主题 下一主题
离线stonys.
 
发帖
2088
C币
-193243
威望
404
贡献值
1
银元
-2
铜钱
4686
人人网人气币
0
只看楼主 倒序阅读 使用道具 楼主  发表于: 2009-05-01
我使用如下的命令建立了一个简单的.Classful qdisc,目的是控制2007端口输出.的速率。电脑
tc qdisc a.dd dev eth.0 parent root handle 1:0 htb.
tc class add dev. eth0 .parent 1:0 classid 1:1 htb rate 500kbit--------------彩票
tc qdisc add dev e.th0 parent 1:1 .handle 10:0 pfifo limit 5.
tc. filter a.dd dev eth0 parent 1:0 prio 1 protocol ip u32 matc.h ip sport 2007 0xffff flowid 1:1服务器
我首先在自己的虚拟机里的.FC6上.测试了,速率确实控制在了500.kbps,但是我用同样的的命令放到公司的CentOS上后,却发现速率只能控制在600~900kbps上下,而且速率不是很稳定。.
由于刚刚学会使.用TC,不知道是不是自己的命令有问题还是和系统有关,是否有人遇到过类此的情况.?谢谢!.

评价一下你浏览此帖子的感受

精彩

感动

搞笑

开心

愤怒

无聊

灌水
离线gratful.
发帖
2079
C币
-611306
威望
371
贡献值
2
银元
-2
铜钱
4648
人人网人气币
0
只看该作者 沙发  发表于: 2010-04-13
Re:[CentOS]


QUOTE:原帖由 formula1kimi 于 2008-6-26 21:08 发表
我使用如下的命令建立了一个简单的Classful qdisc,目的是控制2007端口输出的速率。

tc class add dev eth0 parent 1:0 classid 1:1 htb rate 500kbit
tc ...



兄弟,单一个rate是不能控制速率的 ,还有好多参数你都敢不用,那怎么能控制呢

离线日光兰.
发帖
1968
C币
-235780
威望
320
贡献值
1
银元
-2
铜钱
4252
人人网人气币
0
只看该作者 板凳  发表于: 2010-04-13
Re:[CentOS]
我主要参考的是http://luxik.cdi.cz/~devik/qos/htb/manual/userg.htm。里面的例子好像没有用到太多的参数。除了default 和 ceil参数。
我之所以不用default,是由于缺省的值是default 0,代表未分类的包不经过这个qdisc,直接丢给网卡。
我之所以不用ceil,是因为ceil的缺省值就是rate的值。
此外,我不知道是否是由于其它参数没有设置导致问题的出现。还需要高人的指点啊。

发帖
2180
C币
-235163
威望
406
贡献值
1
银元
-1
铜钱
4811
人人网人气币
0
只看该作者 地板  发表于: 2010-04-13
Re:[CentOS]
问题已经解决,原因是TSO(TCP Segmentation Offloading)的原因。
在Enable了TSO后,Linux不再承担将大于MTU的包分片的任务,而是直接交给网卡去完成。所以HTB里会遇到许多大于MTU的包,这些包不会放到Queue中而是直接交给了网卡。所以速度限制不下来。解决的办法就是设置一个足够大的MTU给HTB的Class,我设成16500就OK了。

[ 本帖最后由 formula1kimi 于 2008-6-27 16:49 编辑 ]

离线lin0.
发帖
1969
C币
-235422
威望
377
贡献值
1
银元
-1
铜钱
4513
人人网人气币
0
只看该作者 4楼 发表于: 2010-04-13
Re:[CentOS]


QUOTE:原帖由 formula1kimi 于 2008-6-27 15:35 发表
问题已经解决,原因是TSO(TCP Segmentation Offloading)的原因。
在Enable了TSO后,Linux不再承担将大于MTU的包分片的任务,而是直接交给网卡去完成。所以HTB里会遇到许多大于MTU的包,这些包不会放到Queue中 ...

能否给出一个解决问题之后的配置?

离线大狼.
发帖
1986
C币
4898
威望
372
贡献值
0
银元
-1
铜钱
4528
人人网人气币
0
只看该作者 5楼 发表于: 2010-04-13
Re:[CentOS]
tc qdisc add dev eth0 parent root handle 1:0 htb
tc class add dev eth0 parent 1:0 classid 1:1 htb rate 500kbit mtu 16500
tc qdisc add dev eth0 parent 1:1 handle 10:0 pfifo limit 5
tc filter add dev eth0 parent 1:0 prio 1 protocol ip u32 match ip sport 2007 0xffff flowid 1:1

红色为添加的MTU设置。

离线zhangz.
发帖
2110
C币
-262594
威望
471
贡献值
6
银元
5
铜钱
4751
人人网人气币
0
只看该作者 6楼 发表于: 2010-04-13
Re:[CentOS]
嗯,学习一下

离线fff000.
发帖
2145
C币
-60561
威望
396
贡献值
1
银元
-1
铜钱
4779
人人网人气币
0
只看该作者 7楼 发表于: 2010-04-13
Re:[CentOS]


QUOTE:原帖由 formula1kimi 于 2008-6-27 15:35 发表
问题已经解决,原因是TSO(TCP Segmentation Offloading)的原因。
在Enable了TSO后,Linux不再承担将大于MTU的包分片的任务,而是直接交给网卡去完成。所以HTB里会遇到许多大于MTU的包,这些包不会放到Queue中 ...




学习!
快速回复
限100 字节
如果您在写长篇帖子又不马上发表,建议存为草稿
 
上一个 下一个