首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用tc模拟慢速连接

用tc模拟慢速连接
EN

Server Fault用户
提问于 2010-11-29 22:12:13
回答 3查看 8.2K关注 0票数 10

我有一个linux盒(CentOS5.5),我想在它上限制网络流量。我有一个应用程序,我们分发给客户,我想测试它的最低推荐带宽256 test /秒。到目前为止,我看到的tc教程似乎允许您根据特定的标准限制带宽,但是我想在所有情况下限制带宽(包括/来自所有IP地址,不管IP报头是什么样子等等)。

有一个教程建议我使用:

代码语言:javascript
复制
tc filter add dev eth0 protocol ip parent 10: prio 2 flowid 10:2

但我得到了以下错误:

代码语言:javascript
复制
Unknown filter "flowid", hence option 10:2 is unparsable

对于在任何情况下如何限制带宽进出eth0有什么想法吗?

EN

回答 3

Server Fault用户

回答已采纳

发布于 2010-11-30 00:17:08

如果要对所有出站通信量应用限制,则根本不需要筛选器。只需将qdisc添加到接口根句柄,如下所示:

代码语言:javascript
复制
tc qdisc add dev eth0 root handle 1: tbf rate 256mbit latency 1ms burst 1540

如果你想塑造/管理入境交通,那就复杂多了。您需要使用例如IFB接口:

代码语言:javascript
复制
modprobe ifb
ip link set dev ifb0 up
tc qdisc add dev eth0 ingress
tc filter add dev eth0 parent ffff: protocol ip u32 match u32 0 0 action mirred egress redirect dev ifb0
#  ^- this is a dummy filter, match u32 0 0 matches all traffic
tc qdisc add dev ifb0 root handle 1: tbf rate 256mbit latency 1ms burst 1540

下面是一种不同的方法,使用两个简单的过滤器:

代码语言:javascript
复制
tc qdisc add dev eth0 ingress
tc filter add dev eth0 root         protocol ip u32 match u32 0 0 police rate 256mbit burst 10k drop flowid :1
tc filter add dev eth0 parent ffff: protocol ip u32 match u32 0 0 police rate 256mbit burst 10k drop flowid :1
票数 12
EN

Server Fault用户

发布于 2010-12-01 02:33:44

这可能超出了您的范围,但是WAN-emu非常擅长用奇怪的吞吐量和延迟1需求来模拟环境。

1:http://speed.cis.nctu.edu.tw/wanemu/广域网-emu

票数 1
EN

Server Fault用户

发布于 2010-11-29 23:23:02

您有如下所示的1标尺: tc qdisc添加dev eth0根句柄10: htb默认20

像你这样的人

tc过滤器添加开发eth0协议ip父级10: prio 2流ip 10:2

票数 0
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/207162

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档