- •Сетевые пртоколы маршрутизации
- •Маршрутизация,глобальные сети,протокол,rip
- •390005. Рязань, ул. Гагарина, 59/1.
- •1. Алгоритмы маршрутизации в глобальных и составных сетях связи Глобальные сети
- •Коммутация виртуальных каналов
- •Маршрутизация пакетов
- •Маршрутизация пакетов в составной сети
- •Адаптивная маршрутизация
- •2. Алгоритм состояния связей
- •3. Дистанционно–векторный алгоритм маршрутизации
- •4. Маршрутизация в ip-сетях
- •5. Программа моделирования дистанционно-векторного алгоритма маршрутизации
- •Создание структуры глобальной сети
- •Выполнение алгоритма работы протокола
- •Модификация структуры сети
- •6. Порядок выполнения лабораторной работы
- •6.1 Вычисление таблиц маршрутизации по алгоритму Дейкстры
- •6.2. Вычисление таблиц маршрутизации по дистанционно-векторному алгоритму
- •Контрольные вопросы
- •Варианты заданий
- •Содержание отчета по работе
- •Библиографический список
Маршрутизация пакетов
Режим маршрутизации пакетов (дейтаграммная служба) в глобальной сети предполагает использование таблиц маршрутизации в коммутаторах для продвижения пакетов через сеть. Каждая запись в таблице содержит адрес коммутатора, к которому подключен абонент-получатель пакета, и номер выходного порта коммутатора. Пакет в таком режиме передачи содержит сетевые адреса отправителя и приемника.
Маршрутизация пакетов в составной сети
Для управления передачей пакетов в составной сети используются маршрутизаторы, порты которых подключены к локальным или глобальным сетям, входящим в составную сеть. В составных сетях применяется режим маршрутизации пакетов.
Основными компонентами составной сети являются машрутизаторы, порты которых соединены каналами связи с ближайшими сетями, входящими в составную сеть. Для управления процессом перемещения пакетов через сеть маршрутизаторы должны содержать таблицы маршрутизации, которые создаются администратором сети или автоматически с помощью протоколов маршрутизации. Протоколы маршрутизации для глобальных и составных сетей имеют много общего. В частности, основные алгоритмы работы протоколов применяются как в глобальных, так и в составных сетях.
Алгоритм маршрутизации на основании информации о состоянии сети должен вычислить маршруты, которые обеспечат наименьшие потери при передаче пакетов с учетом некоторого критерия потерь.
Адаптивная маршрутизация
Адаптивная маршрутизация – способ выбора направления передачи, учитывающий изменение состояния сети. Узлы принимают решение о выборе маршрутов, реагируя на данные об изменении топологии и нагрузки в сети.
В идеальном случае каждый узел сети для принятия решения должен располагать полной информацией о состоянии всех остальных узлов, о топологии сети и длине очередей к каждому направлению в каждом узле.
Для автоматического построения таблиц маршрутизации коммутаторы (или маршрутизаторы) обмениваются информацией о топологии сети в соответствии со специальным служебным протоколом. Протоколы такого типа называются протоколами маршрутизации. Эти протоколы следует отличать от собственно сетевых протоколов. Они собирают и передают по сети служебную информацию, используя при этом сетевые протоколы как транспортное средство.
Адаптивные алгоритмы маршрутизации делятся на две группы:
алгоритмы состояния связей.
дистанционно-векторные алгоритмы;
2. Алгоритм состояния связей
Алгоритм предполагает обеспечение каждого коммутатора информацией, достаточной для построения точного графа сети связи. Служебные сообщения рассылаются коммутатором широковещательно и содержат информацию о состоянии связей с соседними коммутаторами. Широковещательная рассылка служебной информации происходит только в случаях возникновения отказов в структуре сети, что случается довольно редко. Поэтому протокол рассылки информации о состоянии сети не загружает сеть, что позволяет применять алгоритм в сетях с большим количеством коммутаторов.
На основании полученной информации каждый коммутатор строит с помощью некоторого алгоритма граф сети и вычисляет таблицу маршрутизации. Все коммутаторы используют для вычисления таблиц маршрутизации один и тот же граф сети, что делает процесс маршрутизации устойчивым к изменениям конфигурации сети.
Рассмотрим применение алгоритма для вычисления таблицы маршрутизации для первого узла сети, граф которой представлен на рис. 1.
Рис. 1. Граф сети
Связи и расстояния между соседними узлами сети отражены в матрице расстояний L[i,j] между соседними узлами сети.
0 |
4 |
2 |
- |
- |
- |
4 |
0 |
9 |
- |
2 |
- |
2 |
9 |
0 |
5 |
3 |
- |
- |
- |
5 |
0 |
6 |
- |
- |
2 |
3 |
6 |
0 |
4 |
- |
- |
- |
- |
4 |
0 |
Для вычисления таблиц маршрутизации в сетевых протоколах применяется алгоритм Дейкстры. Алгоритм позволяет поставить в соответствие каждому ребру графа некоторое неотрицательное значение, называемое ‘весом’, и определить расстояние между двумя узлами графа как сумму весов всех ребер, расположенных вдоль пути между этими узлами.
Узел, соответствующий данному коммутатору, считается исходным. Алгоритм вычисляет маршруты от исходного узла до остальных за n-1 шагов (n – число узлов). На каждом шаге определяется кратчайшее расстояние до очередного узла.
Выбранный узел исключается из набора узлов, до которых нужно вычислить расстояние за очередные шаги, и включается в список узлов, через которые проходят кратчайшие пути. При очередном шаге алгоритм выбирает узел, ближайший к исходному узлу, с учетом дополненного списка.
Процесс нахождения кратчайших маршрутов между первым и другими узлами сети поясняет таблица 1. За первые два шага определяются расстояния до второго и третьего узлов, непосредственно подключенных к первому узлу. Расстояния до узлов определяем из первой строки матрицы L: S[1,3]=L[1,3]=2 и S[1,2]=L[1,2]=4. На пути к указанным узлам нет транзитных узлов.
За третий шаг алгоритм анализирует пути от первого множества узлов (1,2,3) до узлов, включенных во второе множество (4,5,6). Возможны следующие варианты маршрутов и соответствующие им расстояния:
S[1,4]=L[1,4]=∞;
S[1,5]=L[1,5]= ∞;
S[1,6]=L[1,6]= ∞;
S[2,4]=S[1,2]+L[2,4]=4+∞=∞;
S[2,5]=S[1,2]+L[2,5]=4+2=6;
S[2,6]=S[1,2]+L[2,6]=4+∞=∞;
S[3,4]=S[1,3]+L[3,4]=2+5=7;
S[3,5]=S[1,3]+L[3,5]=2+3=5;
S[3,6]=S[1,3]+L[3,6]=2+∞=∞.
В уравнении 8 расстояние до узла 5 - наименьшее из всех возможных. Следовательно, на третьем шаге алгоритма пятый узел будет ближайшим а узел 3 - транзитным на кратчайшем маршруте до узла 5.
Аналогично вычисляются расстояния до 4-го и 5-го узлов.
Таблица 1.
Шаг |
Набор узлов 1 |
Набор узлов 2 |
Целевой узел j |
Расстояние S[1,j] |
Транзитный узел |
Порт |
1 |
1 |
2 3 4 5 6 |
3 |
2 |
1 |
2 |
2 |
1 3 |
2 4 5 6 |
2 |
4 |
1 |
1 |
3 |
1 2 3 |
4 5 6 |
5 |
5 |
3 |
- |
4 |
1 2 3 5 |
4 6 |
4 |
7 |
3 |
- |
5 |
1 2 3 4 5 |
6 |
6 |
9 |
5 |
- |
После пяти шагов получим данные для формирования полной таблицы маршрутизации. Чтобы определить номер порта, через который отправляется пакет из узла 1 в направлении некоторого узла, следует воспользоваться методом обратного перемещения по таблице 4 от целевого узла к первому.
В нашем примере порты для передачи пакетов в узлы 3 или 2 известны, т.к. они соединены непосредственно с первым.
Чтобы определить порт для передачи пакета в узел 6, надо в строке 5 таблицы найти номер транзитного узла (5), перейти на 3-ю строку, в которой найти очередной транзитный узел (3) , затем перейти на первую строку. В этой строке номер транзитного узла совпал с номером узла, для которого составлена таблица маршрутизации. Следовательно, передать пакет для узла 6 следует через порт 2.
Аналогично определяются порты для передачи пакетов в узлы 4 и 5. Полная таблица маршрутизации для узла 1 представлена в табл. 2.
Таблица 2.
Адрес узла назначения |
Порт |
Расстояние |
2 |
1 |
4 |
3 |
2 |
2 |
4 |
2 |
7 |
5 |
2 |
5 |
6 |
2 |
9 |
Следует помнить, что в каждом узле сети должна быть вычислена своя таблица маршрутизации.
