Protokol pro správu internetové skupiny - Internet Group Management Protocol
Sada internetového protokolu |
---|
Aplikační vrstva |
Transportní vrstva |
Internetová vrstva |
Propojit vrstvu |
The Protokol pro správu internetové skupiny (IGMP) je komunikační protokol používá hostitelé a přilehlé směrovače na Sítě IPv4 založit členství ve skupinách vícesměrového vysílání. IGMP je nedílnou součástí Vícesměrové vysílání IP a umožňuje síti směrovat vícesměrové vysílání pouze na hostitele, kteří o ně požádali.
IGMP lze použít pro mnoho síťových aplikací, například online streamování videa a hraní a umožňuje efektivnější využívání zdrojů při podpoře těchto typů aplikací.
IGMP se používá na IPv4 sítí. Správa vícesměrového vysílání zapnuta IPv6 sítě zpracovává Zjištění posluchače vícesměrového vysílání (MLD), která je součástí ICMPv6 na rozdíl od holé IP zapouzdření IGMP.
Architektura
Síť určená k poskytování vícesměrového vysílání pomocí protokolu IGMP může používat tuto základní architekturu:
IGMP funguje mezi hostitelem a místním směrovačem vícesměrového vysílání. Přepínače představovat IGMP snooping také získávejte užitečné informace pozorováním těchto transakcí IGMP. Multicast nezávislý na protokolu Poté se mezi místním a vzdáleným směrovačem vícesměrového vysílání používá (PIM) k směrování provozu vícesměrového vysílání z hostitelů odesílajících vícesměrové vysílání hostitelům, kteří se zaregistrovali prostřednictvím IGMP, aby je přijímali.
IGMP pracuje na síťová vrstva, stejně jako jiné protokoly pro správu sítě ICMP.[1]
Protokol IGMP je implementován na hostitelích a uvnitř směrovače. Hostitel požaduje členství ve skupině prostřednictvím místního směrovače, zatímco směrovač poslouchá tyto požadavky a pravidelně odesílá dotazy na předplatné. K provádění této funkce dotazování je zvolen jeden směrovač na podsíť. Nějaký vícevrstvé spínače obsahují schopnost dotazu IGMP, aby umožnily jejich funkcím IGMP snooping pracovat bez možnosti vícesměrového vysílání IP ve větší síti.
IGMP je zranitelný vůči některým útokům,[2][3][4][5] a brány firewall běžně umožňují uživateli jej deaktivovat, pokud to není nutné.
Verze
Existují tři verze IGMP.[6] IGMPv1 je definován RFC 1112, IGMPv2 je definován RFC 2236 a IGMPv3 byl původně definován RFC 3376 a byl aktualizován uživatelem RFC 4604 který definuje IGMPv3 i MLDv2. IGMPv2 vylepšuje IGMPv1 přidáním schopnosti hostitele signalizovat touhu opustit skupinu vícesměrového vysílání. IGMPv3 podporuje IGMPv2 podporou vícesměrové vysílání specifické pro zdroj[7] a zavádí agregaci zpráv o členství.
Tyto verze jsou zpětně kompatibilní. Směrovač podporující IGMPv3 může podporovat klienty se spuštěnými IGMPv1, IGMPv2 a IGMPv3. IGMPv1 používá model odpovědi na dotaz. Dotazy se odesílají na 224.0.0.1. Zprávy o členství se zasílají na adresu vícesměrového vysílání skupiny. IGMPv2 zrychluje proces opuštění skupiny a upravuje další časové limity. Zprávy ze skupiny se odesílají na 224.0.0.2. Zavádí se skupinový dotaz. Skupinové dotazy se odesílají na adresu vícesměrového vysílání skupiny. Je zaveden způsob, jak směrovače vybrat dotaz IGMP pro síť. IGMPv3 představuje vícesměrové vysílání specifické pro zdroj schopnost. Zprávy o členství se zasílají na 224.0.0.22.
Zprávy
Existuje několik typů zpráv IGMP:
- Obecné dotazy k členství
- Odesílané směrovači vícesměrového vysílání k určení, které adresy vícesměrového vysílání jsou zajímavé pro systémy připojené k síti (sítím), které slouží k obnovení stavu členství ve skupině pro všechny systémy v její síti.
- Dotazy na členství specifické pro skupinu
- Slouží k určení stavu příjmu pro konkrétní adresu vícesměrového vysílání
- Skupinové a zdrojové dotazy
- Povolte směrovači určit, zda si některé systémy přejí příjem zpráv odeslaných skupině vícesměrového vysílání ze zdrojové adresy uvedené v seznamu adres jednosměrového vysílání
- Zprávy o členství
- Odesláno příjemci vícesměrového vysílání v reakci na dotaz na členství nebo asynchronně při první registraci do skupiny vícesměrového vysílání
- Zanechte skupinové zprávy
- Odesílají přijímače vícesměrového vysílání, když u přijímače již nejsou potřebné určené vícesměrové vysílání
Zprávy IGMP se přenášejí v holých paketech IP s Číslo protokolu IP 2.[8]:§4 Podobně jako u Internet Control Message Protocol, tady není žádný transportní vrstva používá se se zprávami IGMP.
Zprávy IGMPv2
bit offset | 0–7 | 8–15 | 16–31 | |||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0 | Typ | Max. Doba odezvy | Kontrolní součet | |||||||||||||||||||||||||||||
32 | Adresa skupiny |
Kde:
- Typ
- Označuje typ zprávy následujícím způsobem
Hodnoty typu zprávy IGMP Zpráva Zadejte hodnotu Dotaz na členství 0x11 Zpráva o členství v IGMPv1 0x12 Zpráva o členství v IGMPv2 0x16 Zpráva o členství v IGMPv3 0x22 Opustit skupinu 0x17
- Max. Doba odezvy
- Určuje požadovanou odezvu odpovědí na dotaz na členství (0x11). Toto pole má smysl pouze v Dotazu na členství; v ostatních zprávách je nastavena na 0 a přijímač ji ignoruje. Pole specifikuje čas v jednotkách 0,1 sekundy (pole pole 10 určuje 1 sekundu). Větší hodnoty snižují dopravní zátěž IGMP a menší hodnoty zlepšují odezvu protokolu, když poslední hostitel opustí skupinu.[9]:§2.2
- Adresa skupiny
- Toto je adresa vícesměrového vysílání, která je dotazována při odesílání dotazu specifického pro skupinu nebo pro skupinu a zdroj. Při odesílání obecného dotazu je pole vynulováno.
Zpráva je odeslána pomocí následujících cílových adres IP:
Typ zprávy | Adresa vícesměrového vysílání |
---|---|
Obecný dotaz | Všichni hostitelé (224.0.0.1) |
Skupinový dotaz | Dotazovaná skupina |
Zpráva o členství (všechny verze IGMP) | Hlášená skupina |
Opustit skupinu | Všechny směrovače (224.0.0.2) |
Dotaz na členství IGMPv3
bit offset | 0–3 | 4 | 5–7 | 8–15 | 16–31 | |||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0 | Typ = 0x11 | Max Resp Code | Kontrolní součet | |||||||||||||||||||||||||||||
32 | Adresa skupiny | |||||||||||||||||||||||||||||||
64 | Resv | S | QRV | QQIC | Počet zdrojů (N) | |||||||||||||||||||||||||||
96 | Zdrojová adresa [1] | |||||||||||||||||||||||||||||||
128 | Zdrojová adresa [2] | |||||||||||||||||||||||||||||||
. . . | ||||||||||||||||||||||||||||||||
Zdrojová adresa [N] |
Kde:
- Max Resp Code
- Toto pole určuje maximální povolený čas (v krocích po 1/10 sekundy) před odesláním zprávy s odpovědí. Pokud je číslo nižší než 128, použije se přímo hodnota. Pokud je hodnota 128 nebo více, je interpretována jako exponent a mantisa.
- Kontrolní součet
- Toto je 16bitový doplněk součtu doplňku celé zprávy IGMP.
- Adresa skupiny
- Toto je adresa vícesměrového vysílání, která je dotazována při odesílání dotazu specifického pro skupinu nebo pro skupinu a zdroj. Při odesílání obecného dotazu je pole vynulováno.
- Resv
- Toto pole je vyhrazeno. Při odesílání by měl být vynulován a při přijetí ignorován.
- Příznak S (potlačit zpracování na routeru)
- Když je tento příznak nastaven, znamená to pro přijímající směrovače, že mají potlačit normální aktualizace časovače.
- QRV (Querier's Robustness Variable)
- Pokud je nenulová, obsahuje hodnotu proměnné robustnosti, kterou používá odesílatel dotazu. Směrovače by měly aktualizovat svou proměnnou robustnosti tak, aby odpovídala naposledy přijatému dotazu, pokud není hodnota nula.
- QQIC (Querier's Query Interval Code)
- Tento kód se používá k určení hodnoty Interval dotazu (v sekundách) použitého dotazovačem. Pokud je číslo nižší než 128, použije se přímo hodnota. Pokud je hodnota 128 nebo více, je interpretována jako exponent a mantisa.
- Počet zdrojů (N)
- Toto pole určuje počet zdrojových adres přítomných v dotazu. U obecných a skupinově specifických dotazů je tato hodnota nulová. U dotazů specifických pro skupiny a zdroje je tato hodnota nenulová, ale je omezena MTU sítě.
- Zdrojová adresa [i]
- Pole Zdrojová adresa [i] jsou vektorem n adres IP jednosměrového vysílání, kde n je hodnota v poli Počet zdrojů (N).
Implementace
The FreeBSD,[poznámka 1] Linux[poznámka 2] a Okna operační systémy podporovat IGMP na straně hostitele.
Viz také
Poznámky
Reference
- ^ Forouzan, Behrouz A. (2012). Datová komunikace a sítě (5. vydání). New York, NY: McGraw-Hill. p. 658. ISBN 978-0073376226.
- ^ Vymyšlený Zpráva IGMP o odmítnutí služby zranitelnost.
- ^ „Fragmentovaný paket IGMP může propagovat„ útok “odepření služby. 20. prosince 2004. Archivovány od originál dne 13. února 2005.
- ^ Prohlášení a požadavky na bezpečnostní problém IGMP Archivováno 2006-10-13 na Wayback Machine.
- ^ „Chyba zabezpečení v protokolu TCP / IP umožňuje odmítnutí služby (MS06-007, 913446))“. 14. února 2006. Archivovány od originál dne 2007-02-05.
- ^ Průvodce konfigurací směrování vícesměrového vysílání IP, Cisco, s. 25–28, vyvoláno 2017-05-27
- ^ „Přehled internetového protokolu pro správu skupiny“. Javvin. Archivovány od originál dne 10. 11. 2010. Citováno 2010-11-18.
- ^ A b Internet Group Management Protocol, verze 3. doi:10.17487 / RFC3376. RFC 3376.
- ^ A b C Internet Group Management Protocol, verze 2. doi:10.17487 / RFC2236. RFC 2236.