จากบทความก่อนหน้า เรารู้จัก VLAN และ VXLAN กันไปแล้ว VXLAN ช่วยให้เราสร้าง Layer 2 Network ขนาดใหญ่บน Layer 3 Infrastructure และขยายจากข้อจำกัดประมาณ 4,094 VLAN ไปเป็นประมาณ 16 ล้าน VXLAN Network Segments ฟังดูยอดเยี่ยมใช่ไหมครับ?
แต่มีคำถามสำคัญข้อหนึ่ง…ถ้า Data Center มี Server เป็นหมื่นเครื่อง แล้ว VXLAN รู้ได้อย่างไรว่า Server ที่ต้องการอยู่หลัง Switch ตัวไหน? จะ Broadcast ถามทุกคนว่า “มีใครเห็น Server 10.10.10.25 ไหมครับ?”
ก็คงไม่ต่างจากประกาศตามหาคนในห้างผ่านลำโพงทุกครั้งที่ต้องการคุยกัน 😄 นี่คือเหตุผลที่เราต้องรู้จักกับพระเอกของบทความนี้
EVPN
ก่อนอื่น… VXLAN เก่งเรื่องอะไร?
VXLAN — Virtual Extensible LAN มีหน้าที่สำคัญในการสร้าง Overlay Network มันสามารถนำ Ethernet Frame จากต้นทางมา Encapsulate ใส่ VXLAN Header แล้วส่งผ่าน IP Network ไปยัง VTEP (VXLAN Tunnel Endpoint) ที่ปลายทาง พูดง่ายๆ คือ VXLAN เก่งเรื่อง “ขนส่ง” มันรู้วิธีแพ็กของ รู้วิธีส่ง และรู้วิธีแกะกล่องเมื่อถึงปลายทาง แต่มีปัญหาอยู่เรื่องหนึ่ง…แล้วจะส่งไป VTEP ตัวไหน? สมมติ Data Center มี
- 100 Switches
- 5,000 Servers
- 20,000 Virtual Machines
- หลายพัน MAC Addresses
- หลายร้อยหรือหลายพัน VNIs
เมื่อ VM-A ต้องการคุยกับ VM-B
Network ต้องรู้ว่า VM-B อยู่ที่ไหน?
MAC Address อะไร?
IP Address อะไร?
อยู่ใน VNI ไหน?
และที่สำคัญ… อยู่หลัง VTEP ตัวไหน? VXLAN จึงต้องมีระบบช่วยบอกตำแหน่ง ระบบนั้นก็คือ EVPN
EVPN
EVPN คืออะไร?
EVPN ย่อมาจาก Ethernet VPN
EVPN คือ Control Plane Technology ที่ใช้ในการแลกเปลี่ยนข้อมูลเกี่ยวกับ Endpoint ต่างๆ ใน Network โดย EVPN นิยมใช้ BGP — Border Gateway Protocol ในการประกาศข้อมูลระหว่าง Network Devices หลายคนได้ยินคำว่า BGP แล้วอาจคิดว่า
“เดี๋ยวนะ… BGP ไม่ใช่ Protocol ที่ใช้บน Internet เหรอ?”
ถูกต้องครับ
แต่ BGP ไม่ได้เก่งแค่การบอกว่า IP Network ไหนอยู่ทางไหน เมื่อใช้กับ EVPN มันสามารถแลกเปลี่ยนข้อมูลเกี่ยวกับ MAC Address + IP Address + VNI + VTEP ได้ด้วย
นี่จึงเป็นที่มาของคำที่เราเห็นบ่อยมากใน Modern Data Center
BGP EVPN-VXLAN
ถ้า VXLAN คือ Grab แล้ว EVPN คือ Google Maps
ลองเปรียบเทียบแบบง่ายๆ สมมติว่า VXLAN = รถส่งของ รถสามารถวิ่งจาก Data Center A ไป Data Center B ได้ถนนทั้งหมดคือ Underlay IP Network แต่รถจะไปส่งของได้อย่างไร ถ้าไม่รู้ว่าผู้รับอยู่ที่ไหน? EVPN จึงทำหน้าที่คล้าย Google Maps + Address Book คอยบอกว่า “Server เครื่องนี้อยู่ตรงนั้นครับ ไปหา VTEP ตัวนี้ได้เลย” ดังนั้น
VXLAN = ขนส่ง Traffic
EVPN = บอกตำแหน่ง Endpoint
ทำงานร่วมกันแล้วจึงกลายเป็น Architecture ที่เรียกว่า EVPN-VXLAN
มาดูตัวอย่างจริงแบบง่ายๆ
สมมติเรามี Data Center Network ดังนี้
Server A
IP: 10.10.10.10
MAC: AA:AA:AA:AA:AA:AA
ต่ออยู่กับ VTEP-1
อีกฝั่งหนึ่งมี
Server B
IP: 10.10.10.20
MAC: BB:BB:BB:BB:BB:BB
ต่ออยู่กับ VTEP-2
ทั้งสอง Server อยู่ใน VNI 10010
เมื่อ Server B เชื่อมต่อเข้ากับ Network
VTEP-2 จะเรียนรู้ว่า
MAC BB:BB:BB:BB:BB:BB
IP 10.10.10.20
VNI 10010
อยู่ที่ VTEP-2
จากนั้น EVPN สามารถใช้ BGP ประกาศข้อมูลนี้ไปยัง VTEP อื่นๆ
VTEP-1 จึงรู้ว่า
ถ้าต้องการหา Server B → ส่ง Traffic ไป VTEP-2 ไม่จำเป็นต้องถาม Switch ทุกตัวใน Data Center
ถ้าไม่มี EVPN จะเกิดอะไรขึ้น?
VXLAN ในรูปแบบดั้งเดิมสามารถใช้วิธีที่เรียกว่า Flood and Learn
แนวคิดคือ…
ถ้าไม่รู้ว่า MAC Address อยู่ไหน ก็ส่ง Traffic ออกไปถามหลายๆ จุด ใครมี Destination นั้นก็ตอบกลับมา Network จึงเรียนรู้ตำแหน่งจาก Traffic ที่วิ่งจริง สำหรับ Network ขนาดเล็กอาจใช้งานได้
แต่ลองคิดถึง Data Center ที่มี VM หลายหมื่นตัว ถ้าทุกคนไม่รู้แล้วถามว่า…
“ใครมี MAC นี้?”
“ใครมี IP นี้?”
“เครื่องนี้อยู่ไหน?”
Network ก็คงเหมือน Group LINE บริษัทตอนมีคนพิมพ์ว่า “สายชาร์จบนโต๊ะประชุมของใครครับ?” แล้วทุกคนได้รับ Notification หมด 😅
มันทำงานได้…แต่ไม่ใช่วิธีที่อยาก Scale ไปถึงระดับ Data Center ขนาดใหญ่
EVPN เปลี่ยนจาก “ถามหา” เป็น “ประกาศให้รู้”
นี่คือแนวคิดสำคัญมาก แทนที่ Network จะรอจนมี Traffic แล้วค่อยเรียนรู้ EVPN ใช้ Control Plane ในการแจกจ่ายข้อมูล เมื่อ Endpoint ปรากฏขึ้น VTEP สามารถประกาศข้อมูล Endpoint ผ่าน BGP EVPN
VTEP อื่นๆ จึงเรียนรู้ว่า Endpoint ไหนอยู่ที่ไหน ก่อนที่จะต้อง Flood Traffic ไปทั่ว Network นี่คือสิ่งที่เรียกว่า Control Plane Learning แทนที่จะพึ่งเพียง Data Plane Learning
แล้ว BGP EVPN ประกาศอะไรบ้าง?
EVPN มี Route Types หลายประเภทสำหรับหน้าที่ต่างกัน ถ้าเพิ่งเริ่มศึกษา ไม่จำเป็นต้องจำทั้งหมดครับ แต่มีตัวหนึ่งที่สำคัญมากและควรรู้จักคือ EVPN Route Type 2 — MAC/IP Advertisement Route
Route Type 2 ใช้ประกาศข้อมูลเกี่ยวกับ MAC Address และ IP Address ของ Endpoint
ตัวอย่างแนวคิดเช่น
MAC: BB:BB:BB:BB:BB:BB
IP: 10.10.10.20
VNI: 10010
Next Hop: VTEP-2
เมื่อ VTEP-1 ได้รับข้อมูลนี้ผ่าน BGP มันก็รู้ทันทีว่า “อ๋อ… ถ้าจะหา 10.10.10.20 ต้องส่ง VXLAN Tunnel ไป VTEP-2” ไม่ต้อง Broadcast ตามหาอีก
EVPN Route Type อื่นมีอะไรอีก?
ถ้าต้องการลง Technical ลึกขึ้น EVPN มี Route Types สำคัญหลายประเภท เช่น
Route Type 1 — Ethernet Auto-Discovery: ใช้เกี่ยวกับ Ethernet Segment และ Multihoming
Route Type 2 — MAC/IP Advertisement: ประกาศ MAC และ IP ของ Endpoint
Route Type 3 — Inclusive Multicast Ethernet Tag: ใช้ช่วยจัดการ BUM Traffic
Route Type 5 — IP Prefix Route: ใช้ประกาศ IP Prefix และมีประโยชน์อย่างมากสำหรับ Layer 3 Services
แต่สำหรับคนที่เพิ่งเริ่ม EVPN จำ Type 2 ก่อนก็เพียงพอครับ เพราะมันตอบคำถามหลักของบทความนี้ว่า
“Server อยู่ไหน?”
แล้ว BUM Traffic คืออะไร?
อีกคำหนึ่งที่มักเจอใน VXLAN คือ BUM ไม่ได้เกี่ยวอะไรกับก้นนะครับ 😄
BUM ย่อมาจาก Broadcast Unknown Unicast Multicast
Traffic กลุ่มนี้เป็นสิ่งที่ Network ต้องจัดการอย่างระมัดระวัง เพราะอาจต้องส่งไปยังหลายปลายทาง ยิ่ง Network ใหญ่ การ Flood Traffic โดยไม่จำเป็นก็ยิ่งสร้างภาระ EVPN จึงมีบทบาทสำคัญในการช่วยลด Flooding และทำให้ Network รู้จัก Endpoint ผ่าน Control Plane มากขึ้น
EVPN ช่วยเรื่อง ARP ได้ด้วยหรือ?
ได้ครับ และนี่เป็นอีกจุดที่น่าสนใจมาก ใน Network ปกติ ถ้า Server A ต้องการทราบ MAC Address ของ IP Address หนึ่ง มันอาจส่ง ARP Request ออกไปแบบ Broadcast เช่น “ใครคือ 10.10.10.20 ช่วยบอก MAC Address หน่อยครับ” แต่ถ้า VTEP เรียนรู้ MAC-IP Binding ผ่าน EVPN อยู่แล้ว มันสามารถช่วยตอบ ARP Request แทน Remote Endpoint ได้ในบาง Design แนวคิดนี้เรียกว่า ARP Suppression
ผลคือช่วยลด Broadcast Traffic ใน VXLAN Fabric แทนที่จะตะโกนถามทั้งหมู่บ้านว่า “บ้านคุณสมชายอยู่ไหนครับ?” รปภ.หน้าหมู่บ้านตอบให้เลยว่า “ซอย 3 หลังที่สองครับ ไม่ต้องประกาศเสียงตามสาย” 😄
นี่คืออีกเหตุผลที่ EVPN-VXLAN Scale ได้ดีกว่า Network ที่พึ่ง Flood-and-Learn อย่างเดียว
EVPN-VXLAN กับ Leaf-Spine Architecture
EVPN-VXLAN มักถูกใช้งานร่วมกับ Data Center Architecture ที่เรียกว่า Leaf-Spine โครงสร้างทั่วไปจะเป็นประมาณนี้
Servers / Storage / Hypervisors
↓
Leaf Switches
↓
Spine Switches
↓
Leaf Switches
↓
Servers / Storage / Hypervisors
Leaf Switch มักทำหน้าที่เป็น VTEP ส่วน Underlay Network ระหว่าง Leaf และ Spine ใช้ IP Routing เช่น BGP หรือ OSPF/IS-IS จากนั้นด้านบนจึงสร้าง VXLAN Overlay และใช้ BGP EVPN เป็น Control Plane
Underlay และ Overlay ทำงานร่วมกันอย่างไร?
ตรงนี้สำคัญมากครับ ลองแบ่ง Network ออกเป็นสองชั้น
ชั้นที่ 1 — Underlay
หน้าที่คือ ทำให้ VTEP ทุกตัว IP Reachability ถึงกัน
ไม่สนใจว่า VM เป็นใคร
ไม่สนใจว่า Tenant ไหน
ไม่สนใจว่า VLAN ไหน
หน้าที่คือ “ขอให้ IP ไปถึงกันได้ก็พอ”
ชั้นที่ 2 — Overlay
VXLAN สร้าง Virtual Network อยู่ด้านบน แต่ละ Tenant หรือ Network Segment สามารถแยกกันด้วย VNI ส่วน EVPN ช่วยแจกจ่ายข้อมูลว่า Endpoint ของแต่ละ VNI อยู่ตรงไหน ดังนั้น
Underlay = ถนน
VXLAN = รถขนส่ง
VNI = หมายเลขเส้นทาง/กลุ่ม Network
VTEP = ศูนย์รับ-ส่งพัสดุ
EVPN = ระบบข้อมูลตำแหน่ง
BGP = ระบบแลกเปลี่ยนข้อมูลระหว่างศูนย์
พอเห็นภาพขึ้นเยอะเลยใช่ไหมครับ 😄
แล้วถ้า Server หรือ VM ย้ายที่ล่ะ?
นี่คือจุดที่ EVPN มีประโยชน์มากใน Virtualized Data Center สมมติ VM เดิมอยู่ที่ Leaf-1 / VTEP-1 จากนั้นเกิด VM Migration ไปยัง Leaf-5 / VTEP-5 Network ต้องปรับข้อมูลให้รู้ว่า MAC/IP เดิมไม่ได้อยู่ VTEP-1 แล้ว แต่ย้ายมาอยู่ VTEP-5
EVPN สามารถช่วยเผยแพร่ข้อมูลตำแหน่งใหม่ผ่าน Control Plane ทำให้ Network สามารถปรับตัวตามตำแหน่งของ Workload ได้ เหมือนย้ายบ้านแล้ว Update Address ในระบบ ดีกว่าย้ายบ้านแล้วไม่บอกใคร…เพราะพัสดุจะยังไปบ้านเก่าอยู่ครับ 😄
ทำไม Modern Data Center ถึงนิยม EVPN-VXLAN?
เหตุผลไม่ได้มีเพียงเรื่องจำนวน VLAN
EVPN-VXLAN ช่วยให้ Network Architecture มีคุณสมบัติที่เหมาะกับ Modern Data Center หลายอย่าง เช่น
1. Scalability: VXLAN มี VNI ขนาด 24 bits รองรับ Network Segmentation ได้ประมาณ 16 ล้าน Segments
2. Multi-Tenancy: สามารถแยก Network ของ Tenant หรือ Application จำนวนมากได้อย่างมีประสิทธิภาพ
3. ลดการพึ่งพา Flooding: EVPN ใช้ Control Plane ในการแจกจ่าย MAC/IP Reachability
4. รองรับ Layer 2 และ Layer 3 Services: สามารถออกแบบทั้ง Bridging และ Routing Services บน Fabric เดียวกัน
5. รองรับ Workload Mobility: เหมาะกับ Virtual Machine และ Cloud Environment ที่ Workload สามารถย้ายตำแหน่งได้
6. ใช้ IP Fabric เป็นพื้นฐาน: Underlay เป็นมาตรฐาน IP Routing ซึ่งสามารถออกแบบให้ Scale และมีหลายเส้นทางได้ดี
VLAN, VXLAN และ EVPN ต่างกันอย่างไร?
จำแบบง่ายที่สุดดังนี้ครับ
|
Technology |
หน้าที่ |
|
VLAN |
แบ่ง Layer 2 Network |
|
VXLAN |
สร้าง Layer 2 Overlay บน Layer 3 |
|
VNI |
Identifier ของ VXLAN Segment |
|
VTEP |
Encapsulate / Decapsulate VXLAN |
|
EVPN |
แจกจ่ายข้อมูล Endpoint |
|
BGP |
Protocol ที่ EVPN ใช้แลกเปลี่ยนข้อมูล |
|
Underlay |
IP Network ด้านล่าง |
|
Overlay |
Virtual Network ที่สร้างอยู่ด้านบน |
ถ้าจะจำเป็นประโยคเดียว VXLAN บอกว่า “ส่งอย่างไร” ส่วน EVPN ช่วยบอกว่า “ส่งไปไหน”
EVPN ไม่ได้มาแทน VXLAN
เรื่องนี้เป็นความเข้าใจผิดที่เจอบ่อย EVPN และ VXLAN ไม่ได้แข่งขันกัน แต่ทำหน้าที่คนละอย่างและเสริมกัน
VXLAN = Data Plane / Encapsulation
EVPN = Control Plane
จึงมักเรียกรวมกันว่า EVPN-VXLAN หรือถ้าจะเปรียบเทียบอีกแบบ มีรถส่งของอย่างเดียว แต่ไม่มี Address Database ก็ลำบาก มี Address Database แต่ไม่มีรถส่งของ…ก็รู้ว่าบ้านอยู่ไหน แต่ของก็ยังอยู่ที่โกดังครับ 😄
Enterprise จำเป็นต้องใช้ EVPN-VXLAN หรือไม่?
คำตอบเหมือนกับ VXLAN คือ ไม่จำเป็นสำหรับทุกองค์กร
ถ้า Network มีขนาดไม่ใหญ่ มี VLAN ไม่มาก และไม่มี Requirement ด้าน Data Center Fabric หรือ Multi-Tenancy ที่ซับซ้อน Traditional VLAN และ Layer 3 Routing อาจเพียงพอและดูแลง่ายกว่า แต่สำหรับ
- Large Enterprise Data Center
- Private Cloud
- Multi-Tenant Cloud
- AI / GPU Infrastructure
- Large Virtualization Environment
- Data Center Fabric
EVPN-VXLAN เป็น Architecture ที่ควรพิจารณาอย่างมาก เพราะการออกแบบ Network ไม่ควรถามเพียงว่า “วันนี้ใช้ได้ไหม?” แต่ควรถามต่อว่า “ถ้าอีก 3 ปี Workload เพิ่มขึ้น 10 เท่า Architecture นี้ยังไปต่อได้ไหม?”
สรุป: ทำไม VXLAN ถึงรู้ว่า Server อยู่ไหน?
คำตอบคือ…
VXLAN ไม่ได้รู้ทุกอย่างด้วยตัวเองครับ
ใน Modern Data Center เราสามารถใช้ BGP EVPN เป็น Control Plane เพื่อช่วยแลกเปลี่ยนข้อมูลเกี่ยวกับ Endpoint เช่น MAC Address, IP Address, VNI, VTEP เมื่อ VTEP ต่างๆ แลกเปลี่ยนข้อมูลผ่าน EVPN
Network จึงสามารถรู้ได้ว่า “Server หรือ VM เครื่องนี้ อยู่หลัง VTEP ไหน” แล้ว VXLAN จึงทำหน้าที่ Encapsulate Traffic และส่งไปยัง VTEP ปลายทางผ่าน Underlay IP Network ดังนั้นจำง่ายๆ ว่า
EVPN = รู้ว่าอยู่ไหน
VXLAN = รู้ว่าจะขนไปอย่างไร
Underlay = ทำให้ไปถึง
สามอย่างทำงานร่วมกันจึงกลายเป็นพื้นฐานสำคัญของ Modern Data Center Network
Network ที่ Scale ได้ ต้องเริ่มจาก Architecture ที่ถูกต้อง
การสร้าง Data Center หรือ Private Cloud ไม่ได้จบแค่เลือก Switch ที่มี Port 100G หรือ 400G ความเร็วเป็นเพียงส่วนหนึ่งของระบบ
สิ่งที่สำคัญไม่แพ้กันคือ การออกแบบ Underlay Routing, Overlay Network, Redundancy, Segmentation, Security และ Control Plane เพราะ Switch ที่เร็วมาก… ถ้า Architecture ออกแบบผิด ก็เหมือนสร้างทางด่วน 10 เลน แล้วทุกเลนไปจบที่ซอยตันครับ 😄
KIRZ มีประสบการณ์ด้าน Enterprise Network, Fiber Optic Infrastructure, Data Center Connectivity และ Private Cloud Infrastructure พร้อมทีม Network Operation Center ดูแลระบบตลอด 24/7
ตั้งแต่การเชื่อมต่อระดับ Enterprise ไปจนถึง Infrastructure สำหรับ Data Center และ Cloud ที่ต้องการ High Availability และ Scalability
KIRZ — fiber cloud.
สอบถามข้อมูลเพิ่มเติม
โทร. 02 770 9770
อีเมล info@kirz.com