IPv6 Multicastlistener
Multicast Gruppenmanagement
- Um Pakete effizient an eine Multicast-Gruppenadresse zu routen, ist ein Protokoll für das Multicast-Gruppenmanagement erforderlich.
- Dieses Protokoll stellt sicher, dass Router Multicasts nur über Interfaces weiterleiten, wenn auf dem folgenden Link Mitglieder dieser Multicast-Gruppe registriert sind.
- Für das Multicast-Gruppenmanagement wird bei IPv4 das Internet Group Management Protocol (IGMP) Version 2 (RFC 2236) verwendet.
- Bei IPv6 übernimmt ICMPv6 diese Aufgabe.
- Die Entwicklung basiert auf der IGMPv2-Spezifikation, und RFC 2710 definiert diese ICMPv6-Nachrichten als Multicast Listener Discovery (MLD) Version 1.
- MLD ist ein asymmetrisches Protokoll.
- Das Verhalten von sogenannten Listeners, also Knoten, die Nachrichten für eine bestimmte Multicast-Gruppe erhalten wollen, unterscheidet sich vom Verhalten eines Routers.
- Ein Router führt beide Teile des Protokolls aus, für Adressen, für die er selbst Listener ist.
- Ein Listener verschickt Member Reports für seine Multicast-Adressen, um sich bei den Routern am Link für diese Adresse zu registrieren.
- Router tragen diese Adresse in ihre Liste für diesen Link ein und leiten Multicast-Nachrichten an die Gruppe weiter, solange sie in der Liste steht.
- Mit einer Done-Nachricht trägt sich ein Listener aus, wenn er nicht mehr an dieser Multicast-Gruppe interessiert ist.
- Im Unterschied zu IPv4 ist der Multicast-Support integraler Bestandteil von IPv6 und auf jedem IPv6-Knoten vorha
Hop Limit in MLD-Nachrichten
- Alle MLD-Nachrichten werden von einer Link-Local-Absenderadresse und mit einem Hop Limit von 1 versandt, um sicherzustellen, dass sie im lokalen Netz bleiben.
- Die MLD-Nachrichten enthalten einen Hop-by-Hop Options Header mit einem Router Alert, damit ein lokaler Router das Paket auch dann anschaut, wenn er nicht zur Multicast-Gruppe gehört.
MLD-Nachrichtentypen
- Zu MLD gehören drei ICMPv6-Nachric
Multicast Listener Query (Type 130)
- Wird von einem IPv6-Router benutzt, um Multicast Listener auf einem Link abzufragen. Es gibt zwei Arten von Queries:
- Die allgemeine Query wird benutzt, um herauszufinden, für welche Multicast-Gruppenadressen Empfänger an einem Link vorhanden sind.
- Das Multicast-Adressfeld ist in der allgemeinen Query auf 0 gesetzt.
- Die adress-spezifische Query wird benutzt, um herauszufinden, ob Empfänger für eine spezifische Multicast-Adresse an einem Link vorhanden sind.
- Das Multicast-Adressfeld enthält in der adress-spezifischen Query die entsprechende Multicast-Adresse.
Multicast Listener Report (Type 131)
- Wird von einem Empfänger benutzt, um sich für eine Multicast-Gruppe zu registrieren.
- Dies kann unaufgefordert oder als Antwort auf eine MLD Query eines Routers geschehen.
Multicast Listener Done (Type 132)
Wird von einem Empfänger geschickt, um sich aus einer Multicast-Gruppe auszutragen.
- Erhält ein Router eine MLD Done Nachricht vom letzten Empfänger einer Gruppe an einem Link, so trägt er *die Gruppe aus der Multicast-Liste für diesen Link aus.
Format
- Alle drei Nachrichtentypen haben dasselbe Format
Beschreibung der Felder
- Das Type-Feld ist für Multicast Listener Queries auf 130, für Multicast Listener Reports auf 131 und für Multicast Listener Done auf 132 gesetzt.
- Das Maximum Response Delay Feld wird nur bei Queries benutzt.
- Es enthält das maximale Delay in Millisekunden, in dem ein Knoten den Listener Report senden muss, um anzuzeigen, dass er für diese Adresse einen Listener hat.
- In allen anderen Nachrichten ist dieses Feld auf 0 gesetzt.
- Das Multicast-Adressfeld ist für allgemeine Queries auf 0 gesetzt und enthält die Multicast-Adresse für adress-spezifische Queries.
- Für Report- und Done-Nachrichten enthält dieses Feld die Multicast-Gruppe, auf die der Absender hört (Report), oder die Multicast-Gruppe, aus der er austritt (Done).
- Router führen eine Liste von Multicast-Empfängern.
Multicast Listener Discovery (MLD)
- Multicast Gruppenmanagement**
- Multicast-Adressen identifizieren Gruppen von Knoten. - Protokoll für Multicast-Gruppenmanagement notwendig, um effizientes Routing zu ermöglichen. - MLD (Multicast Listener Discovery) in IPv6 ersetzt IGMP (Internet Group Management Protocol) in IPv4.
- MLD Version 1**
- Asymmetrisches Protokoll für Listener und Router. - Listener senden Member Reports für Multicast-Adressen. - Router registrieren Gruppen und leiten Multicasts nur weiter, wenn Mitglieder vorhanden sind. - MLD-Nachrichten haben Hop Limit von 1, bleiben im lokalen Netz. - Drei Nachrichtentypen: Multicast Listener Query, Multicast Listener Report, Multicast Listener Done.
- Allgemeine Queries**
- An Link-Local All-Nodes Multicast-Adresse ff02::1 gesendet. - Vermeidung mehrfacher Reports durch zufällige Antwortverzögerung. - Keine MLD-Registrierung für Link-Local All-Nodes Multicast-Adresse ff02::1.
- MLD Version 2**
- Basierend auf IGMPv3, ermöglicht Source-Specific Multicast (SSM). - Nachrichtentypen: Multicast Listener Query (Type 130), Multicast Listener Report (Type 143). - Rückwärtskompatibel mit MLD Version 1. - Neue Query-Typen: General Query, Multicast Address Specific Query, Multicast Address and Source Specific Query.
- MLDv2 Query Typen**
- General Query für alle Multicast-Adressen. - Multicast Address Specific Query für spezifische Adresse. - Multicast Address and Source Specific Query für bestimmte Quellen.
- Current State Record, Filter Mode Change Record, Source List Change Record**
- Informieren über Listening Status, Filtermodusänderungen und Änderungen in der Source-Liste.
Multicast Router Discovery (MRD)
- Mechanismus zur Auffindung von Multicast-Routern. - Nachrichtentypen: Multicast Router Advertisement (Type 151), Multicast Router Solicitation (Type 152), Multicast Router Termination (Type 153). - MRD-Nachrichten mit Hop Limit 1 und Router Alert Option. - Multicast Router Advertisement an All-Snoopers Multicast-Adresse ff02::6a. - Multicast Router Solicitation an All-Routers Multicast-Adresse ff02::2.
Zusammenfassung
- MLD in IPv6 ersetzt IGMP in IPv4 für Multicast-Gruppenmanagement. - MLD Version 1: asymmetrisches Protokoll für Listener und Router, drei Nachrichtentypen. - MLD Version 2: basierend auf IGMPv3, ermöglicht SSM, neue Query-Typen. - MRD: Mechanismus zur Auffindung von Multicast-Routern, Nachrichtentypen mit Hop Limit 1 und Router Alert Option.