Das Router-Port Group Management Protocol (RGMP) wird zusammen mit IGMP-Snooping verwendet, um Multicast-Datenverkehr auf Ebenen zu beschränken, auf denen er wirklich benötigt wird. IGMP-Snooping sendet Multicast-Datenverkehr an alle Router-Ports. Mit RGMP wird Multicast-Datenverkehr nur an Ports gesendet, die diesen empfangen müssen. RGMP wurde für die Ausführung im Backbone des Multicast-Netzwerks entwickelt. Grundkenntnisse über Multicasting (IGMP, PIM, Multicast Routing) sind für das Verständnis dieses Dokuments hilfreich.
Beachten Sie, dass jetzt eine neue Funktion vorhanden ist, die RGMP ersetzt und besser skalierbar ist. Diese Funktion wird als Protocol Independent Multicast (PIM) Snooping bezeichnet und verfolgt dasselbe Ziel wie RGMP. PIM-Snooping wird in diesem Dokument nicht behandelt.
Weitere Informationen finden Sie unter Konfigurieren von PIM Snooping.
Leser dieses Dokuments sollten sich der folgenden Protokollbeschränkungen bewusst sein:
Sie müssen RGMP auf den Routern und Switches ausführen.
Sie müssen IGMP-Snooping auf den Switches aktivieren.
RGMP funktioniert nur für Gruppen, die mit dem PIM Sparse Mode konfiguriert wurden.
Quellen, die Multicast-Datenverkehr senden, der direkt mit einem RGMP-Switch verbunden ist, werden nicht unterstützt.
Das Verbinden mehrerer Router mit demselben Switch-Port wird nicht unterstützt (z. B. zwei Router auf demselben Hub).
Die Verbindung mehrerer Router mit demselben Nicht-RGMP-Switch wird nicht unterstützt.
RGMP ermöglicht Ihnen nur, den Datenverkehr zu einem direkt verbundenen Router oder zu einem Router zu beschränken, der mit einem Switch verbunden ist, der nicht RGMP-fähig ist. RGMP kann den Datenverkehr nicht auf einen Multicast-Router beschränken, der hinter einem anderen RGMP-fähigen Switch angeschlossen ist.
Werden diese Einschränkungen nicht befolgt, kann dies zu Unterbrechungen der Multicast-Verbindung führen.
RGMP ist ein Protokoll, das zwischen Catalyst-Switches und -Routern ausgeführt wird. Beide Protokolle müssen RGMP unterstützen, damit die Funktion funktioniert. Die folgenden Switches unterstützen RGMP:
Catalyst 6000: seit Softwareversion 5.4
Catalyst 6000 mit Cisco IOS® Systemsoftware: seit Software 12.1(3a)E3
Catalyst 5000: seit Softwareversion 5.4
RGMP wird in den folgenden Versionen der Cisco IOS-Router-Software unterstützt:
12.3 Mainline
12,3 Bio.
12.2 Mainline
12.2.S
12,2 Bio.
12,1E
12.1T (beginnend mit Version 12.1(5)T1)
12.0S (beginnend mit Version 12.0(10)S)
12.0ST (beginnend mit Version 12.0(11)ST)
Die Informationen in diesem Dokument wurden von den Geräten in einer bestimmten Laborumgebung erstellt. Alle in diesem Dokument verwendeten Geräte haben mit einer leeren (Standard-)Konfiguration begonnen. Wenn Ihr Netzwerk in Betrieb ist, stellen Sie sicher, dass Sie die potenziellen Auswirkungen eines Befehls verstehen.
Weitere Informationen zu Dokumentkonventionen finden Sie in den Cisco Technical Tips Conventions.
Der Zweck von RGMP besteht darin, unnötigen Multicast-Datenverkehr zu vermeiden. Dieses Diagramm zeigt ein hypothetisches Netzwerk ohne RGMP-Aktivierung:
An R1 ist eine Multicast-Quelle und an R4 ein Empfänger angeschlossen. Der RP für die Gruppe liegt hinter R2. Der Datenverkehr wird durch R1 an den Switch weitergeleitet (pro PIM und mroute-Tabelle, da hinter der Switch-Schnittstelle ein Empfänger vorhanden ist). Der Switch erkennt dieses rein quelloffene Netzwerk mit IGMP-Snooping und erstellt einen statischen CAM-Eintrag (Content-Addressable Memory), der auf alle Router verweist: R1, R2, R3 und R4. Der Multicast-Datenverkehr wird an alle Router gesendet, einschließlich R3, die den Datenverkehr nicht benötigen. Wenn der Multicast-Datenverkehr ein hohes Volumen aufweist, kann dies zu einer unnötigen Auslastung des Routers R3 führen. Zur Lösung dieses Problems wurde RGMP erstellt.
Dieses Diagramm zeigt dasselbe Netzwerk mit aktiviertem RGMP (vorausgesetzt, die Router und der Switch sind RGMP-fähig):
R2 und R4 senden eine RGMP-Join-Nachricht für diese Multicast-Gruppe an den Switch. R3 sendet kein RGMP-Join. Daher leitet der Switch den von R1 für diese Gruppe empfangenen Multicast-Datenverkehr nur an R2 und R4 und nicht an R3 weiter. Dadurch wird der Datenverkehr im Netzwerk verringert.
RGMP ist wie CGMP ein Protokoll, das zwischen einem Router und einem Switch ausgeführt wird. Router senden RGMP-Pakete, und Switches überwachen RGMP-Pakete. Switches senden niemals RGMP-Pakete, und Router ignorieren alle RGMP-Pakete, die sie empfangen können. RGMP-Pakete sind IP-Pakete vom Typ IGMP und werden an die reservierte Gruppenadresse 224.0.0.25 (MAC-Adresse 01-00-5e-00-00-19) gesendet. Als IGMP-Pakete werden sie mit einer TTL (Time To Live) von 1 gesendet. Die Adresse 224.0.0.25 ist eine reservierte Adresse, die allen Multicast-Adressen des Switches entspricht. Ein RGMP-Paket enthält im Wesentlichen ein Type-Feld, ein Gruppenadressfeld und eine Prüfsumme.
In dieser Tabelle sind die verschiedenen für RGMP-Pakete verfügbaren Typfelder aufgeführt:
Beschreibung | Aktion |
---|---|
Hallo | Wenn RGMP auf dem Router aktiviert ist, wird vom Switch kein Multicast-Datenverkehr an den Router gesendet, es sei denn, ein RGMP-Join wird speziell für eine Gruppe gesendet. |
BYE | Wenn RGMP auf dem Router deaktiviert ist, wird der gesamte Multicast-Datenverkehr vom Switch an den Router gesendet. |
Beitreten | Multicast-Datenverkehr für eine Multicast-MAC-Adresse von der Layer-3-Gruppenadresse G wird an den Router gesendet. Diese Pakete enthalten Gruppe G im Feld "Group Address" (Gruppenadresse) des RGMP-Pakets. |
Urlaub | Multicast-Datenverkehr für die Gruppe G wird nicht an den Router gesendet. Diese Pakete enthalten Gruppe G im Gruppenadressfeld des RGMP-Pakets. |
Hello- und Bye-Pakete verwenden 0.0.0.0 als Gruppenadresse im RGMP-Paket. Bei Beitritt und Austritt wird die Gruppenadresse verwendet, die den Router interessiert (zum Beitritt oder zum Verlassen).
RGMP-Pakete verwenden die folgenden Adresstypen:
Adresstyp | Verwendete Adresse |
---|---|
Ziel-MAC-Adresse aller RGMP-Pakete | 01-00-5e-00-00-19 |
Ziel-IP-Adresse aller RGMP-Pakete | 224,0,0,25 |
Die in RGMP Hello und Bye verwendete Gruppenadresse. | 0,0 0,0 |
Bei der RGMP-Join-and-Leave-Gruppenadresse | Multicast-Gruppe, für die Join oder Leave gesendet wird |
Wenn RGMP auf dem Router aktiviert ist, sendet der Router eine RGMP Hello-Meldung an den Switch, die besagt, dass der Switch Multicast-Datenverkehr nicht an diesen Router weiterleiten soll, es sei denn, eine RGMP-Join wird speziell für eine Gruppe gesendet. Beachten Sie außerdem, dass PIM auf dem Router konfiguriert werden muss, damit diese Funktion funktioniert. RGMP-Hello-Nachrichten werden in denselben Intervallen für die erneute Übertragung wie PIM-Hello-Nachrichten gesendet (der Standardwert ist 30 Sekunden). RGMP-Hello-Nachrichten gehen immer PIM-Hello-Nachrichten voraus.
Wenn RGMP auf dem Router deaktiviert ist, sendet er eine RGMP-Bye-Meldung, um dem Switch anzuzeigen, dass der Router kein RGMP mehr ausführt und dass der gesamte Multicast-Datenverkehr erneut an diesen Router weitergeleitet werden soll.
Wenn ein Router eine PIM-Join-Nachricht sendet, erstellt er auch eine RGMP-Join-Nachricht und sendet sie auf derselben Schnittstelle aus, auf der die PIM-Join-Nachricht gesendet werden soll. In den vorherigen Diagrammen als Beispiel sendet R4 eine PIM Join-Nachricht an den RP, wenn er einen IGMP-Bericht vom Empfänger für die Gruppe G erhält. Es sendet außerdem eine RGMP-Join-Nachricht an dieselbe Schnittstelle, die dann vom Switch S1 erfasst wird. S1 verarbeitet das Paket und fügt diesen Router-Port dem statischen Layer-2-Eintrag (statischer CAM-Eintrag) für die Gruppe G hinzu. Dies ermöglicht die Weiterleitung des Datenverkehrs für die Gruppe G an diesem Port.
Zusammenfassung:
RGMP-Join wird immer dann gesendet, wenn ein Router einen (*,G)-Eintrag erstellt und auf derselben Schnittstelle gesendet wird, auf der er eine PIM-Join-Nachricht sendet.
RGMP-Join wird immer dann gesendet, wenn ein Router einen (S,G)-Eintrag erstellt. Der Router sendet an der Schnittstelle eine PIM-Join-Nachricht an S, und daher wird die RGMP-Join-Nachricht auch auf derselben Schnittstelle an S gesendet.
RGMP-Join wird immer dann gesendet, wenn PIM Join (PIM-Join) gesendet wird, jedoch nicht, wenn PIM Join (PIM-Join) empfangen wird.
Wenn mehrere Quellen an die Gruppe G gesendet werden und es einen (*,G)-Eintrag gibt, wird nur eine RGMP-Join gesendet.
Wenn ein Router eine PIM Prune-Nachricht für eine (*,G) oder (S,G) sendet, prüft er auch, ob für die Schnittstelle, auf der der PIM Prune gesendet wurde, mindestens ein anderer mroute-Eintrag für diese Gruppe vorhanden ist. Wenn kein anderer Eintrag vorhanden ist, wird auf derselben Schnittstelle ein RGMP Leave gesendet.
Wenn RGMP deaktiviert und IGMP-Snooping auf dem Switch aktiviert ist, verfügt jeder Multicast-Gruppenweiterleitungseintrag im Switch über eine Liste von Ausgabeports, die alle Multicast-Router-Ports sowie alle Ports enthält, an denen interessierte Hosts der Multicast-Gruppe hinzugefügt werden. Wenn RGMP aktiviert ist, ändern sich die folgenden Dinge:
Switches senden keine Multicast-Gruppe an einen RGMP-fähigen Router, es sei denn, der Router fordert diese ausdrücklich an (mit Ausnahme der reservierten Gruppe im Bereich 224.0.0.x und für 224.0.1.[39-40]).
Switches senden weiterhin Multicast-Datenverkehr von allen Gruppen an nicht-RGMP-fähige Router.
Wenn ein RGMP Hello-Paket von einem Router-Port empfangen wird, markiert der Switch diesen Router-Port als RGMP-fähig, und der allgemeine Multicast-Datenverkehr wird nicht mehr an diesen Multicast-Router-Port gesendet.
Hinweis: RGMP Hello-Pakete werden im Allgemeinen nicht aus dem Chassis weitergeleitet. RGMP Hello-Pakete werden nur dann weitergeleitet, wenn der erste RGMP Hello auf einem Port empfangen wurde. Der Port wird dann als RGMP-Port markiert und das Hello-Paket an einen anderen RGMP-fähigen Multicast-Router-Port weitergeleitet.
Nach Erhalt des RGMP-Bytes muss der Router-Port als RGMP-Router-Port markiert und dieser Port für alle vorhandenen Gruppen in diesem VLAN hinzugefügt werden.
Wenn ein RGMP-Join-Paket für eine bestimmte Gruppe empfangen wird, fügt der Switch den Router-Port, von dem die RGMP-Join empfangen wurde, der Liste der Zielports für diese Gruppe hinzu. RGMP-Joins werden auch an alle RGMP-fähigen Router-Ports weitergeleitet.
Wenn ein RGMP-Leave-Paket für eine bestimmte Gruppe empfangen wird, entfernt der Switch den Router-Port aus der Port-Gruppe, die an diesem Empfang interessiert ist.
So aktivieren Sie RGMP auf einem Switch:
#set igmp enable !--- If this has not been done previously. #set rgmp enable
Sie können die Einrichtung überprüfen, indem Sie Folgendes eingeben:
#sh rgmp group #sh multi router #sh rgmp stat #sh multi group
So konfigurieren Sie RGMP auf einem Router:
#ip rgmp !--- In interface mode.
und, falls nicht bereits geschehen,
#ip multicast-routing !--- In global configuration mode. #ip pim sparse-mode !--- In interface mode.
Der RGMP auf dem Catalyst 6000 mit Cisco IOS-Systemsoftware weist folgende Merkmale auf:
Standardmäßig auf allen L2-Ports aktiviert (Switch-Port) und kann nicht deaktiviert werden
muss an jedem L3-Multicast-Port aktiviert werden, wenn die L3-Multicast-Schnittstelle als RGMP-Router fungieren soll. Dazu wird der Befehl ip rgmp im Schnittstellenmodus (wie bei herkömmlichen Cisco IOS-Routern) ausgegeben.
Schnittstellen, auf denen RGMP ausgeführt wird, und alle anderen RGMP-Router, die vom IGMP-Snooping erkannt werden, können mithilfe des folgenden Befehls überprüft werden:
Boris#show ip igmp snooping mrouter vlan ports -----+---------------------------------------- 1 Po3,Router 10 Gi3/8,Router 11 Gi3/8,Router 100 Router 101 Router 198 Po3,Router 199 Po3,Router+ 222 Router '+'- RGMP capable router port Boris#
Die vorherige Ausgabe zeigt einen Catalyst 6000 mit Cisco IOS-Software und dem auf der VLAN 199-Schnittstelle konfigurierten Befehl ip rgmp. Im VLAN 199 ist der Router als RGMP-fähig gekennzeichnet. Der Router in der Cisco IOS-Software steht für den 6500-Router selbst in VLAN 199.
Dieses Diagramm stellt ein tatsächliches Netzwerk dar, das RGMP verwendet:
In diesem Fall sind nur fido und die Multilayer Switch Feature Card (MSFC) in taras RGMP-fähige Router. Donald, Daniella und Piggy sind nicht RGMP-fähige Router. Auf der seriellen hinter dem Spargel befindet sich eine Multicast-Quelle 4.4.4.1, die an 224.1.1.1 gesendet wird. Taras-msfc führt das VLAN-übergreifende Routing zwischen VLAN 2 und VLAN 3 durch. In VLAN 2 gibt es keinen Empfänger, in VLAN 3 jedoch zwei Empfänger: einer hinter dem Fido und einer hinter Donald.
Hinweis: Im nächsten Abschnitt wird davon ausgegangen, dass die Ausgabe, der kein bestimmter Befehl vorangestellt wurde, aus debug ip rgmp auf den Routern stammt und Trace Mcast 5 auf dem Switch festlegt.
Aktivieren Sie zunächst RGMP auf taras (einem Catalyst 6000-Switch), vorausgesetzt, dass noch keiner der Router für RGMP konfiguriert ist. Sobald RGMP aktiviert ist, fügt der Switch die Multicast-MAC-Adresse 01-00-5e-00-00-19 zur System-CAM-Tabelle hinzu, d. h. er beginnt, alle an diese MAC-Adresse gesendeten Pakete zu überwachen. Dies ist die Adresse, die 224.0.0.25 entspricht, die von RGMP verwendet wird:
taras (enable) set rgmp enable RGMP enabled. taras (enable) show cam sys * = Static Entry. + = Permanent Entry. # = System Entry. R = Router Entry. X = Port Security Entry $ = Dot1x Security Entry VLAN Dest MAC/Route Des [CoS] Destination Ports or VCs / [Protocol Type] ---- ------------------ ----- ------------------------------------------- 1 00-d0-00-3f-8b-fc R# 15/1 1 00-d0-00-3f-8b-ff # 1/3 1 01-00-0c-cc-cc-cc # 1/3 1 01-00-0c-cc-cc-cd # 1/3 1 01-00-0c-dd-dd-dd # 1/3 1 01-00-5e-00-00-19 # 1/3 1 01-80-c2-00-00-00 # 1/3 1 01-80-c2-00-00-01 # 1/3 2 00-d0-00-3f-8b-fc R# 15/1 2 01-00-0c-cc-cc-cc # 1/3 2 01-00-0c-cc-cc-cd # 1/3 2 01-00-0c-dd-dd-dd # 1/3 2 01-00-5e-00-00-19 # 1/3 2 01-80-c2-00-00-00 # 1/3 2 01-80-c2-00-00-01 # 1/3 3 00-d0-00-3f-8b-fc R# 15/1 3 01-00-0c-cc-cc-cc # 1/3 3 01-00-0c-cc-cc-cd # 1/3 3 01-00-0c-dd-dd-dd # 1/3 3 01-00-5e-00-00-19 # 1/3 3 01-80-c2-00-00-00 # 1/3 3 01-80-c2-00-00-01 # 1/3
Aktivieren Sie jetzt RGMP auf taras-msfc und fido. Der Router wird im Schnittstellenmodus konfiguriert, und während debug ip rgmp ausgeführt wird, sehen Sie, dass der Router alle 30 Sekunden beginnt, RGMP Hello-Pakete an dieser Schnittstelle zu senden.
taras(config-if)#ip rgmp 00:10:24: RGMP: Sending a Hello packet on Ethernet0 00:10:54: RGMP: Sending a Hello packet on Ethernet0 00:11:24: RGMP: Sending a Hello packet on Ethernet0 00:11:54: RGMP: Sending a Hello packet on Ethernet0
Wenn Sie jetzt den Switch betrachten, sehen Sie, dass die Ports 4/6 und 15/1 als RGMP-fähige Router-Ports markiert sind. Beachten Sie, dass der Switch unmittelbar vor einem PIM Hello immer einen RGMP Hello empfängt:
MCAST-IGMPQ:recvd an RGMP Hello on the port 15/1 vlanNo 3 GDA 0.0.0.0 MCAST-RGMP: Received RGMP Hello in vlanNo 3 on port 15/1 MCAST-IGMPQ:recvd a PIM V2 packet of type HELLO on the port 15/1 vlanNo 3 taras (debug-eng) show multi ro Port Vlan ---------- ---------------- 4/3 3 4/4 2 4/5 3 4/6 + 3 15/1 + 2-3 Total Number of Entries = 5 '*' - Configured '+' - RGMP-capable
Da hinter Donald ein aktiver Empfänger vorhanden ist (noch kein Empfänger hinter fido), muss der Multicast-Datenverkehr in VLAN 2 an VLAN 3 weitergeleitet werden. Daher muss die MSFC in taras den Datenverkehr in VLAN 2 abrufen. Da RGMP jedoch aktiviert ist, leitet der Switch den Multicast-Datenverkehr nicht mehr an die MSFC weiter. Die MSFC muss eine RGMP-Join-Nachricht für VLAN 2 an den Switch senden, um diese Gruppe zu empfangen.
Der Router sendet:
16:10:28: RGMP: Sending a Join packet on Vlan2 for group 224.1.1.1 16:10:29: RGMP: Sending a Join packet on Vlan2 for group 224.1.1.1
Der Supervisor auf dem Switch empfängt Folgendes:
MCAST-RGMP: Received RGMP Join for 224.1.1.1 in vlanNo 2 on port 15/1
Mithilfe der Gruppe show rgmp können Sie sehen, dass Port 15/1 der Gruppe 01-00-5e-01-01-01 in VLAN 2 beigetreten ist. Beachten Sie, dass in VLAN 3 der statische CAM-Eintrag vorhanden ist, der einzige Router-Port, der in der Port-Liste enthalten ist, jedoch der Router-Port des nicht RGMP-fähigen Routers (d. h. 15/1 und 4/6 sind nicht in der Port-Liste für den Eintrag in VLAN 3 enthalten, da diese Router RGMP-fähig sind und keine RGMP-Verbindung in VLAN 3 gesendet haben). Beachten Sie auch in der statischen CAM-Tabelle, dass die Gruppen 01-00-5e-00-01-[27,28], entsprechend 224.0.1.[39,40], die von auto-rp verwendet werden, von dem RGMP-Betrieb nicht betroffen sind. Der gesamte Datenverkehr für diese Gruppen geht weiterhin an alle Multicast-Router, unabhängig davon, ob diese RGMP-fähig sind:
taras (enable) show cam sta * = Static Entry. + = Permanent Entry. # = System Entry. R = Router Entry. X = Port Security Entry $ = Dot1x Security Entry VLAN Dest MAC/Route Des [CoS] Destination Ports or VCs / [Protocol Type] ---- ------------------ ----- ------------------------------------------- 2 01-00-5e-01-01-01 4/4,15/1 2 01-00-5e-00-01-27 4/4,15/1 2 01-00-5e-00-01-28 4/4,15/1 3 01-00-5e-01-01-01 4/5,4/3 3 01-00-5e-00-01-27 4/3,4/5-6,15/1 3 01-00-5e-00-01-28 4/3,4/5-6,15/1 taras (enable) show rgmp group 01-00-5e-01-01-01 RGMP enabled VLAN Dest MAC/Route Des [CoS] RGMP Joined Router Ports ---- ------------------ ----- ------------------------ 2 01-00-5e-01-01-01 15/1 Total Number of Entries = 1
Sehen Sie sich nun die RGMP-Statistiken für VLAN 2 an. Der Switch empfängt regelmäßig RGMP Hello- und RGMP Join-Pakete. Alle 30 Sekunden erhält er von taras-msfc ein RGMP Hello, und taras-msfc sendet jedes Mal eine RGMP-Join für 224.1.1.1, wenn er eine PIM-Join-Nachricht für diese Gruppe sendet:
taras (enable) show rgmp stat 2 RGMP enabled RGMP statistics for vlan 2: Receive : Valid pkts: 67 Hellos: 40 Joins: 27 Leaves: 0 Join Alls: 0 Leave Alls: 0 Byes: 0 Discarded: 0 Transmit : Total pkts: 0 Failures: 0 Hellos: 0 Joins: 0 Leaves: 0 Join Alls: 0 Leave Alls: 0 Byes: 0
Bis zu diesem Zeitpunkt haben taras-msfc und fido nur Hello-Pakete in VLAN 3 gesendet:
taras (enable) show rgmp stat 3 RGMP enabled RGMP statistics for vlan 3: Receive : Valid pkts: 468 Hellos: 468 Joins: 0 Leaves: 0 Join Alls: 0 Leave Alls: 0 Byes: 0 Discarded: 0 Transmit : Total pkts: 0 Failures: 0 Hellos: 0 Joins: 0 Leaves: 0 Join Alls: 0 Leave Alls: 0 Byes:
Wenn Sie jetzt Receiver B hinter fido starten, sendet der RGMP-fähige Router eine RGMP-Join-Nachricht an den Switch für die Gruppe 224.1.1.1. Der Switch empfängt diesen und fügt Port 4/6 (fido) zur Liste der interessierten Empfänger für diese Gruppe in VLAN 3 hinzu.
Auf dem Router sehen Sie:
01:07:49: RGMP: Sending a Join packet on Ethernet0 for group 224.1.1.1 01:07:49: RGMP: Sending a Join packet on Ethernet0 for group 224.1.1.1 01:07:49: RGMP: Sending a Join packet on Ethernet0 for group 224.1.1.1 01:07:51: RGMP: Sending a Join packet on Ethernet0 for group 224.1.1.1
Der Switch empfängt die RGMP-Join-Nachricht und fügt dem statischen Eintrag den Router-Port 4/6 hinzu. Das Ergebnis wird in verschiedenen show-Befehlen angezeigt:
MCAST-IGMPQ:recvd an RGMP Join on the port 4/6 vlanNo 3 GDA 224.1.1.1 MCAST-RGMP: Received RGMP Join for 224.1.1.1 in vlanNo 3 on port 4/6 EARL-MCAST: SetRGMPPortInGDA: RGMP port 4/6 in vlanNo 3 joining for the first time for this group 224.1.1.1 MCAST-RELAY:Relaying packet on port 15/1 vlanNo 3 MCAST-SEND: Inband Transmit Succeeded for IGMP RELAY msg on port 15/1 vlanNo 3 taras (enable) show rgmp group RGMP enabled VLAN Dest MAC/Route Des [CoS] RGMP Joined Router Ports ---- ------------------ ----- ------------------------ 2 01-00-5e-01-01-01 15/1 3 01-00-5e-01-01-01 4/6 Total Number of Entries = 2 taras (enable) show cam sta 01-00-5e-01-01-01 * = Static Entry. + = Permanent Entry. # = System Entry. R = Router Entry. X = Port Security Entry $ = Dot1x Security Entry VLAN Dest MAC/Route Des [CoS] Destination Ports or VCs / [Protocol Type] ---- ------------------ ----- ------------------------------------------- 2 01-00-5e-01-01-01 4/4,15/1 3 01-00-5e-01-01-01 4/3,4/5-6 taras (enable) show rgmp stat 3 RGMP enabled RGMP statistics for vlan 3: Receive : Valid pkts: 542 Hellos: 532 Joins: 10 Leaves: 0 Join Alls: 0 Leave Alls: 0 Byes: 0 Discarded: 0 Transmit : Total pkts: 0 Failures: 0 Hellos: 0 Joins: 0 Leaves: 0 Join Alls: 0 Leave Alls: 0 Byes: 0
Nehmen wir an, dass Empfänger B nicht mehr interessiert ist, sodass fido den Multicast-Datenverkehr für diese Gruppe nicht mehr benötigt und einen PIM Prune für die Gruppe in der Schnittstelle sendet. Der Router sendet außerdem einen RGMP Leave-Befehl für die Gruppe, um dem Switch mitzuteilen, dass er sich nicht mehr für diese Gruppe interessiert.
Wenn Receiver B noch aktiv ist, zeigt show ip mroute den (S,G)-Eintrag mit einer C-Markierung an. Dies weist darauf hin, dass ein verbundener Empfänger interessiert ist:
fido#show ip mroute 224.1.1.1 IP Multicast Routing Table Flags: 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, X - Proxy Join Timer Running, A - Advertised via MSDP, U - URD, I - Received Source Specific Host Report Outgoing interface flags: H - Hardware switched Timers: Uptime/Expires Interface state: Interface, Next-Hop or VCD, State/Mode (*, 224.1.1.1), 00:01:18/00:00:00, RP 10.10.10.1, flags: SJCL Incoming interface: Ethernet0, RPF nbr 33.3.3.1 Outgoing interface list: Serial0, Forward/Sparse-Dense, 00:01:18/00:01:41 (4.4.4.1, 224.1.1.1), 00:01:16/00:02:59, flags: CLJT Incoming interface: Ethernet0, RPF nbr 33.3.3.1 Outgoing interface list: Serial0, Forward/Sparse-Dense, 00:01:16/00:01:43
Wenn Empfänger B nicht mehr interessiert ist, sendet PIM eine Prune-Nachricht, aber der (S,G)-Eintrag wird nicht sofort entfernt. Der Timer (rot markiert) wird abgeschaltet, bis die Eingabe abgeschlossen ist. Beachten Sie, dass der Eintrag zu diesem Zeitpunkt immer noch vorhanden ist, aber mit der P-Markierung uns sagt, dass er abgeschnitten ist und wird auslaufen.
01:15:25: PIM: Send v2 Prune on Ethernet0 to 33.3.3.1 for (10.10.10.1/32, 224.1.1.1), WC-bit, RPT-bit, S-bit 01:15:25: PIM: Received v2 Join/Prune on Ethernet0 from 33.3.3.4, not to us 01:15:28: RGMP: Sending a Hello packet on Ethernet0 01:15:29: PIM: Received v2 Join/Prune on Ethernet0 from 33.3.3.3, not to us 01:15:29: PIM: Join-list: (*, 224.1.1.1) RP 10.10.10.1, RPT-bit set, WC-bit set, S-bit set 01:15:29: PIM: Join-list: (4.4.4.1/32, 224.1.1.1), S-bit set IP Multicast Routing Table Flags: 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, X - Proxy Join Timer Running, A - Advertised via MSDP, U - URD, I - Received Source Specific Host Report Outgoing interface flags: H - Hardware switched Timers: Uptime/Expires Interface state: Interface, Next-Hop or VCD, State/Mode (*, 224.1.1.1), 00:08:31/00:02:39, RP 10.10.10.1, flags: SJP Incoming interface: Ethernet0, RPF nbr 33.3.3.1 Outgoing interface list: Null (4.4.4.1, 224.1.1.1), 00:08:29/00:02:29, flags: PJT Incoming interface: Ethernet0, RPF nbr 33.3.3.1 Outgoing interface list: Null
Nachdem der (S,G)-Eintrag das Zeitlimit erreicht hat, sendet fido einen RGMP Leave-Befehl für die Gruppe 224.1.1.1 an den Switch:
01:18:50: RGMP: Sending a Leave packet on Ethernet0 for group 224.1.1.1 01:18:58: RGMP: Sending a Hello packet on Ethernet0
Nachdem der Switch den RGMP Leave-Befehl erhalten hat, sehen Sie in der RGMP-Gruppe, dass für VLAN 3 keine Einträge mehr vorhanden sind:
MCAST-IGMPQ:recvd an RGMP Leave on the port 4/6 vlanNo 3 GDA 224.1.1.1 MCAST-RGMP: Received RGMP Leave for 224.1.1.1 in vlanNo 3 on port 4/6 EARL-MCAST: ClearRGMPPortInGDA last RGMP port going away for all groups - delete rgmp_info too for GDA 01-00-5e-01-01-01 vlanNo 3 MCAST-RELAY:Relaying packet on port 15/1 vlanNo 3 MCAST-SEND: Inband Transmit Succeeded for IGMP RELAY msg on port 15/1 vlanNo 3 taras (debug-eng) show rgmp group RGMP enabled VLAN Dest MAC/Route Des [CoS] RGMP Joined Router Ports ---- ------------------ ----- ------------------------ 2 01-00-5e-01-01-01 15/1 taras (debug-eng) show rgmp stat 3 RGMP enabled RGMP statistics for vlan 3: Receive : Valid pkts: 588 Hellos: 574 Joins: 11 Leaves: 3 Join Alls: 0 Leave Alls: 0 Byes: 0 Discarded: 0
Wenn Sie RGMP auf dem Fido deaktivieren, wird ein RGMP-Bye gesendet, und der Switch wechselt 4/6 von einem RGMP-Router-Port zu einem normalen Router-Port:
Auf fido:
01:24:45: RGMP: Sending a Bye packet on Ethernet0
Auf dem Switch:
MCAST-IGMPQ:recvd an RGMP Bye on the port 4/6 vlanNo 3 GDA 0.0.0.0 MCAST-RGMP: Received RGMP Bye in vlanNo 3 on port 4/6 MCAST-RELAY:Relaying packet on port 15/1 vlanNo 3 MCAST-SEND: Inband Transmit Succeeded for IGMP RELAY msg on port 15/1 vlanNo 3 taras (debug-eng) show rgmp stat 3 RGMP enabled RGMP statistics for vlan 3: Receive : Valid pkts: 603 Hellos: 588 Joins: 11 Leaves: 3 Join Alls: 0 Leave Alls: 0 Byes: 1 Discarded: 0 Transmit : Total pkts: 0 Failures: 0 Hellos: 0 Joins: 0 Leaves: 0 Join Alls: 0 Leave Alls: 0 Byes: 0 taras (enable) show multi router Port Vlan ---------- ---------------- 4/3 3 4/4 2 4/5 3 4/6 3 4/48 1 15/1 + 2-3