Intel 82599ES 的 FDIR 到 RSS 队列之间的映射

Intel 82599ES 的 FDIR 到 RSS 队列之间的映射

我正在使用带有 linux 4.4.0-116-generic 本机 ixgbe 驱动程序的 Intel 82599ES 10-Gigabit SFI/SFP+ NIC。我想知道 NIC 附带的流间接表,它有 16 个 fdir 队列。

这些队列可以反映为命令的输出


sudo ethtool -x enp2s0f1

RX flow hash indirection table for enp2s0f1 with 40 RX ring(s):
    0:      0     1     2     3     4     5     6     7
    8:      8     9    10    11    12    13    14    15
   16:      0     1     2     3     4     5     6     7
   24:      8     9    10    11    12    13    14    15
   32:      0     1     2     3     4     5     6     7
   40:      8     9    10    11    12    13    14    15
   48:      0     1     2     3     4     5     6     7
   56:      8     9    10    11    12    13    14    15
   64:      0     1     2     3     4     5     6     7
   72:      8     9    10    11    12    13    14    15
   80:      0     1     2     3     4     5     6     7
   88:      8     9    10    11    12    13    14    15
   96:      0     1     2     3     4     5     6     7
  104:      8     9    10    11    12    13    14    15
  112:      0     1     2     3     4     5     6     7
  120:      8     9    10    11    12    13    14    15
RSS hash key:
98:66:ff:44:ee:dd:32:dd:16:d3:e3:c0:16:b7:0d:11:1c:3d:e3:a6:1d:f1:44:14:36:8d:32:b1:4a:75:ae:d8:f2:97:7c:aa:7c:4c:9e:fb

因此,基于哈希,传入流量被分为 16 个 fdir 队列,但随后被映射到 40 个环形缓冲区(又名 RSS 队列)。

我可以使用各种ethtool -X命令调整 fdir 队列的处理权重。同时,在 的帮助下,/proc/irq/IRQ_NUMBER/smp_affinity我们可以控制 RSS 中断到特定 CPU 的调度。

但我无法弄清楚,当 fdir 队列的计数不匹配时,流量如何映射到 rss 队列。

预先感谢您的帮助。

相关内容