Дистанционно-векторный протокол многоадресатной маршрутизации

В глобальной сети Internet все еще используется один из первых протоколов многоадресатной маршрутизации. Этот протокол, называемый дистанционно-векторным протоколом многоадресатной маршрутизации (DVMRP), позволяет многоадресатным маршрутизаторам обмениваться информацией о членах группы и маршрутной информацией. Протокол DVMRP напоминает протокол RIP, описанный в главе 16, "Маршрутизация внутри автономной системы (RIP, OSPF, HELLO)". Он является расширенной версией протокола RIP, обеспечивающей режим многоадресатной передачи. По сути этот протокол распространяет информацию о текущих членах группы, а также о стоимости передачи дейтаграмм между маршрутизаторами. Для каждой возможной пары (группа, отправитель) маршрутизатор строит дерево пересылки на основе дерева физических подключений. Получив предназначенную для многоадресатной IP-группы дейтаграмму, он отсылает копию этой дейтаграммы по сетевым соединениям, которые соответствуют ветвям дерева пересылки.

Интересно, что в спецификации протокола DVMRP определена расширенная форма протокола IGMP, которая используется для обмена информацией между двумя многоадресатными маршрутизаторами. В ней указаны дополнительные типы IGMP-сообщений, которые позволяют маршрутизаторам объявить о вступлении в многоадресатную группу, отключении от нее, а также опросить другие маршрутизаторы. Расширения протокола IGMP также позволяют создавать сообщения, в которых пересылается маршрутная информация, включая метрику стоимости маршрутов.

Программа mrouted

Программа mrouted является популярным демоном, реализующим протокол DVMRP для систем UNIX. Подобно routed, программа mrouted тесно взаимодействует с ядром операционной системы для сбора многоадресатной маршрутной информации. Однако в отличие от routed, программа mrouted не использует обычную таблицу маршрутизации. Поэтому ее можно использовать только со специальной версией ядра системы UNIX, которое называется многоадресатным (multicast kernel), поддерживающего многоадресатную пересылку дейтаграмм. В этом ядре системы UNIX содержится специальная таблица многоадресатной маршрутизации, а также программный код, который необходим для пересылки многоадресатных дейтаграмм. Программа mrouted выполняет следующие функции.

  • ■ Распространение маршрутов. В программе mrouted для распространения многоадресатной маршрутной информации от одного маршрутизатора к другому используется протокол DVMRP. Компьютер, на котором запущена программа mrouted, интерпретирует многоадресатную маршрутную информацию и создает таблицу многоадресатной маршрутизации. Как и следовало ожидать, в каждом элементе этой таблицы указана пара адресов (группа, отправитель), а также набор интерфейсов, по которым будут пересылаться соответствующие этому элементу дейтаграммы. Программа mrouted не заменяет собой другие стандартные программы поддержки протоколов маршрутизации. Как правило, эта программа запускается на компьютере в качестве дополнения к программному обеспечению поддержки стандартного протокола маршрутизации.
  • ■ Многоадресатное туннелирование. Одна из главных проблем, связанных с режимом многоадресатной передачи в объединенной сети, возникает из-за того, что не все маршрутизаторы могут пересылать многоадресатные дейтаграммы. Поэтому в программе mrouted предусмотрена возможность пересылки многоадресатных дейтаграмм по туннелю между маршрутизаторами, проходящему через промежуточные маршрутизаторы, которые не участвуют в многоадресатной маршрутизации.

Хотя программа mrouted может одна справиться с описанными выше задачами, на конкретном компьютере обе эти функции могут и не понадобиться. Поэтому, чтобы администратор мог точно определить функции программы, в программе mrouted предусмотрено использование файла конфигурации. В этом файле содержатся данные, которые определяют, какие именно многоадресатные группы программа mrouted имеет право анонсировать через каждый интерфейс, а также способ пересылки дейтаграмм. Кроме того, в файле конфигурации для каждого из маршрутизаторов назначается определенная метрика и пороговое значение. Метрика позволяет администратору присвоить каждому маршруту определенную стоимость (например, у маршрута, проходящего по локальной сети, должна быть меньшая стоимость, чем у маршрута, проложенного по низкоскоростной линии последовательной передачи). Пороговое значение представляет собой минимальное значение времени жизни (TTL) IР-дейтаграммы, которое необходимо ей для прохождения маршрута. Если время жизни дейтаграммы меньше указанного порогового значения, многоадресатное ядро не пересылает дейтаграмму получателю, аннулируя ее. В результате пропускная способности сети не растрачивается понапрасну.

Похожие статьи Меню Опрос Фото Популярное