Опубликован: 19.07.2006 | Уровень: для всех | Доступ: платный
Лекция 5:

Протоколы маршрутизации

Аннотация: Описываются протоколы маршрутизации RIP, IGRP, OSPF, EGP, BGP и OSI.

RIP

Библиографическая справка

Протокол Информации Маршрутизации (RIP) является протоколом маршрутизации, который был первоначально разработан для Универсального протокола PARC Xerox (где он назывался GWINFO) и использовался в комплекте протоколов ХNS. RIP начали связывать как с UNIX, так и с TCP/IP в 1982 г., когда версию UNIX, называемую Berkeley Standard Distribution (BSD), начали отгружать с одной из реализацией RIP, которую называли "трассируемой" (routed) (слово произносится "route dee"). Протокол RIP, который все еще является очень популярным протоколом маршрутизации в сообществе Internet, формально определен в публикации "Протоколы транспортировки Internet" XNS (XNS Internet Transport Protocols ) (1981 г.) и в Запросах для комментария ( Request for Comments - RFC) 1058 (1988 г.).

RIP был повсеместно принят производителями персональных компьютеров (РС) для использования в их изделиях передачи данных по сети. Например, протокол маршрутизации AppleTalk (Протокол поддержания таблицы маршрутизации - RTMP) является модернизированной версией RIP. RIP также явился базисом для протоколов Novell, 3Com, Ungermann-Bass и Banyan. RIP компаний Novell и 3Com в основном представляет собой стандартный RIP компании Xerox. Ungermann-Bass и Banyan внесли незначительные изменения в RIP для удовлетворения своих нужд.

Формат таблицы маршрутизации

Каждая запись данных в таблице маршрутизации RIP обеспечивает разнообразную информацию, включая конечный пункт назначения, следующую пересылку на пути к этому пункту назначения и показатель ( metric ). Показатель обозначает расстояние до пункта назначения, выраженное числом пересылок до него. В таблице маршрутизации может находиться также и другая информация, в том числе различные таймеры, связанные с данным маршрутом. Типичная таблица маршрутизации RIP показана на Рис. 5.1.

Typical RIP Routing Table

Рис. 5.1. Typical RIP Routing Table

RIP поддерживает только самые лучшие маршруты к пункту назначения. Если новая информация обеспечивает лучший маршрут, то эта информация заменяет старую маршрутную информацию. Изменения в топологии сети могут вызывать изменения в маршрутах, приводя к тому, например, что какой-нибудь новый маршрут становится лучшим маршрутом до конкретного пункта назначения. Когда имеют место изменения в топологии сети, то эти изменения отражаются в сообщениях о корректировке маршрутизации. Например, когда какой-нибудь роутер обнаруживает отказ одного из каналов или другого роутера, он повторно вычисляет свои маршруты и отправляет сообщения о корректировке маршрутизации. Каждый роутер, принимающий сообщение об обновлении маршрутизации, в котором содержится изменение, корректирует свои таблицы и распространяет это изменение.

Формат пакета (Реализация IP)

На Рис. 5.2 изображен формат пакета RIP для реализаций IP так, как он определен в RFC 1058.

ПРИМЕЧАНИЕ: На Рис. 5.2 представлен формат RIP, используемый для сетей IP в Internet. В некоторые другие варианты RIP внесены незначительные изменения формата и (или) имен файлов, которые здесь перечислены, но функциональные возможности базового алгоритма маршрутизации те же самые.

RIP Packet Format

Рис. 5.2. RIP Packet Format

Первое поле в пакете RIP-это поле команд ( command ). Это поле содержит целое число, обозначающее либо запрос, либо ответ. Команда "запрос" запрашивает отвечающую систему об отправке всей таблицы маршрутизации или ее части. Пункты назначения, для которых запрашивается ответ, перечисляются далее в данном пакете. Ответная команда представляет собой ответ на запрос или чаще всего какую-нибудь незатребованную регулярную корректировку маршрутизации. Отвечающая система включает всю таблицу маршрутизации или ее часть в ответный пакет. Регулярные сообщения о корректировке маршрутизации включают в себя всю таблицу маршрутизации.

Поле версии ( version ) определяет реализуемую версию RIP. Т.к. в объединенной сети возможны многие реализации RIP, это поле может быть использовано для сигнализирования о различных потенциально несовместимых реализациях.

За 16-битовым полем, состоящим из одних нулей, идет поле идентификатора семейства адресов ( аddress family identifier ). Это поле определяет конкретное используемое семейство адресов. В сети Internet (крупной международной сети, объединяющей научно-исследовательские институты, правительственные учреждения, университеты и частные предприятия) этим адресным семейством обычно является IP ( значение=2 ), но могут быть также представлены другие типы сетей.

Следом за еще одним 16-битовым полем, состоящим из одних нулей, идет 32-битовое поле адреса ( address ). В реализациях RIP Internet это поле обычно содержит какой-нибудь адрес IP.

За еще двумя 32-битовыми полями из нулей идет поле показателя RIP ( metric ). Этот показатель представляет собой число пересылок ( hop count ). Он указывает, сколько должно быть пересечено транзитных участков (роутеров) объединенной сети, прежде чем можно добраться до пункта назначения.

В каждом отдельном пакете RIP IP допускается появление дo 25 вхождений идентификатора семейства адреса, обеспечиваемых полями показателя. Другими словами, в каждом отдельном пакете RIP может быть перечислено до 25 пунктов назначения. Для передачи информации из более крупных маршрутных таблиц используется множество пакетов RIP.

Как и другие протоколы маршрутизации, RIP использует определенные таймеры для регулирования своей работы. Таймер корректировки маршрутизации RIP ( routing update timer ) обычно устанавливается на 30 сек., что гарантирует отправку каждым роутером полной копии своей маршрутной таблицы всем своим соседям каждые 30 секунд. Таймер недействующих маршрутов ( route invalid timer ) определяет, сколько должно пройти времени без получения сообщений о каком-нибудь конкретном маршруте, прежде чем он будет признан недействительным. Если какой- нибудь маршрут признан недействительным, то соседи уведомяются об этом факте. Такое уведомление должно иметь место до истечения времени таймера отключения маршрута ( route flush timer ). Когда заданное время таймера отключения маршрута истекает, этот маршрут удаляется из таблицы маршрутизации. Типичные исходные значения для этих таймеров - 90 секунд для таймера недействующего маршрута и 270 секунд для таймера отключения маршрута.

Роман Васильев
Роман Васильев
Россия
Андрей Русинов
Андрей Русинов
Россия, Москва, ГБОУ ВПО МГПУ, 2013