ٹولز سے DDM پڑھنا: CLI، ethtool، SNMP، OpenConfig
وہی A2h بائٹس آپ تک کئی راستوں سے پہنچتے ہیں: سوئچ CLI، Linux NIC، SNMP پولر، اسٹریمنگ ٹیلی میٹری پائپ لائن، یا پروگرامر سے خام ہیکس ڈمپ۔ یہ صفحہ عملی رہنما ہے — کمانڈز، OIDs اور راستے، اور جب آپ کے سامنے موجود ٹول ڈمپ کو ڈی کوڈ نہ کرے تو خام ڈمپ کو ہاتھ سے ڈی کوڈ کرنے کا طریقہ۔
سوئچ اور راؤٹر CLI
| پلیٹ فارم | DDM کمانڈ | نوٹس |
|---|---|---|
| Cisco IOS / IOS-XE | show interfaces transceiver detail | قدروں کے ساتھ حدود؛ شناخت کے لیے show idprom interface |
| Cisco NX-OS | show interface ethernet1/1 transceiver details | QSFP کے لیے ہر لین کی معلومات |
| Cisco IOS-XR | show controllers optics 0/0/0/0 | الارمز اور لین جدول شامل ہیں |
| Juniper Junos | show interfaces diagnostics optics xe-0/0/0 | حدود اور الارم کی حالت شامل |
| Arista EOS | show interfaces ethernet 1 transceiver dom | … transceiver detail حدود شامل کرتا ہے |
| Huawei VRP | display transceiver interface XGigabitEthernet0/0/1 verbose | — |
| MikroTik RouterOS | /interface ethernet monitor sfp1 | sfp-temperature، sfp-tx-power، sfp-rx-power، sfp-tx-bias-current |
| Dell OS10 | show interface ethernet 1/1/1 transceiver | — |
| NVIDIA Cumulus / Onyx | l1-show swp1 / show interfaces ethernet 1/1 transceiver | ماڈیول کی تفصیلات کے لیے mlxlink -d <dev> -p <port> -m |
| SONiC | show interfaces transceiver eeprom -d Ethernet0 | sfputil show eeprom -d؛ … presence، … lpmode |
شناخت پر مبنی مساوی کمانڈز اور کن چیزوں کو دیکھنا ہے: سوئچز پر آپٹیکل ماڈیولز کی تصدیق۔
Linux: ethtool
ethtool -m eth0 # decoded identity + DDM (when the driver supports module EEPROM)
ethtool -m eth0 raw on hex on # raw dump: A0h at 0x0000–0x00ff, A2h at 0x0100–0x01ff (SFP)
ethtool -m eth0 hex on offset 256 length 128 # A2h lower page only
ethtool --show-fec eth0 # FEC mode
ethtool -S eth0 | grep -i fec # fec_corrected_blocks / fec_uncorrectable_blocks
QSFP/CMIS ماڈیولز کے لیے ڈمپ صفحات میں تقسیم شدہ اس ترتیب کے مطابق ہوتا ہے جو ڈرائیور ظاہر کرتا ہے (زیریں صفحہ، بالائی 00h، پھر سپورٹ ہونے پر صفحات 01h/02h/03h/10h/11h)۔ ethtool SFF-8472 اور SFF-8636 کو مکمل اور کرنل ورژن کے لحاظ سے CMIS کو جزوی طور پر ڈی کوڈ کرتا ہے۔
خام A2h ڈمپ کو ہاتھ سے ڈی کوڈ کرنا
خام ڈمپ میں، جو ethtool -m … raw on hex on سے حاصل ہوتا ہے، A2h کا زیریں صفحہ آفسیٹ 0x0100 پر ہے۔ موجودہ مانیٹر قدریں A2h بائٹ 96 → ڈمپ آفسیٹ 0x0160 سے شروع ہوتی ہیں:
0x0160: 1a 80 80 e8 1b 58 0f a0 03 e8 ...
└─┬─┘ └─┬─┘ └─┬─┘ └─┬─┘ └─┬─┘
temp Vcc bias Tx Rx
| بائٹس | خام قدر | تبدیلی | قدر |
|---|---|---|---|
| 96–97 درجہ حرارت | 1A 80 = 6784 (علامت والا) | ÷ 256 | 26.5 °C |
| 98–99 Vcc | 80 E8 = 33000 | × 100 µV | 3.300 V |
| 100–101 Tx بایس | 1B 58 = 7000 | × 2 µA | 14.0 mA |
| 102–103 Tx پاور | 0F A0 = 4000 | × 0.1 µW = 400 µW; 10·log10(0.400) | −3.98 dBm |
| 104–105 Rx پاور | 03 E8 = 1000 | × 0.1 µW = 100 µW | −10.0 dBm |
یہ تبدیلیاں اندرونی کیلیبریشن (A0h بائٹ 92 بٹ 5) فرض کرتی ہیں؛ بیرونی کیلیبریشن کی صورت میں پہلے A2h 56–91 کے مستقلات لاگو کریں (کیلیبریشن)۔ حدود انہی فارمیٹس میں A2h 0–39 پر ہیں؛ اسٹیٹس/کنٹرول اور فلیگز 110–117 پر ہیں (حدود اور الارمز)۔ QSFP: ماڈیول مانیٹرز بائٹس 22–27 پر، لین مانیٹرز زیریں صفحے کے 34–57 پر؛ CMIS: زیریں صفحہ 14–25 اور صفحہ 11h 154–201 پر (ہر لین کی تشخیص)۔
SNMP
معیار: ENTITY-SENSOR-MIB (RFC 3433)
زیادہ تر پلیٹ فارمز ہر DDM قدر کو طبعی سینسر کے طور پر ظاہر کرتے ہیں:
| آبجیکٹ | OID | مطلب |
|---|---|---|
| entPhySensorType | 1.3.6.1.2.1.99.1.1.1.1 | 4 voltsDC، 5 amperes، 8 celsius، 14 dBm |
| entPhySensorScale | 1.3.6.1.2.1.99.1.1.1.2 | 8 = units، 7 = milli، 6 = micro… |
| entPhySensorPrecision | 1.3.6.1.2.1.99.1.1.1.3 | قدر میں اعشاری مقامات کی تعداد |
| entPhySensorValue | 1.3.6.1.2.1.99.1.1.1.4 | ریڈنگ |
| entPhySensorOperStatus | 1.3.6.1.2.1.99.1.1.1.5 | 1 ok، 2 unavailable، 3 nonoperational |
سینسر کا انڈیکس ENTITY-MIB (entPhysicalDescr، entPhysicalContainedIn) کے ذریعے پورٹ سے منسلک ہوتا ہے۔ قسم 14 (dBm)، اسکیل 8، اعشاری مقامات کی تعداد 2 اور قدر −1234 کا مطلب −12.34 dBm ہے۔
وینڈر MIBs
| وینڈر | MIB / مثالی آبجیکٹ |
|---|---|
| Cisco | CISCO-ENTITY-SENSOR-MIB entSensorValue (1.3.6.1.4.1.9.9.91.1.1.1.1.4)، حدود entSensorThresholdTable میں |
| Juniper | JUNIPER-DOM-MIB: jnxDomCurrentRxLaserPower (…2636.3.60.1.1.1.1.5، 0.01 dBm)، jnxDomCurrentTxLaserBiasCurrent (.6)، jnxDomCurrentTxLaserOutputPower (.7)، jnxDomCurrentModuleTemperature (.8) |
| Arista، Dell، اور بہت سے دیگر | صرف ENTITY-SENSOR-MIB |
| Huawei | HUAWEI-ENTITY-EXTENT-MIB آپٹیکل آبجیکٹس (Rx/Tx پاور، بایس، درجہ حرارت) |
| MikroTik | MIKROTIK-MIB mtxrOpticalTable (Rx/Tx پاور، درجہ حرارت، وولٹیج، بایس) |
اوپن سورس NMS (LibreNMS، Zabbix ٹیمپلیٹس، Observium) انہیں خودکار طور پر دریافت کر کے گراف بناتے ہیں؛ Prometheus انہی OIDs کے ساتھ snmp_exporter استعمال کرتا ہے۔
اسٹریمنگ ٹیلی میٹری (gNMI / OpenConfig)
openconfig-platform-transceiver ماڈیول کو طبعی چینلز والے جزو کے طور پر ماڈل کرتا ہے:
/components/component[name=Ethernet1/1]/transceiver/state/… vendor, part, serial, form-factor
/components/component[name=…]/transceiver/physical-channels/channel[index=0]/state/input-power/instant
/components/component[name=…]/transceiver/physical-channels/channel[index=0]/state/output-power/instant
/components/component[name=…]/transceiver/physical-channels/channel[index=0]/state/laser-bias-current/instant
/components/component[name=…]/state/temperature/instant
ہر لیف سیمپلنگ وقفے میں instant، avg، min، max رکھتا ہے۔ 10–60 s پر SAMPLE موڈ میں سبسکرائب کریں؛ gnmic → Prometheus/InfluxDB → Grafana عام پائپ لائن ہے۔ وینڈر کے اپنے ماڈلز (Cisco، Juniper، Arista) یہی ڈیٹا اپنے راستوں میں ظاہر کرتے اور عموماً FEC کاؤنٹرز اور الارم کی حالت بھی شامل کرتے ہیں۔
Windows اور دیگر ہوسٹس
Windows میں کوئی اپنا DDM ٹول نہیں؛ NIC وینڈر یوٹیلیٹیز (سرور اڈاپٹرز) بعض اوقات ماڈیول ڈیٹا دکھاتی ہیں۔ FreeBSD سپورٹ شدہ ڈرائیورز پر ifconfig <if> -v کے ساتھ SFP شناخت اور DDM دکھاتا ہے۔ جس ہوسٹ پر ماڈیول نہ پڑھا جا سکے، وہاں ٹیسٹ بینچ متبادل ہے۔
پولنگ کی شرح اور آداب
- ماڈیول مانیٹرز فی سیکنڈ چند بار تازہ ہوتے ہیں؛ رجحان کے لیے اور دو تاروں والی بس پر ہلکا بوجھ رکھنے کے لیے ہر 1–5 منٹ پولنگ کافی ہے۔
- بعض پلیٹ فارمز تمام ماڈیول ریڈنگز کو ایک مینجمنٹ CPU سے ترتیب سے پڑھتے ہیں — سیکڑوں پورٹس پر زیادہ بار SNMP واکس سست کر سکتے یا ٹائم آؤٹ کر سکتے ہیں۔
- ایسی بس پر جہاں ہوسٹ پولنگ کر رہا ہو، کبھی دوسرا ماسٹر (پروگرامر کلپ، اِن بینڈ ٹول) نہ چلائیں (دو تاروں والا انٹرفیس)۔
ذرائع کا موازنہ
CLI، SNMP اور ٹیلی میٹری سب وہی بائٹس پڑھتے ہیں؛ ان میں dB کے چند دسویں حصے کا فرق وقت کے فرق کی وجہ سے ہے، خرابی نہیں۔ اسی ماڈیول کی ہوسٹ ریڈنگ اور ٹیسٹ بینچ ریڈنگ میں فرق کی وجہ جاننا مفید ہوتا ہے: درجہ حرارت، Vcc اور کیلیبریشن کے طریقۂ استعمال سے قدریں بدلتی ہیں (درستگی اور حدود)۔
CodingBox میں
CodingBox ٹیسٹ بینچ کا دروازہ ہے: DDM ڈی کوڈ شدہ مانیٹرز اور فلیگز دکھاتا ہے، EEPROM editor میں خام بائٹس ایک کلک دور ہیں، اور CSV ایکسپورٹ وہی ڈیش بورڈز بھرتا ہے جو SNMP یا ٹیلی میٹری استعمال کرتے ہیں — یوں ماڈیول کی موصول ہونے پر جانچ سے استعمال ختم کرنے تک ایک ہی تاریخ رہتی ہے (نگرانی)۔