Lossless Ethernet สำหรับระบบจัดเก็บข้อมูล: DCB, PFC, ECN · ระบบจัดเก็บข้อมูล · เทคโนโลยี · เอกสารประกอบ · CodingBox
CodingBox เอกสารประกอบ

Lossless Ethernet สำหรับระบบจัดเก็บข้อมูล: DCB, PFC, ECN

Ethernet ทิ้งเฟรมเมื่อเกิดความคับคั่ง ส่วนโปรโตคอลสตอเรจที่สร้างมาสำหรับ Fibre Channel หรือ RDMA ตั้งสมมติฐานว่าจะไม่มีการทิ้งข้อมูลเลย Data Center Bridging (DCB) ปิดช่องว่างนี้ด้วยการควบคุมการไหลและการจัดสรรแบนด์วิดท์ต่อระดับความสำคัญ และ RoCE เพิ่มการส่งสัญญาณความคับคั่งเข้าไปอีกชั้น ผลลัพธ์ที่ได้จะไม่สูญเสียข้อมูลได้ก็เพียงเท่ากับลิงก์ที่แย่ที่สุดเท่านั้น: ออปติกที่ก้ำกึ่งซึ่งทิ้งเฟรมหนึ่งในล้านเฟรมก็ถือเป็นเหตุขัดข้องด้านสตอเรจแล้ว หน้านี้อธิบายกลไกเหล่านี้และแปลงเป็นข้อกำหนดระดับเลเยอร์กายภาพ

ชุดเครื่องมือของ DCB

มาตรฐานชื่อสิ่งที่ทำ
IEEE 802.1QbbPFC — การควบคุมการไหลตามลำดับความสำคัญเฟรมสั่งหยุดต่อคลาสทราฟฟิก (0–7): ตัวรับที่คับคั่งหยุดได้เฉพาะคลาสเดียวโดยไม่ต้องหยุดทั้งพอร์ต
IEEE 802.1QazETS — การเลือกการส่งขั้นสูงส่วนแบ่งแบนด์วิดท์ที่รับประกันต่อคลาส (เช่น สตอเรจ 50%, LAN 50%)
IEEE 802.1QazDCBX — การแลกเปลี่ยนค่า DCBการเจรจาค่าตั้งของ PFC/ETS ระหว่างสวิตช์กับ NIC โดยใช้ LLDP
IEEE 802.1QauCN — การแจ้งเตือนความคับคั่งใช้งานจริงน้อยมาก
RFC 3168 + DCQCNการทำเครื่องหมาย ECN + การควบคุมอัตราสวิตช์ทำเครื่องหมายแพ็กเก็ตเมื่อคิวเริ่มสะสม; NIC ของ RoCE จะลดอัตราการส่งก่อนที่จะต้องพึ่ง PFC

RoCE รักษาการไม่สูญเสียข้อมูลได้อย่างไร

  1. ทราฟฟิกของสตอเรจ/RDMA ถูกกำกับด้วย ลำดับความสำคัญเฉพาะ (มักเป็น 3 หรือ 4) ผ่าน DSCP หรือ 802.1p
  2. เปิดใช้ PFC เฉพาะลำดับความสำคัญนั้น บนทุกพอร์ตตลอดเส้นทาง โดยกำหนด ที่ว่างสำรองของบัฟเฟอร์ (headroom) ให้เหมาะกับความเร็วลิงก์และความยาวสาย (ไบต์ที่อยู่ระหว่างทาง)
  3. ค่าเกณฑ์ของ ECN ทำเครื่องหมายแพ็กเก็ตล่วงหน้า; NIC ใช้ DCQCN เพื่อลดอัตราการส่งของตัวเอง ทำให้ PFC ทำงานเฉพาะเป็นทางเลือกสุดท้าย
  4. ETS รับประกันแบนด์วิดท์ของคลาสสตอเรจแม้ภายใต้ภาระของ LAN
  5. DCBX รักษาค่าตั้งของ NIC และสวิตช์ให้ตรงกัน; หากไม่ตรงกันจะทำลายคุณสมบัติไม่สูญเสียข้อมูลโดยไม่มีการแจ้งเตือน

FC และ InfiniBand ได้ผลแบบเดียวกันด้วยเครดิตในทุกลิงก์เป็นค่าเริ่มต้นอยู่แล้ว ส่วน Ethernet ต้องตั้งค่า ตรวจสอบ และตรวจติดตามเอง (พื้นฐานโปรโตคอล FC, ทรานสปอร์ตของ InfiniBand)

สิ่งที่อาจผิดพลาดได้

ปัญหาผลกระทบการตรวจจับ
ไม่ได้เปิด PFC ที่ฮอปใดฮอปหนึ่ง / ลำดับความสำคัญผิดมีการทิ้งข้อมูลเมื่อมีภาระงาน; RDMA ส่งซ้ำ; เวลาแฝงพุ่งสูงตัวนับ pause เป็นศูนย์ในจุดที่ไม่ควรเป็น; มีการทิ้งข้อมูลในคลาสนั้น
พายุ PFCตัวรับที่ค้างสั่งหยุดฝั่งต้นทางไปเรื่อย ๆ ไม่มีที่สิ้นสุด; ความคับคั่งลามไปทั่วฟาบริกเฟรมสั่งหยุดท่วม; ตัวนับเฝ้าระวัง (watchdog)
เดดล็อกของ PFCการพึ่งพาบัฟเฟอร์แบบวนรอบในฟาบริก Clos; ทราฟฟิกทั้งหมดในคลาสนั้นหยุดสนิทต้องใช้การตรวจจับเดดล็อก / watchdog เพื่อทำลายวงจร
ที่ว่างสำรองของบัฟเฟอร์น้อยเกินไปสำหรับสายหรือออปติกที่ยาวทิ้งข้อมูลแม้เปิด PFCมีการทิ้งข้อมูลพร้อมตัวนับ pause ทำงานอยู่
ค่าเกณฑ์ ECN ผิดเร็วเกินไป: เสียทรูพุต; ช้าเกินไป: PFC ท่วมตัวนับเครื่องหมาย ECN, ตัวนับ CNP บน NIC
ข้อผิดพลาดทางกายภาพบนลิงก์ (CRC, FEC ที่แก้ไม่ได้)เฟรมสูญหายซึ่งการควบคุมการไหลใด ๆ ก็กู้คืนไม่ได้ตัวนับข้อผิดพลาดของพอร์ต, ตัวนับ FEC — ตัวชี้วัด VDM และ FEC

iSCSI โดยไม่มี DCB

iSCSI ทำงานบน TCP และทนต่อการสูญเสียข้อมูลได้ แต่ต้องแลกด้วยเวลาแฝงและการส่งซ้ำ แนวปฏิบัติที่ดีไม่ว่าจะมี DCB หรือไม่:

  • VLAN/ซับเน็ตเฉพาะต่อฟาบริก, สองฟาบริก, MPIO บนโฮสต์
  • เฟรมจัมโบ้ (MTU 9000) ตลอดเส้นทางจากต้นทางถึงปลายทาง
  • ไม่มีโอเวอร์ซับสคริปชันระหว่างอินิชิเอเตอร์กับเป้าหมาย; อัปลิงก์ 25G/100G ขนาดเหมาะกับอาร์เรย์
  • เปิด FEC ทุกลิงก์ 25G ขึ้นไป; ตัวนับ CRC เป็นศูนย์
  • อาจเปิด PFC บนคลาสของ iSCSI เพื่อลดผลของไมโครเบิร์สต์ได้ (อาร์เรย์หลายรุ่นแนะนำให้ทำ)

ข้อกำหนดระดับเลเยอร์กายภาพ

ข้อกำหนดเหตุผลแนวปฏิบัติ
เปิดใช้ FEC และตั้งค่าให้ตรงกัน บนทุกลิงก์ 25G ขึ้นไปRoCE ทนต่อ BER ดิบของเลน 25G/50G ที่ไม่มีการป้องกันไม่ได้FEC และการฝึกลิงก์
CRC และ FEC ที่แก้ไม่ได้ = 0เฟรมที่สูญหายแต่ละเฟรมทำให้คิวค้างแจ้งเตือนทันทีที่ตัวนับเพิ่มขึ้น
กำลัง Rx อยู่ในช่วงพร้อมค่าเผื่อออปติกที่ก้ำกึ่งจะเกิดข้อผิดพลาดเป็นชุดเมื่ออุณหภูมิเปลี่ยนกำลัง Rx และงบประมาณลิงก์
ความเร็ว/ดูเพล็กซ์/AN ตรงกันทั้งสองฝั่งDAC ต้องมี AN + การฝึกลิงก์ทั้งสองด้านทองแดงและ DAC
ความยาวสายอยู่ในสมมติฐานของที่ว่างสำรองบัฟเฟอร์ที่ว่างสำรองคำนวณจากไบต์ที่อยู่ระหว่างทางเลือกใช้ DAC ภายในแร็ก, SR/AOC ภายในแถว, DR/LR ระหว่างห้อง
ข้อมูลระบุตัวตนที่ NIC และสวิตช์ยอมรับออปติกที่ถูกปฏิเสธจะไม่มีลิงก์หรือลดความเร็วลงการล็อกผู้ผลิต

รายการตรวจสอบการตรวจติดตาม

  • ต่อพอร์ต: เฟรมสั่งหยุดที่ส่ง/รับต่อลำดับความสำคัญ, เครื่องหมาย ECN, การทิ้งข้อมูลต่อคลาส, CRC, FEC ที่แก้ไขได้/แก้ไม่ได้, ลิงก์กระพริบ
  • ต่อ NIC: CNP ที่ส่ง/รับ, การส่งซ้ำ, แพ็กเก็ตผิดลำดับ, การหมดเวลา
  • ต่อออปติก: แนวโน้มกำลัง Rx/Tx และอุณหภูมิ (การตรวจติดตาม)
  • เชื่อมโยงการพุ่งของเวลาแฝงส่วนหางของสตอเรจเข้ากับรายการข้างต้น — เลเยอร์กายภาพเป็นต้นเหตุบ่อยกว่าตัวอาร์เรย์เอง

ใน CodingBox

ฟาบริกที่ไม่สูญเสียข้อมูลสร้างขึ้นจากออปติกทั่วไปที่เพียงแต่ถูกควบคุมด้วยมาตรฐานที่สูงกว่าเท่านั้น การตรวจสอบขาเข้าบนโต๊ะทดสอบ — ข้อมูลระบุตัวตน, เช็กซัม, DDM แบบสดเทียบกับ ค่าทั่วไป, การบันทึกค่าฐาน — คือวิธีกันโมดูลที่ก้ำกึ่งออกจากฟาบริกที่ลิงก์เสียเพียงเส้นเดียวอาจทำให้แอปพลิเคชันเสีย SLA ด้านเวลาแฝง (Check transceiver, DDM)

ตำแหน่งของ PFC และ ECN ท่ามกลางกลไกการฟอร์เวิร์ดอื่น ๆ และวิธีที่ข้อผิดพลาดระดับเลเยอร์กายภาพปรากฏในกลไกเหล่านั้น: พื้นฐานการฟอร์เวิร์ด


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