Tính tương thích transceiver trên NIC: danh sách cho phép của driver
Trên switch, chính sách module là một dòng cấu hình trong network OS; trên server, đó là quyết định do driver và firmware của NIC đưa ra, và nó khác nhau theo từng nhà sản xuất, từng hệ điều hành và từng phiên bản driver. Adapter Intel là loại từ chối các module không có trong danh sách; hầu hết các hãng khác chấp nhận bất cứ thứ gì phân tích được. Trang này liệt kê hành vi theo từng nhà sản xuất và hệ điều hành, các cách ghi đè đã được tài liệu hóa, các quy tắc FEC/tự động đàm phán quyết định việc DAC và quang học có lên liên kết hay không, và một thông tin nhận dạng đã mã hóa cần thỏa mãn điều gì ở phía server.
Hành vi theo từng nhà sản xuất
| Nhà sản xuất / driver | Kiểm tra | Khi thất bại | Ghi đè | Ghi chú |
|---|---|---|---|---|
| Intel ixgbe (X520, X540, X550 SFP+) | danh sách OUI nhà sản xuất / PN của các SFP+ đã được Intel công nhận | failed to load because an unsupported SFP+ or QSFP module type was detected, cổng down | tham số module allow_unsupported_sfp=1 (Linux); nạp lại driver | DAC nhìn chung được chấp nhận; SFP 1G bị hạn chế |
| Intel i40e (X710, XXV710, XL710) | công nhận module ở cấp firmware | unsupported module trong dmesg, link down hoặc “module not qualified” trong ethtool | allow_unsupported_sfp=1 trên i40e đời mới; các bản build cũ không có | module 25G của XXV710 bị kiểm tra nghiêm ngặt |
| Intel ice (E810) | công nhận ở NVM/firmware | Possible mis-configuration of the Ethernet port detected / module chưa được công nhận | tùy vào NVM và bản driver; một số bản build tôn trọng cài đặt unsupported-SFP, số khác từ chối — kiểm tra ghi chú phát hành của Intel | dễ tính nhất trong dòng Intel với NVM gần đây |
| Intel trên Windows (driver PROSet) | cùng danh sách | thiết bị hiển thị “Network cable unplugged”, cảnh báo trong event log | không có cách ghi đè được tài liệu hóa | dùng module có trong danh sách Intel hoặc đã mã hóa theo Intel |
| Intel trên VMware ESXi (ixgben, i40en, icen) | cùng danh sách | link down, vmkernel.log báo “unsupported module” | tham số module qua esxcli system module parameters set ở nơi driver có allow_unsupported_sfp; không có trên mọi phiên bản | ưu tiên module đã được công nhận trong môi trường production |
| Nvidia / Mellanox mlx5 (ConnectX) | phân tích EEPROM; Ethernet: không có danh sách | link lên; mlxlink hiển thị thông tin module | không cần | chế độ InfiniBand: fabric manager xác thực thông tin nhận dạng cáp/module và có thể gắn cờ hoặc hạ cấp (Cáp IB) |
| Broadcom bnxt_en (NetXtreme-E) | phân tích; hầu hết SKU không có danh sách | lên | — | firmware của các OEM (Dell, HPE) có thể bổ sung kiểm tra |
| Marvell / QLogic qede | phân tích | lên | — | — |
| AMD Solarflare sfc | phân tích | lên | — | — |
| Chelsio cxgb4 | phân tích | lên | — | — |
| Pensando ionic | phân tích | lên | — | — |
| NIC OEM của nhà sản xuất server (Dell, HPE, Lenovo, Cisco UCS VIC) | có thể bổ sung danh sách riêng, đặc biệt là Cisco VIC | “unsupported transceiver” trong CIMC/UCSM | không có chính thức | UCS VIC chấp nhận module đã mã hóa theo Cisco |
Hành vi thay đổi theo phiên bản driver và firmware (NVM); hãy xác minh trên đúng tổ hợp đang dùng (Ma trận tương thích và firmware).
Áp dụng ghi đè của Intel (Linux)
# tạm thời (tới khi nạp lại)
modprobe -r ixgbe && modprobe ixgbe allow_unsupported_sfp=1
# vĩnh viễn
echo "options ixgbe allow_unsupported_sfp=1" > /etc/modprobe.d/ixgbe.conf
echo "options i40e allow_unsupported_sfp=1" > /etc/modprobe.d/i40e.conf
dracut -f # hoặc update-initramfs -u
# xác minh
cat /sys/module/ixgbe/parameters/allow_unsupported_sfp
dmesg | grep -iE 'sfp|module|unsupported'
ethtool -m eth0
Với card đa cổng, ở một số driver tham số này nhận một danh sách phân tách bằng dấu phẩy (mỗi cổng một giá trị). Intel không hỗ trợ cài đặt này cho môi trường production; nó chỉ bỏ qua việc kiểm tra, không bỏ qua các yêu cầu về điện.
FEC và tự động đàm phán trên NIC
| Kiểu liên kết | AN | FEC | Ghi chú |
|---|---|---|---|
| DAC 25G | bật (Clause 73) ở cả hai đầu | được đàm phán (RS hoặc BASE-R theo hạng cáp) | phần lớn trường hợp “DAC không lên liên kết” là do một đầu tắt AN |
| Quang 25G SR / LR | tắt; ép cứng 25000 | RS-FEC cho SR (bắt buộc), LR: RS hoặc không — phải khớp với switch | ethtool --set-fec eth0 encoding rs |
| DAC 100G | bật | RS-FEC | — |
| 100G SR4 / CWDM4 / DR | tắt | bắt buộc RS-FEC | — |
| 100G LR4 | tắt | không có (RS trên một số nền tảng) | khớp với switch (FEC và AN) |
| 200G / 400G | tắt với quang học | luôn là RS(544) KP4 | — |
| 10G | tắt | không có | — |
Lệnh theo từng hệ điều hành: Công cụ và chẩn đoán NIC; phía switch: Công thức cấu hình cổng.
Một module đã mã hóa cần thỏa mãn điều gì với NIC
| Mục tiêu | Yêu cầu tối thiểu |
|---|---|
| Intel ixgbe/i40e không ghi đè | tên nhà sản xuất và PN nằm trong danh sách đã được Intel công nhận (mang thương hiệu Intel E10GSFPSR/E10GSFPLR/E25GSFP28SR hoặc các mã OEM mà Intel bán lại), mã tuân thủ và checksum nhất quán |
| Intel có ghi đè, mọi nhà sản xuất dễ tính | checksum và mã tuân thủ hợp lệ — không cần mã hóa theo OEM |
| Cisco UCS VIC | thông tin nhận dạng kiểu Cisco như với switch Cisco (Cách mỗi NOS xác thực module) |
| HCA InfiniBand | thông tin nhận dạng cáp/module đúng theo IBTA và danh sách của nhà cung cấp fabric |
Hướng dẫn mã hóa: Khóa nhà sản xuất và mã hóa, Đánh mã sản phẩm.
Các triệu chứng thường gặp phía NIC
| Triệu chứng | Nguyên nhân khả dĩ | Kiểm tra |
|---|---|---|
| Cổng biến mất hoặc “unsupported module” trong dmesg | danh sách cho phép của driver | dmesg, ethtool -m, ghi đè hoặc module đã mã hóa |
| Link down, module được nhận diện, mức tín hiệu tốt | lệch FEC/AN, ép sai tốc độ | ethtool eth0, ethtool --show-fec eth0 (Tốc độ và rate) |
| Link lên nhưng sai tốc độ | tự động chọn 10G trên một module hai tốc độ | ép tốc độ |
| Link lên, thông lượng thấp | độ rộng/tốc độ PCIe | lspci -vv (Cổng và PCIe) |
| Module nóng, báo động nhiệt độ | card nằm trong luồng khí thoát | DDM qua ethtool -m; di chuyển card hoặc cải thiện luồng khí |
| Hoạt động trên Linux, không hoạt động trên Windows/ESXi | chính sách driver khác nhau | dùng module đã được công nhận cho hệ điều hành đó |
| Liên kết InfiniBand ở độ rộng/tốc độ bị giảm | cáp không có trong danh sách hoặc quá dài | ibstat, mlxlink |
Trong CodingBox
Các trường hợp bị từ chối ở phía server được chẩn đoán từ cùng những byte như ở phía switch. Đọc tên nhà sản xuất, PN, OUI, mã tuân thủ và checksum trên Check transceiver; với các hệ thống chỉ dùng Intel, code database có thể lưu các thông tin nhận dạng theo kiểu Intel mà driver chấp nhận.