IGMP

Från Wiki.linux.se
Hoppa till navigering Hoppa till sök

Internet Group Management Protocol (IGMP)

Introduktion

Internet Group Management Protocol (IGMP) är en del av Internet Protocol Suite och används för att hantera medlemskap i IP-multicastgrupper. Det är ett kommunikationsprotokoll som används av värdar och angränsande routrar på IP-nätverk för att etablera multicastgruppsmedlemskap.

Historik och Utveckling

IGMP utvecklades under 1980-talet som en del av IP-multicastutvecklingen. Det har genomgått flera förbättringar och revisioner, vilket har resulterat i olika versioner:

  • IGMPv1: Definierad i RFC 1112.
  • IGMPv2: Förbättringar inkluderade snabbare lämnande av grupper, definierad i RFC 2236.
  • IGMPv3: Stöd för källspecifik multicast (SSM), definierad i RFC 3376.

Tekniska Detaljer

Protokollfunktion

IGMP används för att dynamiskt registrera värdar i en multicastgrupp på ett lokalt nätverk. Routrar använder IGMP för att upptäcka vilka grupper som har medlemmar på deras lokala nätverk.

Paketformat

IGMP-meddelanden är inkapslade i IPv4-datagram och innehåller följande fält:

  • Typ (8 bitar): Anger meddelandetypen (t.ex. medlemskapsförfrågan, medlemskapsrapport).
  • Max svarstid (8 bitar): Endast i IGMPv2 och IGMPv3, används för att ange den maximala tiden innan ett svar måste skickas.
  • Checksum (16 bitar): För felkontroll.
  • Gruppadress (32 bitar): IP-adressen för multicastgruppen.

Arbetsprocess

IGMP-operationer inkluderar:

  • Medlemskapsförfrågningar: Skickas av routrar för att fråga vilka multicastgrupper som finns på nätverket.
  • Medlemskapsrapporter: Skickas av värdar för att svara på förfrågningar eller rapportera deras medlemskap i en grupp.

Användningsområden

IGMP används i applikationer som kräver effektiv nätverksanvändning för gruppöverföring, såsom strömmande video och audio, och i olika multicastapplikationer.

Referenser