VDM และตัวชี้วัด FEC: ลิงก์ PAM4
ที่ 50G ต่อเลนขึ้นไป กำลังแสงเพียงอย่างเดียวไม่เพียงพอที่จะบ่งชี้สุขภาพของลิงก์ได้อีกต่อไป ลิงก์ PAM4 ที่มีกำลัง Rx สมบูรณ์แบบอาจห่างจากข้อผิดพลาดที่แก้ไม่ได้แค่คอนเนกเตอร์สกปรกจุดเดียว และสัญญาณแรกที่บอกไม่ใช่ dBm แต่เป็นอัตราบิตผิดพลาด มีแหล่งข้อมูลสองแหล่งที่ให้ตัวเลขนี้ ภายในโมดูล VDM ของ CMIS (Versatile Diagnostics Monitoring) รายงานค่า pre-FEC BER, SNR และสุขภาพของเลเซอร์แยกตามเลน ส่วนที่ฝั่งโฮสต์ ตัวถอดรหัส FEC จะนับโค้ดเวิร์ดที่แก้ไขได้และแก้ไขไม่ได้ ทั้งสองแหล่งรวมกันแสดงให้เห็นว่าลิงก์ห่างจากความล้มเหลวแค่ไหน ในขณะที่ยังรับส่งทราฟฟิกได้โดยไม่สูญเสียข้อมูล
เหตุใด FEC จึงเปลี่ยนวิธีวินิจฉัย
PMD ของ Ethernet ทุกตัวที่ 25G ขึ้นไปบน PAM4 (และ 25G NRZ ส่วนใหญ่) ตั้งอยู่บนสมมติฐานว่าใช้ FEC แบบ Reed-Solomon ออปติกได้รับอนุญาตให้ส่งค่าอัตราผิดพลาดดิบที่ 10⁻⁵–10⁻⁴ เพราะ FEC จะซ่อมให้เหลือ 10⁻¹² หรือดีกว่านั้น ผลที่ตามมาคือ ลิงก์ที่กำลังเสื่อมสภาพจะไม่แสดงข้อผิดพลาดใด ๆ เลยต่อ MAC จนกว่าจะข้ามขีดจำกัดของ FEC แล้วจึงล่มลงทันที pre-FEC BER เป็นตัวบ่งชี้ค่าเผื่อเพียงตัวเดียวที่เปลี่ยนแปลงอย่างราบรื่น
| FEC | โค้ด | แก้ไขได้ต่อโค้ดเวิร์ด | ขีดจำกัด pre-FEC BER สำหรับเอาต์พุต 10⁻¹² (โดยประมาณ) | ใช้ใน |
|---|---|---|---|---|
| BASE-R (“FC-FEC”, Clause 74) | Fire code (2112, 2080) | เบิร์สต์ 11 บิต | ≈ 10⁻⁷ … 10⁻⁸ ได้เกน ~2 dB | 10G/25G NRZ, CA-25G-S |
| RS-FEC KR4 (Clause 91/108) | RS(528, 514) บน GF(2¹⁰) | 7 สัญลักษณ์ | ≈ 5 × 10⁻⁵ | 25GBASE-CR/SR/LR, 100GBASE-SR4/CWDM4/CR4 |
| RS-FEC KP4 (Clause 119/134) | RS(544, 514) | 15 สัญลักษณ์ | ≈ 2.4 × 10⁻⁴ | ทุกเลน PAM4 ขนาด 50G: 50G/100G/200G/400G/800G |
| แบบต่อเนื่อง (concatenated) / oFEC (โคฮีเรนต์) | โค้ดชั้นในและชั้นนอก | — | ≈ 10⁻² … 2 × 10⁻² | 400ZR (CFEC), OpenZR+ (oFEC) |
ความไม่ตรงกันด้านการตั้งค่า: FEC, การเจรจาอัตโนมัติ และการฝึกลิงก์
VDM — สิ่งที่โมดูลรายงาน
VDM อยู่ในเพจ 20h–2Fh ของ CMIS (แบ่งแบงก์ต่อ 8 เลน) และมีการประกาศไว้ในเพจ 01h แต่ละค่าที่สังเกตได้ (observable) มีตัวบอกรายละเอียด (ชนิด, เลน) มีค่าตัวอย่างแบบสด ค่าเกณฑ์สี่ค่า และแฟล็ก เหมือนกับค่าที่ตรวจวัดแบบคลาสสิกทุกประการ
| เพจ | เนื้อหา |
|---|---|
| 20h–23h | ตัวบอกรายละเอียด: ค่าที่สังเกตได้ตัวใด เลนใด ชุดค่าเกณฑ์ใด |
| 24h–27h | ค่าตัวอย่าง (2 ไบต์ต่อค่า) |
| 28h–2Bh | ค่าเกณฑ์: อะลาร์มสูง/ต่ำ, คำเตือนสูง/ต่ำ |
| 2Ch–2Fh | แฟล็กและมาสก์ |
ชนิดของค่าที่สังเกตได้ (CMIS 4.0/5.x)
| ID | ค่าที่สังเกตได้ | หน่วย / รูปแบบ | สิ่งที่บอกคุณ |
|---|---|---|---|
| 1 | อายุเลเซอร์ | % (U16) | ค่าประมาณอายุใช้งานที่หมดไปแล้วตามผู้ผลิต |
| 2 | กระแส TEC | % ของค่าสูงสุด (S16) | ภาระของตัวทำความเย็น — อุณหภูมิและแรงดันไฟเลี้ยง |
| 3 | ค่าคลาดเคลื่อนความถี่เลเซอร์ | MHz (S16) | DWDM/ZR: ระยะห่างจากกริด |
| 4 | อุณหภูมิเลเซอร์ | °C (S16, 1/256) | เลเซอร์ที่มี TEC |
| 5 / 6 | eSNR อินพุตฝั่งสื่อสัญญาณ / โฮสต์ | dB (U16, 1/256) | SNR ทางไฟฟ้าหลังการอีควอไลซ์ คือ “eye height” ของ PAM4 มากกว่า 18–20 dB ถือว่าสบาย น้อยกว่า 15 dB ถือว่าก้ำกึ่ง (แล้วแต่ผู้ผลิต) |
| 7 / 8 | พารามิเตอร์การเปลี่ยนระดับของ PAM4 ฝั่งสื่อสัญญาณ / โฮสต์ | dB | ความเป็นเชิงเส้นของสี่ระดับสัญญาณ |
| 9 / 10 | pre-FEC BER ต่ำสุด ฝั่งสื่อสัญญาณ / โฮสต์ | F16 | ค่าดีที่สุดในช่วงเวลานั้น |
| 11 / 12 | pre-FEC BER สูงสุด | F16 | ค่าแย่ที่สุดในช่วงเวลานั้น คือตัวเลขที่ควรใช้แจ้งเตือน |
| 13 / 14 | pre-FEC BER เฉลี่ย | F16 | — |
| 15 / 16 | pre-FEC BER ปัจจุบัน | F16 | ค่าตัวอย่างล่าสุด |
| 17–24 | FERC (frame error ratio count) ต่ำสุด / สูงสุด / เฉลี่ย / ปัจจุบัน ฝั่งสื่อสัญญาณ / โฮสต์ | F16 | เฟรมที่แก้ไม่ได้หลัง FEC ควรเป็น 0 |
| 128+ | ชุดค่าโคฮีเรนต์ (CMIS 5.x): ไบอัสมอดูเลเตอร์, CD, DGD, SOPMD, OSNR, eSNR, Q-factor, กำลัง Rx รวม/กำลังสัญญาณ, ค่าออฟเซตความถี่พาหะ… | หลากหลาย | โมดูล 400ZR/ZR+ |
F16 คือรูปแบบอัตราส่วน 16 บิตของ CMIS ประกอบด้วยเลขชี้กำลัง 5 บิตและแมนทิสซา 11 บิต โดยค่า = แมนทิสซา × 10^(เลขชี้กำลัง − 24) pre-FEC BER ที่ 1.5 × 10⁻⁶ จะถูกเก็บเป็นแมนทิสซา 1500 กับเลขชี้กำลัง 15 ฝั่งสื่อสัญญาณคือสายส่งเชิงแสง ส่วนฝั่งโฮสต์คืออินเทอร์เฟซทางไฟฟ้าไปยัง ASIC ของสวิตช์ BER ที่แย่ทางฝั่งโฮสต์ชี้ไปที่คอนเนกเตอร์หรือบอร์ด ไม่ใช่ที่ใยแก้วนำแสง
ตัวนับ FEC ฝั่งโฮสต์
สวิตช์หรือ NIC จะนับค่าต่อพอร์ต และมักนับแยกต่อเลนด้วย:
| ตัวนับ | สภาพดี | เฝ้าระวัง | กำลังล้มเหลว |
|---|---|---|---|
| โค้ดเวิร์ดที่แก้ไขแล้ว | เพิ่มขึ้นช้า ๆ (pre-FEC BER 10⁻⁸ … 10⁻⁶) | เพิ่มขึ้นเร็ว (10⁻⁵ ที่ KP4) | ใกล้ขีดจำกัด |
| โค้ดเวิร์ดที่แก้ไม่ได้ | 0 | เพิ่มขึ้นแม้แต่นิดเดียว | เพิ่มขึ้นต่อเนื่อง = เฟรมสูญหาย |
| ข้อผิดพลาดของสัญลักษณ์ต่อเลน | ใกล้เคียงกันทุกเลน | เลนใดเลนหนึ่งสูงเด่น | ใยแก้วนำแสง/คอนเนกเตอร์/เลเซอร์ของเลนนั้น |
| pre-FEC BER (คำนวณได้) | < 10⁻⁷ | 10⁻⁶ … 10⁻⁵ | > 10⁻⁴ (KP4) |
ดูค่าเหล่านี้ได้จาก: show interfaces … fec / phy detail บน NOS ส่วนใหญ่ (การตรวจสอบยืนยันออปติกบนสวิตช์), ethtool -S (fec_corrected_blocks, fec_uncorrectable_blocks) และ ethtool --show-fec บน Linux, show interfaces counters fec บน SONiC ตัวนับเป็นค่าสะสม ให้เคลียร์ค่าแล้วเฝ้าดูอัตราการเพิ่ม
อ่านสองค่านี้ร่วมกัน
| กำลัง Rx | Pre-FEC BER / eSNR | แก้ไม่ได้ | การวินิจฉัย |
|---|---|---|---|
| อยู่ในหน้าต่าง | < 10⁻⁷, eSNR สูง | 0 | สภาพดี มีค่าเผื่อ |
| อยู่ในหน้าต่าง | 10⁻⁵, eSNR ตกในเลนหนึ่ง | 0 | เลนนั้นกำลังเสื่อมสภาพ: ใยแก้วนำแสง MPO สกปรก, VCSEL เสื่อมตามอายุ, คอนเนกเตอร์ก้ำกึ่ง ให้แก้ไขก่อนที่จะล่ม (การวินิจฉัยแยกตามเลน) |
| ต่ำ | สูง | มีบ้าง | ปัญหางบประมาณ — กำลังรับ (Rx) และงบประมาณลิงก์ |
| อยู่ในหน้าต่างทั้งสองปลาย | สูงทางฝั่งโฮสต์ | มีบ้าง | ทางไฟฟ้า: หน้าสัมผัสของเคจ/คอนเนกเตอร์, บอร์ด, คุณภาพของ DAC, ตั้งค่าอีควอไลเซชันผิด |
| อยู่ในหน้าต่าง | สูงทางฝั่งสื่อสัญญาณ ทุกเลน | มีบ้าง | ดิสเพอร์ชัน, เลือกคลาสระยะส่งผิด, ความยาวคลื่นไม่ตรงกับมัลติเพล็กเซอร์, โพลาริตีผิดบางส่วน |
| ปกติดี | ไม่มีข้อผิดพลาด แต่ลิงก์กระพริบ | 0 | ไม่ใช่ปัญหาสัญญาณ: FEC/AN ไม่ตรงกัน, ความร้อน, ซอฟต์แวร์ |
ค่าเกณฑ์และการแจ้งเตือน
ค่าเกณฑ์ของ VDM ถูกตั้งโดยผู้ผลิต คำเตือนสูงทั่วไปสำหรับ pre-FEC BER อยู่ที่ประมาณหนึ่งในสิบของขีดจำกัด FEC (2 × 10⁻⁵ ที่ KP4) สำหรับการแจ้งเตือน ให้ใช้อัตราการเปลี่ยนแปลงและแนวโน้ม pre-FEC BER ที่เพิ่มขึ้นสิบเท่าภายในหนึ่งสัปดาห์คือสัญญาณให้ออกใบสั่งงานได้เลย ไม่ว่าค่าเกณฑ์จะเป็นเท่าใด (การตรวจติดตาม) ข้อผิดพลาดที่แก้ไม่ได้หลัง FEC ถือเป็นเหตุการณ์ที่ต้องจัดการเสมอ
จุดที่ไม่มี VDM
โมดูล SFF-8472 และ SFF-8636 ไม่มี VDM ลิงก์ NRZ ที่ 10G/25G/100G จึงต้องพึ่งตัวนับ FEC ของโฮสต์และค่ากำลัง Rx แทน โมดูล SFF-8636 บางรุ่นเปิดให้เข้าถึง SNR หรือ BER เฉพาะของผู้ผลิตในเพจ 20h–21h หรือไบต์เฉพาะผู้ผลิต ซึ่งอ่านได้เฉพาะด้วยเครื่องมือของผู้ผลิตเท่านั้น สำหรับ NRZ ที่ไม่มี FEC (10G LR, 1G) ตัวนับ CRC/ข้อผิดพลาดขาเข้าบนอินเทอร์เฟซเป็นมุมมองระดับบิตเพียงอย่างเดียวที่มี
ใน CodingBox
สำหรับโมดูล CMIS CodingBox จะอ่านตัวบอกรายละเอียดและค่าตัวอย่างของ VDM แล้วแสดงแยกตามเลนควบคู่กับค่าที่ตรวจวัดแบบคลาสสิกบนหน้าจอ DDM ในแอป พร้อมถอดรหัสอัตราส่วน F16 ให้เป็นตัวเลขธรรมดา ส่วนตัวนับ FEC ของโฮสต์อยู่นอกเหนือขอบเขตของโมดูลและเครื่องโปรแกรม เพราะมันมาจากสวิตช์