我使用的是 ubuntu 20.04 LTS 内核版本,5.4.0-117-generic
我的机器有 12 个 CPU 线程Intel(R) Xeon(R) CPU E5-1650 v3 @ 3.50GHz
。问题是为什么我的最大多队列配置是 4,它应该是 12,对吧?按照我的 vCPU 数量
# ethtool -l enp4s0
Channel parameters for enp4s0:
Pre-set maximums:
RX: 0
TX: 0
Other: 1
Combined: 4
Current hardware settings:
RX: 0
TX: 0
Other: 1
Combined: 4
我的以太网驱动程序是
# ethtool -i enp4s0
driver: igb
version: 5.6.0-k
firmware-version: 3.16, 0x800004d7
expansion-rom-version:
bus-info: 0000:04:00.0
supports-statistics: yes
supports-test: yes
supports-eeprom-access: yes
supports-register-dump: yes
supports-priv-flags: yes
我检查过 RX/TX 队列只有 4
# ethtool -S enp4s0 | egrep 'rx_queue.*packets|tx_queue.*packets' | column -c 80
tx_queue_0_packets: 1285500 rx_queue_0_packets: 9816392
tx_queue_1_packets: 560302 rx_queue_1_packets: 2988942
tx_queue_2_packets: 390412 rx_queue_2_packets: 2683848
tx_queue_3_packets: 1865716 rx_queue_3_packets: 3764393
我如何才能将最大队列数量增加到与 vCPU 数量相同?
答案1
所以我检查了我的 NIC 硬件,它正在使用Intel I210
04:00.0 Ethernet controller: Intel Corporation I210 Gigabit Network Connection (rev 03)
Subsystem: ASUSTeK Computer Inc. I210 Gigabit Network Connection
Kernel driver in use: igb
Kernel modules: igb
我有产品详情这里说的是:
I210 包含四个发送队列和四个接收队列。
所以我想我知道为什么最大队列只有四个