RTNETLINK答案:没有这样的文件或目录错误

1. ETH=$1 2. LATENCY=$2 3. LOSS=$3 4. JITTER=$4 5. BW=$5 6. sudo /sbin/tc qdisc del dev eth0 root 7. sudo /sbin/tc qdisc add dev eth0 root handle 1: netem delay $LATENCY $JITTER 8. sudo /sbin/tc qdisc add dev eth0 parent 1:1 handle 10: netem loss $LOSS 9. sudo /sbin/tc qdisc add dev eth0 parent 10:1 handle 20: htb default 1 10.sudo /sbin/tc class add dev eth0 parent 20: classid 0:1 htb rate $BW ceil $BW 11.sudo /sbin/tc qdisc show 

上面的代码导致:

 RTNETLINK answers :No such file or directory 

执行时,第8,9,10行出现错误。

问题是缺少内核模块和/或内核支持。 确保你可以运行

 modprobe sch_netem 

启用后,我还必须重新编译内核,因为在启用网络仿真之后,启用了内置的内置功能。

另见http://forums.fedoraforum.org/showthread.php?t=285408和http://www.linuxfoundation.org/collaborate/workgroups/networking/netem

您的手柄和父手柄不匹配。 例如更改为:

 7. sudo /sbin/tc qdisc add dev eth0 root handle 1:1 netem delay $LATENCY $JITTER 8. sudo /sbin/tc qdisc add dev eth0 parent 1:1 handle 10:1 netem loss $LOSS 9. sudo /sbin/tc qdisc add dev eth0 parent 10:1 handle 20:1 htb default 1 10.sudo /sbin/tc class add dev eth0 parent 20:1 classid 0:1 htb rate $BW ceil $BW 

它应该工作。