IGMP- und PIM-Multicast
Ich habe heute Morgen etwas mehr über IGMP und PIM gelernt. Hosts verwenden das Internet Group Management Protocol (IGMP), um sich beim Router zu registrieren, um bestimmten Multicast-Gruppen beizutreten oder sie zu verlassen. Der Router weiß dann, dass er den für eine bestimmte Multicast-Gruppe bestimmten Datenstrom an die registrierten Hosts weiterleiten muss. Derzeit gibt es drei Versionen von IGMP, die Versionen 1, 2 und 3.
- IGMPv1 – sendet regelmäßig Join-Anfragen (60-120 Sek.) an die Multicast-Adresse aller Hosts 224.0.0.1. IGMPv4 hat keinen definierten Mechanismus für Hosts, um die Multicast-Gruppe zu verlassen. Dort erfahren IGMP-Router, dass eine Gruppe bei einer Zeitüberschreitung nicht mehr verfügbar ist, da sie keine Anfragen von dieser bestimmten Gruppe erhalten.
- IGMPv2 – verfügt über gruppenspezifische Abfragen, die es einem Router ermöglichen, nur die Mitgliedschaft in einer einzelnen Gruppe statt in allen Gruppen abzufragen. Anstatt auf ein Timeout einer bestimmten Gruppe zu warten, senden die letzten Hosts, die einer Multicast-Gruppe beitreten, dem Router eine bestimmte Nachricht, dass er diese Gruppe verlässt.
- IGMPv3 – wird noch entwickelt und vorgeschlagen. Version 3 fügt die Möglichkeit hinzu, Multicasts basierend auf der Multicast-Quelle zu filtern, sodass Hosts angeben können, dass sie nur Verkehr von bestimmten Quellen innerhalb einer Multicast-Gruppe empfangen möchten.
Damit Layer-2-Geräte Multicast-Pakete erkennen, verwenden sie entweder das Cisco Group Management Protocol (CGMP) oder IGMP Snooping. Wie Sie vielleicht schon erraten haben, ist CGMP ein proprietäres Protokoll von Cisco, das speziell für Cisco-Switches entwickelt wurde. Es ermöglicht Ihnen, bestimmte Switch-Ports manuell für Multicast-Datenverkehr zu konfigurieren, aber diese Funktion ist aus diesem Grund nicht skalierbar. IGMP Snooping ermöglicht es einem Switch, auf zwischen Routern und Hosts gesendete IGMP-Nachrichten zu lauschen und seine MAC-Adresstabelle entsprechend zu aktualisieren.
PIM (Protocol Independent Multicast) wird von Routern verwendet, die Multicast-Pakete weiterleiten. PIM verwendet die normale IP-Routing-Tabelle in seinen Multicast-Berechnungen. PIM verwendet sogenannte Verteilungsbäume, um Multicast-Pakete zu übertragen. Es gibt zwei Arten von Bäumen
- Quellbaum – Ein Quellbaum wird für jede Quelle erstellt, die an jede Multicast-Gruppe sendet. Der Quellbaum hat seine Wurzel an der Quelle und hat Verzweigungen durch das Netzwerk zu den Senken.
- Gemeinsam genutzter Baum – Dies ist ein einzelner Baum, der von allen Quellen für jede Multicast-Gruppe gemeinsam genutzt wird. Der gemeinsam genutzte Baum hat eine einzige gemeinsame Wurzel, die als Rendezvous-Punkt (RP) bezeichnet wird. Quellen senden zunächst ihre Multicast-Pakete an den RP, der wiederum die Daten über einen gemeinsam genutzten Baum an Gruppenmitglieder weiterleitet.
PIM verwendet zwei Modi, die den Typ des zu verwendenden Verteilungsbaums bestimmen, einschließlich eines Hybridmodus:
- PIM Sparse-Modus (PIM-SM) – Der Sparse-Modus verwendet ein „Pull“-Modell, um Multicast-Datenverkehr zu senden. es verwendet einen gemeinsam genutzten Baum und erfordert daher die Definition eines RP.
- PIM Dense Mode (PIM-DM) – Der Dense Mode verwendet ein „Push“-Muster, das Multicast-Datenverkehr über das gesamte Netzwerk flutet. Der dichte Modus verwendet Quellbäume.
- PIN Sparse Dense Mode – verwendet sowohl den Sparse- als auch den Dense-Modus im gesamten Netzwerk