我希望降低特定网络流量的优先级,特别是在我的Linux服务器中使用tc,特别是tc-u32。换句话说,所有其他流量都必须比具有指定IP-proto的流量具有更高的优先级。
我试图应用这个tc筛选规则来降低发送ICMP通信量的优先级:
tc f a dev eno1 parent 1: prio 2 u32 match ip protocol 1 0xff
但是它返回这个错误:
RTNETLINK answers: Invalid argument
We have an error talking to the kernel
在这种情况下,我对tc还有一些不清楚的地方:
如何使这条规则正常工作?
我在试着想象怎么做:(使用基于Linux Debian的发行版)
我有一台带4个网卡的PC:
eth0 = Internet Access (connect to router WAN)
eth1 = Local lan
eth2 = OUT NIC
eth3 = IN NIC
我需要将所有流量从eth1 (本地lan)发送到eth2,从eth3接收相同的流量并路由到eth0。
其思想是将所有eth1流量通过eth2发送到外部设备,外部设备检查数据包并在eth3上再次发送到PC,然后我的PC Linux将流量路由到eth0
有可能做到这一点吗?
如何验证QoS是否适用于语音通信?我也有语音服务器IP地址。我还可以知道会话源/dest/端口号信息吗?
class-map match-all avaya
match access-group name avaya-ef
match packet length max 100
class-map match-all voice-ip
match ip precedence 5
!
policy-map qos-in
class avaya
set ip precedence 5
policy-map qos-out
class voice-ip
set ip dscp ef
inte