Membaca DDM dengan alat: CLI, ethtool, SNMP, OpenConfig
Byte A2h yang sama ini sampai kepada Anda melalui banyak pintu: CLI switch, NIC Linux, poller SNMP, pipeline telemetri streaming, atau dump heksadesimal mentah dari programmer. Halaman ini adalah resep praktis: perintah, OID dan path, serta cara mendekode dump mentah secara manual saat alat yang ada di depan Anda tidak bisa melakukannya.
CLI switch dan router
| Platform | Perintah DDM | Catatan |
|---|---|---|
| Cisco IOS / IOS-XE | show interfaces transceiver detail | ambang ditampilkan bersama nilai; show idprom interface untuk identitas |
| Cisco NX-OS | show interface ethernet1/1 transceiver details | per-lane untuk QSFP |
| Cisco IOS-XR | show controllers optics 0/0/0/0 | mencakup alarm dan tabel lane |
| Juniper Junos | show interfaces diagnostics optics xe-0/0/0 | ambang dan status alarm disertakan |
| Arista EOS | show interfaces ethernet 1 transceiver dom | … transceiver detail menambahkan ambang |
| 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 untuk detail modul |
| SONiC | show interfaces transceiver eeprom -d Ethernet0 | sfputil show eeprom -d; … presence, … lpmode |
Padanan yang berorientasi identitas dan apa yang perlu diperiksa: Memverifikasi optik pada switch.
Linux: ethtool
ethtool -m eth0 # identitas yang didekode + DDM (jika driver mendukung EEPROM modul)
ethtool -m eth0 raw on hex on # dump mentah: A0h di 0x0000–0x00ff, A2h di 0x0100–0x01ff (SFP)
ethtool -m eth0 hex on offset 256 length 128 # hanya halaman bawah A2h
ethtool --show-fec eth0 # mode FEC
ethtool -S eth0 | grep -i fec # fec_corrected_blocks / fec_uncorrectable_blocks
Untuk modul QSFP/CMIS, dump mengikuti tata letak berhalaman yang diekspos oleh driver (halaman bawah, atas 00h, lalu halaman 01h/02h/03h/10h/11h jika didukung). ethtool mendekode SFF-8472 dan SFF-8636 secara penuh, dan CMIS sebagian, tergantung versi kernel.
Mendekode dump A2h mentah secara manual
Halaman bawah A2h pada offset 0x0100 dalam dump ethtool -m … raw on hex on. Monitor live dimulai dari byte 96 A2h → offset dump 0x0160:
0x0160: 1a 80 80 e8 1b 58 0f a0 03 e8 ...
└─┬─┘ └─┬─┘ └─┬─┘ └─┬─┘ └─┬─┘
suhu Vcc bias Tx Rx
| Byte | Mentah | Konversi | Nilai |
|---|---|---|---|
| 96–97 suhu | 1A 80 = 6784 (bertanda) | ÷ 256 | 26,5 °C |
| 98–99 Vcc | 80 E8 = 33000 | × 100 µV | 3,300 V |
| 100–101 bias Tx | 1B 58 = 7000 | × 2 µA | 14,0 mA |
| 102–103 daya Tx | 0F A0 = 4000 | × 0,1 µW = 400 µW; 10·log10(0,400) | −3,98 dBm |
| 104–105 daya Rx | 03 E8 = 1000 | × 0,1 µW = 100 µW | −10,0 dBm |
Pengonversian ini mengasumsikan kalibrasi internal (A0h byte 92 bit 5); untuk kalibrasi eksternal, terapkan dahulu konstanta dari A2h 56–91 (Kalibrasi). Ambang berada di A2h 0–39 dalam format yang sama; status/kontrol dan flag di 110–117 (Ambang & alarm). QSFP: monitor modul di byte 22–27, monitor lane di 34–57 pada halaman bawah; CMIS: halaman bawah 14–25 dan halaman 11h 154–201 (Diagnostik per-lane).
SNMP
Standar: ENTITY-SENSOR-MIB (RFC 3433)
Sebagian besar platform mengekspos setiap nilai DDM sebagai sensor fisik:
| Objek | OID | Arti |
|---|---|---|
| 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 = satuan, 7 = mili, 6 = mikro… |
| entPhySensorPrecision | 1.3.6.1.2.1.99.1.1.1.3 | jumlah digit desimal pada nilai |
| entPhySensorValue | 1.3.6.1.2.1.99.1.1.1.4 | hasil pembacaan |
| entPhySensorOperStatus | 1.3.6.1.2.1.99.1.1.1.5 | 1 ok, 2 unavailable, 3 nonoperational |
Indeks sensor dipetakan ke port melalui ENTITY-MIB (entPhysicalDescr, entPhysicalContainedIn). Nilai bertipe 14 (dBm), skala 8, presisi 2, dan nilai −1234 berarti −12,34 dBm.
MIB vendor
| Vendor | MIB / contoh objek |
|---|---|
| Cisco | CISCO-ENTITY-SENSOR-MIB entSensorValue (1.3.6.1.4.1.9.9.91.1.1.1.1.4), ambang di 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, dan banyak lainnya | hanya ENTITY-SENSOR-MIB |
| Huawei | objek optik HUAWEI-ENTITY-EXTENT-MIB (daya Rx/Tx, bias, suhu) |
| MikroTik | MIKROTIK-MIB mtxrOpticalTable (daya Rx/Tx, suhu, tegangan, bias) |
NMS open-source (LibreNMS, template Zabbix, Observium) menemukan sensor-sensor ini secara otomatis dan membuat grafiknya; Prometheus menggunakan snmp_exporter dengan OID yang sama.
Telemetri streaming (gNMI / OpenConfig)
openconfig-platform-transceiver memodelkan modul sebagai komponen dengan kanal fisik:
/components/component[name=Ethernet1/1]/transceiver/state/… vendor, nomor part, nomor seri, faktor bentuk
/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
Setiap leaf membawa instant, avg, min, max selama interval pengambilan sampel. Berlangganan dalam mode SAMPLE dengan interval 10–60 s; gnmic → Prometheus/InfluxDB → Grafana adalah pipeline yang umum. Model asli vendor (Cisco, Juniper, Arista) mengekspos data yang sama di bawah path masing-masing dan biasanya menambahkan counter FEC dan status alarm.
Windows dan host lain
Tidak ada alat DDM bawaan di Windows; utilitas vendor NIC (adaptor server) terkadang menampilkan data modul. FreeBSD menampilkan identitas dan DDM SFP dengan ifconfig <if> -v pada driver yang didukung. Pada host yang tidak dapat membaca modul, meja kerja menjadi pilihan cadangan.
Frekuensi polling dan etika
- Monitor modul diperbarui beberapa kali per detik; polling setiap 1–5 menit sudah cukup untuk tren dan tidak membebani bus dua kawat.
- Sebagian platform menyerialkan semua pembacaan modul melalui satu CPU manajemen — pemindaian SNMP yang agresif terhadap ratusan port dapat melambat atau mengalami timeout.
- Jangan pernah menjalankan master kedua (klip programmer, alat in-band) pada bus yang sedang dipoll oleh host (Antarmuka dua kawat).
Membandingkan sumber
CLI, SNMP, dan telemetri semuanya membaca byte yang sama; selisih beberapa persepuluh dB di antaranya adalah soal waktu, bukan kesalahan. Selisih antara pembacaan host dan pembacaan di meja kerja untuk modul yang sama patut dipahami: suhu, Vcc, dan penanganan kalibrasi mengubah angkanya (Akurasi & batasan).
Di CodingBox
CodingBox adalah pintu meja kerja: DDM menampilkan monitor dan flag yang telah didekode, dengan byte mentah satu klik lagi di EEPROM editor, dan ekspor CSV memberi masukan ke dasbor yang sama yang mengonsumsi SNMP atau telemetri — sehingga satu modul memiliki satu riwayat dari inspeksi kedatangan hingga dekomisioning (Pemantauan).