Underlay Routing Protocol và Overlay Routing Protocol trong VXLAN EVPN
Hình trên mô tả rất rõ hai lớp mạng tồn tại song song trong kiến trúc VXLAN EVPN đó là Underlay Network (mạng vật lý bên dưới), Overlay Network (mạng ảo bên trên). Chúng ta có thể hình dung đơn giản:
Underlay là hệ thống đường cao tốc.
Overlay là các tuyến vận chuyển hàng hóa chạy trên hệ thống đường cao tốc đó.
1. Underlay Routing Protocol là gì?
Underlay là mạng IP vật lý kết nối các Spine và Leaf với nhau.
Trong VXLAN EVPN, Underlay thường được xây dựng theo mô hình:
Leaf <---> Spine
Leaf <---> Spine
Leaf <---> Spine
Mỗi kết nối thường là:
Layer-3 Point-to-Point
đúng như trong hình.
Nhiệm vụ của Underlay Routing là:
OSPF
Leaf1 --- OSPF --- Spine
Ưu điểm của OSPF là đơn giản và dễ triển khai. IS-IS
Rất phổ biến trong các Data Center lớn. Ưu điểm là ISIS có khả năng mở rộng tốt, Không phụ thuộc IP. Nhiều nhà cung cấp Cloud sử dụng IS-IS làm Underlay.
eBGP Underlay
Dùng eBGP là xu hướng phổ biến hiện nay.
Ví dụ:
Leaf1 AS65101
Spine1 AS65000
Mỗi Leaf là một AS riêng. Ưu điểm của cách dùng eBGP là:
Underlay học những gì?
Underlay chỉ quan tâm:
Loopback VTEP IP
Transit IP
Ví dụ:
Leaf1 VTEP = 10.1.1.1
Leaf2 VTEP = 10.1.1.2
Underlay chỉ cần biết:
Muốn đến 10.1.1.2 đi đường nào?
Nó không quan tâm các thông tin khác như MAC Address, VLAN, VNI, Tenant.
2. Overlay Routing Protocol là gì?
Overlay nằm phía trên Underlay. Đây là nơi VXLAN EVPN hoạt động. Nhiệm vụ của lớp Overlay Routing là :
Overlay sử dụng giao thức nào?
Thông thường:
MP-BGP EVPN
hay còn gọi là:
EVPN Address Family
Ví dụ:
Máy chủ M1 nằm tại Leaf1
MAC = aa:aa:aa
IP = 10.10.10.11
Leaf1 sẽ quảng bá trọn bộ thông tin bao gồm:
MAC aa:aa:aa
IP 10.10.10.11
VTEP 10.1.1.1
thông qua EVPN.
Leaf2 nhận được thông tin này và biết:
Muốn tới M1
↓
Gửi VXLAN Tunnel tới VTEP 10.1.1.1
Đó chính là Overlay Routing.
Underlay và Overlay trao đổi thông tin gì?
Underlay
Học:
Loopback IP
Transit IP
Next-Hop
ECMP Path
Ví dụ:
10.1.1.1/32
10.1.1.2/32
10.1.1.3/32 Overlay
Học:
MAC Address
IP Address
VNI
VRF
Tenant
VTEP
Ví dụ:
MAC aa:aa:aa
IP 10.10.10.11
VNI 10010
VTEP 10.1.1.1
Luồng hoạt động thực tế
Giả sử:
Server A
↓
Leaf1
Server B
↓
Leaf2
Bước 1: Underlay Routing diễn ra trước hết.
OSPF hoặc BGP học:
VTEP1 = 10.1.1.1
VTEP2 = 10.1.1.2
Từ đó:
10.1.1.1 <--> 10.1.1.2
liên lạc được với nhau.
Bước 2: Overlay
EVPN quảng bá:
Server A
MAC aa:aa
IP 10.10.10.11
ở VTEP 10.1.1.1
Bước 3: Data Forwarding
Khi Server B gửi traffic tới Server A:
Frame Ethernet
↓
VXLAN Encapsulation
↓
Outer IP:
Src = 10.1.1.2
Dst = 10.1.1.1
↓
Underlay Routing
↓
Spine
↓
Leaf1
↓
Decapsulation
↓
Server A
Mối quan hệ giữa Underlay và Overlay
Có thể tóm tắt như sau:
Underlay
Một nguyên tắc rất quan trọng khi thiết kế VXLAN EVPN là:
Underlay chỉ cần đảm bảo "VTEP reachability", còn Overlay chịu trách nhiệm "Host reachability".
Hay chúng ta có thể diễn đạt theo cách khác:
Hình trên mô tả rất rõ hai lớp mạng tồn tại song song trong kiến trúc VXLAN EVPN đó là Underlay Network (mạng vật lý bên dưới), Overlay Network (mạng ảo bên trên). Chúng ta có thể hình dung đơn giản:
Underlay là hệ thống đường cao tốc.
Overlay là các tuyến vận chuyển hàng hóa chạy trên hệ thống đường cao tốc đó.
1. Underlay Routing Protocol là gì?
Underlay là mạng IP vật lý kết nối các Spine và Leaf với nhau.
Trong VXLAN EVPN, Underlay thường được xây dựng theo mô hình:
Leaf <---> Spine
Leaf <---> Spine
Leaf <---> Spine
Mỗi kết nối thường là:
Layer-3 Point-to-Point
đúng như trong hình.
Nhiệm vụ của Underlay Routing là:
- Đảm bảo IP reachability giữa các thiết bị
- Đảm bảo mọi VTEP có thể ping được nhau
- Tính toán đường đi tốt nhất trong fabric
OSPF
Leaf1 --- OSPF --- Spine
Ưu điểm của OSPF là đơn giản và dễ triển khai. IS-IS
Rất phổ biến trong các Data Center lớn. Ưu điểm là ISIS có khả năng mở rộng tốt, Không phụ thuộc IP. Nhiều nhà cung cấp Cloud sử dụng IS-IS làm Underlay.
eBGP Underlay
Dùng eBGP là xu hướng phổ biến hiện nay.
Ví dụ:
Leaf1 AS65101
Spine1 AS65000
Mỗi Leaf là một AS riêng. Ưu điểm của cách dùng eBGP là:
- Khả năng mở rộng Scale rất lớn
- Chính sách định tuyến linh hoạt
- Đơn giản hóa troubleshooting
Underlay học những gì?
Underlay chỉ quan tâm:
Loopback VTEP IP
Transit IP
Ví dụ:
Leaf1 VTEP = 10.1.1.1
Leaf2 VTEP = 10.1.1.2
Underlay chỉ cần biết:
Muốn đến 10.1.1.2 đi đường nào?
Nó không quan tâm các thông tin khác như MAC Address, VLAN, VNI, Tenant.
2. Overlay Routing Protocol là gì?
Overlay nằm phía trên Underlay. Đây là nơi VXLAN EVPN hoạt động. Nhiệm vụ của lớp Overlay Routing là :
- Học MAC
- Học IP
- Học VNI
- Học Tenant
- Học Gateway
Overlay sử dụng giao thức nào?
Thông thường:
MP-BGP EVPN
hay còn gọi là:
EVPN Address Family
Ví dụ:
Máy chủ M1 nằm tại Leaf1
MAC = aa:aa:aa
IP = 10.10.10.11
Leaf1 sẽ quảng bá trọn bộ thông tin bao gồm:
MAC aa:aa:aa
IP 10.10.10.11
VTEP 10.1.1.1
thông qua EVPN.
Leaf2 nhận được thông tin này và biết:
Muốn tới M1
↓
Gửi VXLAN Tunnel tới VTEP 10.1.1.1
Đó chính là Overlay Routing.
Underlay và Overlay trao đổi thông tin gì?
Underlay
Học:
Loopback IP
Transit IP
Next-Hop
ECMP Path
Ví dụ:
10.1.1.1/32
10.1.1.2/32
10.1.1.3/32 Overlay
Học:
MAC Address
IP Address
VNI
VRF
Tenant
VTEP
Ví dụ:
MAC aa:aa:aa
IP 10.10.10.11
VNI 10010
VTEP 10.1.1.1
Luồng hoạt động thực tế
Giả sử:
Server A
↓
Leaf1
Server B
↓
Leaf2
Bước 1: Underlay Routing diễn ra trước hết.
OSPF hoặc BGP học:
VTEP1 = 10.1.1.1
VTEP2 = 10.1.1.2
Từ đó:
10.1.1.1 <--> 10.1.1.2
liên lạc được với nhau.
Bước 2: Overlay
EVPN quảng bá:
Server A
MAC aa:aa
IP 10.10.10.11
ở VTEP 10.1.1.1
Bước 3: Data Forwarding
Khi Server B gửi traffic tới Server A:
Frame Ethernet
↓
VXLAN Encapsulation
↓
Outer IP:
Src = 10.1.1.2
Dst = 10.1.1.1
↓
Underlay Routing
↓
Spine
↓
Leaf1
↓
Decapsulation
↓
Server A
Mối quan hệ giữa Underlay và Overlay
Có thể tóm tắt như sau:
Underlay
- Xây dựng mạng IP vật lý
- Cung cấp khả năng kết nối giữa các VTEP
- Thường dùng OSPF, IS-IS hoặc eBGP
- Chỉ quan tâm đến IP Routing
- Xây dựng mạng ảo VXLAN
- Kết nối các Tenant và VLAN trải rộng nhiều Leaf
- Dùng MP-BGP EVPN
- Quan tâm đến MAC, IP, VNI và Tenant
Một nguyên tắc rất quan trọng khi thiết kế VXLAN EVPN là:
Underlay chỉ cần đảm bảo "VTEP reachability", còn Overlay chịu trách nhiệm "Host reachability".
Hay chúng ta có thể diễn đạt theo cách khác:
- Underlay Routing sẽ trả lời câu hỏi: "Làm sao tới được VTEP đích?"
- Overlay Routing trả lời câu hỏi: "Host đích đang nằm sau VTEP nào?"