IGMP

IGMP
název Internet Group Management Protocol
Úroveň (podle modelu OSI ) síť
Rodina TCP/IP
Účel protokolu Správa směrování vícesměrového vysílání
Specifikace RFC 3376

IGMP ( anglicky  Internet Group Management Protocol  - protokol pro správu internetových skupin) je protokol pro správu skupinového (multicast) přenosu dat v sítích založených na protokolu IP . IGMP používají směrovače a hostitelé IP k uspořádání síťových zařízení do skupin.

Tento protokol je součástí specifikace IP Multicast . IGMP se nachází na síťové vrstvě [1] . V mnoha ohledech je podobný ICMP pro unicast . IGMP lze použít pro podporu streamování videa a online hraní , pro tyto typy aplikací umožňuje efektivnější využití síťových zdrojů. IGMP je zranitelný vůči některým útokům [2] [3] [4] [5] a firewally obvykle umožňují uživateli tento protokol zakázat, pokud není potřeba.

IGMP se používá pouze v sítích IPv4 , protože v IPv6 je přenos paketů multicast implementován prostřednictvím protokolu Multicast Listener Discovery .

Architektura

Síť poskytující multicastové služby (jako je video) pomocí IGMP může mít následující základní architekturu:

IGMP používá klientský počítač a sousední přepínače k ​​propojení klienta a místního multicastového routeru. Protokol PIM ( Protokol Independent Multicast ) se pak používá mezi místními a vzdálenými routery ke směrování multicastového provozu z video serveru na více multicastových klientů.

Normy

Podle dokumentu RFC ( Request for Comments ), dokumentu komunity Internet Engineering Task Force (IETF), existují tři verze IGMP. IGMPv1 je definován v RFC 1112 , IGMPv2 v RFC 2236 a IGMPv3 v RFC 3376 .

Hlavním vylepšením IGMPv3 oproti IGMPv2 je podpora filtrování IP adres . Pomocí tohoto mechanismu může hostitel říct, ze kterých adres chce přijímat pakety a ze kterých ne.

Implementace

Protokol IGMP je implementován ve formě serverové a klientské části, z nichž první běží na routeru, druhá - v síťovém uzlu, který přijímá multicastový provoz. Klient zasílá upozornění o příslušnosti k jakékoli skupině na lokální router, v tuto chvíli router čeká na upozornění a periodicky posílá klientům požadavky.

Operační systémy rodin BSD , Linux a Windows podporují klientskou stranu protokolu. V systému Linux byl IGMPv3 přidán do jádra verze 2.5. Pro FreeBSD byl ve verzi 8.0 přidán IGMPv3.

Linux používá k implementaci IGMP backendu démony , například mrouted může fungovat jako IGMP router. Existují také celé softwarové balíčky (např. XORP ), které vám umožní proměnit obyčejný počítač v plnohodnotný multicast router.

V OpenBSD podpora IGMP v jádře zpočátku zahrnuje základní podporu směrování, zatímco démoni mrouted a dvmrpd dostupné v OS vám umožňují řešit složitější úlohy (například tunelování multicastového provozu).

Struktura paketu IGMPv3

Definováno RFC 3376 .

Zpráva s dotazem na členství

Požadavky na členství zasílají směrovače, aby pro každý uzel určily jeho členství v libovolných skupinách (stav členství ve skupině) a seznam zdrojů informací, ze kterých chce tento uzel přijímat zprávy (stav příjmu). Existují tři typy takových žádostí:

Oktet 0 jeden 2 3 čtyři 5 6 7 osm 9 deset jedenáct 12 13 čtrnáct patnáct 16 17 osmnáct 19 dvacet 21 22 23 24 25 26 27 28 29 třicet 31
0-3 Typ = 0x11 Kód Max Resp Kontrolní součet
4-7 Adresa skupiny
8-11 Resv S QRV QQIC Počet zdrojů (N)
12-15 Adresa zdroje [1]
  Adresa zdroje [N]

Zpráva o členství

Oktet 0 jeden 2 3 čtyři 5 6 7 osm 9 deset jedenáct 12 13 čtrnáct patnáct 16 17 osmnáct 19 dvacet 21 22 23 24 25 26 27 28 29 třicet 31
0-3 Typ = 0x22 Rezervováno Kontrolní součet
4-7 Rezervováno Počet skupinových záznamů (M)
8-11 Záznam skupiny [1]
  Skupinový záznam [M]
0 jeden 2 3 čtyři 5 6 7 osm 9 deset jedenáct 12 13 čtrnáct patnáct 16 17 osmnáct 19 dvacet 21 22 23 24 25 26 27 28 29 třicet 31
typ záznamu Přídavná datová linka Počet zdrojů (N)
vícesměrová adresa
Adresa zdroje [1]
Adresa zdroje [N]
Pomocná data

Jiné typy balíčků

Typ název Popis
0x12 Zpráva o členství verze 1 Musí být podporováno kvůli kompatibilitě s předchozími verzemi
0x16 Zpráva o členství verze 2
0x17 Verze 2 Opustit skupinu
0x13 Distance Vector Multicast Routing Protocol Experimentální protokol

Viz také

Poznámky

  1. Network Sorcery - IGMP . Datum přístupu: 21. prosince 2009. Archivováno z originálu 27. dubna 2006.
  2. Podvržená zpráva o odmítnutí služby IGMP Archivováno 10. června 2011 u zranitelnosti Wayback Machine .
  3. Fragmentovaný paket IGMP Archivovaný 13. února 2005 na Wayback Machine může podporovat útok „Denial of Service“.
  4. Prohlášení o bezpečnostním problému a požadavky IGMP Archivováno 13. října 2006. .
  5. Microsoft Security Bulletin MS06-007: Chyba zabezpečení v TCP/IP by mohla umožnit odmítnutí služby (913446) Archivováno 31. března 2007 na Wayback Machine .

Odkazy