Слайд 3
Содержание:
Алгоритм построения таблицы маршрутов.
Особые случаи.
Реализация
протокола RIP.
Слайд 4
Протокол RIP является дистанционно-векторным протоколом внутренней маршрутизации. Процесс
работы протокола состоит в рассылке, получении и обработке векторов
расстояний до IP-сетей, находящихся в области действия протокола.
Слайд 5
Результатом работы протокола на конкретном маршрутизаторе является таблица,
где для каждой сети данной RIP-системы указано расстояние до
этой сети (в хопах) и адрес следующего маршрутизатора.
Слайд 6
1. Алгоритм построения таблицы маршрутов
А=2à ƒ
Это означает,
что расстояние от данного маршрутизатора до сети А равно
2, а дейтаграммы, следующие в сеть А, надо пересылать маршрутизатору ƒ.
Слайд 7
Вектором расстояний называется набор пар ("Сеть", "Расстояние до
этой сети"), извлеченный из таблицы маршрутов.
Это элементом вектора
расстояний.
Слайд 8
Каждый маршрутизатор, на котором запущен модуль RIP, периодически
широковещательно распространяет свой вектор расстояний. Вектор распространяется через все
интерфейсы маршрутизатора, подключенные к сетям, входящим в RIP-систему.
Каждый маршрутизатор также периодически получает векторы расстояний от других маршрутизаторов.
Слайд 9
Пример построения таблицы маршрутов
Здесь , ‚
, ƒ , „ - маршрутизаторы, A, B, C,
D, E - сети. Хосты в сетях не показаны за ненадобностью. Мы будем следить за формированием таблицы маршрутов в узле .
Слайд 10
В начальный момент времени (например, после подачи питания
на маршрутизаторы) таблица маршрутов в узле выглядит следующим
образом (т.к. узел знает только о тех сетях, к которым подключен непосредственно):
A=1à
B=1à
Следовательно, узел рассылает в сети А и В вектор расстояний (А=1,В=1).
Слайд 11
Поскольку сети C и D вовсе не фигурируют
в его таблице маршрутов, они туда вносятся. В узле
имеем:
A=1à
B=1à
C=2à ‚
D=2à ‚
Слайд 12
Сеть Е в таблице узла отсутствует:
A=1à
B=1à
C=2à ‚
D=2à ‚
Е=3à ‚
Слайд 13
Итоговая таблица маршрутов маршрутизатора :
A=1à
B=1à
C=2à ‚
D=2à ‚
Е=2à ƒ.
Слайд 14
Изменение состояния RIP-системы
Выясним, что происходит в случае, когда
состояние системы неожиданно изменяется, например, маршрутизатор отключается от
сети А.
Слайд 15
A=16à
B=1à
C=16à ‚
D=16à ‚
Е=2à ƒ
Вектор расстояний, построенный на основании этой таблицы,
рассылается в сеть В, чтобы маршрутизаторы, направлявшие свои данные через в ставшие недоступными сети, если таковые маршрутизаторы существуют, соответственно изменили свои маршрутные таблицы.
Слайд 16
В узле ƒ имелась следующая таблица маршрутов:
A=2à
‚
B=1à ƒ
C=1à ƒ
D=2à „
Е=1à ƒ
Слайд 17
A=3à ƒ
B=1à
C=2à ƒ
D=3à ƒ
Е=2à ƒ
Таким образом, узел построил маршруты в
обход поврежденного участка и восстановил достижимость всех сетей.
Слайд 18
2. Особые случаи:
Зацикливание
2. Счет до бесконечности
Слайд 19
Изменение состояния RIP-системы
Слайд 20
ƒ отправлял дейтаграммы в сеть А через
, то есть таблица в узле ƒ имела вид:
A=2à
B=1à ƒ
C=1à ƒ
D=2à „
Е=1à ƒ
После отсоединения от сети А узел ƒ получает от вектор (A=16,B=1,C=16,D=16,E=2). Проанализировав этот вектор, ƒ делает вывод, что все указанные в нем расстояния больше значений, содержащихся в его маршрутной таблице, на основании чего этот вектор узлом ƒ игнорируется.
Слайд 21
A=3à ƒ
B=1à
C=2à ƒ
D=3à ƒ
Е=2à ƒ
Очевидно, после этого содержимое таблиц узлов
и ƒ стабилизируется.
Слайд 23
Первоначально сеть А была подсоединена к узлу‚ но
в какой-то момент времени произошла авария и сеть А
оказалась изолированной.
До момента аварии маршрутизаторы имели следующие записи относительно сети А:
Узел ‚ А=1à ‚
Узел ƒ А=2à ‚
Узел „ А=2à ‚
Немедленно после аварии запись в таблице маршрутов узла А изменяется на А=16à ‚ , это говорит о том, что сеть А недостижима, а точнее, что сеть А через узел ‚ недостижима.
Слайд 24
Вектор расстояний, рассылаемый из ‚ , с элементом
A=16 достигает узла ƒ , но по какой-то причине
задерживается на пути в „ . Согласно дополнениям к алгоритму рассылки векторов расстояний, приведенным в предыдущем пункте, узел ƒ вносит в свою таблицу запись А=16à ‚ и рассылает вектор с элементом А=16.
Слайд 25
В этот момент узел „ , до которого
сообщение от узла ‚ о недостижимости сети А еще
не дошло, рассылает в сети Е свой вектор с элементом А=2.
Слайд 26
Узел ‚ , руководствуясь теми же соображениями, что
и узел ƒ ранее, модифицирует свою таблицу: А=4à ƒ
.
Слайд 27
Узел ƒ получает этот вектор, прибавляет к расстоянию
1 и замечает, что оно меньше записанного в таблице
(бесконечность), следовательно, в таблице маршрутов узла ƒ появляется запись А=3à „ . Вектор расстояний с элементом А=3 рассылается узлом ƒ в сети С и достигает узла ‚ .
Слайд 28
Примерно в это время узел „ получает наконец-то
вектор А=16, отправленный после аварии узлом ‚ , но
вслед за этим из узла ‚ приходит вектор А=4, который узел ‚ рассылает в сети D. Поскольку „ отправляет дейтаграммы в сеть А через ‚ , он обязан реагировать на любые объявления узлом ‚ расстояния до сети А. Поэтому в таблице узла „ появляется А=5à ‚ .
Слайд 29
3. Реализация протокола RIP.
Существуют две версии протокола RIP:
RIP-1 и RIP-2. Версия 2 имеет некоторые усовершенствования, как
то: возможность маршрутизации сетей по модели CIDR (кроме адреса сети передается и маска), поддержка мультикастинга, возможность использования аутентификации RIP-сообщений и др.
Слайд 30
Типы и формат сообщений
В протоколе RIP имеются два
типа сообщений, которыми обмениваются маршрутизаторы:
ответ (response) - рассылка
вектора расстояний;
запрос (request) - маршрутизатор (например, после своей загрузки) запрашивает у соседей их маршрутные таблицы или данные об определенном маршруте.
Обмен сообщениями происходит по порту 520 UDP.
Слайд 31
Формат сообщений обоих типов одинаков:
Слайд 32
Поле "Command" определяет тип сообщения: 1 - request,
2 - response; поле "Version" - версию протокола (1
или 2).
Поле "Address Family Identifier" содержит значение 2, которое обозначает семейство адресов IP; другие значения не определены. Поля "IP address" и "Metric" содержат адрес сети и расстояние до нее.
Слайд 33
При получении сообщения типа "ответ" для каждого содержащегося
в нем элемента вектора расстояний модуль RIP выполняет следующие
действия:
проверяет корректность адреса сети и маски, указанных в сообщении;
проверяет, не превышает ли метрика (расстояние до сети) бесконечности;
некорректный элемент игнорируется;
Слайд 34
- если метрика меньше бесконечности, она увеличивается на
1;
производится поиск сети, указанной в рассматриваемом элементе
вектора расстояний, в таблице маршрутов;
Слайд 35
- если запись о такой сети в таблице
маршрутов отсутствует и метрика в полученном элементе вектора меньше
бесконечности, сеть вносится в таблицу маршрутов с указанной метрикой; в поле "Следующий маршрутизатор" заносится адрес маршрутизатора, приславшего сообщение; запускается таймер для этой записи в таблице;
Слайд 36
- если искомая запись присутствует в таблице с
метрикой больше, чем объявленная в полученном векторе, в таблицу
вносятся новые метрика и, соответственно, адрес следующего маршрутизатора; таймер для этой записи перезапускается;
Слайд 37
- если искомая запись присутствует в таблице и
отправителем полученного вектора был маршрутизатор, указанный в поле "Следующий
маршрутизатор" этой записи, то таймер для этой записи перезапускается; более того, если при этом метрика в таблице отличается от метрики в полученном векторе расстояний, в таблицу вносится значение метрики из полученного вектора;
- во всех прочих случаях рассматриваемый элемент вектора расстояний игнорируется.
Слайд 38
Общий порядок действий при конфигурировании модуля RIP следующий:
- указать, какие сети, подключенные к маршрутизатору, будут включены
в RIP-систему;
- указать "nonbroadcast networks", т.е. сети со статической маршрутизацией (например, тупиковые сети, подсоединенные к внешнему миру через единственный шлюз), куда не нужно рассылать векторы расстояний;
- указать "permanent routes" - статические маршруты, например, маршрут по умолчанию за пределы автономной системы.
Слайд 39
Вопросы для самопроверки:
Дайте сравнительную характеристику протоколов RIP и
OSPF. Определите область применения каждого из них.
К какому типу
протокола маршрутизации относиться RIP?
Как часто распространяется вектор расстояний в RIP системе по умолчанию?
Какие Исключительные ситуации в RIP системе вы знаете?
В чем отличие версии протокола RIP-1 от RIP-2?
Слайд 40
Рекомендуемая литература:
Мамаев М.А. Телекоммуникационные технологии (Сети TCP/IP). –
Владивосток: Изд-во ВГУЭС, 2004.
Леинванд А., Пински Б. Конфигурирование маршрутизаторов
Cisco. 3-е издание. – М.: "Вильямс", 2007.
Мамаев М., Петренко С. Технологии защиты информации в Интернете. Специальный справочник. – СПб: "Питер", 2005.