How VXLAN With Multicast Control Plane Works
Packet flow:
- Phase1: BUM and Peer learning (Flood and learn)
(1) SRV-A wants to communicate to SRV-B. Initially, SRV-A will generate an ARP request trying to discover SRV-B Mac Address. (BUM traffic initially)
(2) When the ARP request arrives to SW1 it will lookup its local table and if an entry is not found, it will encapsulate the ARP request over VXLAN and send it over the Multicast group configured for the specific VNI (Outer Source IP is SW1 Vtep and Outer Destination IP is the Multicast group IP)
(3) The multicast RP receive the packet and it will forward a copy to every VTEP that has joined the multicast group.
(4) Each VTEP will receive and de-encapsulate the packet VXLAN packet and learn SRV-A Mac Address pointing to the remote VTEP address.
At this point, MAC-A and VTEP1 are learned by other VTEP which joined the same Multicast group associated with the VNI.
(5) Each VTEP forwards the ARP request to its local destinations.
- Unicast: Peer learned & Endpoint MAC learned
(6) SRV-B generates the ARP reply. When SW2 VTEP2 receives it, it will look up its local table and will find an entry with the information that traffic destined to SRV-A must be sent to VTEP1 address. VTEP2 encapsulates the ARP reply with a VXLAN header and will unicast it to VTEP1.
(7) VTEP1 will receive and de-encapsulate the packet and deliver it to SRV-A
(8) Once the Mac Address information is learned, additional packets are unicasted to the corresponding VTEP address.
I would suggest the following article for the confiugration for VXLAN with multicast as control plane, also illustrating the packet flow and verifications: