สิ่งที่โฮสต์ทำ: การตรวจพบ การตรวจสอบความถูกต้อง และการเริ่มใช้งาน · ข้อกำหนดและมาตรฐาน · ทรานซีฟเวอร์ออปติคัลและสายเคเบิล · เอกสารประกอบ · CodingBox
CodingBox เอกสารประกอบ

สิ่งที่โฮสต์ทำ: การตรวจพบ การตรวจสอบความถูกต้อง และการเริ่มใช้งาน

สเปกต่าง ๆ อธิบายฝั่งโมดูล ได้แก่ ขา หน่วยความจำ สถานะ หน้านี้อธิบาย ฝั่งโฮสต์ คือลำดับขั้นตอนที่สวิตช์ เราเตอร์ หรือ NIC ทำตั้งแต่วินาทีที่เสียบโมดูลจนกระทั่งมีทราฟฟิกไหลผ่าน พร้อมขา ไบต์ และจังหวะเวลาที่แต่ละขั้นตอนใช้ การรู้เรื่องนี้จะเปลี่ยน “พอร์ตบอกว่าไม่รองรับ” ให้กลายเป็น “โฮสต์หยุดอยู่ที่ขั้นตอนที่ 4” และอธิบายได้ว่าทำไมโมดูลที่สมบูรณ์แบบบนโต๊ะทดสอบถึงยังใช้งานในพอร์ตไม่ได้

สัญญาณความเร็วต่ำแยกตามฟอร์มแฟกเตอร์

ฟอร์มแฟกเตอร์การมีอยู่ของโมดูลรีเซ็ต/ไฟเลี้ยงอินเทอร์รัปต์/เหตุขัดข้องอื่น ๆ
SFP / SFP+ / SFP28MOD_ABS (ต่ำ = มีโมดูล)— (TX_DISABLE ควบคุมเปิด/ปิดเลเซอร์)TX_FAULT, RX_LOSRS0, RS1 การเลือกอัตรา
XFPMod_ABSP_Down/RSTInterrupt, Mod_NR (ยังไม่พร้อม), RX_LOSTX_DIS, Mod_DeSel
QSFP+ / QSFP28ModPrsLResetL, LPModeIntLModSelL
QSFP-DDModPrsLResetL, LPModeIntLModSelL
OSFPPRSnRSTn, LPWnINT— (ไม่มีขาเลือก มีบัสเดียวต่อพอร์ต)
SFP-DDการตรวจจับโมดูลแบบเดียวกับ SFPการร้องขอโหมดกำลังต่ำอินเทอร์รัปต์การเลือกอัตราแบบเดียวกับ SFP

หน้าที่ของขาและผังขาแยกตามตระกูล: ฮาร์ดแวร์ SFP, ฮาร์ดแวร์ QSFP, XFP

ลำดับขั้นตอน

#ขั้นตอนSFP (SFF-8472)QSFP (SFF-8636)CMISอาการเมื่อล้มเหลว
1ตรวจจับMOD_ABS เป็นต่ำ; ดีบาวน์ModPrsL เป็นต่ำModPrsL / PRSn เป็นต่ำพอร์ตยังว่างอยู่ โมดูล “ไม่ถูกตรวจพบ”
2จ่ายไฟและรอ3.3 V เปิดตลอดเวลา; รอ t_init 300 msจ่ายไฟโดย LPMode เป็นสูง (เฉพาะคลาส 1); รอ t_init 2 s หรือโพลล์ Data_Not_Readyเหมือนกัน; รอให้สถานะโมดูลออกจาก MgmtInit (≤ 2 s)การอ่านได้ค่า FFh / 00h; ข้อมูลระบุตัวตนว่างเปล่า
3ระบุตัวตนอ่าน A0h 0–95; ไบต์ 0 = 03h เลือกตัวแยกวิเคราะห์ของ SFF-8472อ่าน 0–127 และเพจบน 00h; ไบต์ 0 = 0Dh/11h, ไบต์ 1 คือรุ่นอ่านเพจล่างและเพจบน 00h; ไบต์ 0 = 18h/19h…, ไบต์ 1 คือรุ่น CMISunknown module type
4ตรวจสอบความถูกต้องCC_BASE, CC_EXT; ความสอดคล้องของตัวระบุ/คอนเนกเตอร์/การเข้ารหัสCC_BASE, CC_EXTเช็กซัมของเพจ 00hinvalid EEPROM, checksum error (ดูเช็กซัม)
5ถอดรหัสชนิดไบต์ความสอดคล้อง 3–10, 36; ไบต์อัตรา 12/66; ความยาว; ความยาวคลื่นไบต์ 131–138, 192; 140/222ชนิดสื่อกลางไบต์ 85, ตัวบ่งชี้การใช้งานspeed and type not supported (ดูรหัสความสอดคล้อง)
6นโยบายชื่อผู้ผลิต/PN (และอาจมีลายเซ็น) เทียบกับตารางความเข้ากันได้เหมือนกันเหมือนกันunsupported transceiver, errdisable (ดูการล็อกผู้ผลิต)
7คลาสกำลังไฟบิตระดับไบต์ 64 เทียบกับงบประมาณของพอร์ตคลาสไบต์ 129; เขียนไบต์ 93 เพื่อปลดโหมดกำลังต่ำ/เปิดใช้คลาส 5–8คลาสไบต์ 200 เทียบกับพอร์ต; ปลดการยืนยัน LPMode หรือล้าง LowPwrRequestSW → โมดูล PwrUp → Readyค้างอยู่ในโหมดกำลังต่ำ, power exceeds (ดูกำลังไฟและความร้อน)
8ตั้งค่าRS0/RS1 หรือการเลือกอัตราแบบซอฟต์; ความเร็วฝั่งโฮสต์, FEC, SGMII/1000BASE-Xเปิด/ปิด CDR (98), การเลือกอัตรา (87–88), เลนเบรกเอาต์ฝั่งโฮสต์เลือก AppSel/DataPathID ในชุดควบคุมที่เตรียมไว้ → ApplyDPInit → เส้นทางข้อมูล Init → InitializedLOL, FEC ไม่ตรงกัน, เบรกเอาต์ถูกปฏิเสธ (ดูความเร็วและอัตรา)
9เปิดใช้งาน Txขา TX_DISABLE เป็นต่ำ หรือล้างบิตซอฟต์ (A2h 110.6)ไบต์ 86 = 00hเพจ 10h ไบต์ 130 = 00h → DPTxTurnOn → DPActivatedปลายไกลเห็น −40 dBm (ดูเช็กลิสต์ไม่มีลิงก์)
10สร้างลิงก์PHY/MAC เห็นสัญญาณ; AN/การฝึกลิงก์บน DACเหมือนกันต่อเลนเหมือนกันต่อเส้นทางข้อมูลลิงก์ดาวน์ทั้งที่ระดับสัญญาณดี
11ตรวจติดตามโพลล์ค่าที่ตรวจวัดและแฟล็กของ A2h ทุกสองสามวินาที; ขา TX_FAULT / RX_LOSIntL → อ่านแฟล็ก 3–21; โพลล์ค่าที่ตรวจวัดIntL → แฟล็กโมดูล + แฟล็กเลนในเพจ 11h; VDMอะลาร์ม, ลิงก์กระพือ (ดูระดับ DDM, ลิงก์กระพือ)
12ถอดออกMOD_ABS เป็นสูง → ล้างสถานะModPrsL เป็นสูงModPrsL เป็นสูงสถานะค้างเก่าหากดีบาวน์พลาด

ขั้นตอนที่ 3–6 เกิดขึ้นในโหมด กำลังต่ำ สำหรับโมดูล QSFP และ CMIS โฮสต์ตรวจสอบความถูกต้องก่อนที่จะจ่ายกำลังไฟให้วงจรออปติคัล นี่คือเหตุผลที่โมดูลที่ถูกล็อกหรือเขียนโค้ดผิดจะไม่มีวันติดเลเซอร์ และเหตุผลที่ปลายไกลอ่านค่าได้ −40 dBm ทั้งที่โมดูลนั้นสมบูรณ์ดีทางไฟฟ้า

จังหวะเวลาที่โฮสต์ต้องรอ

รอSFPQSFPCMIS
พร้อมจัดการหลังเสียบ300 ms2 s≤ 2 s (MgmtInit) จากนั้นเข้าสถานะ LowPwr
หลังปลดโหมดกำลังต่ำ—จนกว่า Data_Not_Ready จะเคลียร์จนกว่าสถานะโมดูลจะเป็น Ready (ระยะเวลาสูงสุดประกาศไว้ในเพจ 01h)
การเริ่มต้นเส้นทางข้อมูล——ประกาศไว้ต่อขั้นตอน (รหัสนิบเบิล: < 1 ms … < 50 min)
เปิดใช้งาน Tx จนติดt_on ≤ 1 mston_txdis 100 ms / toff 400 msระยะเวลา DPTxTurnOn ประกาศไว้
จากแฟล็กถึงอินเทอร์รัปต์—ton_IntL 200 msตามสเปกฮาร์ดแวร์

จังหวะเวลาระดับบัส (t_WR, การยืดคล็อก): อินเทอร์เฟซสองสาย

จุดด้านนโยบายที่โฮสต์แต่ละระบบต่างกัน

  • ความเข้มงวดของไวต์ลิสต์ — ตั้งแต่ “เฉพาะชื่อผู้ผลิต” ไปจนถึงบล็อกเฉพาะของผู้ผลิตที่มีลายเซ็นรับรอง
  • สิ่งที่เกิดขึ้นเมื่อถูกปฏิเสธ — ปิดใช้งานพอร์ต ปิดเลเซอร์ หรืออนุญาตให้เชื่อมลิงก์พร้อมบันทึกล็อก (ออปติกของบุคคลที่สาม)
  • ระดับความลึกของ CMIS — การควบคุมการใช้งาน/เส้นทางข้อมูลแบบเต็มรูปแบบ เทียบกับ “ปล่อย LPMode แล้วภาวนา” (ปัญหา CMIS)
  • ค่าเริ่มต้นของ FEC และความเร็ว — มาจากรหัสความสอดคล้อง หรือกำหนดตายตัวไว้
  • การโพลล์ DDM — ช่วงเวลา, ค่าเกณฑ์สั่งปิดพอร์ตหรือไม่, มีการใช้การสอบเทียบภายนอกหรือไม่ (การสอบเทียบ)

CLI เฉพาะของแต่ละผู้ผลิตสำหรับดูว่าโฮสต์หยุดอยู่ที่ไหน: การตรวจสอบออปติกบนสวิตช์

เครื่องโปรแกรมต่างจากโฮสต์อย่างไร

เครื่องโปรแกรมอย่าง CodingBox ทำขั้นตอนที่ 1–5 และ 11 แต่ ไม่มีนโยบาย มันอ่านทุกอย่างที่โมดูลเปิดให้เข้าถึง รวมถึงพื้นที่ของผู้ผลิตและไบต์รหัสผ่าน ให้โมดูล CMIS อยู่ในโหมดกำลังต่ำ เว้นแต่จะสั่งเป็นอย่างอื่น และไม่เปิดใช้งานเลเซอร์เองเด็ดขาด นี่คือเหตุผลที่โมดูลอาจดูสมบูรณ์ดีบนโต๊ะทดสอบ แต่ยังใช้งานในพอร์ตไม่ได้ เพราะบนโต๊ะทดสอบไม่มีขั้นตอนที่ 6

ใน CodingBox

Check transceiver แสดงผลลัพธ์ของขั้นตอนที่ 3–5 ในแบบที่โฮสต์จะเห็น (ชนิด, อัตรา, เช็กซัม, คลาสกำลังไฟ) และชี้ให้เห็นความไม่สอดคล้องก่อนที่โมดูลจะไปถึงพอร์ต ส่วนDDM ครอบคลุมขั้นตอนที่ 11 ด้วยค่าที่ตรวจวัดและแฟล็กแบบเรียลไทม์

ฮาร์ดแวร์เบื้องหลังขั้นตอนที่ 6 (นโยบาย) และข้อจำกัดของกลุ่มพอร์ตเบื้องหลังขั้นตอนที่ 8: ภายในสวิตช์, แต่ละ NOS ตรวจสอบความถูกต้องของโมดูลอย่างไร


หากพบข้อมูลที่ไม่ถูกต้องหรือข้อผิดพลาดในบทความนี้ ให้เลือกข้อความส่วนนั้นแล้วกด Ctrl+Enter เพื่อ