Dans notre précédent LAB 1 VXLAN , nous avons mis en place une structure VXLAN EVPN complète en utilisant le mode Ingress Replication (IR) pour gérer le trafic BUM (Broadcast, Unknown-unicast, Multicast).
Dans un grand environnement avec N Leafs, un seul paquet BUM génère N-1 paquets dans le réseau underlay. Cette duplication excessive peut rapidement épuiser la bande passante et les ressources CPU/mémoire des équipements, en particulier sur les Spines. Pour pallier ce problème, l'étape logique est de basculer vers le mode Underlay Multicast (uMulticast).
VXLAN - Le Multicast Anycast RP dans VXLAN
Le Principe de l'Underlay Multicast pour VXLAN EVPN
Le uMulticast
(souvent implémenté avec PIM Sparse Mode dans le underlay)
permet de remplacer la réplication individuelle des paquets BUM par un
mécanisme de diffusion de groupe.
Au lieu
d'envoyer N-1 copies, le VTEP source n'envoie qu'une seule copie du
paquet BUM, encapsulé dans un tunnel VXLAN avec une adresse IP de
destination Multicast spécifique.
Les avantages sont immédiats :
- Efficacité de la bande passante : Le trafic BUM circule dans un
arbre de distribution partagé, ce qui réduit considérablement le nombre de
copies dans le réseau underlay.
- Délestage des VTEPs : Les Leafs (VTEPs)
sont déchargés de la tâche de créer des copies pour chaque pair. C'est le
réseau underlay (les Spines et le
protocole PIM) qui gère l'acheminement de la trame unique aux VTEP
intéressés.
Le Rôle du Protocole PIM (Protocol Independent Multicast)
Pour que
l'Underlay Multicast fonctionne, nous devons d'abord nous assurer que notre
réseau underlay (l'AS 65000 dans notre schéma de Lab) est
capable de transporter efficacement les flux Multicast.
Nous allons
configurer PIM Sparse Mode (PIM-SM). Ce protocole est responsable
de la construction d'arbres de distribution qui relient les sources de trafic
(nos VTEP émetteurs) aux récepteurs (nos VTEP destinataires).
Notre objectif
de configuration sera :
- Identifier une adresse Rendez-vous
Point (RP). Il s'agit d'un point central dans le domaine PIM, souvent
un Spine, qui facilite la découverte initiale de la source par les
récepteurs.
- Définir un Groupe Multicast (G)
pour chaque VNI (VN-Segment).
Par exemple, pour le VNI 1010, nous allons associer un groupe Multicast unique, tel que 239.1.1.10 et le VNI 1020 Mcast 239.1.1.20 - Activer PIM sur toutes les interfaces de notre underlay (Loopbacks, liens Leaf-Spine).
La Configuration PIM : Les Commandes Clés sur Nexus 9K
Voici le début
des commandes de configuration sur les Spines et les Leafs.
Sur les Spines
(SPINE-1 et SPINE-2) :
! Activation des fonctionnalités
feature pim
feature pimp
feature interface-vlan
! Définition du Rendezvous Point (RP)
! Nous allons le configurer sur les 2 Spines en Anycast sur la Loopback2
interface loopback2
description ANYCAST_RP
ip address 2.2.2.2/32
ip router ospf UNDERLAY area 0.0.0.0
ip pim sparse-mode
ip pim ssm range 232.0.0.0/8
ip pim anycast-rp 2.2.2.2 10.10.10.10
ip pim anycast-rp 2.2.2.2 20.20.20.20
! Note: 2.2.2.2 est l'adresse Anycast RP Loopback2 sur Spine1 et Spine2
! Activation de PIM sur les interfaces underlay
interface loopback0
ip pim sparse-mode
interface ethernet E1/1 à E1/4
ip pim sparse-modeSur les Leafs :
! Activation des fonctionnalités
feature pim
! Définition du Rendezvous Point (RP) pour connaître la source des groupes Multicast
ip pim rp-address 2.2.2.2 group-list 239.1.1.0/24
! Activation de PIM sur les interfaces underlay
interface loopback0
ip pim sparse-mode
interface ethernet E1/1 à E1/2
ip pim sparse-modeVérifier que le multicast est bien actif vers les neighbors:
Configuration de l'Interface NVE
interface nve 1
no shutdown
host-reachability protocol bgp
source-interface loopback1
!
member vni 1010
mcast-group 239.1.1.10
!
member vni 1020
mcast-group 239.1.1.20
!La commande : host-reachability protocol bgp - C'est le cœur de l'EVPN. Cette commande permet d'utiliser BGP pour l'échange des adresses MAC (Route Type 2), remplaçant ainsi le flood-and-learn pour le trafic Unicast.
On peut vérifier le statut et Multicast par VNI :
On peut voir l'échange de mac adresses entre les différentes leafs grace au Multicast ( exemple Leaf1 et Leaf3)