Chr*_*ian 6 networking offloading vlan
ethtool手册页只给出了一个模糊的解释:
rxvlan on|off
Specifies whether RX VLAN acceleration should be enabled
txvlan on|off
Specifies whether TX VLAN acceleration should be enabled
Run Code Online (Sandbox Code Playgroud)
假设您可以启用它们,这些选项到底完成了什么?
显然,rxvlan和txvlan是核心功能的别名rx-vlan-hw-parse,并tx-vlan-hw-insert分别为(见ethtool.c).
在内核中,它们被转换为netdev特性NETIF_F_HW_VLAN_CTAG_RX_BIT和NETIF_F_HW_VLAN_CTAG_TX_BIT.(见net/core/ethtool.c)
据我所知,TX_BIT允许NIC在传输过程中添加VLAN标记,而无需将其明确地放入数据包中.请参阅VLAN驱动程序中的相关代码.
同样,当启用RX_BIT时,NIC可以从传入的数据包中剥离VLAN标记,并让驱动程序将来自VLAN标记的信息放在相关的skb中.