ekinmagic 发表于 2006-11-7 12:22:59

请教关于QOS设置??????

怎么设置 所有机的最高上行最高下行呢????????

按精华区的是 每一台都要设置的如果电脑多的话设置起来很麻烦!    有没有简单一点的 把一个

jk0wg 发表于 2006-11-7 16:29:11

楼主是要在什么地方设置??

ekinmagic 发表于 2006-11-7 16:57:17

#!/bin/sh
#
# Coyote local command init script

# 清除 eth1 所有队列规则
tc qdisc del dev eth1 root 2>/dev/null

# 定义最顶层(根)队列规则,并指定 default 类别编号
tc qdisc add dev eth1 root handle 10: htb default 30

# 定义第一层的 10:1 类别 (总频宽)
tc class add dev eth1 parent 10: classid 10:1 htb rate 64kbps ceil 64kbps

# 定义第二层叶类别
# rate 保证频宽,ceil 最大频宽,prio 优先权
tc class add dev eth1 parent 10:1 classid 10:10 htb rate 5kbps ceil 15kbps prio 2
tc class add dev eth1 parent 10:1 classid 10:20 htb rate 10kbps ceil 30kbps prio 2
tc class add dev eth1 parent 10:1 classid 10:30 htb rate 5kbps ceil 10kbps prio 3


# 定义各叶类别的队列规则
# parent 类别编号,handle 叶类别队列规则编号
# 由于采用 fw 过滤器,所以此处使用 pfifo 的队列规则即可
tc qdisc add dev eth1 parent 10:10 handle 101: pfifo
tc qdisc add dev eth1 parent 10:20 handle 102: pfifo
tc qdisc add dev eth1 parent 10:30 handle 103: pfifo


# 设定过滤器
# 指定贴有 10 标签 (handle) 的封包,归类到 10:10 类别,以此类推
tc filter add dev eth1 parent 10: protocol ip prio 100 handle 10 fw classid 10:10
tc filter add dev eth1 parent 10: protocol ip prio 100 handle 20 fw classid 10:20
tc filter add dev eth1 parent 10: protocol ip prio 100 handle 30 fw classid 10:30



# QoS eth0 下载方面
#

# 清除 eth0所有队列规则
tc qdisc del dev eth0 root 2>/dev/null

# 定义最顶层(根)队列规则,并指定 default 类别编号
tc qdisc add dev eth0 root handle 10: htb default 30

# 定义第一层的 10:1 类别 (总频宽)
tc class add dev eth0 parent 10: classid 10:1 htb rate 410kbps ceil 410kbps

# 定义第二层叶类别
# rate 保证频宽,ceil 最大频宽,prio 优先权
tc class add dev eth0 parent 10:1 classid 10:10 htb rate 50kbps ceil 200kbps prio 2
tc class add dev eth0 parent 10:1 classid 10:20 htb rate 100kbps ceil 300kbps prio 2
tc class add dev eth0 parent 10:1 classid 10:30 htb rate 10kbps ceil 20kbps prio 3

# 定义各叶类别的队列规则
# parent 类别编号,handle 叶类别队列规则编号
tc qdisc add dev eth0 parent 10:10 handle 101: pfifo
tc qdisc add dev eth0 parent 10:20 handle 102: pfifo
tc qdisc add dev eth0 parent 10:30 handle 103: pfifo

# 设定过滤器
tc filter add dev eth0 parent 10: protocol ip prio 100 handle 10 fw classid 10:10
tc filter add dev eth0 parent 10: protocol ip prio 100 handle 20 fw classid 10:20
tc filter add dev eth0 parent 10: protocol ip prio 100 handle 30 fw classid 10:30



~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~



# uploads
# 设定上传方面,先利用 iptables 给封包贴标签,再交由 fw 过滤器进行过滤

iptables -t mangle -A PREROUTING -s 192.168.0.2/24 -j MARK --set-mark 10


# downloads
# 下载方面

iptables -t mangle -A POSTROUTING -d 192.168.0.2/24 -j MARK --set-mark 10



~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~


按上面的设置 发现这个IP段 是共享200k的!!并不是每台独享200k   怎么设置才能吧 每台机的 下行都设为 同一个值呢? 例如每台最高下行是200k   谢谢

jk0wg 发表于 2006-11-7 17:08:13

使用limit模块.
具体的看下:
http://bbs.chinaunix.net/viewthread.php?tid=538785

是LINUX上实现的.

jk0wg 发表于 2006-11-7 17:13:58

http://bbs.chinaunix.net/viewthread.php?tid=840487&highlight=tc限制

这个是TC的.看下吧.

jk0wg 发表于 2006-11-7 17:15:06

http://bbs.chinaunix.net/viewthread.php?tid=476674&extra=page%3D4%26filter%3Ddigest&page=1
TC+IPTALBES实现的下载和上传带宽限制的脚本

这个应该适合你用了..

ekinmagic 发表于 2006-11-7 17:18:55

我用的是BrazilFW

jk0wg 发表于 2006-11-7 17:21:50

你发的那个脚本里不是有TC和IPTABLES吗? 那么我最后发的哪个链接就适用了吧?

swqin2001 发表于 2006-11-8 11:39:50

按照 你 的 设置 本来就是共享200k的带宽。
iptables -t mangle -A POSTROUTING -d 192.168.0.2/24 -j MARK --set-mark 10
192.168.0.*全部在第一个类里面共享200k.
你需要给每个地址单独分一个子类。

ekinmagic 发表于 2006-11-8 15:23:44

谢谢!!!    两位的回答!!    一个IP一定要设置一个类的吗?有其他方法不设置那么多的类呢?
页: [1]
查看完整版本: 请教关于QOS设置??????