Протокол дистанційно-векторної багатоадресної маршрутизації () — протокол маршрутизації групових дейтаграм для IP мереж. Протокол призначений для використання всередині автономних систем, тобто є протоколом внутрішньодоменной маршрутизації.
Опис протоколу DVMRP знаходиться в RFC 1075. Основні положення
Протокол DVMRP реалізує метод RPF (Reverse Path Forwarding) з усіканням (Prune) . Коли маршрутизатор отримує пакет, він пересилає його на всі інтерфейси, крім вихідного. Якщо в зоні відповідальності маршрутизатора немає членів мультікаст-групи, тоді маршрутизатор посилає назад повідомлення про виключення, відсікаючи непотрібні (що не мають членів) гілки дерева розсилки. Структура дейтаграм протоколу
DVMRP використовує повідомлення протоколу IGMP для обміну інформацією з іншими маршрутизаторами — поле протоколу в пакеті IP заповнюється значенням 2 .
Структура дейтаграм протоколу : +0 — 34 — 78 — 1516 — 2324 — 31 0 Версія Тип Код Контрольна сума 32 Тіло DVMRP повідомлення
Версія — поточне значення 1; Тип — має бути 3; Код — визначає призначення DVMRP пакета: Response — повідомлення забезпечує маршрутизацію для декількох груп; Request — повідомлення запрошує маршрутизацію для декількох груп; Non-membership report — повідомлення забезпечує доповідь про неучасть у групах; Non-membership cancellation — повідомлення скасовує доповідь про неучасть у групах; Контрольна сума — розраховується при передачі пакету і перевіряється при отриманні; при розрахунку контрольної суми, поле контрольної суми приймається за нуль; Тіло повідомлення — набір команд, що вирівнюються по межі 16 біт: код команди (8 біт); дані (мінімум 8 біт). + Команди КомандаДані кодзначеннябітназвазначення 0Пуста8—ігноруються 2Тип адреси8family2 — IPv4 3Маска підмережі8(+32)count, maskcount = 0 — ні поля mask, для наступних маршрутів використовується маска мережі призначення; 1 — є поле mask довжина якого залежить від типу адреси 4Метрика8valueМетрика наступних пунктів призначення, щодо маршрутизатора, що посилає команду 5Флаги8valueбіт 7 — пункт призначення недоступний; біт 6 — приховуваний маршрут розщеплення обрію 6Нескінченність8valueЗначення метрики, що вважається нескінченністю 7Адрес назначения8+32×Ncount, address1, …, addressNКількість адрес, масив адрес призначення; довжина адреси залежить від його типу 8Запитувані адреси призначення8+32×Ncount, address1, …, addressNКількість адрес, масив адрес призначення, для яких запитуються маршрути; при count = 0 – запитуються всі адреси 9Неучасть в групі8+(32+32)×Ncount, address1, time1, …, addressN, timeNКількість елементів, масив з пар: групова адреса, час дії; забороняє посилку дейтаграм за вказаними адресами на вказаний час 10Скасування неучасті в групі8+32×Ncount, address1, …, addressNКількість адрес, масив групових адрес, для яких скасовується заборона посилки дейтаграм
Примітки
Див. також