Aks*_*235 6 trafficshaping traffic
我是使用 tc 命令的新手。
我正在编写一个测试脚本来为接口添加延迟。这是使用python和fabric api完成的
所以脚本将执行以下操作:
sudo tc qdisc 添加 dev eth1 root netem 延迟
在脚本结束时我们会做
sudo tc qdisc del dev eth1 root netem
但同时我想在最开始的时候确保系统上没有现有的 tc 控制。所以我想在整个脚本开始之前运行删除命令。但是如果没有完成 tc 配置,这会给我一个错误。
abc@abcvmm:~$ sudo tc qdisc del dev eth1 root netem
RTNETLINK 答案:无效参数
有没有办法仅在完成现有 tc 配置时删除配置的接口,否则不会。
你的第一步是:tc qdisc del dev eth1 root
然后:tc qdisc add dev eth1 root handle 1: htb default 100
在我的 git repo 中查看我的代码:https : //github.com/Puneeth-n/tcp-eval/blob/development/topology/build_net.py
我想我已经实现了你想要实现的(使用结构)。或者您可以使用部分代码。
该代码确保在您尝试删除不存在的 qdisc 时没有错误。
我想我找到了一种方法来做到这一点。
我可以使用类似的东西:
netem_exists= run("tc qdisc show dev eth1 | grep netem | awk '{print $2}'")
if netem_exists=="netem":
print "Delete"
run("sudo tc qdisc del dev eth1 root netem")
else:
print "No delete"
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
15805 次 |
最近记录: |