
ในโลกของการออกแบบเครือข่ายคอมพิวเตอร์ในปัจจุบัน เราจะคุ้นเคยกับออกแบบการเชื่อมต่อลักษณะของ Core, Distribution และ Access Layer สำหรับ Campus Network แต่หากภายในดาต้าเซ็นเตอร์ หรือโครงข่ายที่ต้องเชื่อมต่อกับอุปกรณ์แม่ข่าย โดยเฉพาะ Workloads ต่าง ๆ ที่เป็น Virtual Machine, Contrainer, Kubernetes เราก็จะออกแบบในรูปแบบของ Spine และ Leaf กันครับ
อีกทั้งเราสามารถนำวิธีการวางอุปกรณ์แบบ Spine และ Leaf ไปใช้กับ Campus Network ได้เช่นเดียวกัน เช่นการทำ SD Access (SDA) หรือ Software Defined Network ได้ ซึ่ง Cisco เรียกว่า Cisco DNAC ซึ่งทำหน้าที่เป็น Controller ในการทำ Automate และ Deploy Configuration ลงไปยังอุปกรณ์ต่าง ๆ ที่เป็น Edge Device ได้ครับ
โดยการออกแบบในลักษณะนี้ มักจะมีการพูดถึงศัพท์ใหม่ ๆ หลาย ๆ อย่างที่ System Engineer หรือ Network Engineer ไม่ค่อยมีในห้องเรียนสอนมาก่อน ยกตัวอย่างเช่น Underlay network, Overlay network, VXLAN, VTEP เป็นต้น
บทความวันนี้จึงพูดถึงความหมาย และอธิบาย รวมถึงเปรียบเทียบเครือข่าย Underlay และ Overlay ให้ผู้อ่านได้เข้าใจกันมากขึ้นนะครับ
เครือข่าย Underlay (Underlay network) คือเครือข่ายกายภาพ (Physical network) ที่ใช้เป็นพื้นฐานทั่วไปที่เราคุ้นเคย หรือพื้นฐานในการสร้างเครือข่าย Overlay (Overlay network) ซึ่งเป็นเครือข่ายเสมือน (Virtual Network) ที่อยู่ด้านบน Physical network นี้ โปรโตคอลที่ใช้งานใน Underlay network เช่น Ethernet Switching, VLAN , Routing เป็นต้น
เครือข่าย Underlay มีหน้าที่เชื่อมต่อระหว่างอุปกรณ์เครือข่ายที่ต่างกันเพื่อให้การสื่อสารระหว่างโหนดเป็นไปอย่างมีประสิทธิภาพ รูปแบบของเครือข่าย Underlay เช่น เครือข่ายอีเธอร์เน็ต Ethernet, เครือข่ายไร้สาย (Wireless network), และเครือข่ายอินเทอร์เน็ต (Internet) เป็นต้น
การเลือกใช้เครือข่าย Underlay ที่เหมาะสมและมีประสิทธิภาพสูงเป็นสิ่งสำคัญในการสร้างเครือข่าย Overlay ที่มีการทำงานเสถียรและมีประสิทธิภาพ และเครือข่าย Underlay เป็นส่วนสำคัญในการส่งสัญญาณข้อมูลระหว่างโหนดในเครือข่าย Overlay กับเครือข่ายกายภาพอื่น ๆ ได้นั่นเองครับ
ภาพด้านบนแสดงถึงเครือข่าย Underlay ที่ออกแบบในรูปแบบ Spine และ Leaf โดยอุปกรณ์ Spine จะเป็นอุปกรณ์กระจายสัญญาณซึ่งทำหน้าที่เป็น Backbone ของระบบ ACI (Application Centric Infrastructure) และทำการเชื่อมต่อไปยังอุปกรณ์ Leaf
Leaf จะเชื่อมต่อไปยัง Endpoint ต่าง ๆ เช่น Server, External Network, Firewall, Router และหากมี Spine 10 ตัว Leaf 1 ตัวต้อง Mesh ไปเชื่อมต่อกับ Spine ทั้ง 10 ตัวด้วยเช่นกันครับ
Spine และ Leaf จะมีการทำ Dynamic routing ระหว่างกัน หากเป็น Cisco ไม่ว่าจะเป็น SDA หรือ APIC จะใช้ IS-IS ในการ run routing ระหว่างกันนี้ ซึ่งทำให้มีการส่ง Traffic ต้นทางของ Packet Flow จะมี VXLAN Header มาจาก Leaf ส่งไปยัง Spine เพื่อสอบถาม Database ของอุปกรณ์ปลายทางที่เก็บไว้ โดย Spine นี่แหละจะทราบทุกอย่างที่จะไปสู่ปลายทางได้ เรียกได้ว่าหากไม่รู้ไปไหน ให้วิ่งกลับไปถาม Spine นั่นเองครับ
Note. Spine จะไม่เชื่อมต่อไปยังอุปกรณ์อื่น หรือ Endpoint ใด ๆ เลย นอกจาก Leaf เท่านั้น
เครือข่าย Overlay (Overlay Network) คือเครือข่ายเสมือนที่สร้างขึ้นบนเครือข่ายกายภาพ (Physical Network) ที่มีอยู่แล้ว โดยใช้เทคนิคหรือโปรโตคอลเพิ่มเติม เครือข่าย Overlay ทำหน้าที่เพิ่มความยืดหยุ่นและการสร้างระบบเครือข่ายที่อิสระจากเครือข่ายกายภาพต้นฉบับ
ในเครือข่าย Overlay โหนดในเครือข่ายจะสร้างการเชื่อมต่อกันอย่างมีความสัมพันธ์แบบเสมือน (Virtual) ซึ่งสร้างเครือข่ายที่สามารถดำเนินการแยกออกจากเครือข่ายกายภาพที่อยู่ด้านล่างได้ โดยการเชื่อมต่อทางตรรกะนี้ส่วนใหญ่จะนำเข้ามาผ่านเทคนิคการกำหนดค่าโดยซอฟต์แวร์ (Software-Defined Networking: SDN) หรือโปรโตคอลพิเศษที่ออกแบบมาเพื่อใช้ในเครือข่าย Overlay เช่น VXLAN, EVPN (Ethernet VPN) เป็นต้น
เครือข่าย Overlay มักถูกใช้ในการสร้างบริการหรือแก้ไขปัญหาที่ไม่สามารถทำได้โดยตรงบนเครือข่ายกายภาพได้ เช่น Virtual Extensible LAN (VXLAN) หรือ Network Virtualization โดยใช้ Generic Routing Encapsulation (NVGRE) ทำให้สามารถสร้างเครือข่ายเสมือนผ่านโครงสร้างพื้นฐานทางกายภาพได้
ภาพด้านบนจะเห็นว่า Spine ในระบบเครือข่าย Overlay จะรู้ทุกอย่างทั้ง MAC, VTEP, IP Address โดยมี COOP (Council of Oracle Protocol) ใช้สำหรับ mapping IP-MAAC-VTEP ลงในฐานข้อมูล
ในภาพที่แสดงนี้จะเห็นว่ามีอุปกรณ์ Hypervisor สีฟ้า และ Baremetal สีฟ้า ซึ่งอยู่ใน LAN Segment หรือ Subnet เดียวกัน แต่ใน Spine และ Leaf มีการ run L3 Routing ในส่วนของ Underlay Network นั่นคือ IS-IS Routing และ Gateway ของ Endpoint ทุกตัวจะกระจายกันอยู่บน Leaf ซึ่งถ้าเป็น Traditional Network ตัว Hypervisor จะไม่สามารถติดต่อกับ Baremetal ได้เลย เนื่องจากชุดของ Subnet มีการซ้อนทับกัน และติด Layer3 ที่อยู่ด้านบนในส่วนของ Underlay Network ดังนั้นผู้ดูแลระบบต้องใช้ VXLAN และ VTEP (VXLAN Tunnel Endpoint) ในการช่วย โดย Leaf จะไปถาม Spine ให้ ซึ่ง Spine ก็จะทราบปลายทาง และสามารถส่งข้อมูลติดต่อสื่อสารถืงกันได้ ถึงแม้ว่าจะมีเครือข่ายที่ซ้อนทับกันก็ตามครับ
Note. การใช้ Spine/Leaf Topology ไม่จำเป็นต้อง block port หรือทำ Spaning Tree ใด ๆ
สุดท้าย เพื่อเป็นการให้ทางผู้ดูแลระบบเข้าใจข้อแตกต่างของ Underlay Network และ Overlay Network เพิ่มมากขึ้น ทางเอเบิ้ลเน็ตเราจัดทำเป็นภาพการสรุปเปรียบเทียบข้อแตกต่างระหว่างเครือข่าย Underlay และ Overlay มาให้ ตามรูปด้านล่างนี้นะครับ
หากมีข้อสงสัย หรือข้อแนะนำก็สามารถติดต่อมาได้ตาม Contact ในเว็บไซต์ของเรา หรือใน Facebook Fanpage ได้เช่นเดียวกันนะครับ
#AbleNet #VXLAN #Cisco #ACI #SDAccess #DNAC #Spine #Leaf