Router border что это

Немного теории: типы OSPF-областей и их связи между собой

Немного теории: типы OSPF-областей и их связи между собой

Router border что это. ospf areas intro. Router border что это фото. Router border что это-ospf areas intro. картинка Router border что это. картинка ospf areas intro

Разбираться в типах областей будем на примере схемы, указанной выше. У нас есть 5 OSPF-областей и 11 маршрутизаторов. Все маршрутизаторы соединены между собой по протоколу OSPF, за исключением роутеров ISP1 и ISP2. Их мы будем подключать по протоколу BGP и RIP соответственно.

Для начала необходимо разобраться с ролями маршрутизаторов на сети, нам известно, что бывают роутеры четырех видов:

Internal Router (внутренний маршрутизатор, IR) — роутер, находящийся внутри какой-либо OSPF-области и имеющим связь только с роутерами этой же области

Backbone Router (магистральный маршрутизатор, BR) — роутер, в котором как минимум один интерфейс принадлежит нулевой OSPF-области

Area Border Router (граничный маршрутизатор области, ABR) — роутер, находящийся на границе OSPF-области и соединяющий между собой две OSPF-области и более

Autonomous System Boundary Router (граничный маршрутизатор автономной системы, ASBR) — роутер, на котором помимо OSPF имеется связь с другими автономными системами (другие протоколы маршрутизации или другой OSPF-процесс)

Основываясь на вышесказанном, можно сделать выводы о ролях маршрутизаторов на данной схеме:
Router border что это. ospf areas roles of routers. Router border что это фото. Router border что это-ospf areas roles of routers. картинка Router border что это. картинка ospf areas roles of routers

С видами роутеров разобрались, рассмотрим типы OSPF-областей:

Stub areas (тупиковая область)
— не переносит внешние маршруты
— не соединяет между собой нулевую и ненулевую область (через него не настраивается virtual-link)
— не содержит ASBR

Totally stubby areas (полностью тупиковая область)
— имеет те же свойства, что и stub areas и вдобавок получает от нулевой области только маршрут по умолчанию

Not-so-stubby-areas (не такая уж и тупиковая область, NSSA)
— тупиковая область, содержащая в себе ASBR

Backbone area (магистральная область)
— нулевая область, связывает между собой все остальные области

Также стоит выделить такой тип области, как транзитная область (Transit area) — ненулевая область, соединяющая между собой магистральную область и другую ненулевую область.

Учитывая вышеописанное, распишем типы областей на нашей схеме:

Router border что это. ospf areas types. Router border что это фото. Router border что это-ospf areas types. картинка Router border что это. картинка ospf areas types

В данном случае area 3 выступает в качестве транзитной, поскольку area 4 будет строить соседство с магистральной (area 0) областью посредством виртуального канала связи через area 3 (virtual-link).

Таким образом получается, что посредством virtual-link R8 и R4 устанавливают соседство между собой напрямую. Более подробно этот способ связи, а также настройку сети на примере этой схемы мы рассмотрим в следующей статье.

Источник

OSPF (часть первая)

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

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

OSPF (англ. Open Shortest Path First) — протокол динамической маршрутизации, основанный на технологии отслеживания состояния канала (link-state technology) и использующий для нахождения кратчайшего пути алгоритм Дейкстры.

Возникает сразу вопрос — Что есть технология отслеживания состояния канала? Данное название считаю не совсем удачным. Сложилось так, что существует два типа протоколов динамической маршрутизации: Link-state и Distance-Vector. Рассмотрим их принципы работы:

В Distance-Vector протоколах, маршрутизатор узнает информацию о маршрутах посредством маршрутизаторов непосредственно подключенных в один с ним сегмент сети. То есть, маршрутизатор имеет информацию о топологии только в границах его соседних маршрутизаторов и понятия не имеет как устроена топология за этими маршрутизаторами, ориентируясь только по метрикам. В Link-state протоколах каждый маршрутизатор должен непросто знать самые лучшие маршруты во все удалённые сети, но и иметь в памяти полную карту сети со всеми существующими связями между другими маршрутизаторами в том числе. Это достигается за счет построения специальной базы LSDB, но подробнее об этом позже.

Итак, начнем с того, как же строится LSDB из которой маршрутизатор узнает о всех-всех маршрутах? Построим начальную топологию для изучения. Выглядит она так:

Router border что это. ea4c835392207c07ca33dd8ec883a707. Router border что это фото. Router border что это-ea4c835392207c07ca33dd8ec883a707. картинка Router border что это. картинка ea4c835392207c07ca33dd8ec883a707

Будем настраивать OSPF. С чего начинается OSPF? C установления соседства между маршрутизаторами — после активации OSPF на интерфейсах маршрутизатора, маршрутизаторы начинают рассылать Hello сообщения. Данное сообщение рассылается на мультикастовый адрес — 224.0.0.5 каждые 10 секунд (Hello Timer). Мы включим сначала OSPF на маршрутизаторе vIOS1.

Посмотрим как выглядит Hello-пакет:

Router border что это. 6ca3bf881cddaf569bdfb54bd3913666. Router border что это фото. Router border что это-6ca3bf881cddaf569bdfb54bd3913666. картинка Router border что это. картинка 6ca3bf881cddaf569bdfb54bd3913666

В сообщении важно обратить внимание на такие поля как Area ID, Source OSPF Router. При запуске процесса OSPF выбирается Router ID, который необходим для идентифицирования маршрутизатора среди остальных маршрутизаторов OSPF. Правила выбора данного параметра следующие:

1. Настроен специальной командой router-id A.B.C.D — в формате ip адерса.
2. Настроен один loopback-интерфейс и несколько интерфейсов с различными адресами:

Итак, мы включили OSPF на vIOS1 и он начал каждые 10 секунд отправлять Hello-пакеты. Включим OSPF на vIOS2 и проследим как будут устанавливаться отношения соседства.

Router border что это. 9c37218d473f4f96d9c762300ed21bd1. Router border что это фото. Router border что это-9c37218d473f4f96d9c762300ed21bd1. картинка Router border что это. картинка 9c37218d473f4f96d9c762300ed21bd1

Итак, внимательно следим за последовательностью сообщений. Сначала Hello отправляет только маршрутизатор 1.1.1.1 ( 192.168.1.1 ), как только мы включим OSPF на 192.168.1.2, то отправится Hello пакет. vIOS1 и vIOS2 получат Hello пакеты друг у друга и для того, чтоб соседство состоялось важно, чтобы в конфигурации OSPF на обоих маршрутизаторах были одинаковыми следующие параметры:

База LSDB будет содержать в себе информацию о маршрутах и данная LSDB после установления соседства должна быть идентичная на всех маршрутизаторах в пределе одной зоны. И, первым делом, маршрутизаторы после установления соседства начинают процесс синхронизаций своих баз данных друг с другом (vIOS1 c vIOS2). Как можно увидеть все начинается с обменом между собой сообщений DB Description (DBD). Чтоб стало более понятно, расскажем о типах сообщений, который использует OSPF:

Объявление о состоянии канала (Link State Advertisement, LSA) — единица данных, которая описывает локальное состояние маршрутизатора или сети. Множество всех LSA, описывающих маршрутизаторы и сети, образуют базу данных состояния каналов (LSDB). LSDB состоит из нескольких видов LSA. Очень подробно о каждом LSA написано в этой статье. В сообщениях DBD используется достаточно много флагов для определения состояния синхронизации, а также данные сообщения содержат информацию о собственной базе данных. То есть, vIOS1 сообщает в данных сообщениях, что в моей базе есть информация о таких сетях, как 192.168.0/24, 1.1.1.0/24 (LSA Type 1), а vIOS2 в свою очередь сообщает, что у него есть записи о сетях: 192.168.2.0/24, 2.2.2.0/24 (LSA Type 1). После получения сообщений DBD, каждый маршрутизатор отправляет LSAck в подтверждение о полученном сообщении, и, далее, сравнивает информацию в базе соседа со своей. Если найдено, что не достает какой-либо информации, то маршрутизатор отправляет LS Request, где запрашивает полную информацию о каком-либо LSA. Например, vIOS1 запросил LS Request у vIOS2, vIOS2 отправляет в ответ LS Update, в которой уже содержится подробная информация о каждом маршруте. Ниже показан LS Update:

Router border что это. a792cc672c63e0a95c5b17951567b565. Router border что это фото. Router border что это-a792cc672c63e0a95c5b17951567b565. картинка Router border что это. картинка a792cc672c63e0a95c5b17951567b565

Как видите, в данном сообщении vIOS2 рассказывает об известных ему подсетях и информацию связанную с ними. Также, vIOS1 рассказывает о своей LSDB. И в конце концов, маршрутизаторы имеют одинаковую LSDB. Как только процесс завершен, запускается алгоритм Дейкстры (Shortest Path First). Он рассчитывает все известные маршруты из LSDB и лучшие из них помещает в таблицу маршрутизации. Лучший, тот у которого метрика ниже, но об этом позже.

Задумаемся о вопросе, что будет, если мы активируем OSPF на vIOS3? Так как vIOS3 придется строить LSDB и синхронизировать её с другими маршрутизатора, то встает вопрос с кем именно синхронизировать? С vIOS1 или vIOS2? С каждым по отдельности? Насколько это оптимально? Поэтому в OSPF есть такое понятие как DR — Designated router. Введем данное понятие:

Выделенный маршрутизатор (designated router, DR) — управляет процессом рассылки LSA в сети. Каждый маршрутизатор сети устанавливает отношения соседства с DR. Информация об изменениях в сети отправляется DR, маршрутизатором обнаружившим это изменение, а DR отвечает за то, чтобы эта информация была отправлена остальным маршрутизаторам сети.

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

При выходе его из строя должен быть выбран новый DR. Новые отношения соседства должны быть сформированы и, пока базы данных маршрутизаторов не синхронизируются с базой данных нового DR, сеть будет недоступна для пересылки пакетов. Для устранения этого недостатка выбирается BDR — Backup designated router:

Резервный выделенный маршрутизатор (backup designated router, BDR). Каждый маршрутизатор сети устанавливает отношения соседства не только с DR, но и BDR. DR и BDR также устанавливают отношения соседства и между собой. При выходе из строя DR, BDR становится DR и выполняет все его функции. Так как маршрутизаторы сети установили отношения соседства с BDR, то время недоступности сети минимизируется. Таким образом, у нас в сети получаются не только DR, но и BDR. Остальные маршрутизаторы будут получать и сообщать актуальную информацию о сети только посредством их. DR и BDR выбирается только внутри одного сегмента, а не зоны! То есть, у маршрутизаторов vIOS1, vIOS2, vIOS3, vIOS4 будут выбраны одни DR и BDR, а, например, между vIOS и vIOS1 будут определены свои DR и BDR уже относительно их сегмента сети, даже, если они в одной Area 0. Для общения с DR и BDR, маршрутизаторы используют мулитькастовый адрес — 224.0.0.6.

Следующий вопрос — Как выбирается DR/BDR? Применяются следующие критерии:

Router border что это. f8e8b235a0eb24d311d6b745dac5910e. Router border что это фото. Router border что это-f8e8b235a0eb24d311d6b745dac5910e. картинка Router border что это. картинка f8e8b235a0eb24d311d6b745dac5910e

После получения новой информации от vIOS3, DR рассылает LS Update сообщения всем маршрутизаторам на адрес 224.0.0.5, на что остальные маршрутизаторы, получив пакет отправляют LS Acknowledge для DR, но уже на адрес 224.0.0.6 (адрес для DR/BDR).

По такой же схеме у нас подключается и vIOS4. После синхронизации, у всех маршрутизаторов одна и так же LSDB. Посмотрим как выглядят состояния соседства у vIOS3. Команда show ip ospf neighbor:

Router border что это. bf23eb51f7a7ab94f64be8726dae9370. Router border что это фото. Router border что это-bf23eb51f7a7ab94f64be8726dae9370. картинка Router border что это. картинка bf23eb51f7a7ab94f64be8726dae9370

Как мы можем увидеть, DR — 2.2.2.2, BDR — 1.1.1.1, а с vIOS4 выбрано состояние 2WAY/DROTHER. О состояниях соседства была дана ссылка выше.

А вот состояния соседства на vIOS1 c установленном соседством c vIOS:

Router border что это. f3c5837e7b1d99243357857cc4cb1352. Router border что это фото. Router border что это-f3c5837e7b1d99243357857cc4cb1352. картинка Router border что это. картинка f3c5837e7b1d99243357857cc4cb1352

Как видите у него два DR потому, что у него имеется сосед и в другом сегменте сети.

Мультизоны

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

Router border что это. 54cb16f0c9293e15b65544b3b89573a4. Router border что это фото. Router border что это-54cb16f0c9293e15b65544b3b89573a4. картинка Router border что это. картинка 54cb16f0c9293e15b65544b3b89573a4

Начнем с того, что сконфигурируем OSPF на vIOS1 и vIOS так, что их интерфейсы Gi0/1 на vIOS и vIOS1 будут находиться в зоне 1. Посмотрим, что изменитcя. vIOS1 теперь имеет интерфейсы и в Area 0 (Gi0/0), и в Area 1 (Gi0/0). Такой маршрутизатор называется ABR — Area Border Router ( чуть ниже дадим более корректное определение ABR). ABR будет рассылать информацию о маршрутах из одной зоны в другую. Делается это посредством LSA Type 3:

Type 3 LSA — Network Summary LSA — суммарное объявление о состоянии каналов сети:

Router border что это. 3f3681fa87bb1a94778d4bec031f37a1. Router border что это фото. Router border что это-3f3681fa87bb1a94778d4bec031f37a1. картинка Router border что это. картинка 3f3681fa87bb1a94778d4bec031f37a1

По своей сути, структура LSA Type 3 не сильно отличается от LSA Type 1, но они по-разному влияют на работу протокола. При получения обновленного или при потере какого-либо LSA Type 1&2, запускается заново SPF (алгоритм вычисления кратчайшего пути) и пересчитывает LSDB.

При получении LSA Type 3, данный процесс не происходит — получается маршрут с метрикой в LSA Type 3. В этом LSA хранится данные о том, через какой ABR был получен данный маршрут ( ABR указан в поле Advertising Router) и метрика, чтоб достичь данный ABR уже имеется в LSDB. Таким образом, метрика из LSA Type 3 суммируется с метрикой маршрута до ABR и получаем готовый маршрут без перезапуска SPF. Данный процесс называется Partial SPF calculation. Это довольно важно потому, что в больших сетях размеры LSDB могут быть довольно большими и часто запускать SPF не есть хорошо. Также, создание LSA Type 3 говорит о том, что изменения и пересчет LSDB это дела одной зоны. ABR только сообщает, что с каким-то маршрутом что изменилось.

Также важно заметить, что любой маршрут из ненулевой зоны в любую ненулевую зону проходит через Area 0. Если есть ABR, он не может быть не подключен к Area 0 (исключаем вариант с virtual-link). Area 0 является ядром, которое соединяет все остальные зоны и обеспечивает маршрутизацию между зонами. Определение ABR выглядит так:

Пограничный маршрутизатор (area border router, ABR) — соединяет одну или больше зон с магистральной зоной и выполняет функции шлюза для межзонального трафика. У пограничного маршрутизатора всегда хотя бы один интерфейс принадлежит магистральной зоне. Для каждой присоединенной зоны маршрутизатор поддерживает отдельную базу данных состояния каналов.
Разобрались с установлением соседства, созданием LSDB и SPF, с обычной зоной. А сейчас разберемся с сходимостью и реакцией OSPF на изменения в топологии.

Посмотрим на нашу топологию и представим, что vIOS3 перестал работать (состояние каналов не изменилось). Поможет в перестроении топологии Dead Interval Timer — 40 секунд. Если в течении данного интервала, маршрутизатор не получает Hello-пакета от соседа, то рушится соседство. В нашем случае, DR разошлет LS Update с LSA Type 2, где укажется, что среди подключенных маршрутизаторов нет vIOS3, это приведет к тому, что запустится SPF и пересчитает LSDB уже без LSA полученных от vIOS3. Важно заметить, что на обычном маршрутизаторе типа vIOS4 даже исчерпание Dead Interval Timer и потеря соседства с vIOS3 не приводит к пересчету топологии, именно сообщение LS Update c LSA Type 2 запускает этот процесс.

Type 2 LSA — Network LSA — объявление о состоянии каналов сети:

Включим обратно vIOS3 и установим соседство заново. Следующим экспериментом будет — реакция на отключения интерфейса Gi0/1 на vIOS3. Как только vIOS3 детектирует падения линка, он моментально отправляет LS Update к DR на адрес 224.0.0.6, где сообщается о падении определенных маршрутов при помощи выставления флага в LSA — LS Age равный 3600 секунд. Для LSDB это Max Age и все LSA c Max Age не учитываются при SPF, поэтому их не будет в таблице маршрутизации. Возникает вопрос: А когда Age LSA естественным путем достигает Max Age, что происходит? Для этого в OSPF есть LSRefreshTime — равный половине Max Age, через каждые 1800 секунд отправляется LS Update с маршрутизатора для обновления данных таймеров:

Router border что это. 43add08c439f2826bb85e434a2280ae5. Router border что это фото. Router border что это-43add08c439f2826bb85e434a2280ae5. картинка Router border что это. картинка 43add08c439f2826bb85e434a2280ae5

Далее, DR обработав данный LS Update, отправляет всем остальным маршрутизаторам LS Update на адрес 224.0.0.5. Как только, маршрутизаторы получили новую информацию — они отправляют LSAck. Тем самым достигается хорошая сходимость в OSPF.

Выбор лучшего маршрута

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

cost = reference bandwidth / link bandwidth. Reference bandwidth — базис пропусной способности. По умолчанию, на Cisco равен 100Mbit.

ABR Loop Prevention. Как мы говорили выше, между зонами принцип работы OSPF похож на distance-vector протокол. Используя механизмы предотвращения петель, можем получить, что выбирается неоптимальный путь. Например, между зонами существует правило подобное Split Horizon из distance-vector протоколов. Рассмотрим это на примере, если изменить нашу топологию на границе зоны 0 и 4 так:

Router border что это. 318d56328823c86abf8df0b5439e76b7. Router border что это фото. Router border что это-318d56328823c86abf8df0b5439e76b7. картинка Router border что это. картинка 318d56328823c86abf8df0b5439e76b7

то мы получим, что vIOS18 будет выбирать неоптимальный путь с метрикой 100 через интерфейс Gi0/0. Происходит это в силу того, что vIOS18 не будет учитывать LSA Type 3, полученные не от зоны 0. Также, выше указанное правило запрещает передавать данный LSA Type 3 обратно в зону 0.

Источник

Router border что это

Если вы считаете, что её стоило бы доработать как можно быстрее, пожалуйста, скажите об этом.

OSPF (Open Shortest Path First) — протокол динамической маршрутизации:

На этой странице описаны общие принципы работы протокола, без привязки к конкретной реализации.

Содержание

[править] Основы протокола

(продублировано в Википедии: [1])

OSPF инкапсулируется в IP. Номер протокола 89.

Для передачи пакетов использует мультикаст адреса:

OSPF представитель семейства Link-State протоколов.

[править] Терминология протокола OSPF

Базовые термины OSPF:

[править] Описание работы протокола

Тут приведено краткое описание работы протокола, которое подробнее описано ниже, в соответствующих разделах. Часть из этих этапов, специфичны для конкретной реализации, и указаны на соответствующих страницах настройки OSPF.

Задача этого раздела дать общее понимание того, как работает протокол. Не все пункты могут быть до конца понятны, но общее представление, скорее всего, появится.

[править] Выбор Router ID

При запуске процесса OSPF на любом маршрутизаторе, обязательно должен быть выбран Router ID.

Router ID — это уникальное имя маршрутизатора, по которому он известен в AS.

В зависимости от реализации, Router ID может выбираться по-разному:

После изменения Router ID, процесс OSPF должен быть перезагружен, а все LSA, которые сгенерировал этот маршрутизатор, должны быть удалены из AS, до перезагрузки.

[править] Соседи. Установка отношений соседства

Обнаружение соседей начинается после того как:

Для обнаружения и мониторинга соседей используются сообщения Hello.

Процедура установки отношений соседства зависит от типа сети, в которой работает OSPF.

[править] Типы сетей, поддерживаемые протоколом OSPF

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

В реальной жизни, чаще всего используются два типа сетей:

Для broadcast и nonbroadcast сетей (то есть, для сетей с множественным доступом), выбираются DR и BDR.

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

[править] Отношения соседства (adjacency)

Различают понятия сосед и отношения соседства:

Для того чтобы маршрутизаторы стали соседями:

OSPF не проверяет сеть и маску сети при установке отношений соседства в point-to-point сетях. Поэтому можно использовать IP unnumbered интерфейсы.

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

Отношения соседства устанавливаются только на primary адресах.

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

[править] Возможные состояния

[править] Выделенный маршрутизатор (DR) и резервный выделенный маршрутизатор (BDR)

В сетях со множественным доступом отношения соседства должны быть установлены между всеми маршрутизаторами. Это приводит к тому, что рассылается большое количество копий LSA. Если, к примеру, количество маршрутизаторов в сети со множественным доступом равно n, то будет установлено n(n-1)/2 отношений соседства. Каждый маршрутизатор будет рассылать n-1 LSA своим соседям, плюс одно LSA для сети, в результате сеть сгенерирует LSA.

Для предотвращения проблемы рассылки копий LSA в сетях со множественным доступом выбираются DR и BDR.

Выделенный маршрутизатор (designated router, DR) — управляет процессом рассылки LSA в сети. Каждый маршрутизатор сети устанавливает отношения соседства с DR. Информация об изменениях в сети отправляется DR, маршрутизатором обнаружившим это изменение, а DR отвечает за то, чтобы эта информация была отправлена остальным маршрутизаторам сети.

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

Резервный выделенный маршрутизатор (backup designated router, BDR). Каждый маршрутизатор сети устанавливает отношения соседства не только с DR, но и BDR. DR и BDR также устанавливают отношения соседства и между собой. При выходе из строя DR, BDR становится DR и выполняет все его функции. Так как маршрутизаторы сети установили отношения соседства с BDR, то время недоступности сети минимизируется.

Маршрутизатор, выбранный DR или BDR в одной присоединенной к нему сети со множественным доступом, может не быть DR (BDR) в другой присоединенной сети. Роль DR (BDR) является свойством интерфейса, а не свойством всего маршрутизатора.

[править] Таймеры протокола

[править] Константы протокола

Некоторым параметрам OSPF присвоены фиксированные значения. Ниже описаны эти параметры, их названия и соответствующие им значения:

Каждые 5 минут (CheckAge) выполняется проверка контрольной суммы всех LSA (в Cisco каждые 10 минут).

[править] Зоны OSPF

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

Разделение на зоны позволяет:

Каждой зоне присваивается идентификатор зоны (area ID). Идентификатор может быть указан в десятичном формате или в формате записи IP-адреса. Однако идентификаторы зон не являются IP-адресами, и могут совпадать с любым назначенным IP-адресом.

В OSPF взаимодействия между зонами возможно только через зону 0:

Название зоныЗамена маршрутовТипы LSAОписание
Backbone (area 0)Все LSA разрешеныРазрешены все типы маршрутов
NormalВсе LSA разрешеныРазрешены все типы маршрутов
StubEX => IA 0.0.0.0/0

LSA 5 запрещеныВсе внешние маршруты заменены на межзональный маршрут по умолчанию.

ASBR не может находиться в зоне

Totally StubEX и IA => IA 0.0.0.0/0

Все LSA 3 заменены на LSA 3 0.0.0.0/0

Все внешние и межзональные маршруты заменены на межзональный маршрут по умолчанию.

ASBR не может находиться в зоне

LSA 7 передает внешние маршруты только в NSSA

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

В зоне может быть ASBR

Totally NSSAEX и IA => 0.0.0.0

Все LSA 3 заменены на LSA 3 0.0.0.0/0

LSA 7 передает внешние маршруты только в NSSA

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

В зоне может быть ASBR

[править] Магистральная зона (backbone area)

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

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

[править] Стандартная зона (standard area)

Обычная зона, которая создается по умолчанию. Эта зона принимает обновления каналов, суммарные маршруты и внешние маршруты.

[править] Тупиковая зона (stub area)

[править] Totally stubby area

Totally stubby area:

То есть, фактически totally stub зона это «усиление» тупиковой: в ней не только внешние маршруты, но и межзональные заменены на маршрут по умолчанию.

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

В RFC такой термин явно не определен, но ABR могут регулировать отправку суммарных маршрутов в тупиковую зону любым образом, вплоть до отправки в зону только маршрута по умолчанию (totally stubby).

[править] Not-so-stubby area (NSSA)

[править] Totally NSSA

[править] Типы маршрутизаторов

[править] Объявления о состоянии канала (LSA)

Объявление о состоянии канала (Link State Advertisement, LSA) — единица данных, которая описывает локальное состояние маршрутизатора или сети.

Множество всех LSA, описывающих маршрутизаторы и сети, образуют базу данных состояния каналов (LSDB).

У каждого типа LSA своя функция:

Фактически, сами по себе LSA маршрутизаторы не передают. Они передают LSA внутри других пакетов:

[править] Суммарная информация о LSA

Номер LSAНазвание LSALink-State IDКто отправляетОбласть распространения
LSA 1Router LSARouter ID отправителяВсе маршрутизаторыВнутри зоны (IntraArea)
LSA 2Network LSAIP-адрес интерфейса DRDR (в сетях со множественным доступом)Внутри зоны (IntraArea)
LSA 3Network Summary LSAСети назначения и маска сетиABRAS (InterArea)
LSA 4ASBR Summary LSARouter ID ASBRABRAS (InterArea)
LSA 5AS External LSAВнешняя сеть и маскаASBRAS (InterArea)
LSA 7AS External LSA for NSSAВнешняя сеть и маскаASBR в NSSANSSA

[править] Заголовок LSA

Все LSA начинаются с одинакового заголовка размером 20 байт.

Любое LSA уникально идентифицируют 3 поля заголовка:

Так как может существовать несколько копий одного и того же LSA, необходимо определять какая из копий актуальна. Это осуществляется с помощью анализа полей:

Описание полей заголовка LSA:

[править] Type 1 LSA

Type 1 LSA — Router LSA — объявление о состоянии каналов маршрутизатора:

В Router LSA содержится:

LSA Type 1 link types и соответствующие link ID:

[править] Type 2 LSA

Type 2 LSA — Network LSA — объявление о состоянии каналов сети:

В LSA содержится описание всех маршрутизаторов присоединенных к сети, включая DR и маска сети, за которую отвечает DR.

Зачастую возникает вопрос: «Зачем нужен LSA 2? Ведь в LSA 1 можно было бы тоже указать соседей и для сетей с множественным доступом, и, уж тем более, маску сети.»

Необходимость и преимущества LSA 2 понятны, если рассмотреть сеть, в которой в одном широковещательном сегменте будет много маршрутизаторов. Например, в одном широковещательном сегменте, 5 маршрутизаторов.

LSA 2 позволяет существенно сократить количество каналов в LSDB.

В ситуации, когда сама сеть с множественным доступом, но в широковещательном сегменте всего два соседа OSPF (как правило, такое бывает для транзитных линков между сетевыми устройствами), LSA 2 и выбор DR не нужны, и можно перевести интерфейсы в режим point-to point.

[править] Type 3 LSA

Type 3 LSA — Network Summary LSA — суммарное объявление о состоянии каналов сети:

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

[править] Type 4 LSA

Type 4 LSA — ASBR Summary LSA — суммарное объявление о состоянии каналов пограничного маршрутизатора автономной системы:

Когда в домен OSPF помещаются сторонние маршруты, информация о них отправляется с помощью LSA 5. Но внутри этих LSA, указывается, что маршрут известен через ASBR. А путь к ASBR известен только тем маршрутизаторам, которые с ним в одной зоне.

Всем маршрутизаторам, которые находятся в другой зоне, необходимо сообщить о том, где находится ASBR. Это делает ABR, который находится в той же зоне, что и ASBR. Он сообщает о местоположении ASBR помощью LSA 4.

[править] Type 5 LSA

Type 5 LSA — AS External LSA — объявления о состоянии внешних каналов автономной системы:

[править] Type 7 LSA

Type 7 LSA — AS External LSA for NSSA — объявления о состоянии внешних каналов автономной системы в NSSA зоне:

[править] Типы пакетов OSPF

OSPF использует 5 типов пакетов:

[править] Формат заголовка пакета OSPF

Все пять типов пакетов OSPF инкапсулируются непосредственно в IP-пакет. Номер протокола OSPF в IP-заголовке — 89.

У всех пакетов OSPF одинаковый заголовок.

Поля заголовка пакета OSPF:

Поле Данные отличается для различных типов пакетов OSPF:

[править] Hello

Hello-пакет используется для таких целей:

Кроме стандартного заголовка пакета OSPF, в hello-пакете содержится такая информация:

[править] Database Description

Кроме стандартного заголовка пакета OSPF, в DBD-пакете содержится такая информация:

[править] Link State Request

Запрос информации о состоянии канала. Этот тип пакетов запрашивает отдельные фрагменты базы данных состояния каналов маршрутизатора.

[править] Link State Update

[править] Link State Acknowledgment

[править] LSDB

[править] Синхронизация LSDB

[править] SPF

[править] Incremental SPF

[править] Partial SPF calculation

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

Метрика для этих сетей высчитывается на основании стоимости, которая анонсируется в Network Summary LSA плюс стоимость пути до ABR, который отправил LSA.

Если в зоне произошли изменения, то маршрутизаторы в других зонах не запускают SPF, а используют новую метрику, которая приходит в Network Summary LSA, добавляют к ней стоимость пути к ABR и помещают маршрут в таблицу маршрутизации — это и называется Partial SPF calculation.

Partial SPF calculation выполняется независимо от того настроено суммирование маршрутов на границе зоны или нет.

[править] Выбор лучшего маршрута

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

[править] Выбор лучшего типа маршрута

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

Различные типы маршрутов, в порядке убывания приоритета:

Хотя стоимость маршрута E2 не меняется при передаче его по зонам (не добавляется стоимость пути к ASBR), при совпадении стоимости маршрутов E2, сравнивается стоимость пути к ASBR, который анонсирует маршрут.

Подробное описание выбора лучшего маршрута с учетом специфики Cisco OSPF route selection rules

[править] Метрика OSPF

OSPF использует метрику, которая называется стоимость (cost). Стоимость сравнивается у маршрутов одного типа.

Интересно то, что в RFC 2328 не описывается как именно дожна рассчитываться стоимость (cost) интерфейса. Определен только диапазон значений: 1-65535.

Поэтому, в мультивендорной среде, стоит обратить на это внимание.

Например, в Cisco стоимость интерфейса считается по формуле:

Reference bandwidth это пропускная способность, относительно которой высчитывается, по умолчанию стоимость интерфейса. Она равна 100Mb, но может быть изменена.

Суммарная стоимость маршрута считается суммированием стоимости исходящих интерфейсов по пути передачи LSA.

Для того чтобы обозначить недоступную сеть, OSPF использует метрику равную 16777215 (2 24 —1), которая считается недостижимой метрикой для OSPF.

[править] ABR Loop Prevention

Внутри зон OSPF использует логику link-state протокола, но между зонами он, в некотором смысле, работает как дистанционно-векторный протокол.

Например, при анонсировании в зону type 3 LSA, передается информация о сети назначения, стоимости пути и ABR, через которого эта сеть достижима — параметры аналогичны информации, которую передают дистанционно-векторные протоколы.

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

[править] Внешние маршруты

OSPF использует два типа маршрутов для описания сетей вне автономной системы маршрутизатора:

Type 1 external routes — к метрике внешнего маршрута добавляется стоимость пути к ASBR, который анонсирует этот маршрут. Используется когда несколько маршрутизаторов анонсируют внешнюю сеть. Когда ABR передает type 5 LSA в другую зону, он создает type 4 LSA, которое указывает стоимость пути от этого ABR до ASBR, который создал type 5 LSA.

Маршрутизатор (не ABR), который находится в разных зонах с ASBR, будет высчитывать метрику внешнего маршрута E1 сложив следующие значения метрик:

Type 2 external routes (используется по умолчанию для внешних маршрутов) — используется стоимость внешнего маршрута и при передаче по сети стоимость не увеличивается. Другие маршрутизаторы, при получении type 5 LSA, просто добавляют в свою таблицу маршрутизации маршрут во внешнюю сеть со стоимостью, которая указана в type 5 LSA.

Хотя стоимость маршрута E2 не меняется при передаче его по зонам (не добавляется стоимость пути к ASBR), при совпадении стоимости маршрутов E2, сравнивается стоимость пути к ASBR, который анонсирует маршрут.

[править] Forwarding address в Type 5 LSA

В RFC 2328, в разделе 16.4 (Calculating AS external routes), указано:

If the forwarding address is non-zero, look up the forwarding address in the routing table. The matching routing table entry must specify an intra-area or inter-area path; if no such path exists, do nothing with the LSA and consider the next in the list.

Если forwarding address не равен 0.0.0.0, то для него выполняется проверка в таблице маршрутизации. Маршрут к этому адресу должен быть внутризональным или межзональным (не может быть внешним). Иначе изначальный внешний маршрут не учитывается.

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

[править] Вычисление таблицы маршрутизации

В этом разделе описывается каким образом OSPF заполняет таблицу маршрутизации. Используя базы данных состояния каналов для зон к которым он подключен, маршрутизатор выполняет описанную последовательность действий, строя таблицу маршрутизации шаг за шагом. На каждом этапе маршрутизатор обращается к определенным участкам LSDB. Если в LSDB есть LSA у которых LS age равно MaxAge, то они не учитываются при вычислении таблицы маршрутизации.

Процесс построения таблицы маршрутизации:

Источник

Добавить комментарий

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