NIC پر ٹرانسیورز کی مطابقت: ڈرائیورز کی وائٹ لسٹس
ہماری ٹیم ترجمے پر کام کر رہی ہے۔ یہ مضمون عارضی طور پر اردو میں دستیاب نہیں ہے، اس لیے اسے انگریزی میں دکھایا جا رہا ہے۔
On a switch, module policy is a line in the network OS; on a server it is a decision made by the NIC driver and firmware, and it differs per vendor, per operating system and per driver version. Intel adapters are the ones that refuse unlisted modules; most others accept anything that parses. This page lists the behaviour by vendor and OS, the documented overrides, the FEC/auto-negotiation rules that decide whether DAC and optics link, and what a coded identity must satisfy on the server side.
Behaviour by vendor
| Vendor / driver | Check | On failure | Override | Notes |
|---|---|---|---|---|
| Intel ixgbe (X520, X540, X550 SFP+) | vendor OUI / PN list of Intel-qualified SFP+ | failed to load because an unsupported SFP+ or QSFP module type was detected, port down | module parameter allow_unsupported_sfp=1 (Linux); reload driver | DAC generally accepted; 1G SFPs limited |
| Intel i40e (X710, XXV710, XL710) | firmware-level qualification of the module | unsupported module in dmesg, link down or "module not qualified" in ethtool | allow_unsupported_sfp=1 on newer i40e; older builds none | XXV710 25G modules strictly checked |
| Intel ice (E810) | NVM/firmware qualification | Possible mis-configuration of the Ethernet port detected / unqualified module | depends on NVM and driver release; some builds honour an unsupported-SFP setting, others reject — check Intel's release notes | most permissive of the Intel line in recent NVM |
| Intel on Windows (PROSet drivers) | same lists | device shows "Network cable unplugged", event log warning | no documented override | use Intel-listed or Intel-coded modules |
| Intel on VMware ESXi (ixgben, i40en, icen) | same lists | link down, vmkernel.log "unsupported module" | module parameters via esxcli system module parameters set where the driver exposes allow_unsupported_sfp; not on all versions | prefer qualified modules in production |
| Nvidia / Mellanox mlx5 (ConnectX) | parses EEPROM; Ethernet: no list | link up; mlxlink shows module info | not needed | InfiniBand mode: fabric manager validates cable/module identity and may flag or downgrade (IB cables) |
| Broadcom bnxt_en (NetXtreme-E) | parses; no list on most SKUs | up | — | OEM-branded (Dell, HPE) firmware may add checks |
| Marvell / QLogic qede | parses | up | — | — |
| AMD Solarflare sfc | parses | up | — | — |
| Chelsio cxgb4 | parses | up | — | — |
| Pensando ionic | parses | up | — | — |
| Server-vendor OEM NICs (Dell, HPE, Lenovo, Cisco UCS VIC) | may add their own lists, esp. Cisco VIC | "unsupported transceiver" in CIMC/UCSM | none officially | UCS VIC accepts Cisco-coded modules |
Behaviour changes with driver and firmware (NVM) versions; verify on the exact combination (Compatibility matrices & firmware).
Applying the Intel override (Linux)
# temporary (until reload)
modprobe -r ixgbe && modprobe ixgbe allow_unsupported_sfp=1
# persistent
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 # or update-initramfs -u
# verify
cat /sys/module/ixgbe/parameters/allow_unsupported_sfp
dmesg | grep -iE 'sfp|module|unsupported'
ethtool -m eth0
For multi-port cards the parameter takes a comma-separated list (one value per port) on some drivers. The setting is not supported by Intel for production; it removes the check, not the electrical requirements.
FEC and auto-negotiation on NICs
| Link type | AN | FEC | Notes |
|---|---|---|---|
| 25G DAC | on (Clause 73) both ends | negotiated (RS or BASE-R per cable class) | most "no link on DAC" cases are AN off on one end |
| 25G SR / LR optics | off; forced 25000 | RS-FEC for SR (required), LR: RS or none — must match switch | ethtool --set-fec eth0 encoding rs |
| 100G DAC | on | RS-FEC | — |
| 100G SR4 / CWDM4 / DR | off | RS-FEC required | — |
| 100G LR4 | off | none (RS on some platforms) | match the switch (FEC & AN) |
| 200G / 400G | off for optics | RS(544) KP4 always | — |
| 10G | off | none | — |
Commands per OS: NIC tools and diagnostics; switch side: Port configuration recipes.
What a coded module must satisfy for a NIC
| Target | Minimum |
|---|---|
| Intel ixgbe/i40e without override | vendor name and PN from Intel's qualified list (Intel-branded E10GSFPSR/E10GSFPLR/E25GSFP28SR or the OEM parts they resell), consistent compliance codes and checksums |
| Intel with override, all permissive vendors | valid checksums and compliance codes — no OEM coding needed |
| Cisco UCS VIC | Cisco-style identity as for Cisco switches (How each NOS validates a module) |
| InfiniBand HCAs | correct cable/module identity per IBTA and the fabric vendor's list |
Coding guidance: Vendor lock & coding, Part numbering.
Typical NIC-side symptoms
| Symptom | Likely cause | Check |
|---|---|---|
| Port absent or "unsupported module" in dmesg | driver whitelist | dmesg, ethtool -m, override or coded module |
| Link down, module recognised, good levels | FEC/AN mismatch, speed forced wrong | ethtool eth0, ethtool --show-fec eth0 (Speed & rate) |
| Link up at wrong speed | auto picked 10G on a dual-rate module | force speed |
| Link up, low throughput | PCIe width/speed | lspci -vv (Ports & PCIe) |
| Module hot, temperature alarms | card in exhaust airflow | DDM via ethtool -m; move card or improve airflow |
| Works in Linux, not in Windows/ESXi | different driver policy | use qualified module for that OS |
| InfiniBand link at reduced width/speed | cable not on the list or too long | ibstat, mlxlink |
In CodingBox
Server-side rejections are diagnosed from the same bytes as switch-side ones. Read vendor name, PN, OUI, compliance codes and checksums on Check transceiver; for Intel-only fleets the code database can hold the Intel identities that the drivers accept.