Протокол Информации Маршрутизации (RIP) является протоколоммаршрутизации, который был первоначально разработан для Универсального протокола PARC Xerox (где он назывался GWINFO) и использовался вкомплекте протоколов ХNS. RIP начали связывать как с UNIX, так ис TCP/IP в 1982 г., когда версию UNIX, называемую Berkeley StandardDistribution (BSD), начали отгружать с одной из реализацией RIP, крторую называли "трассируемой" (routed)(слово произносится "routedee"). Протокол RIP, который все еще является очень популярнымпротоколом маршрутизации в сообществе Internet, формально определен в публикации "Протоколы транспортировки Internet" XNS (XNS InternetTransport 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 показана на Рис. 23-1.
RIP поддерживает только самые лучшие маршруты к пункту назначения.Если новая информация обеспечивает лучший маршрут, то эта информациязаменяет старую маршрутную информацию. Изменения в топологии сети могут вызывать изменения в маршрутах, приводя к тому, например, что какой-нибудь новый маршрут становится лучшим маршрутом до конкретногопункта назначения. Когда имеют место изменения в топологии сети, тоэти изменения отражаются в сообщениях о корректировке маршрутизации.Например, когда какой-нибудь роутер обнаруживает отказ одного изканалов или другого роутера, он повторно вычисляет свои маршрутыи отправляет сообщения о корректировке маршрутизации. Каждый роутер, принимающий сообщение об обновлении маршрутизации,в котором содержится изменение, корректирует свои таблицы и распространяет это изменение. На Рис. 23-2 изображен формат пакета RIP для реализаций IP так, как он определен в RFC 1058. Первое поле в пакете RIP-это поле команд (command). Это поле содержитцелое число, обозначающее либо запрос, либо ответ. Команда "запрос"запрашивает отвечающую систему об отправке всей таблицы маршрутизацииили ее части. Пункты назначения, для которых запрашивается ответ,перечисляются далее в данном пакете. Ответная команда представляет собой ответ на запрос или чаще всего какую-нибудь незатребованнуюрегулярную корректировку маршрутизации. Отвечающая система включает всю таблицу маршрутизации или ее часть в ответный пакет. Регулярные сообщения о корректировке маршрутизации включают в себя всю таблицумааршрутизации. Поле версии (version) определяет реализуемую версию RIP. Т.к. в об'единенной сети возможны многие реализации RIP, это поле может бытьиспользовано для сигнализирования о различных потенциально несовместимых реализациях. За 16-битовым полем, состоящим из одних нулей, идет поле идентификаторасемейства адресов (аddress family identifier). Это поле определяетконкретное используемое семейство адресов. В сети Internet (крупной международной сети, об'единяющей научно-исследовательские институты,правительственные учреждения, университеты и частные предприятия) этимадресным семейством обычно является IP (значение=2), но могут быть также представлены другие типы сетей. Следом за еще одним 16-битовым полем, состоящим из одних нулей, идет32-битовое поле адреса (address). В реализациях RIP Internet это полеобычно содержит какой-нибудь адрес IP. За еще двумя 32-битовыми полями из нулей идет поле показателя RIP (metric). Этот показатель представляет собой число пересылок (hopcount). Он указывает, сколько должно быть пересечено транзитных участков (роутеров) об'единенной сети, прежде чем можно добратьсядо пункта назначения. В каждом отдельном пакете RIP IP допускается появление дo 25 вхожденийидентификатора семейства адреса, обеспечиваемых полями показателя. Другими словами, в каждом отдельном пакете RIP может быть перечислено до 25 пунктов назначения. Для передачи информации из более крупных маршрутных таблиц используется множество пакетов RIP. Как и другие протоколы маршрутизации, RIP использует определенныетаймеры для регулирования своей работы. Таймер корректировки маршрутизации RIP (routing update timer) обычно устанавливается на30 сек., что гарантирует отправку каждым роутером полной копиисвоей маршрутной таблицы всем своим соседям каждые 30 секунд. Таймернедействующих маршрутов (route invalid timer) определяет,сколько должно пройти времени без получения сообщений о каком-нибудь конкретноммаршруте, прежде чем он будет признан недействительным. Если какой-нибудь маршрут признан недействительным, то соседи уведомяются об этом факте. Такое уведомление должно иметь место до истечения временитаймера отключения маршрута (route flush timer). Когда заданное время таймера отключения маршрута истекает, этот маршрут удаляется из таблицы маршрутизации. Типичные исходные значения для этих таймеров-90 секунд для таймера недействующего маршрута и 270 секунд для таймераотключения маршрута. RIP определяет ряд характеристик, предназначенных для более стабильнойработы в условиях быстро изменяющейся топологии сети. В их число входитограничение числа пересылок, временные удерживания изменений(hold-downs),расщепленные горизонты (split-horizons) и корректировки отмены(poison reverse updates). RIP разрешает максимальное число пересылок, равное 15. Любому пунктуназначения, который находится дальше, чем на расстоянии 15 пересылок, присваивается ярлык "недосягаемого".Максимальное число пересылок RIPв значительной мере ограничивает его применение в крупных об'единенных сетях, однако способствует предотвращению появления проблемы, называемой счетом до бесконечности (count to infinity),приводящей к зацикливанию маршрутов в сети. Проблема счета до бесконечности представлена на Рис. 23-3. Рассмотрим, что случится, если на Рис. 23-3 канал Роутера 1(R1) (канал а), связывающий его с сетью А, откажет. R1 проверяет своюинформацию и обнаруживает, что Роутер 2 (R2) связан с сетью Аканалом длиной в одну пересылку. Т.к. R1 знает, что он напрямую соединенс R2, то он об'являет о маршруте из двух пересылок до сети А и начинаетнаправлять весь трафик в сеть А через R2. Это приводит к образованию маршрутной петли. Когда R2 обнаруживает, что R1 может теперь достичьсеть А за две пересылки, он изменяет запись своих собственных данных втаблице маршрутизации, чтобы показать, что он имеет тракт длиной в 3пересылки до сети А. Эта проблема, а также данная маршрутная петля будут продолжаться бесконечно, или до тех пор, пока не будет навязанокакое-нибудь внешнее граничное условие. Этим граничным условием является максимальное число пересылок RIP. Когда число пересылокпревысит 15, данный маршрут маркируется как недосягаемый. Черезнекоторое время этот маршрут удаляется из таблицы. Временные удерживания изменений используются для того, чтобы помешать регулярным сообщениям о корректировке незаконно восстановить в правахмаршрут, который оказался испорченным. Когда какой-нибудь маршрут отказывает, соседние роутеры обнаруживают это. Затем онивычисляют новые маршруты и отправляют сообщения об обновлении маршрутизации, чтобы информировать своих соседей об изменениях в маршруте. Эта деятельность приводит к появлению целой волны коррекциймаршрутизации, которые фильтруются через сеть. Приведенные в действие корректировки неодновременно прибывают во всеустройства сети. Поэтому возможно, что какое-нибудь устройство, которое еще не получило информацию о каком-нибудь отказе в сети, может отправить регулярное сообщение о корректировке (в котором маршрут, который только что отказал, все еще числится исправным) в другое устройство, которое только что получило уведомление об этом отказе в сети. В этом случае это другое устройство теперь будет иметь (и возможно, рекламировать) неправильную маршрутную информацию. Команды о временном удерживании указывают роутерам, чтобы онина некоторое время придержали любые изменения, которые могут оказатьвлияние на только что удаленные маршруты. Этот период удерживанияобычно рассчитывается таким образом, чтобы он был больше периодавремени, необходимого для внесения кокого-либо изменения о маршрутизации во всю сеть. Удерживание изменений предотвращает появление проблемы счета до бесконечности. Расщепленные горизонты используют преимущество того факта, чтоникогда не бывает полезным отправлять информацию о каком-нибудьмаршруте обратно в том направлении, из которого пришла эта информация.Для иллюстрации этого положения рассмотрим Рис. 23-4. Pоутер 1 (R1) первоначально об'являет, что он располагает каким-то маршрутом до Сети А. Pоутеру 2 (R2) нет оснований включатьэтот маршрут в свою корректировку, отсылаемую обратно роутеру R1,т.к. R1 ближе к Сети А. Правило расщепленного горизонта гласит, чтоR2 должен исключить (попасть на) этот маршрут при любых корректировках, которыеон отправляет в R1. Правило расщепленного горизонта помогает предотвратить маршрутные петлимежду двумя узлами. Например, рассмотрим случай, когда отказываетинтерфейс R1 с Сетью А. При отсутствии расщепленных горизонтов R2 продолжает информировать R1 о том, что он может попасть в Сеть А через R1. Если R1 не располагает достаточным интеллектом, то он действительно может выбрать маршрут, предлагаемый R2, в качестве альтернативы для своей отказавшей прямой связи, что приводит к образованию петли маршрутизации. И хотя временное удерживание изменений должно предотвращать это, применение расщепленного горизонта обеспечивает дополнительную стабильность алгоритма. В то время как задачей расщепленных горизонтов является предотвращение образования маршрутных петель между соседними роутерами,корректировки отмены преданазначены для устранения более крупныхмаршрутных петель. В основе их действия лежит положение о том, что увеличение значения показателей маршрутизации обычно указывает на наличие маршрутных петель. В этом случае отправляются корректировкиотмены для удаления данного маршрута и помещения его в состояние временного удерживания.
Формат пакета (Реализация IP)
ПРИМЕЧАНИЕ:На Рис. 23-2 представлен формат RIP, используемый для сетей IP в Internet. В некоторые другие варианты RIP внесены незначительные изменения формата и (или) имен файлов, которыездесь перечислены, но функциональные возможности базового алгоритмамаршрутизации те же самые. Характеристики стабильности
Временные удерживания изменений
Главная страница