1. ทำไมต้อง VXLAN?

IEEE 802.1Q VLAN ถูกจำกัดไว้ที่ 4,094 ID ต่อโดเมนการออกอากาศ ซึ่งเป็นข้อจำกัดอย่างหนักในศูนย์ข้อมูลที่มีผู้เช่าหลายราย โดยที่กลุ่มลูกค้าหลายพันกลุ่มต้องอยู่ร่วมกันบนโครงสร้างพื้นฐานที่ใช้ร่วมกัน VXLAN (LAN แบบขยายได้เสมือน,อาร์เอฟซี 7348) แก้ปัญหานี้โดยการห่อหุ้มเฟรมอีเทอร์เน็ตภายใน UDP/IP โดยใช้ VNI 24 บิต (VXLAN Network Identifier) ​​เพื่อรองรับส่วนลอจิคัลได้มากถึง 16.7 ล้านส่วน

VXLAN แยกโทโพโลยีเลเยอร์ 2 เสมือนออกจากเลเยอร์ 3 ทางกายภาพที่อยู่ด้านล่าง ช่วยให้กำหนดเส้นทาง IP มาตรฐาน (ECMP, OSPF, BGP) ระหว่าง VXLAN Tunnel Endpoints (VTEP) โดยไม่ต้องขยาย VLAN ส่วนหัว UDP ภายนอกใช้พอร์ตปลายทาง4789(กำหนดโดย IANA; การใช้งานช่วงแรกๆ ใช้ 8472) ค่าใช้จ่ายในการห่อหุ้มทั้งหมดคือ ~50 ไบต์บน IPv4, ~70 ไบต์บน IPv6

กองการห่อหุ้ม (RFC 7348):อีเธอร์เน็ตภายนอก (14 B) + ส่วนหัว IPv4 ภายนอก (20 B) + ส่วนหัว UDP ภายนอก (8 B, พอร์ต dst 4789) + ส่วนหัว VXLAN (8 B, รวม VNI 24 บิตในบิต 32–55) + เฟรมอีเธอร์เน็ตภายในดั้งเดิม

2. วิธีการค้นพบ VTEP

VTEP ต้องค้นหาเพียร์ VTEP เพื่อตั้งค่าทันเนลและกระจายการรับส่งข้อมูล BUM (Broadcast, Unknown unicast, Multicast) มีการนำกลไก 3 ประการไปใช้ในทางปฏิบัติ:

วิธีมันทำงานอย่างไรข้อดีข้อเสีย
มัลติคาสต์แต่ละ VNI จะแมปกับกลุ่มมัลติคาสต์ PIM ในอันเดอร์เลย์ การรับส่งข้อมูล BUM ล้นไปยังกลุ่มนั้นเรียบง่าย; การค้นพบเพื่อนโดยอัตโนมัติต้องใช้มัลติคาสต์ PIM ในอันเดอร์เลย์ ตัวดำเนินการหลายรายปิดใช้งานมัลติคาสต์
การจำลองแบบทางเข้าVTEP แต่ละตัวจะรักษารายการ unicast ที่ชัดเจนของ VTEP ระยะไกลต่อ VNI; การรับส่งข้อมูล BUM จะถูกจำลองไปยังแต่ละเพียร์ไม่จำเป็นต้องใช้มัลติคาสต์Head-end ทำการจำลองแบบ O (N) ต่อแพ็กเก็ต BUM รายการเพียร์แบบคงที่จำเป็นต้องมีการบำรุงรักษาด้วยตนเอง
บีจีพี อีวีพีเอ็นเส้นทาง RT-3 IMET โฆษณาการเป็นสมาชิก VTEP เส้นทาง RT-2 กระจายการเชื่อมโยง MAC+IP ไม่มีน้ำท่วมและเรียนรู้การเรียนรู้ MAC ของระนาบควบคุม การปราบปราม ARP; ปรับขนาดเป็น VTEP นับพัน; มาตรฐานต้องใช้สแต็ก BGP บน VTEP หรือตัวสะท้อนเส้นทางทั้งหมด

ศูนย์ข้อมูล Greenfield สมัยใหม่ใช้ BGP EVPN เพียงอย่างเดียว Multicast และ Ingress-replication เป็นวิธีดั้งเดิมที่ยังคงพบได้ในสภาพแวดล้อมของ Brownfield

3. ประเภทเส้นทาง BGP EVPN

BGP EVPN (อาร์เอฟซี 7432) ใช้ AFI 25 (L2VPN) / SAFI 70 (EVPN) เพื่อกระจายเส้นทางห้าประเภท RT-5 ถูกกำหนดไว้แยกกันในอาร์เอฟซี 9136(ตุลาคม 2564).

RTชื่อวัตถุประสงค์ฟิลด์ NLRI ที่สำคัญ
1อีเธอร์เน็ตการค้นพบอัตโนมัติPer-ES และ per-EVI ถอนมวลเมื่อลิงก์ล้มเหลว นามแฝงสำหรับการทำโหลดบาลานซ์แบบ multi-homing ที่แอ็คทีฟทั้งหมดRD, ESI, รหัสแท็กอีเธอร์เน็ต, ฉลาก MPLS
2โฆษณา MAC/IPกระจายที่อยู่ MAC (และ IP ที่เป็นทางเลือก) เพื่อเปิดใช้งานการปราบปราม ARP และกำจัดน้ำท่วมและการเรียนรู้RD, ESI, แท็ก VLAN, ที่อยู่ MAC, ที่อยู่ IP (อุปกรณ์เสริม), ป้ายกำกับ L2VNI + L3VNI
3แท็ก Multicast Ethernet แบบรวม (IMET)โฆษณาความสามารถในการเข้าถึง VTEP ต่อ VNI ใช้เพื่อสร้างรายการการจำลองข้อมูลขาเข้าและทริกเกอร์การส่งต่อ BUMRD, รหัสแท็กอีเทอร์เน็ต, IP ของเราเตอร์ต้นทาง (ที่อยู่ VTEP); คุณลักษณะ PMSI Tunnel มี VNI และประเภทช่องสัญญาณ
4เส้นทางส่วนอีเธอร์เน็ตการเลือกผู้จัดส่งที่กำหนด (DF) ในกลุ่ม PE ที่ใช้เซ็กเมนต์อีเทอร์เน็ตร่วมกัน รับประกันว่ามี PE เพียงตัวเดียวเท่านั้นที่ส่งต่อ BUM ไปยังกลุ่ม CERD, ESI, IP เราเตอร์ต้นทาง
5เส้นทางคำนำหน้า IP(อาร์เอฟซี 9136)โฆษณาคำนำหน้า IP ลงในโอเวอร์เลย์ EVPN สำหรับการกำหนดเส้นทางระหว่างซับเน็ต ต้องใช้ L3VNI เฉพาะ (การขนส่ง VNI)RD, รหัสแท็กอีเทอร์เน็ต, ความยาวคำนำหน้า IP, คำนำหน้า IP, ที่อยู่ IP GW, ป้ายกำกับ L3VNI
ข้อผิดพลาดทั่วไปของเอกสาร:คู่มือผู้จำหน่ายหลายรายอ้างอิง RFC 7432 สำหรับเส้นทางทั้งห้าประเภท RT-5 (คำนำหน้า IP) ไม่ได้อยู่ใน RFC 7432 ดั้งเดิม - ถูกเพิ่มใน RFC 9136 (ตุลาคม 2021) หากซอฟต์แวร์อุปกรณ์ของคุณเกิดขึ้นก่อนการเผยแพร่นั้น ลักษณะการทำงานของ RT-5 อาจแตกต่างจาก RFC สุดท้าย

4. IRB แบบสมมาตรเทียบกับแบบอสมมาตร

Integrated Routing and Bridging (IRB) อธิบายว่า VTEP กำหนดเส้นทางการรับส่งข้อมูลระหว่างเครือข่ายย่อยที่ซ้อนทับกันอย่างไร มีการกำหนดไว้ 2 รุ่นด้วยกันอาร์เอฟซี 9135:

IRB แบบอสมมาตร:VTEP ทางเข้าดำเนินการกำหนดเส้นทาง L3 (การลด TTL, การเขียนซ้ำครั้งถัดไป) ลงในปลายทางL2VNI ก่อนทำการห่อหุ้มและส่ง VTEP ทางออกเท่านั้นที่เชื่อมต่อ — โดยจะเห็นกรอบด้านในจ่าหน้าถึง MAC สุดท้ายแล้ว VTEP ทุกตัวต้องมีโปรแกรม VNI (ซับเน็ต) ทุกตัวในเครื่อง แม้แต่รายการที่ไม่มีโฮสต์ในเครื่องก็ตาม ซึ่งจำกัดขนาด

สมมาตร IRB:VTEP ทางเข้าเส้นทางจากต้นทาง L2VNI ไปยังที่ใช้ร่วมกันL3VNI(ขนส่ง VNI หนึ่งรายการต่อ VRF) เส้นทางขาออก VTEP จะออกจาก L3VNI ไปยังปลายทางท้องถิ่น L2VNI จุดสิ้นสุดทั้งสองดำเนินการกำหนดเส้นทาง VTEP แต่ละตัวต้องการเพียง L2VNI ภายในของตัวเองเท่านั้น L3VNI เดี่ยวเป็นแบบสากล นี่คือรุ่นที่แนะนำสำหรับผ้าขนาดใหญ่

IRB แบบอสมมาตรIRB แบบสมมาตร
L2VNI ที่จำเป็นต่อ VTEPVNI ทั้งหมดในแฟบริคเฉพาะเครือข่ายย่อยที่แนบในเครื่องเท่านั้น
L3VNI (เปลี่ยนเครื่อง VNI)ไม่จำเป็นจำเป็น — หนึ่งรายการต่อ VRF
การกำหนดเส้นทางกระโดดทางเข้า VTEP เท่านั้นVTEP ทางเข้าและทางออก
มาตราส่วนแย่ (VNI ทั้งหมดทุกที่)ดี (ซับเน็ตท้องถิ่นเท่านั้น)
คำนำหน้า RT-5ไม่รองรับรองรับ (ใช้ L3VNI)

5. การปราบปราม ARP

หากไม่มี EVPN คำขอ ARP จากโฮสต์จะออกอากาศไปยัง VNI และกระจายไปยัง VTEP ทุกตัวในแฟบริค ด้วย BGP EVPN เส้นทาง RT-2 จะกระจายการเชื่อมโยง MAC+IP ไปยัง VTEP ทั้งหมดทันทีที่เรียนรู้โฮสต์ เมื่อ ARP โฮสต์สำหรับ IP ระยะไกล VTEP ภายในจะตอบโดยตรงจากตารางที่เติม BGP — ไม่มีแพ็กเก็ต ARP ข้ามแฟบริค VXLAN วิธีนี้จะช่วยลด BUM ฟลัดสำหรับโฮสต์ที่รู้จัก และมีผลกระทบอย่างยิ่งในแฟบริคที่มี VM นับพันต่อ VTEP

การปราบปราม ND (Neighbor Discovery) ทำงานเหมือนกันสำหรับ IPv6 — เส้นทาง RT-2 มีที่อยู่ IPv6 ในช่อง IP ของ NLRI และ VTEP จะตอบข้อความ NS ในเครื่อง

6. มัลติโฮมและ ESI

Ethernet Segment Identifier (ESI) คือตัวระบุขนาด 10 ไบต์ที่กำหนดให้กับบันเดิลแบบลอจิคัลที่เชื่อมต่ออุปกรณ์ CE กับ PE VTEP หลายตัว มีโหมดการส่งต่อสองโหมด:

  • ใช้งานครั้งเดียว: PE ส่งต่อครั้งละหนึ่งคน การเลือก DF (โดยใช้เส้นทาง RT-4) จะเลือก Designated Forwarder สำหรับแท็ก Ethernet แต่ละรายการ PE ที่ไม่ใช่ DF บล็อกการส่งต่อ BUM ไปยังเซ็กเมนต์ แต่ยังคงสามารถรับแบบผู้รับเดียวได้
  • ใช้งานอยู่ทั้งหมด: PE ทั้งหมดไปข้างหน้าพร้อมกัน เปิดใช้งาน ECMP ทั่วทั้งบันเดิล (เช่น ช่องพอร์ตที่มีขาระยะไกล) เส้นทาง "นามแฝง" ของ RT-1 ช่วยให้ VTEP ระยะไกลสามารถปรับสมดุลการรับส่งข้อมูลไปยัง ESI ทั่วทั้ง PE ที่เชื่อมต่ออยู่ทั้งหมด ความคล่องตัวของ MAC ได้รับการจัดการผ่านชุมชนขยายของ MAC Mobility ใน RT-2

7. ข้อมูลอ้างอิงด่วนของ CLI ของผู้ขาย

งานซิสโก้ NX-OSอาริสต้า EOSจูนิเปอร์ จูโนส
แสดงเส้นทาง EVPNshow bgp l2vpn evpnshow bgp evpnshow route table bgp.evpn.0
แสดงเพื่อน VTEPshow nve peersshow vxlan vtepshow evpn instance
แสดง MAC ที่ซ้อนทับshow mac address-tableshow vxlan address-tableshow evpn mac-ip-table
แสดงแคชปราบปราม ARPshow ip arp suppression-cache detailshow vxlan address-table detailshow evpn mac-ip-table extensive
แสดงการแมป VNI-to-VRFshow nve vnishow vxlan vnishow evpn instance extensive
แสดง ESI มัลติโฮมshow nve ethernet-segmentshow bgp evpn instanceshow evpn instance extensive

อ้างอิง

  • อาร์เอฟซี 7348- VXLAN: กรอบงานสำหรับการซ้อนทับเครือข่ายเลเยอร์ 2 เสมือนบนเครือข่ายเลเยอร์ 3 (2014)
  • อาร์เอฟซี 7432— VPN อีเธอร์เน็ตที่ใช้ BGP MPLS (BGP EVPN) (2015)
  • อาร์เอฟซี 8365— โซลูชันการซ้อนทับการจำลองเสมือนเครือข่ายโดยใช้ Ethernet VPN (EVPN) (2018)
  • อาร์เอฟซี 9135— การกำหนดเส้นทางและการเชื่อมโยงแบบรวมใน Ethernet VPN (EVPN) (2021)
  • อาร์เอฟซี 9136— โฆษณาคำนำหน้า IP ใน Ethernet VPN (EVPN) (2021)
  • คณะทำงาน IETF BESS— บริการที่เปิดใช้งาน BGP (แบบร่าง EVPN ที่ใช้งานอยู่)