Linux 中模拟延时和丢包的实现

Linux 中使用 tc 进行流量管理。具体命令的使用请参考 tc 的 man 手册。

本文简单记录一下使用 tc 模拟延时和丢包的命令。



1. 延时
(1)设置延时
  1. # tc qdisc add dev eth0 root netem delay 30ms
上面的命令实现了给 eth0 口发包时添加 30ms 的延时。

(2)显示延时的设置
  1. # tc qdisc show
结果如下:
  1. [root@Kernel-Test test]# tc qdisc show
  2. qdisc pfifo_fast 0: dev eth1 root bands 3 priomap 1 2 2 2 1 2 0 0 1 1 1 1 1 1 1 1
  3. qdisc netem 8003: dev eth0 root limit 1000 delay 30.0ms
(3)修改延时
  1. # tc qdisc change dev eth0 root netem delay 40ms
(4)删除延时的配置
  1. # tc qdisc del dev eth0 root netem delay 40ms


2. 丢包

设置丢包命令如下:
  1. # tc qdisc add dev eth0 root netem loss 10%
如果你是通过 SSH 登陆设备进行配置丢包的话,配置完这条命令就会感觉到机器访问时有点一卡一卡的。这说明,设备已经开始丢包了,可以通过具体抓包查看。

其他诸如修改、查看、删除的命令,都可以参考上面延时的设置。

最后一点需要注意的是,这两个命令应该都是控制的网卡出口的流量。如果想控制网卡入口的流量,应该是需要确认内核是否明确支持了,如果不支持的话,就需要修改内核配置文件,并重新编译内核。



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值