免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
123下一页
最近访问板块 发新帖
查看: 7355 | 回复: 20
打印 上一主题 下一主题

[网络管理] 使用tc的htb进行ftp服务器流量控制问题 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2007-08-23 10:20 |只看该作者 |倒序浏览
网络连接图为
局域网内一台linux的ftp服务器地址为192。168。1。1
测试客户端为192。168。1。2

|---|
| F |            |---|            |---|
| T |            | 交|            | 测|
| P |---------| 换|--------| 试|
| 服|            | 机|            | 机|
| 务|            |---|            |---|
| 器|
|---|

tc规则如下
tc qdisc add dev eth1 root handle 1: htb
tc class add dev eth1 parent 1: classid 1:1 htb rate 1000Mbit ceil 1000Mbit
tc class add dev eth1 parent 1:1 classid 1:11 htb rate 10kbps ceil 20kbps
tc qdisc add dev eth1 parent 1:11 handle 11: sfq perturb 10
tc filter add dev eth1 parent 1:0 protocol ip prio 11 handle 0x10000001 fw classid 1:11

防火墙规则如下
iptables -t mangle -I OUTPUT -o eth1 -d 192.168.1.2  -p tcp --sport ! 22 -j MARK --set-mark 0x10000001
其它防火墙规则全都清空了

在测试机上进行ftp下载可以限制流量,但达不到设定的值,大概时150kbs左右,看tc的状态也在工作,不运行tc的速度大概1M左右,不知各位有无遇到这样的情况,希望能指点一下我。

内核2.6.14.7
iptables v1.3.5

tc状态为:
[root@localhost program]$ tc -s -d qdisc ls dev eth1
qdisc htb 1: r2q 10 default 0 direct_packets_stat 48 ver 3.17
Sent 3025983 bytes 2162 pkts (dropped 0, overlimits 3632 requeues 0)
backlog 14p
qdisc sfq 11: parent 1:11 limit 128p quantum 1514b flows 128/1024 perturb 10sec
Sent 3020672 bytes 2114 pkts (dropped 0, overlimits 0 requeues 0)
backlog 14p



[root@localhost program]$ tc -s -d class ls dev eth1
class htb 1:11 parent 1:1 leaf 11: prio 0 quantum 1000 rate 80Kbit ceil 160Kbit burst 1639b/8 mpu 0b overhead 0b cburst 1679b/8 mpu 0b overhead 0b level 0
Sent 3618341 bytes 2516 pkts (dropped 0, overlimits 0 requeues 0)
rate 19966bit 13pps backlog 29p
lended: 1276 borrowed: 1211 giants: 0
tokens: -140769 ctokens: -151056

class htb 1:1 root rate 1000Mbit ceil 1000Mbit burst 501375b/8 mpu 0b overhead 0b cburst 501375b/8 mpu 0b overhead 0b level 7
Sent 3574435 bytes 2487 pkts (dropped 0, overlimits 0 requeues 0)
rate 20058bit 13pps
lended: 1211 borrowed: 0 giants: 0
tokens: 4084 ctokens: 4084


[root@localhost program]$ tc -s -d filter ls dev eth1
filter parent 1: protocol ip pref 11 fw
filter parent 1: protocol ip pref 11 fw handle 0x10000001 classid 1:11

[ 本帖最后由 hehao109 于 2007-8-23 10:21 编辑 ]

论坛徽章:
0
2 [报告]
发表于 2007-08-23 10:25 |只看该作者
tc规则如下
tc qdisc add dev eth1 root handle 1: htb
tc class add dev eth1 parent 1: classid 1:1 htb rate 1000Mbit ceil 1000Mbit
tc class add dev eth1 parent 1:1 classid 1:11 htb rate 10kbps ceil 20kbps
tc qdisc add dev eth1 parent 1:11 handle 11: sfq perturb 10
tc filter add dev eth1 parent 1:0 protocol ip prio 11 handle 0x10000001 fw classid 1:11
[root@localhost program]$ tc -s -d class ls dev eth1
class htb 1:11 parent 1:1 leaf 11: prio 0 quantum 1000 rate 80Kbit ceil 160Kbit burst 1639b/8 mpu 0b overhead 0b cburst 1679b/8 mpu 0b overhead 0b level 0
Sent 3618341 bytes 2516 pkts (dropped 0, overlimits 0 requeues 0)
rate 19966bit 13pps backlog 29p
lended: 1276 borrowed: 1211 giants: 0
tokens: -140769 ctokens: -151056

你执行的命令和执行的效果数据不符啊?

论坛徽章:
0
3 [报告]
发表于 2007-08-23 10:28 |只看该作者
10kbps==80Kbit
如果我在设置的时候改为
tc class add dev eth1 parent 1:1 classid 1:11 htb rate 80Kbit ceil 160Kbit
结果还时一样的

论坛徽章:
0
4 [报告]
发表于 2007-08-23 10:37 |只看该作者
你遇到的问题
在测试机上进行ftp下载可以限制流量,但达不到设定的值,大概时150kbs左右

你的做法结果
10kbps==80Kbit
如果我在设置的时候改为
tc class add dev eth1 parent 1:1 classid 1:11 htb rate 80Kbit ceil 160Kbit
结果还时一样的

你的期望值?
你认为应该如何才是正确的?

论坛徽章:
0
5 [报告]
发表于 2007-08-23 10:39 |只看该作者
期望值应该时10-20k/s

论坛徽章:
0
6 [报告]
发表于 2007-08-23 10:40 |只看该作者
可否详细贴一下以下信息
iptables-save
tc -s q s dev eth1
tc -s c s dev eth1
以及你在做何种协议的速率测试,数据传输方向是怎样的

[ 本帖最后由 platinum 于 2007-8-23 10:44 编辑 ]

论坛徽章:
0
7 [报告]
发表于 2007-08-23 11:16 |只看该作者
就是说这句设置有问题
tc class add dev eth1 parent 1:1 classid 1:11 htb rate 10kbps ceil 20kbps
那该如何改呢,
1、rate 和 ceil
rate是最低带宽,ceil是最高带宽,ceil-rate是可以借用的带宽
2、bps 和 bits
还真是不太清楚,希望能解释下

论坛徽章:
0
8 [报告]
发表于 2007-08-23 11:21 |只看该作者
请看 6 楼

论坛徽章:
0
9 [报告]
发表于 2007-08-23 11:33 |只看该作者
# Generated by iptables-save v1.3.5 on Thu Jan  1 02:40:27 1970
*tproxy
REROUTING ACCEPT [2605:251125]
:OUTPUT ACCEPT [534:30816]
COMMIT
# Completed on Thu Jan  1 02:40:27 1970
# Generated by iptables-save v1.3.5 on Thu Jan  1 02:40:27 1970
*raw
REROUTING ACCEPT [35566:2871411]
:OUTPUT ACCEPT [50153:58475459]
COMMIT
# Completed on Thu Jan  1 02:40:27 1970
# Generated by iptables-save v1.3.5 on Thu Jan  1 02:40:27 1970
*nat
REROUTING ACCEPT [1054:119960]
OSTROUTING ACCEPT [475:27166]
:OUTPUT ACCEPT [488:27886]
COMMIT
# Completed on Thu Jan  1 02:40:27 1970
# Generated by iptables-save v1.3.5 on Thu Jan  1 02:40:27 1970
*mangle
REROUTING ACCEPT [34599:2475695]
:INPUT ACCEPT [34824:2555443]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [49561:57974287]
OSTROUTING ACCEPT [49561:57974287]
-A OUTPUT -d 192.168.1.2 -o eth1 -p tcp -m tcp ! --sport 22 -j MARK --set-mark 0x10000001
COMMIT
# Completed on Thu Jan  1 02:40:27 1970
# Generated by iptables-save v1.3.5 on Thu Jan  1 02:40:27 1970
*filter
:INPUT ACCEPT [34208:2443896]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [49561:57974287]
COMMIT
# Completed on Thu Jan  1 02:40:27 1970

论坛徽章:
0
10 [报告]
发表于 2007-08-23 11:34 |只看该作者
你只完成了 6 楼所需信息的 1/4
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP