資料中心

Overlay ECMP with EVPN-VXLAN in OcNOS: Part 1 — Load Balancing Across Hypervisors

Equal-Cost Multipath (ECMP) is fundamental to data center fabric design — it maximizes link utilization and builds in redundancy without complex failover logic. In an EVPN-VXLAN overlay, ECMP works at both the underlay (between leaf and spine switches) and the overlay (across multiple hypervisors hosting the same service).

This two-part series covers overlay ECMP using EVPN with VXLAN encapsulation in OcNOS. Part 1 establishes the topology and configuration for distributing traffic across multiple hypervisors. Part 2 extends this to advanced multi-hypervisor scenarios.

Data Center Clos Topology

Spine-1 BGP Route Reflector Spine-2 BGP Route Reflector Leaf-1 (TOR) VTEP: 10.1.1.1 Leaf-2 (TOR) VTEP: 10.1.1.2 Leaf-3 (TOR) VTEP: 10.1.1.3 HV-1 VM: IP-X HV-2 VM: IP-X HV-3 VM: IP-X Gateway Border Leaf IP-X = same web service VIP on HV1/2/3 ECMP load balance
Data center Clos topology for overlay ECMP. Multiple hypervisors (HV-1, HV-2, HV-3) each host a VM with the same service IP (IP-X). OcNOS leaf switches distribute ingress traffic across all three hypervisors using EVPN-VXLAN ECMP.

How Overlay ECMP Works

In a standard EVPN-VXLAN fabric, each hypervisor advertises its locally hosted VMs via BGP EVPN. When multiple hypervisors host VMs with identical IP addresses (a common pattern for web-tier microservices with anycast VIPs), the leaf switches receive multiple EVPN route type-5 (IP prefix) advertisements for the same IP prefix — each from a different VTEP.

OcNOS installs all equal-cost VTEP routes as ECMP next-hops in the forwarding table. Ingress traffic is hashed across all VTEPs using a 5-tuple hash (source IP, destination IP, source port, destination port, protocol), distributing load without requiring a load balancer in the data path.

Underlay Configuration: BGP EVPN Spine

! OcNOS -- Spine-1: BGP Route Reflector for EVPN
!
router bgp 65000
  bgp router-id 10.0.0.10
  bgp cluster-id 10.0.0.10
  !
  ! Reflect EVPN routes to all leaf peers
  neighbor LEAF-PEERS peer-group
  neighbor LEAF-PEERS remote-as 65000
  neighbor LEAF-PEERS update-source lo
  neighbor LEAF-PEERS route-reflector-client
  !
  neighbor 10.1.1.1 peer-group LEAF-PEERS    ! Leaf-1
  neighbor 10.1.1.2 peer-group LEAF-PEERS    ! Leaf-2
  neighbor 10.1.1.3 peer-group LEAF-PEERS    ! Leaf-3
  !
  address-family l2vpn evpn
    neighbor LEAF-PEERS activate
    neighbor LEAF-PEERS route-reflector-client
  exit-address-family

Overlay Configuration: EVPN-VXLAN on Leaf (OcNOS)

! OcNOS -- Leaf-1: EVPN-VXLAN with overlay ECMP
!
! Step 1: Configure VXLAN interface
interface vxlan1
  vxlan local-tunnelip 10.1.1.1         ! VTEP IP (loopback)
  vxlan vlan 100 vni 10100              ! VLAN 100 -> VNI 10100
!
! Step 2: BGP EVPN -- advertise and receive routes
router bgp 65000
  bgp router-id 10.1.1.1
  neighbor 10.0.0.10 remote-as 65000   ! Spine-1 (RR)
  neighbor 10.0.0.10 update-source lo
  neighbor 10.0.0.11 remote-as 65000   ! Spine-2 (RR)
  neighbor 10.0.0.11 update-source lo
  !
  address-family l2vpn evpn
    neighbor 10.0.0.10 activate
    neighbor 10.0.0.11 activate
    advertise-all-vni                   ! Auto-advertise all local VNIs
  exit-address-family
!
! Step 3: Enable ECMP for VXLAN (allow multiple next-hops per prefix)
router bgp 65000
  maximum-paths 8                       ! Allow up to 8 ECMP paths
  !
  address-family l2vpn evpn
    maximum-paths 8
  exit-address-family
!
! Verify ECMP next-hops for IP-X (web service VIP):
show bgp l2vpn evpn route type prefix
! Expected: IP-X with next-hops pointing to VTEP 10.1.1.1, 10.1.1.2, 10.1.1.3
!
show vxlan fdb
show evpn vni detail

Verifying ECMP Load Distribution

! OcNOS -- Verify overlay ECMP is active
!
! Check ECMP paths installed in FIB:
show ip route 192.168.100.10        ! IP-X address
! Expected output:
! B>* 192.168.100.10/32 [200/0] via 10.1.1.1 (vxlan), weight 1
!                                via 10.1.1.2 (vxlan), weight 1
!                                via 10.1.1.3 (vxlan), weight 1
!
! Check VXLAN tunnel statistics per VTEP:
show vxlan tunnel statistics
!
! Verify BGP EVPN route count:
show bgp l2vpn evpn summary

Continue with Part 2: Advanced multi-hypervisor ECMP scenarios, where we increase VM density per hypervisor and explore how OcNOS handles subnet advertisement changes.


IP Infusion Engineering Team

分享