На головну

протокол IGMP

  1. Архітектура IEEE 802. MAC і LLC, Різновиди протоколів LLC.
  2. АСИНХРОННІ ПРОТОКОЛИ
  3. БАЙТ - ОРІЄНТОВАНІ ПРОТОКОЛИ
  4. БІТ-ОРІЄНТОВАНІ ПРОТОКОЛИ
  5. Взаємодія протоколів маршрутизації
  6. Внутрішні і зовнішні шлюзові протоколи
  7. Питання 20. Протокол

Протокол групового управління в Інтернеті (Internet Group Management Protocol, IGMP) був розроблений в 1989 році для забезпечення більш ефективної розсилки інформації по IP-адресами, ніж традиційні методи одноадресної і широкомовної передачі. Існує три версії IGMP: IGMPvl (RFC 1112), IGMPv2 (RFC 2236) і IGMPv3 (RFC 3376).

Протокол IGMP використовується виключно при взаємодії безпосередньо пов'язаних один з одним маршрутизатора і хоста, коли останній виступає (або бажає виступати) в ролі одержувача трафіку групового мовлення.

ПРИМІТКА

Джерело не потребує протоколі IGMP. Будь-який комп'ютер, підключений до Інтернету, може стати джерелом групового мовлення, при цьому йому не потрібно ніякого додаткового програмного забезпечення, крім того, яке включено до складу звичайної реалізації стека TCP / IP.

До основних функцій протоколу IGMP відносяться оповіщення маршрутизатора про бажання хоста бути включеним в групу і опитування членів групи.

Оповіщення маршрутизатора про бажання хоста бути включеним в групу. Щоб стати одержувачем групових даних, вузол повинен «висловити» свою зацікавленість маршрутизатора, до якого безпосередньо приєднана його мережу. Для цього хост повинен встановити взаємодію з маршрутизатором по протоколу IGMP. Версія IGMP для хоста прямо залежить від типу операційної системи, встановленої на хості. Так, ранні версії Windows (Windows 95) підтримували тільки версію IGMPvl, більш пізні (Windows 2000) - версію IGMPv2, а починаючи з Windows ХР, підтримується версія IGMPv3. Протоколи IGMPv2 і IGMPv3 підтримуються в багатьох версіях Mac OS, Linux, Unix-подібних операційних системах.

Опитування членів групи. Для виконання цієї функції один з маршрутизаторів локальної мережі вибирається домінуючим. Домінуючий маршрутизатор засобами протоколу IGMP періодично опитує всі системи (груповий адресу 224.0.0.1) в безпосередньо приєднаних до нього подсетях, перевіряючи, активні члени всіх відомих йому груп. Решта (не вибрано) маршрутизатори прослуховують мережу, і якщо виявляють відсутність повідомлень-запитів протягом деякого періоду (зазвичай 250 секунд), то повторюють процедуру вибору нового домінуючого маршрутизатора. У IGMPv2 визначено три типи повідомлень:

? Запит про членство (Membership query). За допомогою цього повідомлення маршрутизатор намагається дізнатися, до якої групи складаються хости в локальній мережі, приєднаної до якого-небудь його інтерфейсу. Запит про членство існує в двох варіантах: в одному з них маршрутизатор робить загальний запит про всі групи, в іншому його цікавить інформація тільки про деяку конкретній групі, адреса якої вказується в запиті.

? Звіт про членство (Membership report). Цим повідомленням хости відповідають маршрутизатора, який послав у мережу запит про членство. У повідомленні міститься інформація про адресу групи, до якої вони належать. Маршрутизатор, будучи членом усіх груп, отримує повідомлення, спрямовані на будь-який груповий адресу. Для маршрутизатора, який отримує відповідні повідомлення, важливий тільки факт наявності членів тієї чи іншої групи (груп), а не приналежність конкретних хостів конкретних груп. Цей факт буде використаний іншими маршрутизаторами мережі для просування пакетів групового мовлення в ту частину мережі, за яку «відповідає» даний маршрутизатор. Звіт про членство хост може послати не тільки у відповідь на запит маршрутизатора, але і з власної ініціативи, коли він намагається приєднатися до певної групи. Після такого повідомлення хост може розраховувати на те, що трафік для цієї групи дійсно буде доставлятися в мережу, до якої цей хост належить.

? покинути групу (Leave group). Це повідомлення хост може використовувати, щоб сигналізувати «своєму» маршрутизатора про бажання покинути деяку групу, в якій він до цього перебував. Отримавши це повідомлення, маршрутизатор посилає специфічний запит про членство членам тільки цієї конкретної групи, і якщо не отримує на нього відповідь (тобто це був останній хост в групі), то перестає передавати трафік групового мовлення для цієї групи. Слово «може» означає в даному випадку, що хост може бути виключений з групи, просто не відповідаючи маршрутизатора на запит про членство (такий підхід реалізований в протоколі IGMPvl). Тоді маршрутизатор буде продовжувати передавати небажаний трафік групового мовлення до тих пір, поки не закінчиться деякий період часу з моменту надходження останнього звіту про членство. Такий підхід може значно подовжити період прихованого знаходження хоста в стані виходу з групи, що знижує ефективність роботи мережі.

Повідомлення з запитами про членство надсилаються маршрутизатором регулярно з певною частотою. На кожному з інтерфейсів з встановленими засобами IGMP маршрутизаторами підтримуються кеш-таблиці груп. Кеш-таблиця містить список усіх груп, в складі яких є хоча б один член. Для кожного рядка таблиці встановлений тайм-аут. Маршрутизатор регулярно посилає запити (за замовчуванням - кожні 125 секунд), щоб перевірити, що в кожній групі ще є члени. Якщо для деякої групи відповідь не надходить протягом встановленого для неї тайм-ауту, то відповідний рядок видаляється з кеш-таблиці, і маршрутизатор вважає, що членів цієї групи в мережі більше немає.

Локальна мережа може мати декілька хостів, зацікавлених в отриманні трафіку однієї і тієї ж групи, але маршрутизатора досить підтвердження тільки від одного хоста для того, щоб продовжити передавати трафік в мережу для цієї групи. При використанні протоколу IGMPvl або IGMPv2 для обмеження числа відповідей хостів на запит маршрутизатора будь хост, що складається в групі, замість того щоб негайно відповісти на запит, спочатку чекає протягом деякого інтервалу часу, чи не з'явиться в мережі відповідь якогось іншого хоста. Якщо після закінчення цього часу він так і не зміг дочекатися появи в мережі відповіді іншого хоста, то він посилає маршрутизатора власний звіт про членство. (Якщо ж використовується протокол IGMPv3, то ніяких пауз не встановлюється, і хости відразу генерують повідомлення про членство.)

Грунтуючись на інформації, отриманої за допомогою IGMP, маршрутизатори можуть визначати, в які підключені до них мережі необхідно передавати груповий трафік.

Всі типи IGMP-повідомлень мають довжину 8 байт і складаються з чотирьох полів. Залежно від версії протоколу IGMP призначення полів може дещо змінюватися. На рис. 18.14 показана структура повідомлення для версії IGMPv2.

Мал. 18.14. Структура IGMP-повідомлення

Поле максимального часу відповіді використовується хостами для обчислення часу затримки відповіді. Час затримки вибирається випадковим чином з інтервалу від нуля до значення, заданого в цьому полі.

Зауважимо, що поле адреси групового мовлення в IGMP-повідомленні не містить адресу призначення, воно несе в собі інформацію, по-різному використовується в різних типах повідомлень. Наприклад, маршрутизатор, посилаючи запит про членство, поміщає в цьому полі нулі, а хост в повідомленнях «Звіт про членство» і «Покинути групу» поміщає в це поле адресу групи, в яку він хоче вступити або яку він хоче покинути відповідно.

ПРИМІТКА

Щоб хост зміг отримувати трафік групового мовлення, недостатньо встановити на ньому протокол IGMP, за допомогою якого хост може відправити повідомлення свого маршрутизатора про бажання приєднатися до групи. Крім цього, треба конфігурувати мережевий інтерфейс хоста так, щоб він став захоплювати з локальної мережі кадри, що несуть в собі пакети групового мовлення для тієї групи, до якої приєднався хост. Для цього необхідно налаштувати інтерфейс на прослуховування певного групового адреси канального рівня, відповідного групового IP-адресою. На жаль, адресний простір групових IP-адрес в 32 рази об'ємніше простору групових МАС-адрес. Тобто відображення цих двох адресних просторів виявляється далеко неоднозначним - на один і той же груповий МАС-адреса відображається цілий блок з 32 різних групових IP-адрес. Отже, коли мережевий адаптер захоплює кадр, що містить пакет групового мовлення, існує значна ймовірність того, що цей пакет був спрямований зовсім іншій групі. Однак ця помилка скоро виявляється. Коли кадр передається вгору по стеку, протокол IP перевіряє, чи збігається груповий IP-адреса в поле адреси призначення інкапсульованого пакета з груповим IP-адресою даного інтерфейсу. (Відзначимо, що ні групові IP-адреси, ні групові МАС-адреси ніколи не використовуються в якості адрес відправника.)



Попередня   324   325   326   327   328   329   330   331   332   333   334   335   336   337   338   339   Наступна

Моделі якості обслуговування IntServ і DiffServ | Алгоритм відра маркерів | Випадкове раннє виявлення | Інтегроване обслуговування і протокол RSVP | диференційоване обслуговування | Традиційна технологія NAT | Базова трансляція мережевих адрес | Трансляція мережевих адрес і портів | групове мовлення | Стандартна модель групового мовлення IP |

© um.co.ua - учбові матеріали та реферати