Internet Group Management Protocol
Author
Albert FloresIGMP (Internet Group Management Protokol) je protokol, který rozšiřuje požadavky na implementaci protokolu IP (IPv4) o podporu IP multicastu. Využívá se pro dynamické přihlašování a odhlašování ze skupiny u multicastového routeru ve své lokální síti. IGMP protokol řeší i situaci, kdy jsou v síti připojeny dva a více multicastových routerů, protože pak by mohlo dojít v síti k šíření nadbytečných informací. Routery pracují ve dvou stavech. „dotazovač“, který zasílá dotazy na členství a „posluchač“, který pouze naslouchá a je neaktivní.
Aby se stanice přihlásila do skupiny, musí zaslat přes protokol IGMP zprávu „Membership report“ s IP adresou třídy D. Tato zpráva dorazí k routeru lokální sítě a ten si ji zapíše do tabulky. +more K odhlášení ze skupiny použije stanice typ zprávy „Leave group“ pokud v tabulce neexistuje žádná stanice, která by chtěla z této adresy informace odebírat, router záznam z tabulky zruší. Zároveň však router zasílá periodický dotaz „General query“ ke stanicím v lokální sítí, jestli je v ní alespoň jedna stanice, která chce ze skupiny informace odebírat. Pokud mu žádná do 10 sekund neodpoví, vymaže z tabulky záznam o skupině. Tento dotaz řeší problém kdy se nějaká stanice, např. před vypnutím, nestihne z odběru skupiny odhlásit.
Verze IGMP protokolu
IGMP verze 1 a 2
IGMP protokol má tři verze. Protokoly IGMPv1 a IGMPv2 jsou svou strukturou velmi podobné. +more Obsahují 8 bitů na typ dotazu, dalších 8 bitů je ve verzi 1 nepoužito a ve verzi 2 max. čas na odpověď. Dále v 16 bitech je kontrolní součet hlavičky a posledních 32 bitů je adresa skupiny.
Bity | %"|0-7 | %"|8-15 | %"|16-31 | |||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0 | verze | verze | verze | verze | typ | typ | typ | typ | nevyužito | nevyužito | nevyužito | nevyužito | nevyužito | nevyužito | nevyužito | nevyužito | kontrolní součet | kontrolní součet | kontrolní součet | kontrolní součet | kontrolní součet | kontrolní součet | kontrolní součet | kontrolní součet | kontrolní součet | kontrolní součet | kontrolní součet | kontrolní součet | kontrolní součet | kontrolní součet | kontrolní součet | kontrolní součet |
32 | skupinová adresa | skupinová adresa | skupinová adresa | skupinová adresa | skupinová adresa | skupinová adresa | skupinová adresa | skupinová adresa | skupinová adresa | skupinová adresa | skupinová adresa | skupinová adresa | skupinová adresa | skupinová adresa | skupinová adresa | skupinová adresa | skupinová adresa | skupinová adresa | skupinová adresa | skupinová adresa | skupinová adresa | skupinová adresa | skupinová adresa | skupinová adresa | skupinová adresa | skupinová adresa | skupinová adresa | skupinová adresa | skupinová adresa | skupinová adresa | skupinová adresa | skupinová adresa |
Bity | %"|0-7 | %"|8-15 | %"|16-31 | |||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0 | typ | typ | typ | typ | typ | typ | typ | typ | max. čas odpovědi | max. +more čas odpovědi | max. čas odpovědi | max. čas odpovědi | max. čas odpovědi | max. čas odpovědi | max. čas odpovědi | max. čas odpovědi | kontrolní součet | kontrolní součet | kontrolní součet | kontrolní součet | kontrolní součet | kontrolní součet | kontrolní součet | kontrolní součet | kontrolní součet | kontrolní součet | kontrolní součet | kontrolní součet | kontrolní součet | kontrolní součet | kontrolní součet | kontrolní součet |
32 | skupinová adresa | skupinová adresa | skupinová adresa | skupinová adresa | skupinová adresa | skupinová adresa | skupinová adresa | skupinová adresa | skupinová adresa | skupinová adresa | skupinová adresa | skupinová adresa | skupinová adresa | skupinová adresa | skupinová adresa | skupinová adresa | skupinová adresa | skupinová adresa | skupinová adresa | skupinová adresa | skupinová adresa | skupinová adresa | skupinová adresa | skupinová adresa | skupinová adresa | skupinová adresa | skupinová adresa | skupinová adresa | skupinová adresa | skupinová adresa | skupinová adresa | skupinová adresa |
IGMP verze 3
Třetí verze protokolu IGMP má už pozměněnou strukturu. První 8bitové pole obsahuje typ dotazu, dále jedno 8bitové a jedno 16bitové rezervované pole je při vysílání nastaveno na nulu a při přijímání je ignorováno. +more Na 16 bitech je uvedeno počet záznamů kterých může být až n. Struktura záznamů skupin obsahuje spolu s různými informacemi i adresu skupiny.
Bity | %"|0-7 | %"|8-15 | %"|16-31 | |||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0 | typ | typ | typ | typ | typ | typ | typ | typ | rezervované | rezervované | rezervované | rezervované | rezervované | rezervované | rezervované | rezervované | kontrolní součet | kontrolní součet | kontrolní součet | kontrolní součet | kontrolní součet | kontrolní součet | kontrolní součet | kontrolní součet | kontrolní součet | kontrolní součet | kontrolní součet | kontrolní součet | kontrolní součet | kontrolní součet | kontrolní součet | kontrolní součet |
32 | rezervované | rezervované | rezervované | rezervované | rezervované | rezervované | rezervované | rezervované | rezervované | rezervované | rezervované | rezervované | rezervované | rezervované | rezervované | rezervované | počet záznamů skupin | počet záznamů skupin | počet záznamů skupin | počet záznamů skupin | počet záznamů skupin | počet záznamů skupin | počet záznamů skupin | počet záznamů skupin | počet záznamů skupin | počet záznamů skupin | počet záznamů skupin | počet záznamů skupin | počet záznamů skupin | počet záznamů skupin | počet záznamů skupin | počet záznamů skupin |
64 | záznam skupiny [1] | záznam skupiny [1] | záznam skupiny [1] | záznam skupiny [1] | záznam skupiny [1] | záznam skupiny [1] | záznam skupiny [1] | záznam skupiny [1] | záznam skupiny [1] | záznam skupiny [1] | záznam skupiny [1] | záznam skupiny [1] | záznam skupiny [1] | záznam skupiny [1] | záznam skupiny [1] | záznam skupiny [1] | záznam skupiny [1] | záznam skupiny [1] | záznam skupiny [1] | záznam skupiny [1] | záznam skupiny [1] | záznam skupiny [1] | záznam skupiny [1] | záznam skupiny [1] | záznam skupiny [1] | záznam skupiny [1] | záznam skupiny [1] | záznam skupiny [1] | záznam skupiny [1] | záznam skupiny [1] | záznam skupiny [1] | záznam skupiny [1] |
... | záznam skupiny [n] | záznam skupiny [n] | záznam skupiny [n] | záznam skupiny [n] | záznam skupiny [n] | záznam skupiny [n] | záznam skupiny [n] | záznam skupiny [n] | záznam skupiny [n] | záznam skupiny [n] | záznam skupiny [n] | záznam skupiny [n] | záznam skupiny [n] | záznam skupiny [n] | záznam skupiny [n] | záznam skupiny [n] | záznam skupiny [n] | záznam skupiny [n] | záznam skupiny [n] | záznam skupiny [n] | záznam skupiny [n] | záznam skupiny [n] | záznam skupiny [n] | záznam skupiny [n] | záznam skupiny [n] | záznam skupiny [n] | záznam skupiny [n] | záznam skupiny [n] | záznam skupiny [n] | záznam skupiny [n] | záznam skupiny [n] | záznam skupiny [n] |