- Virtual extensible LAN (VXLAN)
- Header
- VXLAN vs MPLS
Virtual extensible LAN (VXLAN)
- MAC-in-UDP
- UDP 4789
- VXLAN network ID (VNI): 24 bits, L2 segment ID
- src UDP port: hash for entropy (ECMP)
- 1550 MTU + DF bit
- IP: 20 bytes
- UDP: 8 bytes
- VXLAN: 8 bytes
- inner Ethernet: 14 bytes
- VXLAN tunnel endpoint (VTEP)
- data plane: flood & learn, store & forward
- transport
- mcast:
- VNI-group mapping
- BUM traffic
- unicast
- head-end replication
- static VTEP, EVPN
- allows VLAN tags within payload
(config)# feature vn-segment-vlan-based
(config)# feature nv overlay
(config-vlan)# vn-segment <VNI>
(config)# interface nve 1
; disabled by default
(config-if-nve)# no shutdown
; must be PIM-enabled if underlay is mcast
(config-if-nve)# source-interface <INTF>
; Q-in-VNI, on default
(config-if-nve)# overlay-encapsulation vxlan-with-tag
(config-if-nve)# member vni <VNI>
; BUM, mcast underlay
(config-if-nve-vni)# mcast group <GROUP>
; BUM, unicast underlay
(config-if-nve-vni)# ingress-replication protocol static
(config-if-nve-vni-ingr-rep)# peer-ip <IP>
(config-if)# switchport vlan mapping enable
; per-port-per-VLAN VNI mapping (≡ target VLAN)
(config-if)# switchport vlan mapping <WIRE_VLAN> <TARGET_VLAN>
# show nve peers
# show nve vni
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Flags | Reserved |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| VNI | Reserved |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
VXLAN vs MPLS
- less control plane
- required: ECMP (MPLS requires multiple FEC, IP forwards natively)
- not needed: TE within fabric ≡ stacking labels
- implemented in DCI ASICs ⇒ can be reused in fabric