在我的工作中,我发现 tc 可以做出口整形,并且只能做入口监管。我想知道为什么 tc 不实现入口整形?
代码示例:
#ingress
tc qdisc add dev eth0 handle ffff: ingress
tc filter add dev eth0 parent ffff: protocol ip prio 50 \
u32 match ip src 0.0.0.0/0 police rate 256kbit \
burst 10k drop flowid :1
#egress
tc qdisc add dev eth0 root tbf \
rate 256kbit latency 25ms burst 10k
但我不能这样做:
#ingress shaping, using tbf
tc qdisc add dev eth0 ingress tbf \
rate 256kbit latency 25ms burst 10k
我发现一个名为 IFB(更新的 IMQ)的解决方案可以将流量重定向到出口。但这似乎不是一个好的解决方案,因为它正在浪费 CPU。所以我不想用这个。
入口整形有意义吗?为什么 tc 不支持它?