Что именно делают опции RX-vlan-offload и TX-vlan-offload ethtool?

страница ethtool manpage дает только туманное объяснение:

   rxvlan on|off
          Specifies whether RX VLAN acceleration should be enabled

   txvlan on|off
          Specifies whether TX VLAN acceleration should be enabled

что именно делают параметры, предполагая, что вы можете их включить?

1 ответов


видимо, 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 водитель!--10-->.

аналогично, когда rx_bit включен, NIC может очистить тег VLAN от входящих пакетов и позволить водителю поместить информацию из тега VLAN в соответствующий skb.