Телекоммуникационные технологии.Сети TCP-IP




Протокол IGMP


Протокол IGMP (Internet Group Memebership Protocol) предназначен для регистрации на маршрутизаторе членов групп, находящихся в непосредственно присоединенных к нему сетях. Имея эту информацию, маршрутизатор может сообщать другим маршрутизаторам (с помощью протоколов групповой маршрутизации) о необходимости пересылки ему дейтаграмм для тех или иных групп. Современная версия протокола IGMP – версия 2 – документирована в RFC-2236.

IGMP работает непосредственно поверх протокола IP, и идентифицируется значением 2 в поле "Protocol" заголовка IP-дейтаграммы. За IP-заголовком в дейтаграмме следует сообщение IGMP:

Заголовок IGMP

Значения полей:

Type (8 бит) – тип сообщения.

Max Response Time (8 бит) – максимальное время отклика, задествовано только в сообщениях типа Membership Query.

Checksum (16 бит) – контрольная сумма.

Group Address (32 бита) – групповой IP-адрес.

Существуют следующие типы сообщений:

Membership Query (Type=17) – запрос о наличии в сети членов групп (отправляется маршрутизатором). Запросы обо всех имеющихся группах – общие запросы – отправляются по адресу 224.0.0.1 ("всем узлам"); запросы о наличии членов определенной группы – частные запросы – отправляются по адресу этой группы.

  • Membership Report (Type=22) – уведомление о наличии в сети члена группы (отправляется хостом – членом группы по адресу группы).

  • Leave Group (Type=23) – уведомление об отсоединении хоста от группы (отправляется отсоединившимся хостом по адресу 224.0.0.2 – "всем маршрутизаторам").

    Протокол функционирует следующим образом.

    Маршрутизатор при своем включении и далее периодически рассылает по адресу 224.0.0.1 общий запрос Membership Query, при этом поле "Group Address" обнулено. Период этих рассылок может меняться администратором; значение по умолчанию – 125 с. Приняв такой запрос, каждый получатель групповых дейтаграмм выжидает случайное время. Если за это время кто-то другой уже ответил сообщением Membership Report, то данный хост не отвечает, иначе он сам посылает такое сообщение. Значение поля "Max Response Time" в Membership Query указывает максимальное время, на которое хост может задержать Membership Report (обычно 10 с). Описанный подход используется, чтобы избежать посылки многочисленных ответов с адресом одной и той же группы: маршрутизатору не нужно знать, сколько именно членов данной группы есть у него в сети, ему требуется лишь сам факт их наличия.




    Содержание  Назад  Вперед