本文简单记录一下使用 tc 模拟延时和丢包的命令。
1. 延时
(1)设置延时
- # tc qdisc add dev eth0 root netem delay 30ms
(2)显示延时的设置
- # tc qdisc show
- [root@Kernel-Test test]# tc qdisc show
- 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
- qdisc netem 8003: dev eth0 root limit 1000 delay 30.0ms
- # tc qdisc change dev eth0 root netem delay 40ms
- # tc qdisc del dev eth0 root netem delay 40ms
设置丢包命令如下:
- # tc qdisc add dev eth0 root netem loss 10%

其他诸如修改、查看、删除的命令,都可以参考上面延时的设置。
最后一点需要注意的是,这两个命令应该都是控制的网卡出口的流量。如果想控制网卡入口的流量,应该是需要确认内核是否明确支持了,如果不支持的话,就需要修改内核配置文件,并重新编译内核。
参考链接: