NVIDIA MLNX OFED的以太網接口
以太接口
端口類型管理/VPI 卡配置
ConnectX-4 及以上適配卡的端口可單獨配置為 InfiniBand 或以太網端口。默認情況下,兩個 VPI 端口都初始化為 InfiniBand 端口。如果您希望更改端口類型,請在加載驅動程序后使用 mlxconfig 腳本。有關如何設置端口類型的更多信息,請參閱 MFT 用戶手冊(nvidia.com/en-us/networking/ → 產品 → 軟件 → InfiniBand/VPI 軟件 → MFT—固件工具)
計數器
計數器用于提供有關操作系統、應用程序、服務或驅動程序執行情況的信息。計數器數據有助于確定系統瓶頸并微調系統和應用程序性能。操作系統、網絡和設備提供應用程序可以使用的計數器數據,以便為用戶提供系統執行情況的圖形視圖。計數器索引是在 QP 上下文中給出的隊列對 (QP) 屬性。多個 QP 可能與同一個計數器集相關聯。如果多個 QP 共享同一個計數器,則計數器值將代表累計總數。
RoCE 計數器
- RoCE 計數器只能通過位于以下位置的 sysfs 獲得:
- # /sys/class/infiniband/<device>/ports/*/counters/
- # /sys/class/infiniband/<device>/ports/*/hw_counters/
有關 mlx5 端口和 RoCE 計數器,請參閱了解 mlx5 Linux 計數器社區帖子。
SR-IOV 計數器
物理功能還可以通過位于 # /sys/class/net/<interface_name>/device/sriov/<index>/stats/ 下的 sysfs 讀取虛擬功能的端口計數器
ethtool 計數器
ethtool 計數器在不同的位置進行計數,并根據它們進行分組。每個計數器組也可以有不同的計數器類型。

有關支持的 ethtool 計數器的完整列表,請參閱了解 mlx5 ethtool 計數器 社區帖子。
持久命名
為避免在啟動或驅動程序重新啟動后重命名網絡接口,請創建一個文件名“/etc/udev/rules.d/85-net-persistent-names.rules”,其中包含設置顯式接口名稱的規則(數字 85,必須是超過 83 個)。
- 以太網接口示例:
#PCI device 15b3:1019 (mlx5_core)
#NAME:="some name" , := is used to make sure that device name will be persistent.
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:02:c9:fa:c3:50", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME:="eth1"
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:02:c9:fa:c3:51", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME:="eth2"
- IPoIB 接口示例:
1. ATTR{type}=="32" is IPoIB interfaces
#2. Find address value for each IB interfaces:
#cat /sys/class/net/ib0/address | head -1 | cut -d":" -f"13-"
#24:8a:07:03:00:a5:29:38
#Use above output to place into ATTR{address}.
#Address match must start with ?* and only reference the last 8 bytes of the address
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{type}=="32", ATTR{address}=="?*24:8a:07:03:00:a5:29:38", NAME:="ib0"
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{type}=="32", ATTR{address}=="?*24:8a:07:03:00:a5:29:39", NAME:="ib1"
中斷請求 (IRQ) 命名
一旦驅動程序分配了 IRQ,它們就被命名為mlx5_comp<x>@pci:<pci_addr>. 與正在使用的通道對應的 IRQ 被重命名為<interface>-<x>,而其余的保持默認名稱。mlx5_core 驅動程序在加載期間分配所有 IRQ 以支持最大可能的通道數。一旦驅動程序啟動,就不會釋放或分配更多的 IRQ。更改工作通道的數量不會重新分配或釋放 IRQ。
以下示例演示了減少通道數量如何影響 IRQ 名稱。
$ ethtool -l ens1 Channel parameters for ens1: Pre-set maximums: RX: 0 TX: 0 Other: 0 Combined: 12 Current hardware settings: RX: 0 TX: 0 Other: 0 Combined: 12 $ cat /proc/interrupts 98: 0 0 0 0 0 0 7935 0 0 0 0 0 IR-PCI-MSI-edge mlx5_async@pci:0000:81:00.0 99: 0 0 0 0 0 0 1 0 0 0 0 0 IR-PCI-MSI-edge ens1-0 100: 0 0 0 0 0 0 1 0 0 0 0 0 IR-PCI-MSI-edge ens1-1 101: 0 0 0 0 0 0 1 0 0 0 0 0 IR-PCI-MSI-edge ens1-2 102: 0 0 0 0 0 0 1 0 0 0 0 0 IR-PCI-MSI-edge ens1-3 103: 0 0 0 0 0 0 1 0 0 0 0 0 IR-PCI-MSI-edge ens1-4 104: 0 0 0 0 0 0 1 0 0 0 0 0 IR-PCI-MSI-edge ens1-5 105: 0 0 0 0 0 0 1 0 0 0 0 0 IR-PCI-MSI-edge ens1-6 106: 0 0 0 0 0 0 1 0 0 0 0 0 IR-PCI-MSI-edge ens1-7 107: 0 0 0 0 0 0 1 0 0 0 0 0 IR-PCI-MSI-edge ens1-8 108: 0 0 0 0 0 0 1 0 0 0 0 0 IR-PCI-MSI-edge ens1-9 109: 0 0 0 0 0 0 1 0 0 0 0 0 IR-PCI-MSI-edge ens1-10 110: 0 0 0 0 0 0 1 0 0 0 0 0 IR-PCI-MSI-edge ens1-11 $ ethtool -L ens1 combined 4 $ ethtool -l ens1 Channel parameters for ens1: … Current hardware settings: RX: 0 TX: 0 Other: 0 Combined: 4 $ cat /proc/interrupts 98: 0 0 0 0 0 0 8455 0 0 0 0 0 IR-PCI-MSI-edge mlx5_async@pci:0000:81:00.0 99: 0 0 0 0 0 0 1 2 0 0 0 0 IR-PCI-MSI-edge ens1-0 100: 0 0 0 0 0 0 1 0 2 0 0 0 IR-PCI-MSI-edge ens1-1 101: 0 0 0 0 0 0 1 0 0 2 0 0 IR-PCI-MSI-edge ens1-2 102: 0 0 0 0 0 0 1 0 0 0 2 0 IR-PCI-MSI-edge ens1-3 103: 0 0 0 0 0 0 1 0 0 0 0 1 IR-PCI-MSI-edge mlx5_comp4@pci:0000:81:00.0 104: 0 0 0 0 0 0 2 0 0 0 0 0 IR-PCI-MSI-edge mlx5_comp5@pci:0000:81:00.0 105: 0 0 0 0 0 0 1 1 0 0 0 0 IR-PCI-MSI-edge mlx5_comp6@pci:0000:81:00.0 106: 0 0 0 0 0 0 1 0 1 0 0 0 IR-PCI-MSI-edge mlx5_comp7@pci:0000:81:00.0 107: 0 0 0 0 0 0 1 0 0 1 0 0 IR-PCI-MSI-edge mlx5_comp8@pci:0000:81:00.0 108: 0 0 0 0 0 0 1 0 0 0 1 0 IR-PCI-MSI-edge mlx5_comp9@pci:0000:81:00.0 109: 0 0 0 0 0 0 1 0 0 0 0 1 IR-PCI-MSI-edge mlx5_comp10@pci:0000:81:00.0 110: 0 0 0 0 0 0 2 0 0 0 0 0 IR-PCI-MSI-edge mlx5_comp11@pci:0000:81:00.0