Contenu de leçon
Dans la première leçon, nous avons discuté des bases du routage multidiffusion et je a expliqué certaines des différences entre les protocoles de routage multidiffusion en mode dense et piquant. Le seul protocole de routage de multidiffusion entièrement supporté sur les périphériques Cisco iOS est PIM (multidiffusion indépendante du protocole).
La partie indépendante est un peu déroutant … PIM dépend de 100% sur les informations de la table de routage unicast mais Peu importe quel protocole de routage unicast que vous utilisez pour le remplir. D’autres protocoles de routage de multidiffusion tels que DVMRP et MASPF n’utilisent pas la table de routage unicast, mais construisent leurs propres tables.
PIM prend en charge trois modes différents:
- PIM DENSEN MODE
- PIM SPARSE MODE
- PIM SPARSE-DENSEN-DENSEN-DENSEN MODE
Voici la différence de clé entre le mode clairsemé et dense:
- Mode dense: Nous avançons le trafic de multidiffusion sur toutes les interfaces jusqu’à ce qu’un routeur en aval nous demande d’arrêter de préciser.
- Mode clairsemé: nous ne transférons pas le trafic de multidiffusion sur une interface avant qu’un routeur en aval ne nous demande de l’envoyer. .
Dans cette leçon, nous allons examiner de près le mode PIM DENSEN.
Le mode dense PIM est une méthode de poussée où nous utilisons des arbres à base de sources. Qu’est-ce que ça veut dire? Regardons à l’exemple:
ci-dessus, nous voyons un serveur vidéo envoyant un paquet de multidiffusion en direction de R1. Dès que R1 reçoit ce paquet de multidiffusion, il créera une entrée dans sa table de routage multidiffusion où elle stocke l’adresse source et l’adresse de groupe multidiffusion. Il inondera ensuite le trafic sur toutes ses interfaces.
Autres routeurs qui reçoivent ce paquet de multidiffusion fera la même chose, le paquet de multidiffusion est inondé de toutes leurs interfaces. Cela cause des problèmes, un problème est que nous aurons des boucles de routage multidiffusion. Par exemple, vous pouvez voir que le paquet que R1 reçoit est transféré vers R2 > R4 > R5 et retour à R1 (et de l’autre sens autour de). Comment traitons-nous cela? Jetez un coup d’œil ci-dessous:
Chaque routeur qui n’est pas intéressé par le trafic de multidiffusion à son routeur en amont, le demandant de cesser de le transférer. Le routeur en amont est le routeur où nous recevons du trafic de multidiffusion, un routeur en aval est un routeur où nous avançons le trafic de multidiffusion. Les flèches rouges ci-dessus sont les messages de pruneaux que les routeurs enverront. Il y a quelques raisons pour lesquelles un routeur peut envoyer un message de pruneaux:
- Lorsque nous n’avons pas d’hôtes directement connectés qui souhaitent recevoir le trafic de multidiffusion.
- Quand aucun routeur aval n’est intéressé à recevoir le trafic de multidiffusion.
- Lorsque nous recevons du trafic sur une interface non-RPF.
FPR (transfert de trajet inverse) est un Vérification supplémentaire qui aide à prévenir les boucles de routage multidiffusion:
Lorsqu’un routeur reçoit un paquet de multidiffusion, il vérifiera l’adresse IP source de ce paquet dans la table de routage unicast. Il vérifiera la prochaine interface de saut et sortant que nous utilisons pour atteindre la source.
- Lorsque le paquet de multidiffusion a été reçu sur l’interface que nous utilisons pour atteindre la source, la vérification du RPF réussit.
- Lorsque le paquet de multidiffusion a été reçu sur une autre interface, il échoue à la vérification du RPF et que le paquet est rejeté.
Le résultat final ressemblera à ceci:
Nous avons maintenant une belle topologie propre dans laquelle le trafic de multidiffusion est inondé de R1 à R2 > r6 > h1. Ce comportement d’inondation et de pruneau se produira toutes les trois minutes.
Nous appelons cette topologie l’arborescence de distribution à base de source ou le SPT (arbre de chemin le plus court). Parfois, il est également appelé l’arborescence source:
- L’arborescence définit le chemin de la source au récepteur (s).
- La source est la racine de notre arbre.
- les routeurs entre ceux qui sont transférés trafic sont les nœuds.
- les sous-récepteurs avec récepteurs sont les branches et les feuilles de l’arborescence.
Selon Sur les groupes source et / ou multidiffusion que nous utilisons, vous pourriez avoir plus d’un arborescence source de votre réseau. Une fois que nous examinons la configuration, vous verrez que nous utilisons la notation pour faire référence à un arborescence source particulier:
- s: l’adresse source
- g: la multidiffusion Adresse de groupe.
Vous avez maintenant une idée de quel mode dense PIM est à propos, voyons à quoi il ressemble à des routeurs réels, nous allons?
Configuration
Nous utiliserons la topologie suivante pour cette démonstration:
ci-dessus, nous avons un serveur vidéo sur le côté gauche qui sera la source de notre trafic de multidiffusion. H2 et H3 sont deux appareils hôtes qui souhaitent recevoir le trafic de multidiffusion.R1, R2 et R3 seront configurés pour utiliser le mode PIM DENSEN.
Routage unicast
Nous configurerons d’abord un protocole de routage sur tous les routeurs, je choisirai OSPF. Toutes les interfaces seront annoncées:
R1(config)#router ospf 1R1(config-router)#network 192.168.1.0 0.0.0.255 area 0R1(config-router)#network 192.168.12.0 0.0.0.255 area 0R1(config-router)#network 192.168.13.0 0.0.0.255 area 0
> MAINTENANT Nous pouvons nous concentrer sur la configuration de multidiffusion.
PIM DENSEN MODE
L’acheminement de multidiffusion est désactivé par défaut sur les routeurs Cisco iOS afin que nous puissions l’activer:
R1, R2 & R3(config)#ip multicast-routing
Nous pouvons maintenant configurer PIM. Commençons par R1:
R1(config)#interface GigabitEthernet 0/1R1(config-if)#ip pim dense-mode
Dès que j’accepte le mode PIM DENSEN sur l’interface, notre routeur commencera à envoyer des paquets PIM Hello. Voici ce que ceux-ci ressemblent à Wireshark:
ci-dessus, vous pouvez voir le type du paquet (bonjour ) et cela montre également le temps de maintien. Pour une raison quelconque, Wireshark (version 2.0.1) me montre une valeur de 1 mais la valeur par défaut est de 105 secondes. Si vous souhaitez jeter un coup d’œil à ce paquet vous-même, voici la capture de CloudShark:
Pum Dense Mode Bonjour Packet
Il affiche le temps de maintien correct de 105 secondes.
Activer PIM Dense sur R2 aussi:
R2(config)#interface GigabitEthernet 0/1R2(config-if)#ip pim dense-mode
Dès que nous le faisons, R1 et R2 deviendront des voisins car ils se reçoivent pim hello des paquets.Si ils continuent à les recevoir avant que la minuterie d’attente ne soit expirée, ils continueront de se voir comme des voisins PIM.:
Activez toutes les autres interfaces . Vous devez également activer PIM sur des interfaces qui se connectent aux périphériques hôtes:
R1(config)#interface GigabitEthernet 0/2R1(config-if)#ip pim dense-mode R1(config)#interface GigabitEthernet 0/3R1(config-if)#ip pim dense-mode
Voisins denses PIM
Assurez-vous que tous les routeurs sont devenons devenons voisins:
R1#show ip pim neighbor PIM Neighbor TableMode: B - Bidir Capable, DR - Designated Router, N - Default DR Priority, P - Proxy Capable, S - State Refresh Capable, G - GenID Capable, L - DR Load-balancing CapableNeighbor Interface Uptime/Expires Ver DRAddress Prio/Mode192.168.12.2 GigabitEthernet0/1 00:05:59/00:01:37 v2 1 / DR S P G192.168.13.3 GigabitEthernet0/2 00:00:48/00:01:26 v2 1 / DR S P G
R3#show ip pim neighbor PIM Neighbor TableMode: B - Bidir Capable, DR - Designated Router, N - Default DR Priority, P - Proxy Capable, S - State Refresh Capable, G - GenID Capable, L - DR Load-balancing CapableNeighbor Interface Uptime/Expires Ver DRAddress Prio/Mode192.168.13.1 GigabitEthernet0/1 00:01:14/00:01:29 v2 1 / S P G192.168.23.2 GigabitEthernet0/2 00:01:09/00:01:33 v2 1 / S P G
ci-dessus, nous pouvons voir que tous les routeurs sont devenus des voisins pim. La version par défaut sur Cisco iOS est la version 2. Les temps d’expiration sont la minuterie de retard qui comptent. Chaque fois que le routeur reçoit un paquet de PIM Hello, il se réinitialisera à 00:01:45 (105 secondes).
routage de multidiffusion
Jetons un coup d’oeil sur le routage de la multidiffusion Tables:
R1#show ip mroute IP Multicast Routing TableFlags: D - Dense, S - Sparse, B - Bidir Group, s - SSM Group, C - Connected, L - Local, P - Pruned, R - RP-bit set, F - Register flag, T - SPT-bit set, J - Join SPT, M - MSDP created entry, E - Extranet, X - Proxy Join Timer Running, A - Candidate for MSDP Advertisement, U - URD, I - Received Source Specific Host Report, Z - Multicast Tunnel, z - MDT-data group sender, Y - Joined MDT-data group, y - Sending to MDT-data group, G - Received BGP C-Mroute, g - Sent BGP C-Mroute, N - Received BGP Shared-Tree Prune, n - BGP C-Mroute suppressed, Q - Received BGP S-A Route, q - Sent BGP S-A Route, V - RD & Vector, v - Vector, p - PIM Joins on route, x - VxLAN groupOutgoing interface flags: H - Hardware switched, A - Assert winner, p - PIM Join Timers: Uptime/Expires Interface state: Interface, Next-Hop or VCD, State/Mode(*, 224.0.1.40), 00:12:12/00:02:48, RP 0.0.0.0, flags: DCL Incoming interface: Null, RPF nbr 0.0.0.0 Outgoing interface list: GigabitEthernet0/2, Forward/Dense, 00:03:06/stopped GigabitEthernet0/1, Forward/Dense, 00:12:12/stopped
Il y a tout trafic de multidiffusion, mais nous voyons un groupe de multidiffusion dans les tableaux 224.0.1.40. Cela peut être déroutant si vous êtes nouveau à la multidiffusion, laissez-moi vous expliquer:
mode de pim de pim (que nous discuterons dans d’autres leçons) utilise un RP (point de rendez-vous) et des routeurs Cisco prennent en charge un protocole appelé « Auto RP Discovery « Pour trouver automatiquement le RP dans le réseau. Auto RP utilise cette adresse de groupe multidiffusion, 224.0.1.40.
Le mode dense PIM n’utilise pas de RPS, il n’y a aucune raison pour nos routeurs Écoutez l’adresse de groupe 224.0.1.40. Pour une raison quelconque, dès que vous activez PIM, Autorp est également activé et que le routeur écoutera cette adresse de groupe. Vous pouvez ignorer cette entrée complètement lorsque vous travaillez avec PIM DENSEN MODE.
Si vous prenez un look proche, vous pouvez voir qu’aucun des routeurs reçoive ou transfère le trafic de ce groupe:
- L’interface entrante est NULL.
- La liste d’interface sortante montre arrêté.
Générons nous-mêmes un trafic de multidiffusion nous-mêmes. D’abord, je devrai configurer l’un des hôtes pour rejoindre un groupe de multidiffusion. Configurons H2 pour rejoindre 239.1.1.1:
H2(config)#interface GigabitEthernet 0/1H2(config-if)#ip igmp join-group 239.1.1.1
Vérifiez comment cela influençait la table de routage multidiffusion de R2:
R2#show ip mroute 239.1.1.1(*, 239.1.1.1), 00:00:19/00:02:51, RP 0.0.0.0, flags: DC Incoming interface: Null, RPF nbr 0.0.0.0 Outgoing interface list: GigabitEthernet0/3, Forward/Dense, 00:00:19/stopped GigabitEthernet0/2, Forward/Dense, 00:00:19/stopped GigabitEthernet0/1, Forward/Dense, 00:00:19/stopped
ci-dessus, nous pouvons voir que R2 a créé une entrée *, 239.1.1.1 pour le groupe de multidiffusion 239.1.1.1. À ce moment-là, toutefois, nous ne recevons aucun trafic de ce groupe, nous ne savons donc pas quelle est la source et nous ne pouvons rien transmettre.
changeons cela. La méthode la plus simple pour générer du trafic de multidiffusion consiste à envoyer un ping à partir de l’adresse de groupe multidiffusion:
S1#ping 239.1.1.1 repeat 2147483647Type escape sequence to abort.Sending 2147483647, 100-byte ICMP Echos to 239.1.1.1, timeout is 2 seconds:Reply to request 0 from 192.168.2.2, 132 msReply to request 1 from 192.168.2.2, 7 msReply to request 2 from 192.168.2.2, 6 ms
ci-dessus, vous pouvez voir que H2 répond. Vérifions les tables de routage de multidiffusion:
R1#show ip mroute 239.1.1.1IP Multicast Routing TableFlags: D - Dense, S - Sparse, B - Bidir Group, s - SSM Group, C - Connected, L - Local, P - Pruned, R - RP-bit set, F - Register flag, T - SPT-bit set, J - Join SPT, M - MSDP created entry, E - Extranet, X - Proxy Join Timer Running, A - Candidate for MSDP Advertisement, U - URD, I - Received Source Specific Host Report, Z - Multicast Tunnel, z - MDT-data group sender, Y - Joined MDT-data group, y - Sending to MDT-data group, G - Received BGP C-Mroute, g - Sent BGP C-Mroute, N - Received BGP Shared-Tree Prune, n - BGP C-Mroute suppressed, Q - Received BGP S-A Route, q - Sent BGP S-A Route, V - RD & Vector, v - Vector, p - PIM Joins on route, x - VxLAN groupOutgoing interface flags: H - Hardware switched, A - Assert winner, p - PIM Join Timers: Uptime/Expires Interface state: Interface, Next-Hop or VCD, State/Mode(*, 239.1.1.1), 00:01:16/stopped, RP 0.0.0.0, flags: D Incoming interface: Null, RPF nbr 0.0.0.0 Outgoing interface list: GigabitEthernet0/2, Forward/Dense, 00:01:16/stopped GigabitEthernet0/1, Forward/Dense, 00:01:16/stopped(192.168.1.1, 239.1.1.1), 00:01:16/00:01:43, flags: T Incoming interface: GigabitEthernet0/3, RPF nbr 0.0.0.0 Outgoing interface list: GigabitEthernet0/1, Forward/Dense, 00:01:16/stopped GigabitEthernet0/2, Prune/Dense, 00:01:15/00:01:43
Discutons de ce que nous voyons ci-dessus:
- R1 reçoit un trafic de multidiffusion pour 239,1 .1.1 À partir de 192.168.1.1 sur son interface GI0 / 3 et a ajouté cette entrée dans sa table de routage multidiffusion. C’est l’entrée que j’ai expliquée auparavant.
- R1 a transmis ce trafic pendant une minute et 16 secondes sur l’interface GI0 / 1.
- Quand nous ne transmettrons aucun paquets Pendant une minute et 43 secondes, cette entrée sera supprimée de la table de routage multidiffusion. Tant que nous continuons à recevoir des paquets, cette minuterie sera réinitialisée à trois minutes.
- Les drapeaux T signifie que nous utilisons l’arbre source de chemin le plus court.
- Le voisin RPF pour R1 est 0.0.0.0, cette valeur est vide car il s’agit d’une interface directement connectée.
- R1 est une transmission du trafic sur son interface GI0 / 1 qui est connectée à R2. Cela fait cela pendant une minute et 16 secondes et il n’y a pas d’expiration. Il continuera à le faire jusqu’à ce qu’il soit élagué.
- R1 a cessé de transférer le trafic sur son interface GI0 / 2 car elle est élague.
Etant donné que R3 ne s’intéresse pas Réception de ce trafic de multidiffusion et il a envoyé un message de pruneau à R1, lui demandant d’arrêter de transférer ce trafic. Voici ce que ce message de pruneaux ressemble à:
ci-dessus, vous pouvez voir que ce paquet a été envoyé par R3 (192.168.13.3) et destiné à 224.0.0.13 (version 2 de PIM).
PIM utilise un seul paquet pour les messages de jointure et de pruneaux, dans ce paquet, nous pouvons voir que R3 demande une prunette pour 239.1.1.1.1. à partir de 192.168.1.1. Ce paquet est destiné à 192.168.13.1.
Selon votre version iOS, il est possible que l’actualisation de l’état est désactivé par défaut. Vous pouvez l’activer. avec la commande ip pim state-refresh origination-interval
.
Une interface est taillée pendant trois minutes et chaque fois que nous envoyons un message de pruneau, cette minuterie sera réinitialisée. Si Nous arrêtons d’envoyer des messages de pruneaux alors l’interface remontera la transmission après trois minutes.
Voulez-vous voir ce paquet pour vous-même? Jetez un coup d’oeil ici:
Message de pruneau dense PIM
Vérifions R2:
R2#show ip mroute 239.1.1.1(*, 239.1.1.1), 00:03:47/stopped, RP 0.0.0.0, flags: DC Incoming interface: Null, RPF nbr 0.0.0.0 Outgoing interface list: GigabitEthernet0/3, Forward/Dense, 00:03:47/stopped GigabitEthernet0/2, Forward/Dense, 00:03:47/stopped GigabitEthernet0/1, Forward/Dense, 00:03:47/stopped (192.168.1.1, 239.1.1.1), 00:01:22/00:01:37, flags: T Incoming interface: GigabitEthernet0/1, RPF nbr 192.168.12.1 Outgoing interface list: GigabitEthernet0/2, Prune/Dense, 00:01:22/00:01:37 GigabitEthernet0/3, Forward/Dense, 00:01:22/stopped
Discutons de ce que nous avons ci-dessus:
- R2 a défini le DC Drapeaux pour ce groupe. Le D signifie que nous utilisons du mode dense et que le C signifie que nous avons un hôte directement connecté qui souhaite recevoir ce trafic (H2).
- R2 reçoit le trafic de 192.168.1.1.1. au 239.1.1.1 sur son interface GI0 / 1. Le voisin du RPF est 192.1 68.12.1 (R1).
- R2 a cessé de transférer le trafic sur son interface GI0 / 2 vers R3.
- R2 est une transmission du trafic sur son interface GI0 / 3 vers H2.
Quoi de R3?
R3#show ip mroute 239.1.1.1(*, 239.1.1.1), 00:01:27/stopped, RP 0.0.0.0, flags: D Incoming interface: Null, RPF nbr 0.0.0.0 Outgoing interface list: GigabitEthernet0/2, Forward/Dense, 00:01:27/stopped GigabitEthernet0/1, Forward/Dense, 00:01:27/stopped(192.168.1.1, 239.1.1.1), 00:01:27/00:01:32, flags: PT Incoming interface: GigabitEthernet0/1, RPF nbr 192.168.13.1 Outgoing interface list: GigabitEthernet0/2, Prune/Dense, 00:01:27/00:01:32, A
Voir:
- R3 reçoit la circulation pour 239.1.1.1 À partir de 192.168.1.1 sur son interface GI0 / 1 qui se connecte à R1. Le voisin du RPF est 192.168.13.1.
- Le drapeau P signifie que ce trafic a été éliminé.
- R3 a élagué son interface GI0 / 2. Le drapeau est synonyme pour affirmer le gagnant.
donc la grande question … Qu’est-ce qu’un vainqueur d’affirmation?
R2 et R3 sont tous deux liés au 192.168.23.0/24 Sous-réseau et les deux reçoivent du trafic de R1.
Imaginons que nous avons un hôte sur le sous-réseau 192.168.23.0/24 qui souhaite recevoir du trafic de multidiffusion. Quel routeur transmettra ce trafic? R2 ou R3? Si les deux routeurs avancent le trafic de multidiffusion, l’hôte recevrait des paquets de multidiffusion en double.