Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
354289.doc
Скачиваний:
37
Добавлен:
20.04.2019
Размер:
2.68 Mб
Скачать

39. Пояснить принцип работы протокола rip.

Основная задача сетей – транспортировка информации от ЭВМ – отправителя к ЭВМ – получателю. В большинстве случаев для этого нужно совершить несколько пересылок. Проблему выбора пути решают алгоритмы маршрутизации.

Алгоритм маршрутизации должен обладать вполне определенными свойствами: надежностью, корректностью, стабильностью, простотой и оптимальностью ( минимальная задержка доставки, максимальная пропускная способность, минимальная цена, максимальная надежность или минимальная вероятность ошибки).

Алгоритмы маршрутизации бывают адаптивными и неадаптивными. Неадаптивные, осуществляя выбор маршрута, не принимают во внимание существующую в данный момент топологию или загрузку каналов. Такие алгоритмы называются также статистическими. Адаптивные алгоритмы предполагают периодическое изменение характеристик каналов и постоянное исследование топологии маршрутов. Выбор того или иного маршрута здесь производится на основании этих измерений.

Внутренний протокол маршрутной информации RIP.

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

IP – адрес места назначения.

Метрика маршрута (от 1 до 15; число шагов до места назначения). Для измерения расстояния между сетью – источником и сетью – приемником RIP использует единую маршрутную метрику – счетчик узлов. Каждому узлу по пути от источника к приемнику присваивается значение счетчика узлов. Обычно оно равно 1, когда маршрутизатор получает сообщение об обновлении маршрутов с новой или измененной записью о сети – приемнике, он увеличивает значение метрики в обновленном маршруте на 1 и заносит сеть в свою маршрутную таблицу.

IP – адрес ближайшего маршрутизатора (Gateway) по пути к месту назначения.

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

RIP посылает сообщение об обновлении маршрутов через регулярные интервалы, а также при изменении топологии сети. Когда маршрутизатор получает информацию об обновлении маршрутов, куда входят измененные записи маршрутной таблицы, он обновляет свою маршрутную таблицу, занося в нее новый маршрут. Значение метрики маршрута увеличивается на 1, и в качестве отправителя сообщения указывается следующий узел. RIP– маршрутизаторы запоминают только наилучший маршрут к приемнику (маршрут с наименьшим значением метрики). После обновления маршрутной таблицы маршрутизатор немедленно начинает передачу сообщения об обновлении маршрутов, чтобы сообщить другим маршрутизаторам в сети о произошедших изменениях. Эта информация посылается независимо от плановых, регулярных обновлений, посылаемых RIP – маршрутизаторами.

Протокол RIP должен быть способен обрабатывать три типа ошибок:

1. Циклические маршруты. В протоколе нет механизмов выявления замкнутых маршрутов - либо слепо верить параметрам, либо принимать меры для блокировки такой возможности.

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

Иллюстрация, поясняющая возникновение циклических маршрутов при использовании вектора расстояния

На верхней части рисунка показана ситуация, когда маршрутизаторы указывают маршрут до сети <А> в соответствии со стрелками. На нижней части связь на участке GW1 <сеть А> оборвана, а GW2 по-прежнему продолжает оповещать о ее доступности с числом шагов, равным 2. При этом GW1, восприняв эту информацию (если GW2 успел передать свою маршрутную информацию раньше GW1), может перенаправить пакеты, адресованные сети А, на GW, а в своей маршрутной таблице будет характеризовать путь до сети А метрикой 3. При этом формируется петля маршрутов. Последующая широковещательная передача маршрутных данных GW1 и GW2 не решит эту проблему быстро. Так после очередного обмена путь от GW2 до сети А будет характеризоваться метрикой 5. Этот процесс будет продолжаться до тех пор, пока метрика не станет равной 16, а это займет слишком много циклов обмена маршрутной информацией.

2. Для подавления нестабильности RIP должен использовать малое значение максимально возможного числа шагов (<16).

3. Медленное распространение маршрутной информации по сети создает проблемы при динамичном изменении маршрутной ситуации (система не поспевает за изменениями). Малое предельное значение метрики улучшает сходимость, но не устраняет проблему.

Проблема может быть решена следующим образом. Маршрутизатор запоминает, через какой интерфейс получена маршрутная информация, и через этот интерфейс эту информацию уже не передает. В рассмотренном выше примере GW2 не станет посылать информацию по пути к сети А маршрутизатору GW1, от которого он получил эти данные. В этом случае в маршрутной таблице GW1 путь до А исчезнет сразу. Остальные маршрутизаторы узнают о недостижимости сети А через несколько циклов. Существуют и другие пути преодоления медленных переходных процессов. Если производится оповещение о коротком пути, все узлы–получатели воспринимают эти данные немедленно. Если же маршрутизатор закрывает какой-то путь, его отмена фиксируется остальными лишь по тайм–ауту. Универсальным методом исключения ошибок при маршрутизации является использование достаточно большой выдержки, перед тем как использовать информацию об изменении маршрутов. В этом случае к моменту изменения маршрута эта информация станет доступной всем участникам процесса маршрутизации. Но все перечисленные методы и некоторые другие известные алгоритмы, решая одну проблему, часто вносят другие. Многие из этих методов могут при определенных условиях вызвать лавину широковещательных сообщений, что также дезорганизует сеть. Именно малая скорость установления маршрутов в RIP и является причиной их постепенного вытеснения другими протоколами.

В RIP сообщения инкапсулируются в UDP – дейтограммы. В качестве метрики RIP использует число шагов до цели. Если между отправителем и приемником расположено три маршрутизатора, считается, что между ними 4 шага. Такой вид метрики не учитывает различий в пропускной способности или загруженности отдельных сегментов сети. Применение вектора расстояния не может гарантировать оптимальность выбора маршрута.

Маршрут по умолчанию имеет адрес 0.0.0.0 (это верно и для других протоколов маршрутизации). Каждому маршруту ставится в соответствии таймер Тайм-аута и «Сборщика мусора». Тайм-аут-таймер сбрасывается каждый раз, когда маршрут инициализируется или корректируется. Если со времени последней коррекции прошло 3 минуты или получено сообщение о том, что вектор расстояния равен 16, то маршрут считается закрытым. Но запись о нем не стирается, пока не истечет время «уборки мусора» (2 мин). При появлении эквивалентного маршрута переключения на него не происходит, т.о. блокируется возможность осцилляции между двумя или более равноценными маршрутами.

«КОМАНДА» показывает, является ли пакет запросом или ответом. Запрос требует, чтобы маршрутизатор отправил маршрутную таблицу – всю или частично. Ответ может быть незапрашиваемым, регулярным обновлением маршрутной информации или ответом на запрос. В ответах содержатся записи маршрутной таблицы. Для передачи информации из больших маршрутных таблиц используется несколько RIP – пакетов.

«ВЕРСИЯ» для RIP равно 1 (для RIP-2 равно 2).

«НУЛЕВОЕ ПОЛЕ» в протоколе RIP фактически не используется. Оно добавляется исключительно для обеспечения обратной совместимости с нестандартными версиями RIP и содержит нулевое значение.

«НАБОР ПРОТОКОЛОВ СЕТИ I» определяет набор протоколов, которые используются в соответствующей сети (для Интернет это поле имеет значение 2).

«РАССОТЯНИЕ ДО СЕТИ i» содержит целое число шагов (от 1 до 15) до данной сети. В одном сообщении может присутствовать информация о 25 маршрутах.

При реализации RIP можно выделить следующие режимы:

Инициализация. Определение всех «живых» интерфейсов путем посылки запросов, получение таблиц маршрутизации от других маршрутизаторов. Часто используются широковещательные запросы.

Получен запрос. В зависимости от типа запроса высылается адресату полная таблица маршрутизации, или проводится индивидуальная обработка.

Получен отклик. Проводится коррекция таблицы маршрутизации (удаление, исправление, добавление).

Регулярные коррекции. Каждые 30 секунд вся или часть таблицы маршрутизации посылается всем соседним маршрутизаторам. Могут посылаться и специальные запросы при локальном изменении таблицы. RIP достаточно простой протокол.

Недостатки:

1. RIP не работает с адресами субсетей. Если нормальный 16–бит индикатор ЭВМ класса В не равно 0, RIP не может определить, является ли не нулевая часть субсетевым ID, или полным IP адресом.

2. RIP не требует много времени для восстановления связи после себя в маршрутизаторе (минуты). В процессе установления режима возможны циклы.

3. Число шагов важный, но не единственный параметр маршрута, да и 15 шагов не предел для современных сетей.

Протокол RIP-2 является новой версией RIP, которая в дополнение к широковещательному режиму поддерживает мультикастинг, позволяет работать с масками субсетей.

В формате протокола RIP–2 поле «КОМАНДА» означает тоже, что и в протоколе RIP.

Поле «ВЕРСИЯ» для протокола RIP–2 равно 2.

«МЕТКА МАРШРУТА» служит для распознавания внутренних маршрутов (опознаваемых RIP) и внешних маршрутов (опознаваемых другими протоколами).

Поле маршрутный демон является идентификатором резидентной программы–маршрутизатора.

Поле метка маршрута используется для поддержки внешних протоколов маршрутизации, сюда записываются коды автономных систем. При необходимости управления доступом можно использовать первые 20 байт с кодом набора протоколов сети 0хFFFF и меткой маршрута равной 2. Тогда остальные 16 байт можно записать в пароль.

Поле метрика определяет, сколько узлов (транзитных участков между маршрутизаторами) нужно пройти по пути к приемнику. Для действующих маршрутов эта величина находится в диапазоне между 1 и 15, а для недействующих она равна 16.

Остальные поля идентичны полям протокола RIP.