13-05-2023
Название: |
Internet Group Management Protocol |
---|---|
Уровень (по модели OSI): |
Сетевой |
Семейство: | |
Назначение протокола: |
Управление групповой маршрутизацией |
Спецификация: |
RFC 3376 |
IGMP (англ. Internet Group Management Protocol — протокол управления группами Интернета) — протокол управления групповой (multicast) передачей данных в сетях, основанных на протоколе IP. IGMP используется маршрутизаторами и IP-узлами для организации сетевых устройств в группы.
Этот протокол является частью спецификации групповой передачи пакетов в IP-сетях. IGMP расположен выше сетевого уровня, хотя, по сути, действует не как транспортный протокол.[1] Он во многом аналогичен ICMP для односторонней передачи. IGMP может использоваться для поддержки потокового видео и онлайн-игр, для этих типов приложений он позволяет использовать сетевые ресурсы более эффективно. IGMP уязвим к некоторым атакам[2][3][4][5], и брандмауэры обычно позволяют пользователю отключить этот протокол, если в нем нет необходимости.
IGMP используется только в сетях IPv4, так как в IPv6 групповая передача пакетов реализована по-другому.
Сеть, предоставляющая услуги групповой передачи данных (например, видео) с использованием IGMP, может иметь следующую базовую архитектуру:
IGMP используется клиентским компьютером и соседними коммутаторами для соединения клиента и локального маршрутизатора, осуществляющего групповую передачу. Далее между локальным и удаленным маршрутизаторами используется протокол Protocol Independent Multicast (PIM), с его помощью групповой трафик направляется от видеосервера к многочисленным клиентам групповой передачи.
Согласно RFC 1112, IGMPv2 — в RFC 2236 и IGMPv3 — в RFC 3376.
Основным улучшением в IGMPv3 относительно IGMPv2 является поддержка фильтрации IP-адресов. С помощью этого механизма узел может сообщить, с каких адресов он хочет получать пакеты, а с каких нет.
Протокол IGMP реализован в виде серверной и клиентской частей, первая из которых выполняется на маршрутизаторе, вторая — в узле сети, получающем групповой трафик. Клиент посылает уведомление о принадлежности к какой-либо группе локальному маршрутизатору, в это время маршрутизатор находится в ожидании уведомлений и периодически рассылает клиентам запросы.
Операционные системы FreeBSD, Linux и Windows поддерживают клиентскую часть протокола. В системе Linux IGMPv3 был добавлен в версии ядра 2.5. Для FreeBSD IGMPv3 был добавлен в версии 8.0.
Для реализации серверной части IGMP в Linux используются демоны, например, mrouted может действовать как IGMP маршрутизатор. Существуют также целые программные комплексы (такие, как XORP), позволяющие превратить обычный компьютер в полнофункциональный маршрутизатор групповой передачи.
Определена стандартом RFC 3376.
Запросы принадлежности рассылаются маршрутизаторами для того, чтобы для каждого узла определить его принадлежность к каким-либо группам (group membership state) и список источников информации, от которых данный узел хочет получать сообщения (reception state). Существует три типа таких запросов:
смещение в битах | 0-3 | 4 | 5-7 | 8-15 | 16-31 | |||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0 | Тип = 0x11 | Код макс. ответа | Контрольная сумма | |||||||||||||||||||||||||||||
32 | Групповой адрес | |||||||||||||||||||||||||||||||
64 | Resv | S | QRV | QQIC | Кол-во источников (N) | |||||||||||||||||||||||||||
96 | Адрес источника [1] | |||||||||||||||||||||||||||||||
128 | Адрес источника [2] | |||||||||||||||||||||||||||||||
. . . | ||||||||||||||||||||||||||||||||
Адрес источника [N] |
Основные протоколы TCP/IP по уровням модели OSI (Список портов TCP и UDP) | |
---|---|
Физический | |
Канальный |
Ethernet • PPPoE • PPP • L2F • 802.11 Wi-Fi • 802.16 WiMax • Token ring • ARCNET • FDDI • HDLC • SLIP • ATM • CAN • DTM • X.25 • Frame relay • Shortest Path Bridging • SMDS • STP • ERPS |
Сетевой | |
Транспортный | |
Сеансовый | |
Представления | |
Прикладной | |
Другие прикладные |
Bitcoin • OSCAR • CDDB • Multicast FTP • Multisource FTP • BitTorrent • Gnutella • Skype |
Это заготовка статьи о компьютерных сетях. Вы можете помочь проекту, дополнив её. |
IGMP.