在 Linux 中使用 tc(流量控制)仅在 Tx 上发生数据包丢失

在 Linux 中使用 tc(流量控制)仅在 Tx 上发生数据包丢失

我知道可以使用 来在 Linux 机器上引入数据包丢失tc。例如:

tc qdisc 更改 dev eth0 root netem 丢失 10%

但是,是否可以指定发生数据包丢失的流量方向?出于测试目的,我希望接收时不丢失数据包,但传输时丢失 10% 的数据包。

答案1

据我所知,以上述方式指定 qdisc 仅意味着出口 qdisc。因此您应该只会看到来自 eth0 的出口流量损失 10%。

要对入口流量执行相同操作,您需要使用类似中间功能块伪设备的东西,将 eth0 上的入口流量重定向到伪设备(例如 ifb0)的出口队列,并在该设备上进行整形/排队。有关更多详细信息,请参阅此处http://www.linuxfoundation.org/collaborate/workgroups/networking/netem

相关内容