Internet Group Management Protocol

IGMP im TCP/IP-Protokollstapel
InternetIGMP
IP (IPv4)
NetzzugangEthernetToken
Bus
Token
Ring
FDDI

Das Internet Group Management Protocol (IGMP) ist ein Netzwerkprotokoll der Internetprotokollfamilie und dient zur Organisation von Multicast-Gruppen. IGMP benutzt wie ICMP das Internet Protocol (IP) und ist Bestandteil von IP auf allen Hosts, die den Empfang von IP-Multicasts unterstützen.

Verwendung

Struktur von IGMP

Das Internet Group Management Protocol basiert auf dem Internet Protocol (IP) und ermöglicht IPv4-Multicasting (Gruppenkommunikation) im Internet. IP-Multicasting ist die Verteilung von IP-Paketen unter einer IP-Adresse an mehrere Stationen gleichzeitig. IGMP bietet die Möglichkeit, dynamisch Gruppen zu verwalten. Die Verwaltung findet nicht in der Sende-Station statt, sondern in den Routern, an denen Empfänger einer Multicast-Gruppe direkt angeschlossen sind. IGMP bietet Funktionen, mit denen eine Station einem Router mitteilt, dass sie Multicast-IP-Pakete einer bestimmten Multicast-Gruppe empfangen will. Multicast-Routing-Protokolle (DVMRP, MOSPF, PIM) übernehmen die Koordination der Übertragung zwischen den Routern. Der Sender von Multicast-IP-Paketen weiß dabei nicht, welche und wie viele Stationen seine Pakete empfangen, denn er verschickt nur ein einziges Datenpaket an seinen übergeordneten Router. Dieser dupliziert das IP-Paket bei Bedarf, wenn er mehrere ausgehende Schnittstellen mit Empfängern hat.

Für IPv6-Systeme findet das in ICMPv6 integrierte Multicast Listener Discovery (MLD) Verwendung, das in ähnlicher Weise wie IGMP arbeitet.

Es gibt drei Versionen von IGMP mit folgenden prinzipiellen Eigenschaften:

  • IGMPv1 Ein Host kann einer Multicast-Gruppe beitreten. Ein Abmelden ist hier nicht implementiert. Nach einem Timeout ist der Host wieder ausgetragen.
  • IGMPv2 Ein Host kann sich jetzt von der Multicast-Gruppe abmelden (Leave-Message implementiert). Damit können auch Multicasts mit großer Bandbreite behandelt werden.
  • IGMPv3 Hier kann nun vorgegeben werden, von welcher Quelle der Multicast-Stream gewünscht wird. Dies ist ein wesentlicher Sicherheitsaspekt, wenn auch nicht der optimale.

Paketformat

IGMP-Pakete (in Version 1 und Version 2) haben eine Größe von 64 Bit. Folgendes Format wird verwendet:

0 … 78 … 1516 … 31
Typmaximale AntwortzeitPrüfsumme
Multicast-Gruppenadresse

Das Feld „maximale Antwortzeit“ ist nur für Typ 0x11 definiert, bei allen anderen Typen wird dieses Feld ignoriert.

Dabei können folgende Werte für den Typ angenommen werden:

TypAdresseBedeutung
0x11ohneallgemeine Anfrage
0x11mitgruppenspezifische Anfrage
0x12mitIGMPv1 Mitgliedschaft anmelden/bestätigen
0x16mitIGMPv2 Mitgliedschaft anmelden/bestätigen
0x17mitIGMPv2 Mitgliedschaft beenden
0x22mitIGMPv3 Mitgliedschaft anmelden/bestätigen/beenden

IGMP-Pakete werden, wie ICMP, in IP-Datagramme gekapselt und benutzen die IP-Protokollnummer 2. IGMP ist im OSI-Schichtenmodell also in der Vermittlungsschicht anzusiedeln.

Weblinks

  • RFC1112 – Host Extensions for IP Multicasting. (englisch).
  • RFC2933 – Internet Group Management Protocol MIB. (englisch).
  • RFC2236 – Internet Group Management Protocol, Version 2. (englisch).
  • RFC3376 – Internet Group Management Protocol, Version 3. (englisch).

Auf dieser Seite verwendete Medien

IGMP LAN.svg
Autor/Urheber: Mro, Lizenz: CC BY-SA 3.0
IGMP in a LAN