Multicast: Mehrpunktverbindungen für effiziente Datenübertragung

Für die Radio- und Fernsehübertragung spielt es keine Rolle, wie viele Nutzer zugeschaltet sind und das Angebot in Anspruch nehmen. Bei der Übertragung von Nachrichten in IP-Netzwerken sieht dies gänzlich anders aus: Sollen beispielsweise mehrere verschiedene User auf einen Livestream zugreifen können, würde die standardmäßig angewendete Unicast-Kommunikation via IP voraussetzen, dass die sendende Station die entsprechenden Pakete separat an jeden Adressaten sendet. Da dies die zur Verfügung stehende Bandbreite innerhalb kürzester Zeit auslasten würde, hat man schon früh die Routing-Technik Multicast (auch: IP-Multicast) entwickelt und implementiert. Diese ermöglicht es einem Sender, IP-Datenströme in einem einzelnen Schritt an viele Empfänger gleichzeitig auszuliefern.

Was ist IP-Multicast?

Das Internet Protocol ist das Standardprotokoll für die Kommunikation in Computernetzwerken. Ob Internet oder lokales Netzwerk – der Versand elektronischer Nachrichten mithilfe von IP-Adressen usw. ist aus der modernen Netzwelt nicht wegzudenken. Der standardmäßig genutzte Protokollstack TCP/IP hält eine Reihe von Protokollen und Methoden bereit, die die unterschiedlichsten Anforderungen abdecken.

Eine elementare Rolle nehmen dabei z. B. die verfügbaren Kommunikationsformen ein, von denen dem sogenannten Multicasting insbesondere in jüngster Zeit eine immer höhere Bedeutung zukommt. Dieses Konzept, das auch als IP-Multicasting bekannt ist, ermöglicht die Übertragung von einem Punkt zu mehreren Empfängern. Aus diesem Grund bezeichnet man Multicast-Verbindungen auch als Punkt-zu-Mehrpunkt-Verbindung.

Zur Anzeige dieses Videos sind Cookies von Drittanbietern erforderlich. Ihre Cookie-Einstellungen können Sie hier aufrufen und ändern.

Mit der Möglichkeit, einen einzigen Datenstrom an mehrere Adressaten zu schicken, grenzt sich Multicasting klar von der standardmäßigen Unicast-Übertragung ab, bei der IP-Pakete via Direktverbindung zwischen den kommunizierenden Systemen übermittelt werden. Von dem sehr ähnlichen Broadcasting unterscheidet sich IP-Multicasting dahingehend, dass die Datenströme nicht an alle Teilnehmer im Netzwerk gesendet werden, sondern nur an solche, die sich zuvor beim Sender angemeldet haben und somit Teil der entsprechenden Multicast-Gruppe sind. Über eine zugeordnete Multicast-Adresse kann der Sender die Gruppe dann gleichzeitig mit dem jeweiligen Datenstrom versorgen. In der Internet-Protocol-Version IPv4 ist hierfür der Adressbereich zwischen 224.0.0.0 und 239.255.255.255 reserviert, während für Multicast-Adressen in IPv6 der Beginn FF00::/8 vorgesehen ist.

Wie funktioniert die Multicast-Adressierung?

Die zuvor angesprochene Gruppen-Adressierung ist eine der entscheidenden Eigenschaften von IP-Multicasting und als solche elementar für die Funktionsweise des Kommunikationskonzepts. Dabei gibt es seinerseits die Möglichkeit einer statischen Adressierung, bei der beispielsweise eine Verbindung zu einem Multicast-Server aufgebaut wird, der den entsprechenden Service anbietet. Andererseits können Multicast-Adressen auch dynamisch bezogen werden, da die dahintersteckenden Multicast-Gruppen nicht dauerhaft existieren müssen. Auf diese Weise lassen sich auch private Gruppen problemlos erstellen und ebenso leicht wieder auflösen. Unabhängig davon, ob die Adresszuteilung statisch oder dynamisch stattfindet, ist in IP-Netzwerken der bereits vorgestellte Adressbereich 224.0.0.0 bis 239.255.255.255 (bzw. FF00::/8), der auch als Class-D-Adressraum bezeichnet wird, für diese reserviert.

Zur Anzeige dieses Videos sind Cookies von Drittanbietern erforderlich. Ihre Cookie-Einstellungen können Sie hier aufrufen und ändern.

Der Beitritt in IP-Multicast-Gruppen wird standardmäßig durch die eingebundenen Netzwerkrouter und das Internet Group Management Protocol (IGMP) geregelt. Hierfür stellt das Protokoll, das Mitglied der Internetprotokollfamilie ist, verschiedene Nachrichtentypen zur Verfügung, mit denen Hosts den lokalen Router über den Beitrittswunsch informieren und Router die entsprechenden IP-Multicast-Datenströme beziehen und weiterleiten können. Ausgangspunkt der IGMP-Kommunikation ist dabei immer der Router, über den der Multicast-Sender mit dem Netzwerk verbunden ist. Der Sender selbst leitet die Pakete eines Datenstroms nur ein einziges Mal weiter, wobei er die Adresse der Multicast-Gruppe als Empfängeradresse angibt. Wie viele Endstationen er damit erreicht, erfährt er nicht.

IP-Multicast: Routing-Techniken und -Protokolle im Überblick

Das Routing, also den Transport der Multicast-Pakete über die einzelnen Router und Netzwerke hinweg, regeln beim Multicasting spezielle Routing-Protokolle. Diese arbeiten mit verschiedenen Algorithmen, um den Datenstrom möglichst effizient und schnell an die alle Mitglieder der entsprechenden Multicast-Gruppe weiterzuleiten. Ein Standardprotokoll gibt es dabei nicht, da die existierenden Protokolle jeweils für andere Aufgaben konzipiert wurden. So haben einige Vertreter ihre Stärken, wenn die Gruppenmitglieder nahe beieinander liegen, während andere wiederum dann im Vorteil sind, wenn die Empfänger möglichst weit voneinander entfernt sind. Zudem existieren verschiedene Routing-Algorithmen, wobei sich insbesondere Reverse Path Forwarding (RPF) und Truncated Reverse Path Forwarding (TRPF) etabliert haben.

Reverse Path Forwarding (RPF)

Reverse Path Forwarding ist eine Methode, die eine kreisfreie Weiterleitung von IP-Multicasting-Paketen gewährleistet, bei der kein Host mehrfach besucht wird. Entscheidend für die Weitersendung des Datenstroms sind dabei dessen Quelladresse sowie die zuvor im Netzwerk passierte Schnittstelle. Sobald ein Multicast-Paket die Schnittstelle eines Routers erreicht, gleicht dieser beides mit einer Routing-Tabelle ab, die zuvor entweder automatisch per Broadcast ermittelt oder manuell konfiguriert wurde. Gibt es einen Eintrag für die Quelladresse, der die zuvor passierte Schnittstelle bestätigt, ist der RPF-Check erfolgreich und der Router leitet den Multicast-Strom an alle anderen verfügbaren Schnittstellen weiter. Andernfalls verwirft er die Pakete.

RPF überprüft also rückwärtsgerichtet den Weg der Pakete. Um Router auf dem kürzesten Weg miteinander zu verbinden, kommen zudem Unicast-Routingverfahren zum Einsatz. Das Routing-Konstrukt wird auch als Multicast-Baum bezeichnet, wobei der Sender bzw. dessen Router die Wurzel, also den Ausgangspunkt, darstellt.

Truncated Reverse Path Forwarding (TRPF)

Beim Truncated Reverse Path Forwarding handelt es sich um eine Erweiterung des RPF-Konzepts, bei der die Multicast-Pakete lediglich an Router weitergeleitet werden, die mindestens ein Mitglied der Multicast-Gruppe bedienen. Zunächst findet die normale, rückwärtsgerichtete Überprüfung von Quelladresse und Empfangsschnittstelle statt. Im Anschluss überprüft TRPF der Reihe nach die nächstmöglichen Schnittstellen und entscheidet dann, welche Stellen bedient werden. Das entscheidende Kriterium ist dabei, ob eine Schnittstelle Hosts beherbergt, die für die Multicast-Gruppe eingetragen sind, an die sich der empfangene Datenstrom richtet. Ist dies der Fall, werden die Pakete weitergeleitet, andernfalls nicht.

Hinweis

Um TRPF nutzen zu können, benötigt ein Multicast-Router zusätzlich zu der Routing-Tabelle auch eine Auflistung aller Multicast-Gruppen, die über die verschiedenen Netzwerkschnittstellen erreichbar sind.

Welche Multicast-Routing-Protokolle gibt es?

Für IP-Multicasting gibt es kein Standard-Routing-Protokoll. Hintergrund sind der erwähnte Verteilungsradius sowie die Anzahl der Empfängerstationen, die maßgeblichen Einfluss auf die erforderliche Protokollbasis haben. Grob unterscheidet man daher die zwei Ansätze „Dense-Mode“ (Empfänger liegen „dicht“ aneinander) und „Sparse-Mode“ (Empfänger sind weit „zerstreut“). Allerdings unterscheiden sich die Protokolle auch in anderen Punkten wie die in den folgenden Abschnitten vorgestellten Vertreter DVMRP, MOSPF und PIM deutlich machen.

Distance Vector Multicast Routing Protocol (DVMRP)

Das Distance Vector Multicast Routing Protocol, kurz DVMRP, wurde 1988 in RFC 1075 als experimentelle Lösung für das Routing von Multicast-Paketen in IP-Netzen vorgestellt. DVMRP wurde von einer Arbeitsgruppe der Stanford University entwickelt, wobei RIP (Routing Information Protocol), ein Unicast-Routing-Protokoll auf Basis des Distanzvektoralgorithmus, als Grundlage diente.

Hinweis

RIP wurde erstmals in RFC 1058 definiert. Seitdem wurde das Protokoll in mehreren Schritten überarbeitet. Mit RIPng (RIP next generation) existiert u. a. eine Version, die das Routing-Protokoll um die IPv6-Unterstützung erweitert.

Für die effektive Berechnung der Paketrouten implementierte das Team die Reverse-Path-Forwarding-Technik. Auf deren Basis erstellt ein Multicast-Router automatisch eine eigene Routing-Tabelle, in der er für alle anderen Router des Netzwerks einen sogenannten Distanzvektor speichert. Ein solcher Eintrag enthält Angaben über die Kosten, die mit der Datenübertragung zum jeweiligen Router verknüpft sind (z. B. Übertragungsverzögerung oder Anzahl der Zwischenstationen), sowie Angaben darüber, an welchen benachbarten Router das Paket weitergegeben werden muss, um diesen Zielrouter zu erreichen. Als Nachrichtenprotokoll für den Austausch zwischen den verschiedenen Routern kommt IGMP zum Einsatz.

Multicast Open Shortest Path First (MOSPF)

Bei Multicast Open Shortest Path First (MOSPF) handelt es sich um eine Erweiterung des Routingprotokolls OSPF, die das Multicast-Routing innerhalb eines OSPF-basierten Netzwerks ermöglicht. So verwaltet jeder Router eine komplette Datenbank der gesamten Netztopologie (Anordnung der Geräte und Leitungen), die dank neuer „Group-Membership“-LSA (Nachrichten mit Informationen über die Gruppenmitgliedschaft) auch Einträge über den Standort aller Teilnehmer einer IP-Multicast-Gruppe enthalten kann. Die Feststellung der Mitgliedschaften gelingt durch die Router, die hierfür auf IGMP-Nachrichten zurückgreifen. Ausgehend von dem Router, hinter dem sich der Multicast-Sender befindet, kann also problemlos eine Baumstruktur erzeugt werden, die den jeweils kürzesten Paketweg ausweist.

Hinweis

MOSPF benötigt kein weiteres Routing-Protokoll für die Berechnung des Multicast-Baums, da es zu diesem Zweck auf das Routing von OSPF zurückgreift.

Protocol Independent Multicast (PIM)

Protocol Independent Multicast (PIM) ist eine Routing-Protokollfamilie, die keinen eigenen Mechanismus zum Erstellen von Routing-Tabellen bereitstellt. Hierfür greift PIM auf die Informationen zurück, die von den im Netzwerk aktiven Unicast-Routing-Protokollen beschafft werden. Es spielt keine Rolle, um welches Protokoll es sich handelt, weshalb sich Protocol Independent Multicast sowohl in Netzen mit hoher als auch in Netzen mit niedriger Teilnehmerdichte einsetzen lässt. Zum Einsatz kommen dabei die beiden eingangs erwähnten Modi Dense-Mode (PIM-DM) und Sparse-Mode (PIM-SM).

In ersterem werden die Multicast-Datenströme an alle Netzwerkrouter gesendet, bis diese sich (aufgrund fehlender Gruppenmitglieder) vom Multicast-Baum abmelden. Im Gegensatz dazu dient im Sparse-Mode ein sogenannter Rendezvous-Punkt-Router als Schaltzentrale für das Handling der Multicast-Verbindungen. Dieser nimmt Multicast-Veröffentlichungen entgegen und leitet die Pakete an alle anfragenden Router weiter, in deren Teilnetzen sich mindestens ein Teilnehmer der Multicast-Gruppe befindet.

Zur Anzeige dieses Videos sind Cookies von Drittanbietern erforderlich. Ihre Cookie-Einstellungen können Sie hier aufrufen und ändern.

Multicast vs. Broadcast: Das sind die Unterschiede und Gemeinsamkeiten

Broadcasting stellt nicht nur eine Alternative zu IP-Multicasting dar, sondern kann auch Teil eines Multicasting-Konzepts sein. Der Vergleich „Multicast vs. Broadcast“ zeigt grundsätzlich eine wichtige Gemeinsamkeit beider Verfahren auf: Sowohl Broadcasting als auch Multicasting ermöglichen es, Mehrpunktverbindungen in IP-Netzen aufzubauen, mit deren Hilfe ein Sender mehrere Empfänger gleichzeitig erreicht. Der entscheidende Unterschied besteht darin, dass ein Broadcast immer alle Endpunkte in einem Netzwerk bzw. Netzwerksegment zum Ziel hat, während ein Multicast die Daten nur an die Multicast-Gruppe, also bestimmte Empfänger, übermittelt (wahlweise über Netzwerkgrenzen hinaus).

Da Broadcasts immer an alle Endpunkte gerichtet sind, bedarf es außerdem keines ausgeweiteten Adressbereichs, wie es bei Multicast der Fall ist. Ein gewöhnlicher Broadcast hat daher immer die Ziel-IP-Adresse 255.255.255.255, die für das Verfahren reserviert wurde. Optional sind direkte Broadcasts (auch lokale Broadcasts genannt) unter der Angabe der Subnetzmaske möglich. Broadcasting hat seine Vorteile, wenn Empfängeradressen unbekannt sind – beispielsweise bei der Datei- und Druckerfreigabe in Netzwerken oder bei der Vergabe von IP-Adressen via DHCP. Im Vergleich zu Multicasting erfordert das Verfahren aber wesentlich mehr Ressourcen, wobei überdies ein Teil der Bandbreite verschwendet wird.

Hinweis

In IPv6 existiert der Broadcast als Nachrichtenformat nicht mehr. Die Funktion, Nachrichten bzw. Datenpakete gleichzeitig an alle Geräte eines Netzes zu schicken, übernehmen in der neueren Internet-Protocol-Version spezielle Multicast-Adressen.