sonyps4.ru

Динамические протоколы маршрутизации. Маршрутизация

Стати́ческая маршрутиза́ция - вид маршрутизации, при котором маршруты указываются в явном виде при конфигурации маршрутизатора. Вся маршрутизация при этом происходит без участия каких-либо протоколов маршрутизации.

При задании статического маршрута указывается:

Адрес сети (на которую маршрутизируется трафик), маска сети

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

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

В некоторых маршрутизаторах возможно указывать интерфейс, на который следует направить трафик сети и указать дополнительные условия, согласно которым выбирается маршрут (например, SLA в маршрутизаторах cisco).

Достоинства

Основные:

Лёгкость отладки и конфигурирования в малых сетях.

Отсутствие дополнительных накладных расходов (из-за отсутствия протоколов маршрутизации)

Мгновенная готовность (не требуется интервал для конфигурирования/подстройки)

Предсказуемость в каждый момент времени

Недостатки

Очень плохое масштабирование (добавление (N+1)-ой сети потребует сделать 2*(N+1) записей о маршрутах, причём на большинстве маршрутизаторов таблица маршрутов будет различной, при N>3-4 процесс конфигурирования становится весьма трудоёмким).

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

Отсутствие динамического балансирования нагрузки

Необходимость в ведении отдельной документации к маршрутам, проблема синхронизации документации и реальных маршрутов.

Использование

В реальных условиях статическая маршрутизация используется в условиях наличия шлюза по умолчанию (узла, обладающего связностью с остальными узлами) и 1-2 сетями. Помимо этого статическая маршрутизация используется для "выравнивания" работы маршрутизирующих протоколов в условиях наличия туннеля (для того, чтобы маршрутизация трафика, создаваемого туннелем, не производилась через сам туннель).

18. Маршрутизация. Динамическая маршрутизация.

Динамическая маршрутизация - вид маршрутизации, при котором таблица маршрутизации редактируется программно. В случае UNIX-систем демонами маршрутизации; в других системах - служебными программами, которые называются иначе, но фактически играют ту же роль.

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

Протоколы динамической маршрутизации:

Когда маршрутизатор отправляет обновление RIP, он добавляет к метрике маршрута, которую он использует, 1 и отправляет соседу. Сосед получает обновление, в котором указано какую метрику для полученного маршрута ему использовать.

Маршрутизатор отправляет каждые 30 секунд все известные ему маршруты соседним маршрутизаторам. Но, кроме этого, для предотвращения петель и для улучшения времени сходимости, используются дополнительные механизмы:

Split horizon - если маршрут достижим через определенный интерфейс, то в обновление, которое отправляется через этот интерфейс не включается этот маршрут;

Triggered update - обновления отправляются сразу при изменении маршрута, вместо того чтобы ожидать когда истечет Update timer;

Route poisoning - это принудительное удаление маршрута и перевод в состояние удержания, применяется для борьбы с маршрутными петлями.

Poison reverse - Маршрут помечается, как не достижимый, то есть с метрикой 16 и отправляется в обновлениях.

В обновлениях RIPv2 могут передаваться до 25 сетей.

Маршрутизаторы обмениваются hello-пакетами через все интерфейсы, на которых активирован OSPF. Маршрутизаторы, совместно использующие общий канал передачи данных, становятся соседями, когда они приходят к договоренности об определенных параметрах, указанных в их hello-пакетах.

На следующем этапе работы протокола маршрутизаторы будут пытаться перейти в состояние смежности со своими соседями. Переход в состояние смежности определяется типом маршрутизаторов, обменивающихся hello-пакетами, и типом сети, по которой передаются hello-пакеты. OSPF определяет несколько типов сетей и несколько типов маршрутизаторов. Пара маршрутизаторов, находящихся в состоянии смежности, синхронизирует между собой базу данных состояния каналов.

Каждый маршрутизатор посылает объявление о состоянии канала маршрутизаторам, с которыми он находится в состоянии смежности.

Каждый маршрутизатор, получивший объявление от соседа, записывает информацию, передаваемую в нем, в базу данных состояния каналов маршрутизатора и рассылает копию объявления всем другим своим соседям.

Рассылая объявления через зону, все маршрутизаторы строят идентичную базу данных состояния каналов маршрутизатора.

Когда база данных построена, каждый маршрутизатор использует алгоритм "кратчайший путь первым" (shortest path first) для вычисления графа без петель, который будет описывать кратчайший путь к каждому известному пункту назначения с собой в качестве корня. Этот граф - дерево кратчайшего пути.

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

RTP управляет процессом отправки и получения пакетов EIGRP.

RTP обеспечивает:

Гарантированную доставку пакетов. Для этого используется проприетарный алгоритм Cisco, reliable multicast. Пакеты отправляются на muilticast-адрес 224.0.0.10. Каждый сосед получивший такой пакет отправляет подтверждение отправителю пакета.

Сохранение порядка пакетов. В каждом пакете используется два номера последовательности (sequence). Каждый пакет включает в себя номер присвоенный ему отправителем. Этот номер увеличивается на единицу каждый раз, когда маршрутизатор отправляет новый пакет. Кроме того, отправитель помещает в пакет номер последнего полученного пакета от получателя.

В некоторых случаях RTP использует негарантированную доставку. В таких пакетах не проставляются номера последовательностей и они не требуют подтверждения о получении.

Все сообщения EIGRP инкапсулируются в IP-пакеты, номер EIGRP в поле protocol IP-пакета - 88.

EIGRP использует 5 типов сообщений:

Hello - маршрутизаторы используют hello-пакеты для обнаружения соседей. Пакеты отправляются multicast и не требуют подтверждения о получении.

Update - содержится информация об изменении маршрутов. Они отправляются только маршрутизаторам, которых касается обновление. Эти пакеты могут быть отправлены конкретному маршрутизатору (unicast) или группе маршрутизаторов (multicast). Получение update-пакета подтверждается отправкой ACK.

Query - когда маршрутизатор выполняет подсчет маршрута и у него нет feasible successor, он отправляет query-пакет своим соседям для того чтобы определить нет ли feasible successor для этого destination у них. Обычно query-пакеты отправляются multicast, но могут быть и unicast. Получение query-пакета подтверждается отправкой ACK получателем пакета.

Reply - маршрутизатор отправляет reply-пакет в ответ на query-пакет. Reply-пакеты отправляются unicast тому, кто отправил query-пакет. Получение reply-пакета подтверждается отправкой ACK.

ACK - пакет, который подтверждает получение пакетов update, query, reply. ACK-пакеты отправляются unicast и содержат в себе acknowledgment number. Фактически это hello-пакеты, которые не передают данных. Используется негарантированная доставка.

Таблица соседей (neighbor table) - список всех соседей BGP

Таблица BGP (BGP table, forwarding database, topology database):

Список всех сетей выученных от каждого соседа

Атрибуты BGP для каждого пути

Таблица маршрутизации - список лучших путей к сетям

По умолчанию BGP отправляет keepalive-сообщения каждые 60 секунд.

Если существует несколько путей к получателю, то маршрутизатор будет анонсировать соседям не все возможные варианты, а только лучший маршрут из таблицы BGP.

Маршрутизаторы могут быть уровня 1, уровня 2 или уровня 1-2:

Маршрутизаторы уровня 1 (как internal nonbackbone маршрутизаторы в OSPF) - знают маршруты в пределах зоны в которой они соединены;

Маршрутизаторы уровня 2 (как backbone маршрутизаторы в OSPF) - знают маршруты между зонами;

Маршрутизаторы уровня 1-2 (как ABR в OSPF) - знают маршруты и в пределах зоны в которой они соединены и между зонами. Это маршрутизаторы аналогичные ABR в OSPF.

Путь соединения маршрутизаторов уровня 2 и уровня 1-2 называется backbone.

Границы зон приходятся на каналы (links). Каждый маршрутизатор принадлежит только одной зоне. Соседние маршрутизаторы определяют в одной они зоне или в разных и устанавливают соответствующие отношения соседства: уровня 1, уровня 2 или обоих.

Демоны динамической маршрутизации:

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

Сами протоколы динамической маршрутизации можно классифицировать по нескольким критериям.

По алгоритмам:

Дистанционно-векторные протоколы (Distance-vector Routing Protocols);

Протоколы состояния каналов связи (Link-state Routing Protocols).

Иногда выделяют третий класс, усовершенствованные дистанционно-векторные протоколы (advanced distance-vector), для того чтобы подчеркнуть существенные отличия протоколов от классических дистанционно-векторных.

Компания Cisco ранее называла протокол EIGRP смешанный протокол, однако по своим принципам работы, EIGRP дистанционно-векторный протокол.

По области применения:

Междоменной маршрутизации;

Внутридоменной маршрутизации.

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

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

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

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

Совокупность сетей, представленных маршрутизаторами под общим административным управлением, образует автономную систему ( рис. 3.1). Примерами автономных систем являются сети отдельных провайдеров ISP . Автономные системы нумеруются (AS1, AS2, …AS107, …) и в некоторых протоколах ( IGRP , EIGRP ) эти номера используются при конфигурировании.


Рис. 3.1.

В настоящем курсе рассматривается маршрутизация только внутри автономной системы, где работают протоколы внутренней маршрутизации (Interior Gateway Protocols - IGP ), к которым относятся RIP , RIPv2, EIGRP , OSPF , IS-IS . Маршрутизацию между автономными системами производят протоколы внешней маршрутизации ( Exterior Gateway Protocols - EGP ). Примером протокола внешней маршрутизации является протокол BGP , который работает на пограничных маршрутизаторах автономных систем ( рис. 3.1).

Совокупность протоколов маршрутизации приведена в табл. 3.1 , из которой следует, что протоколы динамической маршрутизации, работающие внутри автономных систем, в свою очередь , подразделяются на протоколы вектора расстояния (distance-vector) и протоколы состояния канала (link-state) .

Протоколы вектора расстояния определяют расстояние и направление, т.е. вектор соединения в составной сети на пути к адресату. При использовании протокола вектора расстояния маршрутизаторы посылают всю или часть таблицы маршрутизации соседним (смежным) маршрутизаторам. В таких протоколах как RIP и RIP-2 расстояние выражается в количестве переходов (hop count) в соединении на пути от узла источника к адресату назначения. Обмен обновлениями ( update ) или модификациями происходит периодически , даже если в сети нет никаких изменений, на что тратится значительная часть полосы пропускания. Получив обновление маршрутной информации, маршрутизатор может заново вычислить все известные пути и модернизировать таблицу маршрутизации.

Протоколы состояния канала создают полную картину топологии сети и вычисляют кратчайшие пути ко всем сетям назначения. Если путей с одинаковой метрикой несколько, то выбирается первый из вычисленных. Рассылка обновлений маршрутной информации производится только при изменениях топологии сети . Протоколы состояния канала (или соединения) быстрее реагируют на изменения в сети по сравнению с протоколами вектора расстояния, но при этом требуют больших вычислительных ресурсов.

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

Маршрутизаторы способны одновременно поддерживать несколько независимых протоколов с разными административными расстояниями (AD) , которые показывают степень достоверности источника маршрута. Чем меньше AD , тем выше достоверность (см. табл. 1.1). В таблицу маршрутизации устанавливаются маршруты, созданные протоколами с наименьшим административным расстоянием.

Определение протоколом маршрутизации наиболее рационального (оптимального) пути производится на основе определенного критерия - метрики . Значение метрики используется при оценке возможных путей к адресату назначения. В настоящем курсе рассматриваются следующие протоколы маршрутизации:

Перечисленные протоколы используют разные параметры метрики.

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

Каждый алгоритм по своему интерпретирует выбор наиболее рационального пути на основе метрики . Обычно меньшее значение метрики соответствует лучшему маршруту . Метрика может базироваться на одном или на нескольких параметрах пути. В протоколах маршрутизации наиболее часто используются следующие параметры метрики:

(Load)
Полоса пропускания (Bandwidth) - способность соединения передавать данные с некоторой скоростью. Например, соединения сети FastEthernet передающие данные со скоростью 100 Мбит/c, предпочтительней каналов Е1 со скоростью 2,048 Мбит/c.
Задержка (Delay) - это длительность времени прохождения пакета от источника до адресата назначения. Задержка зависит от количества промежуточных соединений и их типов, объема буферных устройств маршрутизаторов, сходимости сети и расстояния между узлами.
- определяется количеством информации, загружающей сетевые ресурсы (маршрутизаторы и каналы). Чем больше загрузка, тем больше очереди на обслуживание, тем дольше пакет будет в пути.
Надежность (Reliability) - определяется интенсивностью ошибок на каждом сетевом соединении.
Количество переходов (Hop count) - это количество маршрутизаторов, через которые пакет должен пройти на пути к адресату назначения (число переходов от маршрутизатора к маршрутизатору).
Стоимость (Cost) - обобщенный параметр затрат на передачу пакета к адресату назначения. Иногда стоимость имеет произвольное значение, назначенное администратором.

Наиболее известным в сети Internet протоколом вектора расстояния (distance-vector) является Routing Information Protocol (RIP) , который использует в качестве метрики число переходов ( hop count ) на пути к адресату назначения.

Другим простым протоколом вектора расстояния является Interior Gateway Routing Protocol (IGRP ), который был разработан в корпорации Cisco. Для работы в больших сетях на смену ему пришел протокол Enhanced IGRP (EIGRP) , который включает много особенностей протоколов как типа link-state, так и distance-vector. Поэтому он, по сути, является гибридным протоколом. Однако разработчики фирмы Cisco относят его к протоколам distance-vector.

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

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

Протокол вектора расстояния RIP использует счетчик переходов ( hop count ) в качестве метрики, чтобы определить расстояние до определенного соединения в составной сети. Если существует несколько путей, то RIP выберет путь с наименьшим числом маршрутизаторов или переходов к адресату назначения. Однако выбранный маршрут не всегда является лучшим путем к адресату, поскольку выбранный маршрут с наименьшим числом устройств может характеризоваться меньшей скоростью передачи (более узкой полосой пропускания, меньшей пропускной способностью) по сравнению с альтернативными маршрутами, созданными другими протоколами. Кроме того, RIP не может направлять пакеты далее 15 переходов, поэтому он рекомендован для работы в малых и средних сетях. Рассылка обновлений протоколом первой версии RIPv1 производится в широковещательном режиме ( адрес 255.255.255.255 ).

Протокол первой версии RIPv1 требует, чтобы все устройства в подсети использовали одинаковую маску подсети, т.к. RIP не включает информацию о маске подсети в обновления маршрутизации. Такой метод получил название маршрутизации на основе классов (classful routing) , что ограничивает применение протокола RIPv1 в современных сетях.

Протокол вектора расстояния второй версии RIPVersion 2 (RIPv2 ) обеспечивает бесклассовую маршрутизацию CIDR (Classless Interdomain Routing ), поскольку в обновления маршрутизации включена информация о маске подсети (о префиксе). При этом внутри одной сети могут существовать подсети с масками переменной длины (Variable-Length Subnet Mask - VLSM ). В обновления также включена адресная информация о шлюзах по умолчанию. Рассылка обновлений протоколом версии RIPv2 производится в многоадресном режиме (

Динамическая маршрутизация

Статическая маршрутизация не подходит для больших, сложных сетей потому, что обычно сети включают избыточные связи, многие протоколы и смешанные топологии. Маршрутизаторы в сложных сетях должны быстро адаптироваться к изменениям топологии и выбирать лучший маршрут из многих кандидатов.

IP сети имеют иерархическую структуру. С точки зрения маршрутизации сеть рассматривается как совокупность автономных систем. В автономных подсистемах больших сетей для маршрутизации на остальные автономные системы широко используются маршруты по умолчанию.

Динамическая маршрутизация может быть осуществлена с использованием одного и более протоколов. Эти протоколы часто группируются согласно того, где они используются. Протоколы для работы внутри автономных систем называют внутренними протоколами шлюзов (interior gateway protocols (IGP)), а протоколы для работы между автономными системами называют внешними протоколами шлюзов (exterior gateway protocols (EGP)). К протоколам IGP относятся RIP, RIP v2, IGRP, EIGRP, OSPF и IS-IS. Протоколы EGP3 и BGP4 относятся к EGP. Все эти протоколы могут быть разделены на два класса: дистанционно-векторные протоколы и протоколы состояния связи.

Маршрутизаторы используют метрики для оценки или измерения маршрутов. Когда от маршрутизатора к сети назначения существует много маршрутов, и все они используют один протокол маршрутизации, то маршрут с наименьшей метрикой рассматривается как лучший. Если используются разные протоколы маршрутизации, то для выбора маршрута используется административные расстояния, которые назначаются маршрутам операционной системой маршрутизатора.

RIP использует в качестве метрики количество переходов (хопов). EIGRP использует сложную комбинацию факторов, включающую полосу пропускания канала и его надёжность.

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

R 192.168.14.0/24 via 10.3.0.1 00:00:06 Serial0

Здесь R определяет протокол маршрутизации. Так R означает RIP, а O – OSPF и т. д. Запись означает, этот маршрут имеет административное расстояние 120 и метрику 3. Эти числа маршрутизатор использует для выбора маршрута. Элемент 00:00:06 определяет время, когда обновилась данная строка. Serial0 это локальный интерфейс, через который маршрутизатор будет направлять пакеты к сети 192.168.14.0/24 через адрес 10.3.0.1.

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

Дистанционно-векторная маршрутизация

Эта маршрутизация базируется на алгоритме Белмана-Форда. Через определённые моменты времени маршрутизатор передаёт соседним маршрутизаторам всю свою таблицу маршрутизации. Такие простые протоколы как RIP и IGRP просто распространяют информацию о таблицах маршрутов через все интерфейсы маршрутизатора в широковещательном режиме без уточнения точного адреса конкретного соседнего маршрутизатора.

Соседний маршрутизатор, получая широковещание, сравнивает информацию со своей текущей таблицей маршрутов. В неё добавляются маршруты к новым сетям или маршруты к известным сетям с лучшей метрикой. Происходит удаление несуществующих маршрутов. Маршрутизатор добавляет свои собственные значения к метрикам полученных маршрутов. Новая таблица маршрутизации снова распространяется по соседним маршрутизаторам (см. рис.1).

font-size:12.0pt;line-height:125%">Рис.1. Дистанционно-векторная маршрутизация.

Протоколы состояния связи

Эти протоколы предлагают лучшую масштабируемость и сходимость по сравнению с дистанционно-векторными протоколами. Протокол базируется на алгоритме Дейкстры, который часто называют алгоритмом «кратчайший путь – первым» (shortest path first (SPF)). Наиболее типичным представителем является протокол OSPF (Open Shortest Path First).

Маршрутизатор берёт в рассмотрение состояние связи интерфейсов других маршрутизаторов в сети. Маршрутизатор строит полную базу данных всех состояний связи в своей области, то есть имеет достаточно информации для создания своего отображения сети. Каждый маршрутизатор затем самостоятельно выполняет SPF-алгоритм на своём собственном отображении сети или базе данных состояний связи для определения лучшего пути, который заносится в таблицу маршрутов. Эти пути к другим сетям формируют дерево с вершиной в виде локального маршрутизатора.

Маршрутизаторы извещают о состоянии своих связей всем маршрутизаторам в области. Такое извещение называют LSA (link-state advertisements).

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

Имеет место начальный наплыв LSA пакетов для построения базы данных состояний связи. Далее обновление маршрутов производится только при смене состояний связи или, если состояние не изменилось в течение определённого интервала времени. Если состояние связи изменилось, то частичное обновление пересылается немедленно. Оно содержит только состояния связей, которые изменились, а не всю таблицу маршрутов.

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

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

Сходимость.

Этот процесс одновременно и совместный , и индивидуальный. Маршрутизаторы разделяют между собой информацию, но самостоятельно пересчитывают свои таблицы маршрутизации. Для того чтобы индивидуальные таблицы маршрутизации были точными, все маршрутизаторы должны иметь одинаковое представление о топологии сети. Если маршрутизаторы договорились о топологии сети, то имеет место их сходимость. Быстрая сходимость означает быстрое восстановление после обрыва связей и других изменений в сети. О протоколах маршрутизации и о качестве проектирования сети судят главным образом по сходимости.

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

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

Расстояние в хопах до точки изменения топологии.

Число маршрутизаторов, использующих динамические протоколы.

Эффект некоторых факторов может быть уменьшен при тщательном проектировании сети.







Динамическая маршрутизация. Первое знакомство.


Для понимания предмета разговора сначала стоит почитать тут поблизости статьи про маршрутизаторы и маршрутизацию, а то рискуете не въехать.
Допустим, у нас есть такая вот несложная сетка:

Два маршрутизатора и пять сетей


По умолчанию при данной топологии сети, "левый" маршрутизатор будет иметь в своей таблице маршрутизации записи только для трех непосредственно подключенных к нему сетей: 192.168.1.0/24 , 172.20.0.0/16 и 192.168.100.0/30 . Аналогично "правый" маршрутизатор будет знать только о сетях: 192.168.2.0/24 , 10.0.0.0/8 и 192.168.100.0/30 . И если мы попробуем из сети 172.20.0.0/16 обратится к сети 192.168.2.0/24, то ответа мы с вами не дождемся. Понятное дело, мы можем накидать роутерам статических маршрутов или же стандартных маршрутов (aka маршрутов по умолчанию).
Вроде бы отличный выход, да? Но что будет, если перед нами стоит вот такая сетевая топология:


Более сложная сетевая топология


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

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

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

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

Теперь немного теории. Все протоколы динамической маршрутизации можно разделить на протоколы маршрутизации внешнего (Interior Gateway Protocol , IGP ) и внутреннего шлюза (Exterior Gateway Protocol , EGP ). Протоколы внутреннего шлюза предназначены для маршрутизации внутри автономных систем, протоколы внешнего для осуществления маршрутизации между автономными системами. В данном случае под автономной системой понимается некоторая крупная сеть, по единым управлением. Например, сеть крупного предприятия.


Применение IGP и EGP


Представителями семейства протоколов IGP являются протоколы: RIP-1 , RIP-2 , IGRP , OSPF , EIGRP . К EGP относится один протокол - BGP .

При использовании протоколов динамической маршрутизации, все маршруты помещаемые в таблицу маршрутизации снабжаются дополнительной информацией, называемой метрикой. Метрика позволяет маршрутизаторам высчитывать кратчайший маршрут до требуемой сети. В соответствии с тем как рассчитывается метрика все протоколы динамической маршрутизации можно разделить на дистанционно векторные (Distance vector ), протоколы c учетом состояния каналов (Link-state ) и гибридные.

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


Некоторая сетевая топология


Пусть у нас есть вот такая сетевая топология. Из сети 1 в сеть 2 можно попасть по двум различным маршрутам, красному и зеленому. В случае использования дистанционно-векторного протокола маршрутизации более предпочтительным будет являться маршрут выделенный зеленым цветом, так как он содержит меньшее число промежуточных узлов на пути к сети назначения. Классическими примерами дистанционно векторных протоколов маршрутизации являются протоколы RIP-1 и RIP-2 .

Протоколы c учетом состояния каналов в своей работе, как это не странно, учитывают состояния каналов, и уже исходя из этих состояний высчитывают значения метрики.

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

Такой метод построения и поддержки маршрутных таблиц существенно упрощает задачу администрирования сетей, в которых могут происходить изменения (например, расширение) или в ситуациях, когда какие-либо маршрутизаторы и/или подсети выходят из строя.

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

Современные протоколы маршрутизации делятся на две группы: протоколы типа «вектор-расстояние» и протоколы типа «состояние канала».

В протоколах типа «вектор-расстояние» каждый маршрутизатор рассылает список адресов доступных ему сетей («векторов»), с каждым из которых связано параметр «расстояния» (например, количество маршрутизаторов до этой сети, значение, основанное на производительности канала и т.п.). Основным представителем протоколов данной группы является протокол RIP (Routing Information Protocol, протокол маршрутной информации).

Протоколы типа «состояние канала» основаны на ином принципе. Маршрутизаторы обмениваются между собой топологической информацией о связях в сети: какие маршрутизаторы с какими сетями связаны. В результате каждый маршрутизатор имеет полное представление о структуре сети (причем это представление будет одинаковым для всех), на основе которого вычисляет собственную оптимальную таблицу маршрутизации. Протоколом этой группы является протокол OSPF (Open Shortest Path First, «открой кратчайший путь первым»).

Протокол RIP.

Протокол RIP (Routing Information Protocol, протокол маршрутной информации) является наиболее простым протоколом динамической маршрутизации. Он относится к протоколам типа «вектор-расстояние».

Под вектором протокол RIP определяет IP-адреса сетей, а расстояние измеряется в переходах («хопах», hope) – количестве маршрутизаторов, которое должен пройти пакет, чтобы достичь указанной сети. Следует отметить, что максимальное значение расстояния для протокола RIP равно 15, значение 16 трактуется особым образом «сеть недостижима». Это определило основной недостаток протокола – он оказывается неприменимым в больших сетях, где Возможны маршруты, превышающие 15 переходов.

Протокол RIP версии 1 имеет ряд существенных для практического использования недостатков. К числу важных проблем относятся следующие:

  • Оцен ка расстояния только с учетом числа переходов. Протокол RIP не учитывает реальную производительность каналов связи, что может оказаться неэффективным в гетерогенных сетях, т.е. сетях, объединяющих каналы связи различного устройства, производительности, в которых используются разные сетевые технологии.
  • Проблема медленной конвергенции . Маршрутизаторы, спользующие протокол RIP. Рассылают маршрутную информацию каждые 30 с, причем их работа не синхронизирована. В ситуации, когда некоторый маршрутизатор обнаружит, что какая-либо сеть стала недоступной, то в худшем случае (если проблема была выявлена сразу после очередной рассылки) он сообщит об это соседям через 30 с. Для соседних маршрутизаторов все будет происходить также. Это означает, что информация о недоступности какой-либо сети может распространятся маршрутизаторам в достаточно долго, очевидно, что сеть при этом будет находиться в нестабильном состоянии.
  • Широковещательная рассылка таблиц маршрутизации . Протокол RIP изначально предполагал, что маршрутизаторы рассылают информацию в широковещательном режиме. Это означает, что отправленный пакет вынуждены получить и проанализировать на канальном, сетевом и транспортном уровне все компьютеры сети, в которую он направлен.

Частично указанные проблемы решаются в версии 2 (RIP2).

Протокол OSPF

Протокол OSPF (Routing (Open Shortest Path First, «открой кратчайший путь первым») является более новым протоколом динамической маршрутизации и относится к протоколам типа «состояние канала».

Функционирование протокола OSPF основано на использовании всеми маршрутизаторами единой базы данных, описывающей, как и с какими сетями связан каждый маршрутизатор. Описывая каждую связь, маршрутизаторы связы
вают с ней метрику – значение, характеризующее «качество» канала. Например, для сетей Ethernet со скоростью обмена 100 Мбит/с используется значение 1, а для коммутируемых соединений 56 Кбит/с – значение 1785. Это позволяет маршрутизаторам OSPF (в отличие от RIP, где все каналы равнозначны) учитывать реальную пропускную способность и выявлять эффективные маршруты. Важной особенностью протокола OSPF является то, что используется групповая, а не широковещательная рассылка.

Указанные особенности, такие как групповая рассылка вместо широковещательной, отсутствие ограничений на длину маршрута, периодический обмен только короткими сообщениями о состоянии, учет «качества» каналов связи позволяют использовать OSPF в больших сетях. Однако такое использование может породить серьезную проблему – большое количество циркулирующей в сети маршрутной информации и увеличение таблиц маршрутизации. А поскольку алгоритм поиска эффективных маршрутов является, с точки зрения объема вычислений, достаточно сложным, то в больших сетях могут потребоваться высокопроизводительные и, следовательно, дорогие маршрутизаторы. Поэтому возможность построения эффективных таблиц маршрутизации может рассматриваться и как достоинство, и как недостаток протокола OSPF.



Загрузка...