NIC पर ट्रांसीवर संगतता: ड्राइवर व्हाइटलिस्ट
स्विच पर मॉड्यूल पॉलिसी नेटवर्क OS की एक लाइन होती है; सर्वर पर यह NIC ड्राइवर और फ़र्मवेयर का लिया गया फ़ैसला होता है, और यह हर वेंडर, हर ऑपरेटिंग सिस्टम और हर ड्राइवर वर्शन के साथ बदलता है। Intel के एडेप्टर वे हैं जो लिस्ट से बाहर मॉड्यूल को मना करते हैं; बाक़ी ज़्यादातर वह सब स्वीकार करते हैं जो पार्स हो जाए। यह पेज वेंडर और OS के हिसाब से बर्ताव, डॉक्यूमेंटेड ओवरराइड, वे FEC/ऑटो-नेगोशिएशन नियम जो तय करते हैं कि DAC और ऑप्टिक्स लिंक करेंगे या नहीं, और सर्वर साइड पर कोडेड पहचान को क्या पूरा करना होता है — यह सब लिस्ट करता है।
वेंडर के हिसाब से बर्ताव
| वेंडर / ड्राइवर | चेक | फ़ेल होने पर | ओवरराइड | नोट्स |
|---|---|---|---|---|
| Intel ixgbe (X520, X540, X550 SFP+) | Intel-क्वालीफ़ाइड SFP+ की वेंडर OUI / PN लिस्ट | failed to load because an unsupported SFP+ or QSFP module type was detected, पोर्ट डाउन | मॉड्यूल पैरामीटर allow_unsupported_sfp=1 (Linux); ड्राइवर रीलोड करें | DAC आमतौर पर स्वीकार; 1G SFP सीमित |
| Intel i40e (X710, XXV710, XL710) | मॉड्यूल का फ़र्मवेयर-लेवल क्वालीफ़िकेशन | dmesg में unsupported module, लिंक डाउन या ethtool में “module not qualified” | नए i40e पर allow_unsupported_sfp=1; पुराने बिल्ड में कोई नहीं | XXV710 25G मॉड्यूल सख़्ती से चेक होते हैं |
| Intel ice (E810) | NVM/फ़र्मवेयर क्वालीफ़िकेशन | Possible mis-configuration of the Ethernet port detected / अनक्वालीफ़ाइड मॉड्यूल | NVM और ड्राइवर रिलीज़ पर निर्भर; कुछ बिल्ड अनसपोर्टेड-SFP सेटिंग मानते हैं, बाक़ी रिजेक्ट करते हैं — Intel के रिलीज़ नोट्स देखें | हाल के NVM में Intel लाइन में सबसे परमिसिव |
| Intel on Windows (PROSet ड्राइवर) | वही लिस्ट | डिवाइस “Network cable unplugged” दिखाता है, इवेंट लॉग चेतावनी | कोई डॉक्यूमेंटेड ओवरराइड नहीं | Intel-लिस्टेड या Intel-कोडेड मॉड्यूल इस्तेमाल करें |
| VMware ESXi पर Intel (ixgben, i40en, icen) | वही लिस्ट | लिंक डाउन, vmkernel.log में “unsupported module” | जहाँ ड्राइवर allow_unsupported_sfp एक्सपोज़ करे वहाँ esxcli system module parameters set से मॉड्यूल पैरामीटर; सभी वर्शन पर नहीं | प्रोडक्शन में क्वालीफ़ाइड मॉड्यूल को प्राथमिकता दें |
| Nvidia / Mellanox mlx5 (ConnectX) | EEPROM पार्स करता है; ईथरनेट: कोई लिस्ट नहीं | लिंक अप; mlxlink मॉड्यूल की जानकारी दिखाता है | ज़रूरत नहीं | InfiniBand मोड: फ़ैब्रिक मैनेजर केबल/मॉड्यूल की पहचान वैलिडेट करता है और फ़्लैग या डाउनग्रेड कर सकता है (IB केबल) |
| Broadcom bnxt_en (NetXtreme-E) | पार्स करता है; ज़्यादातर SKU पर कोई लिस्ट नहीं | अप | — | OEM-ब्रांडेड (Dell, HPE) फ़र्मवेयर चेक जोड़ सकता है |
| Marvell / QLogic qede | पार्स करता है | अप | — | — |
| AMD Solarflare sfc | पार्स करता है | अप | — | — |
| Chelsio cxgb4 | पार्स करता है | अप | — | — |
| Pensando ionic | पार्स करता है | अप | — | — |
| सर्वर-वेंडर OEM NIC (Dell, HPE, Lenovo, Cisco UCS VIC) | अपनी लिस्ट जोड़ सकते हैं, ख़ासकर Cisco VIC | CIMC/UCSM में “unsupported transceiver” | आधिकारिक रूप से कोई नहीं | UCS VIC, Cisco-कोडेड मॉड्यूल स्वीकार करता है |
बर्ताव ड्राइवर और फ़र्मवेयर (NVM) वर्शन के साथ बदलता है; ठीक उसी कॉम्बिनेशन पर वेरिफ़ाई करें (कम्पैटिबिलिटी मैट्रिक्स और फ़र्मवेयर)।
Intel ओवरराइड लगाना (Linux)
# अस्थायी (रीलोड तक)
modprobe -r ixgbe && modprobe ixgbe allow_unsupported_sfp=1
# स्थायी
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 # या update-initramfs -u
# जाँचें
cat /sys/module/ixgbe/parameters/allow_unsupported_sfp
dmesg | grep -iE 'sfp|module|unsupported'
ethtool -m eth0
मल्टी-पोर्ट कार्ड के लिए यह पैरामीटर कुछ ड्राइवर पर कॉमा-सेपरेटेड लिस्ट लेता है (प्रति पोर्ट एक वैल्यू)। यह सेटिंग Intel द्वारा प्रोडक्शन के लिए सपोर्टेड नहीं है; यह सिर्फ़ चेक हटाती है, इलेक्ट्रिकल ज़रूरतों को नहीं।
NIC पर FEC और ऑटो-नेगोशिएशन
| लिंक टाइप | AN | FEC | नोट्स |
|---|---|---|---|
| 25G DAC | दोनों छोर पर ऑन (Clause 73) | नेगोशिएटेड (केबल क्लास के मुताबिक RS या BASE-R) | ज़्यादातर “DAC पर कोई लिंक नहीं” मामलों में एक छोर पर AN ऑफ़ होता है |
| 25G SR / LR ऑप्टिक्स | ऑफ़; फ़ोर्स्ड 25000 | SR के लिए RS-FEC (ज़रूरी), LR: RS या कोई नहीं — स्विच से मैच होना चाहिए | ethtool --set-fec eth0 encoding rs |
| 100G DAC | ऑन | RS-FEC | — |
| 100G SR4 / CWDM4 / DR | ऑफ़ | RS-FEC ज़रूरी | — |
| 100G LR4 | ऑफ़ | कोई नहीं (कुछ प्लेटफ़ॉर्म पर RS) | स्विच से मैच करें (FEC और AN) |
| 200G / 400G | ऑप्टिक्स के लिए ऑफ़ | हमेशा RS(544) KP4 | — |
| 10G | ऑफ़ | कोई नहीं | — |
हर OS के लिए कमांड: NIC टूल और डायग्नोस्टिक्स; स्विच साइड: पोर्ट कॉन्फ़िगरेशन रेसिपी।
NIC के लिए कोडेड मॉड्यूल को क्या पूरा करना होता है
| टार्गेट | न्यूनतम |
|---|---|
| बिना ओवरराइड के Intel ixgbe/i40e | Intel की क्वालीफ़ाइड लिस्ट से वेंडर नाम और PN (Intel-ब्रांडेड E10GSFPSR/E10GSFPLR/E25GSFP28SR या वे OEM पार्ट जो ये रीसेल करते हैं), कंसिस्टेंट कंप्लायंस कोड और चेकसम |
| ओवरराइड के साथ Intel, सभी परमिसिव वेंडर | वैलिड चेकसम और कंप्लायंस कोड — किसी OEM कोडिंग की ज़रूरत नहीं |
| Cisco UCS VIC | Cisco स्विच जैसी ही Cisco-स्टाइल पहचान (हर NOS मॉड्यूल कैसे वैलिडेट करता है) |
| InfiniBand HCA | IBTA और फ़ैब्रिक वेंडर की लिस्ट के मुताबिक सही केबल/मॉड्यूल पहचान |
कोडिंग गाइडेंस: विक्रेता लॉक और कोडिंग, पार्ट नंबरिंग।
आम NIC-साइड लक्षण
| लक्षण | संभावित कारण | जाँच |
|---|---|---|
| पोर्ट ग़ायब या dmesg में “unsupported module” | ड्राइवर व्हाइटलिस्ट | dmesg, ethtool -m, ओवरराइड या कोडेड मॉड्यूल |
| लिंक डाउन, मॉड्यूल पहचाना गया, लेवल ठीक | FEC/AN मिसमैच, ग़लत स्पीड फ़ोर्स की गई | ethtool eth0, ethtool --show-fec eth0 (स्पीड और रेट) |
| ग़लत स्पीड पर लिंक अप | ड्यूल-रेट मॉड्यूल पर ऑटो ने 10G चुन लिया | स्पीड फ़ोर्स करें |
| लिंक अप, कम थ्रूपुट | PCIe विड्थ/स्पीड | lspci -vv (पोर्ट और PCIe) |
| मॉड्यूल गर्म, तापमान अलार्म | कार्ड एग्ज़ॉस्ट एयरफ़्लो में | ethtool -m से DDM; कार्ड हटाएँ या एयरफ़्लो बेहतर करें |
| Linux में काम करता है, Windows/ESXi में नहीं | अलग ड्राइवर पॉलिसी | उस OS के लिए क्वालीफ़ाइड मॉड्यूल इस्तेमाल करें |
| InfiniBand लिंक घटी हुई विड्थ/स्पीड पर | केबल लिस्ट में नहीं है या बहुत लंबी है | ibstat, mlxlink |
CodingBox में
सर्वर-साइड रिजेक्शन का डायग्नोसिस उन्हीं बाइट से होता है जिनसे स्विच-साइड का होता है। Check transceiver पर वेंडर नाम, PN, OUI, कंप्लायंस कोड और चेकसम पढ़ें; सिर्फ़-Intel फ़्लीट के लिए code database वे Intel पहचान रख सकता है जिन्हें ड्राइवर स्वीकार करते हैं।