tc命令设置服务器的网络延迟
2019-04-02 本文已影响0人
w_w_wei
0x01. 添加网络延迟 150毫秒
tc qdisc add dev eth0 root netem delay 150ms
这样会给 eth0 延迟150ms
0x02. 怎么验证问题已经生效?
[root@localhost ~]# tc qdisc add dev eth0 root netem delay 150ms
[root@localhost ~]# tc qdisc show dev eth0
qdisc netem 8003: root refcnt 5 limit 1000 delay 150.0ms
另外可以通过ping
命令确定是否延时已经增加 :
- 执行前先
ping
一下服务器
来自 199.201.136.104 的回复: 字节=32 时间=43ms TTL=51
来自 199.201.136.104 的回复: 字节=32 时间=44ms TTL=51
来自 199.201.136.104 的回复: 字节=32 时间=43ms TTL=51
来自 199.201.136.104 的回复: 字节=32 时间=44ms TTL=51
- 执行命令后再重新
ping
来自 199.201.136.104 的回复: 字节=32 时间=145ms TTL=51
来自 199.201.136.104 的回复: 字节=32 时间=150ms TTL=51
来自 199.201.136.104 的回复: 字节=32 时间=145ms TTL=51
来自 199.201.136.104 的回复: 字节=32 时间=151ms TTL=51
0x03. 删除配置
tc qdisc del dev eth0 root
0x04. 设置丢包率
tc qdisc add dev eth0 root netem loss 50%
测试结果
[d:\~]$ ping 199.201.136.104
正在 Ping 199.201.136.104 具有 32 字节的数据:
来自 199.201.136.104 的回复: 字节=32 时间=48ms TTL=51
来自 199.201.136.104 的回复: 字节=32 时间=43ms TTL=51
来自 199.201.136.104 的回复: 字节=32 时间=43ms TTL=51
来自 199.201.136.104 的回复: 字节=32 时间=49ms TTL=51
199.201.136.104 的 Ping 统计信息:
数据包: 已发送 = 4,已接收 = 4,丢失 = 0 (0% 丢失),
往返行程的估计时间(以毫秒为单位):
最短 = 43ms,最长 = 49ms,平均 = 45ms
[d:\~]$ ping 199.201.136.104
正在 Ping 199.201.136.104 具有 32 字节的数据:
请求超时。
请求超时。
来自 199.201.136.104 的回复: 字节=32 时间=49ms TTL=51
请求超时。
199.201.136.104 的 Ping 统计信息:
数据包: 已发送 = 4,已接收 = 1,丢失 = 3 (75% 丢失),
往返行程的估计时间(以毫秒为单位):
最短 = 49ms,最长 = 49ms,平均 = 49ms
由于包个数比较少,最后丢包率为75%,实际上效果很明显