เครื่องมือที่ใช้ตรวจสอบและแก้ไขปัญหาเครือข่ายที่นิยมใช้มากที่สุดในปัจจุบันคือ Switch Port Analyzer (SPAN) หรือที่รู้จักกันในชื่อ Port mirroring เครื่องมือนี้ช่วยให้เราตรวจสอบปริมาณการรับส่งข้อมูลเครือข่ายในโหมดบายพาสนอกแบนด์โดยไม่รบกวนบริการบนเครือข่ายที่ใช้งานอยู่ และส่งสำเนาของปริมาณการรับส่งข้อมูลที่ตรวจสอบแล้วไปยังอุปกรณ์ภายในหรือระยะไกล รวมถึง Sniffer, IDS หรือเครื่องมือวิเคราะห์เครือข่ายประเภทอื่นๆ
การใช้งานทั่วไปมีดังนี้:
• แก้ไขปัญหาเครือข่ายโดยการติดตามเฟรมควบคุม/ข้อมูล
• วิเคราะห์ความหน่วงและความสั่นไหวโดยการตรวจสอบแพ็กเก็ต VoIP
• วิเคราะห์เวลาแฝงโดยการตรวจสอบการโต้ตอบของเครือข่าย
• ตรวจจับความผิดปกติโดยการตรวจสอบปริมาณการใช้งานเครือข่าย
การสัญจรข้อมูล SPAN สามารถทำมิเรอร์ภายในเครื่องไปยังพอร์ตอื่นๆ บนอุปกรณ์ต้นทางเดียวกัน หรือทำมิเรอร์จากระยะไกลไปยังอุปกรณ์เครือข่ายอื่นๆ ที่อยู่ติดกับเลเยอร์ 2 ของอุปกรณ์ต้นทาง (RSPAN) ได้
วันนี้เราจะมาพูดถึงเทคโนโลยีการตรวจสอบทราฟฟิกอินเทอร์เน็ตระยะไกลที่เรียกว่า ERSPAN (Encapsulated Remote Switch Port Analyzer) ซึ่งสามารถส่งข้อมูลผ่าน IP ได้ถึงสามชั้น ซึ่งเป็นส่วนขยายของ SPAN ต่อยอดจาก Encapsulated Remote
หลักการทำงานพื้นฐานของ ERSPAN
ก่อนอื่นมาดูคุณสมบัติของ ERSPAN กันก่อน:
• สำเนาของแพ็กเก็ตจากพอร์ตต้นทางจะถูกส่งไปยังเซิร์ฟเวอร์ปลายทางเพื่อวิเคราะห์ผ่าน Generic Routing Encapsulation (GRE) ตำแหน่งทางกายภาพของเซิร์ฟเวอร์ไม่ถูกจำกัด
• ด้วยความช่วยเหลือของฟีเจอร์ User Defined Field (UDF) ของชิป การออฟเซ็ตใดๆ ตั้งแต่ 1 ถึง 126 ไบต์จะดำเนินการตามโดเมนฐานผ่านรายการขยายระดับผู้เชี่ยวชาญ และคีย์เวิร์ดเซสชันจะถูกจับคู่เพื่อสร้างการแสดงภาพของเซสชัน เช่น การจับมือสามทางของ TCP และเซสชัน RDMA
• รองรับการตั้งค่าอัตราการสุ่มตัวอย่าง
• รองรับความยาวการสกัดกั้นแพ็กเก็ต (Packet Slicing) ช่วยลดแรงกดดันต่อเซิร์ฟเวอร์เป้าหมาย
ด้วยคุณลักษณะเหล่านี้ คุณจะเห็นว่าเหตุใด ERSPAN จึงเป็นเครื่องมือสำคัญสำหรับการตรวจสอบเครือข่ายภายในศูนย์ข้อมูลในปัจจุบัน
ฟังก์ชันหลักของ ERSPAN สามารถสรุปได้เป็นสองประเด็น:
• การมองเห็นเซสชัน: ใช้ ERSPAN เพื่อรวบรวมเซสชัน TCP ใหม่ทั้งหมดที่สร้างขึ้นและเซสชันการเข้าถึงหน่วยความจำโดยตรงระยะไกล (RDMA) ไปยังเซิร์ฟเวอร์แบ็คเอนด์เพื่อแสดง
• การแก้ไขปัญหาเครือข่าย: บันทึกปริมาณการใช้งานเครือข่ายเพื่อวิเคราะห์ข้อผิดพลาดเมื่อเกิดปัญหาเครือข่าย
ในการดำเนินการนี้ อุปกรณ์เครือข่ายต้นทางจำเป็นต้องกรองทราฟฟิกที่ผู้ใช้สนใจออกจากสตรีมข้อมูลขนาดใหญ่ ทำสำเนา และห่อหุ้มเฟรมสำเนาแต่ละเฟรมไว้ใน "คอนเทนเนอร์ซูเปอร์เฟรม" พิเศษที่มีข้อมูลเพิ่มเติมเพียงพอเพื่อให้สามารถส่งไปยังอุปกรณ์รับได้อย่างถูกต้อง นอกจากนี้ อุปกรณ์รับยังต้องทำให้สามารถดึงและกู้คืนทราฟฟิกที่ตรวจสอบแล้วเดิมได้อย่างสมบูรณ์
อุปกรณ์รับอาจเป็นเซิร์ฟเวอร์อื่นที่รองรับการแยกแคปซูลแพ็คเก็ต ERSPAN
การวิเคราะห์ประเภทและรูปแบบแพ็คเกจของ ERSPAN
แพ็กเก็ต ERSPAN จะถูกห่อหุ้มด้วย GRE และส่งต่อไปยังปลายทางที่ระบุที่อยู่ IP ใดๆ ก็ได้ผ่านทางอีเทอร์เน็ต ปัจจุบัน ERSPAN ใช้งานบนเครือข่าย IPv4 เป็นหลัก และจะรองรับ IPv6 ในอนาคต
สำหรับโครงสร้างการห่อหุ้มทั่วไปของ ERSAPN ต่อไปนี้คือการจับแพ็กเก็ตมิเรอร์ของแพ็กเก็ต ICMP:
นอกจากนี้ ฟิลด์ประเภทโปรโตคอลในส่วนหัว GRE ยังระบุประเภท ERSPAN ภายในอีกด้วย ฟิลด์ประเภทโปรโตคอล 0x88BE หมายถึง ERSPAN ประเภท II และ 0x22EB หมายถึง ERSPAN ประเภท III
1. ประเภทที่ 1
เฟรม ERSPAN ของ Type I จะห่อหุ้ม IP และ GRE ไว้เหนือส่วนหัวของเฟรมมิเรอร์เดิมโดยตรง การห่อหุ้มนี้จะเพิ่มขนาด 38 ไบต์จากเฟรมเดิม: 14 (MAC) + 20 (IP) + 4 (GRE) ข้อดีของฟอร์แมตนี้คือขนาดส่วนหัวที่กะทัดรัดและลดต้นทุนในการส่งข้อมูล อย่างไรก็ตาม เนื่องจากตั้งค่าฟิลด์ GRE Flag และ Version เป็น 0 จึงไม่มีฟิลด์ที่ขยายเพิ่ม และ Type I ยังไม่เป็นที่นิยมใช้ ดังนั้นจึงไม่จำเป็นต้องขยายเพิ่ม
รูปแบบส่วนหัว GRE ประเภท I มีดังนี้:
2. ประเภทที่ 2
ในประเภท II ฟิลด์ C, R, K, S, S, Recur, Flags และ Version ในส่วนหัว GRE จะเป็น 0 ทั้งหมด ยกเว้นฟิลด์ S ดังนั้น ฟิลด์ Sequence Number จะแสดงในส่วนหัว GRE ของประเภท II กล่าวคือ ประเภท II สามารถกำหนดลำดับการรับแพ็กเก็ต GRE ได้ เพื่อไม่ให้แพ็กเก็ต GRE จำนวนมากที่เรียงไม่ตรงลำดับถูกจัดเรียงเนื่องจากความผิดพลาดของเครือข่าย
รูปแบบส่วนหัว GRE ประเภท II มีดังนี้:
นอกจากนี้ รูปแบบเฟรม ERSPAN Type II ยังเพิ่มส่วนหัว ERSPAN ขนาด 8 ไบต์ระหว่างส่วนหัว GRE และเฟรมมิเรอร์เดิมอีกด้วย
รูปแบบส่วนหัว ERSPAN สำหรับประเภท II มีดังนี้:
ในที่สุด ถัดจากเฟรมภาพต้นฉบับทันที คือโค้ดตรวจสอบความซ้ำซ้อนแบบวนซ้ำของอีเทอร์เน็ต 4 ไบต์มาตรฐาน (CRC)
สิ่งที่น่าสังเกตคือในการใช้งานจริง เฟรมมิเรอร์ไม่มีฟิลด์ FCS ของเฟรมเดิม แต่จะมีการคำนวณค่า CRC ใหม่โดยอ้างอิงจาก ERSPAN ทั้งหมด ซึ่งหมายความว่าอุปกรณ์รับไม่สามารถตรวจสอบความถูกต้องของ CRC ของเฟรมเดิมได้ และเราสามารถสันนิษฐานได้ว่ามีเพียงเฟรมที่ไม่เสียหายเท่านั้นที่ทำการมิเรอร์
3. ประเภทที่ 3
Type III นำเสนอส่วนหัวแบบผสมที่มีขนาดใหญ่ขึ้นและยืดหยุ่นมากขึ้น เพื่อรับมือกับสถานการณ์การตรวจสอบเครือข่ายที่ซับซ้อนและหลากหลายมากขึ้น ซึ่งรวมถึงแต่ไม่จำกัดเพียงการจัดการเครือข่าย การตรวจจับการบุกรุก การวิเคราะห์ประสิทธิภาพและความล่าช้า และอื่นๆ ฉากเหล่านี้จำเป็นต้องทราบพารามิเตอร์ดั้งเดิมทั้งหมดของเฟรมมิเรอร์ และรวมถึงพารามิเตอร์ที่ไม่มีอยู่ในเฟรมดั้งเดิมด้วย
ส่วนหัวผสมประเภท III ของ ERSPAN ประกอบด้วยส่วนหัวแบบบังคับขนาด 12 ไบต์และส่วนหัวย่อยเฉพาะแพลตฟอร์มขนาด 8 ไบต์ที่เป็นทางเลือก
รูปแบบส่วนหัว ERSPAN สำหรับประเภท III มีดังนี้:
อีกครั้ง หลังจากเฟรมกระจกเดิมเป็น CRC ขนาด 4 ไบต์
ดังที่เห็นได้จากรูปแบบส่วนหัวของประเภท III นอกเหนือจากการคงฟิลด์ Ver, VLAN, COS, T และ Session ID ไว้ตามประเภท II แล้ว ยังมีการเพิ่มฟิลด์พิเศษต่างๆ มากมาย เช่น:
• BSO: ใช้เพื่อระบุความสมบูรณ์ของการโหลดของเฟรมข้อมูลที่ส่งผ่าน ERSPAN 00 คือเฟรมที่ดี 11 คือเฟรมที่ไม่ดี 01 คือเฟรมสั้น 11 คือเฟรมขนาดใหญ่
• ไทม์สแตมป์: ส่งออกจากนาฬิกาฮาร์ดแวร์ที่ซิงโครไนซ์กับเวลาของระบบ ฟิลด์ 32 บิตนี้รองรับความละเอียดของไทม์สแตมป์อย่างน้อย 100 ไมโครวินาที
• ประเภทเฟรม (P) และประเภทเฟรม (FT): ประเภทเฟรม (FT) ใช้เพื่อระบุว่า ERSPAN จะนำเฟรมโปรโตคอล Ethernet (เฟรม PDU) มาใช้หรือไม่ และประเภทเฟรม (FT) ใช้เพื่อระบุว่า ERSPAN จะนำเฟรม Ethernet หรือแพ็กเก็ต IP มาใช้หรือไม่
• HW ID: ตัวระบุเฉพาะของเครื่องยนต์ ERSPAN ภายในระบบ
• Gra (ความละเอียดของเวลา) : ระบุความละเอียดของเวลา ตัวอย่างเช่น 00B หมายถึงความละเอียด 100 ไมโครวินาที, 01B หมายถึงความละเอียด 100 นาโนวินาที, 10B หมายถึงความละเอียด IEEE 1588 และ 11B ต้องใช้ส่วนหัวย่อยเฉพาะแพลตฟอร์มเพื่อให้ได้ความละเอียดที่สูงขึ้น
• รหัสแพลตฟอร์มเทียบกับข้อมูลเฉพาะแพลตฟอร์ม: ช่องข้อมูลเฉพาะแพลตฟอร์มมีรูปแบบและเนื้อหาที่แตกต่างกันขึ้นอยู่กับค่ารหัสแพลตฟอร์ม
โปรดทราบว่าฟิลด์ส่วนหัวต่างๆ ที่รองรับข้างต้นสามารถนำไปใช้ในแอปพลิเคชัน ERSPAN ทั่วไปได้ แม้กระทั่งการมิเรอร์เฟรมข้อผิดพลาดหรือเฟรม BPDU ในขณะที่ยังคงรักษาแพ็กเกจ Trunk และ VLAN ID เดิมไว้ นอกจากนี้ สามารถเพิ่มข้อมูลประทับเวลาคีย์และฟิลด์ข้อมูลอื่นๆ ลงในแต่ละเฟรมของ ERSPAN ในระหว่างการมิเรอร์ได้
ด้วยฟีเจอร์ส่วนหัวของ ERSPAN เอง เราจึงสามารถวิเคราะห์ปริมาณการรับส่งข้อมูลบนเครือข่ายได้ละเอียดมากขึ้น จากนั้นจึงติดตั้ง ACL ที่สอดคล้องกันในกระบวนการ ERSPAN เพื่อให้ตรงกับปริมาณการรับส่งข้อมูลบนเครือข่ายที่เราสนใจ
ERSPAN นำ RDMA Session Visibility มาใช้
มาดูตัวอย่างการใช้เทคโนโลยี ERSPAN เพื่อสร้างภาพเซสชัน RDMA ในสถานการณ์ RDMA กัน:
อาร์ดีเอ็มเอ:การเข้าถึงหน่วยความจำโดยตรงระยะไกลช่วยให้อะแดปเตอร์เครือข่ายของเซิร์ฟเวอร์ A สามารถอ่านและเขียนหน่วยความจำของเซิร์ฟเวอร์ B ได้โดยใช้การ์ดเชื่อมต่อเครือข่ายอัจฉริยะ (inics) และสวิตช์ ทำให้มีแบนด์วิดท์สูง ความหน่วงต่ำ และการใช้ทรัพยากรต่ำ มีการใช้กันอย่างแพร่หลายในสถานการณ์ข้อมูลขนาดใหญ่และระบบจัดเก็บข้อมูลแบบกระจายประสิทธิภาพสูง
RoCEv2:RDMA ผ่าน Converged Ethernet เวอร์ชัน 2 ข้อมูล RDMA ถูกห่อหุ้มไว้ใน UDP Header หมายเลขพอร์ตปลายทางคือ 4791
การดำเนินงานและการบำรุงรักษาระบบ RDMA ในแต่ละวันจำเป็นต้องรวบรวมข้อมูลจำนวนมาก ซึ่งใช้ในการรวบรวมเส้นอ้างอิงระดับน้ำและสัญญาณเตือนที่ผิดปกติในแต่ละวัน รวมถึงใช้เป็นข้อมูลพื้นฐานสำหรับการระบุตำแหน่งปัญหาที่ผิดปกติ เมื่อใช้ร่วมกับ ERSPAN จะสามารถรวบรวมข้อมูลจำนวนมากได้อย่างรวดเร็วเพื่อให้ได้ข้อมูลคุณภาพการส่งต่อในระดับไมโครวินาทีและสถานะการโต้ตอบของโปรโตคอลของชิปสวิตช์ ด้วยสถิติและการวิเคราะห์ข้อมูล ทำให้สามารถประเมินและคาดการณ์คุณภาพการส่งต่อแบบครบวงจรของ RDMA ได้
เพื่อให้บรรลุการแสดงภาพเซสชัน RDAM เราต้องใช้ ERSPAN เพื่อจับคู่คำสำคัญสำหรับเซสชันการโต้ตอบ RDMA เมื่อทำการมิเรอร์การรับส่งข้อมูล และเราจำเป็นต้องใช้รายการขยายของผู้เชี่ยวชาญ
รายการขยายระดับผู้เชี่ยวชาญที่ตรงกับคำจำกัดความของฟิลด์:
UDF ประกอบด้วยห้าฟิลด์ ได้แก่ คีย์เวิร์ด UDF, ฟิลด์ฐาน, ฟิลด์ออฟเซ็ต, ฟิลด์ค่า และฟิลด์มาสก์ ด้วยข้อจำกัดด้านความจุของรายการฮาร์ดแวร์ จึงสามารถใช้ UDF ได้ทั้งหมดแปดรายการ UDF หนึ่งรายการสามารถจับคู่ได้สูงสุดสองไบต์
• คีย์เวิร์ด UDF: UDF1... UDF8 ประกอบด้วยคีย์เวิร์ดแปดคำจากโดเมนที่ตรงกับ UDF
• ฟิลด์ฐาน: ระบุตำแหน่งเริ่มต้นของฟิลด์ที่ตรงกับ UDF ดังต่อไปนี้
L4_header (ใช้ได้กับ RG-S6520-64CQ)
L5_header (สำหรับ RG-S6510-48VS8Cq)
• ออฟเซ็ต: ระบุค่าออฟเซ็ตตามฟิลด์ฐาน ค่ามีตั้งแต่ 0 ถึง 126
• ฟิลด์ค่า: ค่าที่ตรงกัน สามารถใช้ร่วมกับฟิลด์มาสก์เพื่อกำหนดค่าเฉพาะที่ต้องการจับคู่ บิตที่ถูกต้องคือสองไบต์
• ฟิลด์หน้ากาก: หน้ากาก บิตที่ถูกต้องคือสองไบต์
(เพิ่ม: หากใช้รายการหลายรายการในฟิลด์ที่ตรงกับ UDF เดียวกัน ฟิลด์ฐานและออฟเซ็ตจะต้องเป็นฟิลด์เดียวกัน)
แพ็กเก็ตคีย์สองชุดที่เชื่อมโยงกับสถานะเซสชัน RDMA คือแพ็กเก็ตการแจ้งเตือนความแออัด (CNP) และการรับทราบเชิงลบ (NAK)
ฟังก์ชันแรกถูกสร้างขึ้นโดยตัวรับ RDMA หลังจากได้รับข้อความ ECN ที่ส่งมาจากสวิตช์ (เมื่อบัฟเฟอร์ eout ถึงขีดจำกัด) ซึ่งมีข้อมูลเกี่ยวกับโฟลว์หรือ QP ที่ทำให้เกิดความแออัด ฟังก์ชันหลังนี้ใช้เพื่อระบุว่าการส่งข้อมูล RDMA มีข้อความตอบกลับการสูญหายของแพ็กเก็ต
มาดูวิธีจับคู่ข้อความทั้งสองนี้โดยใช้รายการขยายระดับผู้เชี่ยวชาญกัน:
รายชื่อผู้เชี่ยวชาญที่เข้าถึงได้ขยาย RDMA
อนุญาต udp ใดๆ ใดๆ ใดๆ ใดๆ eq 4791udf 1 l4_header 8 0x8100 0xFF00(ตรงกับ RG-S6520-64CQ)
อนุญาต udp ใดๆ ใดๆ ใดๆ ใดๆ eq 4791udf 1 l5_header 0 0x8100 0xFF00(ตรงกับ RG-S6510-48VS8CQ)
รายชื่อผู้เชี่ยวชาญที่เข้าถึงได้ขยาย RDMA
อนุญาต udp ใดๆ ใดๆ ใดๆ ใดๆ eq 4791udf 1 l4_header 8 0x1100 0xFF00 udf 2 l4_header 20 0x6000 0xFF00(ตรงกับ RG-S6520-64CQ)
อนุญาต udp ใดๆ ใดๆ ใดๆ ใดๆ eq 4791udf 1 l5_header 0 0x1100 0xFF00 udf 2 l5_header 12 0x6000 0xFF00(ตรงกับ RG-S6510-48VS8CQ)
ขั้นตอนสุดท้าย คุณสามารถแสดงภาพเซสชัน RDMA ได้โดยการติดตั้งรายการส่วนขยายของผู้เชี่ยวชาญลงในกระบวนการ ERSPAN ที่เหมาะสม
เขียนในตอนสุดท้าย
ERSPAN เป็นหนึ่งในเครื่องมือที่ขาดไม่ได้ในเครือข่ายศูนย์ข้อมูลขนาดใหญ่ที่เพิ่มขึ้นเรื่อยๆ ในปัจจุบัน ซึ่งมีปริมาณการรับส่งข้อมูลเครือข่ายที่ซับซ้อนมากขึ้นเรื่อยๆ และความต้องการการดำเนินการและการบำรุงรักษาเครือข่ายที่ซับซ้อนมากขึ้นเรื่อยๆ
ด้วยระดับการทำงานอัตโนมัติด้าน O&M ที่เพิ่มมากขึ้น เทคโนโลยีต่างๆ เช่น Netconf, RESTconf และ gRPC จึงได้รับความนิยมในหมู่นักศึกษา O&M ในสาขา O&M อัตโนมัติของเครือข่าย การใช้ gRPC เป็นโปรโตคอลพื้นฐานสำหรับการส่งทราฟฟิกแบบ back mirror ก็มีข้อดีหลายประการเช่นกัน ตัวอย่างเช่น เมื่อใช้โปรโตคอล HTTP/2 สามารถรองรับกลไกการส่งข้อมูลแบบสตรีมมิ่งภายใต้การเชื่อมต่อเดียวกันได้ การเข้ารหัส ProtoBuf ช่วยลดขนาดของข้อมูลลงครึ่งหนึ่งเมื่อเทียบกับรูปแบบ JSON ทำให้การส่งข้อมูลรวดเร็วและมีประสิทธิภาพมากขึ้น ลองนึกภาพว่า หากคุณใช้ ERSPAN เพื่อมิเรอร์สตรีมที่สนใจ แล้วส่งไปยังเซิร์ฟเวอร์วิเคราะห์บน gRPC จะช่วยปรับปรุงความสามารถและประสิทธิภาพของการทำงานและการบำรุงรักษาเครือข่ายอัตโนมัติได้อย่างมากหรือไม่
เวลาโพสต์: 10 พฤษภาคม 2565