网卡策略

183 阅读2分钟

网卡策略

TC案例

如何使用tc模拟网络延迟和丢包

修改网络延时: sudo tc qdisc add dev eth0 root netem delay 1000ms

查看流量管理:tc qdisc show

删除策略:sudo tc qdisc del dev eth0 root netem delay 1000ms

验证效果:ping 192.168.102.124 -c 20

修改丢包率:sudo tc qdisc add dev eth0 root netem loss 10%

删除策略:sudo tc qdisc del dev eth0 root netem loss 10%

TC常用命令

1)模拟延迟传输:

tc qdisc add dev eth0 root netem delay 100ms

该命令将 eth0 网卡的传输设置为延迟 100 毫秒发送,更真实的情况下,延迟值不会这么精确,会有一定的波动,后面用下面的情况来模拟出带有波动性的延迟值

2)模拟延迟波动:

tc qdisc add dev eth0 root netem delay 100ms 10ms

该命令将 eth0 网卡的传输设置为延迟 100ms ± 10ms (90 ~ 110 ms 之间的任意值)发送。 还可以更进一步加强这种波动的随机性

3)延迟波动随机性:

该命令将 eth0 网卡的传输设置为 100ms ,同时,大约有 30% 的包会延迟 ± 10ms 发送。

tc qdisc add dev eth0 root netem delay 100ms 10ms 30%

4)模拟网络丢包:

tc qdisc add dev eth0 root netem loss 1%

该命令将 eth0 网卡的传输设置为随机丢掉 1% 的数据包

5)网络丢包成功率:

tc qdisc add dev eth0 root netem loss 1% 30%

该命令将 eth0 网卡的传输设置为随机丢掉 1% 的数据包,成功率为 30%

6)删除相关配置(将之前命令中的 add 改为 del 即可删除配置):

tc qdisc del dev eth0 root netem delay 100ms

7)模拟包重复:

tc qdisc add dev eth0 root netem duplicate 1%

该命令将 eth0 网卡的传输设置为随机产生 1% 的重复数据包

8)模拟包损坏:

tc qdisc add dev eth0 root netem corrupt 0.2%

该命令将 eth0 网卡的传输设置为随机产生 0.2% 的损坏的数据包 。 (内核版本需在 2.6.16 以上)

9)模拟包乱序:

tc qdisc change dev eth0 root netem delay 10ms reorder 25% 50%

该命令将 eth0 网卡的传输设置为:有 25% 的数据包(50%相关)会被立即发送,其他的延迟10 秒。

新版本中,如下命令也会在一定程度上打乱发包的次序:# tc qdisc add dev eth0 root netem delay 100ms 10ms

10)查看网卡配置:

tc qdisc show dev eth0

该命令将 查看并显示 eth0 网卡的相关传输配置

11)查看丢包率:

tc -s qdisc show dev eth0