Понимание типов сетей OSPF
Очень важно понимать, что зона OSPF состоит из различных типов сетевых соединений (линков) и adjacecny behavior отличается. Поэтому для корректного функционирования необходимо верно настроить OSPF.
Типы OSPF сетей
Всегда следует помнить, что область OSPF может состоять из сетей построенных на базе различных технологий, использующих разные топологии, типы среды передачи данных, и обладающих разными скоростными характеристиками, такими как пропускная способность, уровень задержек при передаче и проч. Из-за этого схождение OSPF может происходить по-разному на разных участках сети. Как результат – OSPF необходимо конфигурировать с учетом всех характеристик сети для корректного функционирования на участках построенных на базе разных сетевых технологий. Во многих случаях стандартные значения параметров не могут обеспечить корректной работы.
OSPF делит сети на три основных категории, по методу доставки:
- Point-to-point: сеть, обьединяющая пару маршрутизаторов. DR/BDR не выбирается.
- Broadcast: Широковещательная сеть с множественным доступом, основной представитель – Ethernet. Выбирается DR/BDR.
- Nonbroadcast multiaccess (NBMA): Сеть (обычно WAN), объединяющая более двух маршрутизаторов, но не поддерживающая широковещательную рассылку. В качестве примера можно привести такие технологии, как Frame Relay, ATM, X.25. OSPF может использовать для работы в таких сетях один из 5 режимов, которые будут описаны в одной из последующих глав. DR/BDR может выбираться или не выбираться.
Всего 5 режимов работы OSPF, доступных для NBMA сетей:
- RFC-compliant modes:
- non-broadcast
- point-to-multipoint
- Cisco proprietary modes:
- broadcast
- point-to-multipoint non-broadcast
- point-to-point
OSPF работает поверх обоих типов MPLS (L2 и L3).
Процедура выборов DR и BDR
Одна из основных функций DR – обеспечение идентичности баз топологии на всех маршрутизаторах сегмента сети. Это обеспечивается путем передачи базы DR на каждый свежеподсоединившийся маршрутизатор. Весьма эффективно: один маршрутизатор сообщает «новичку» обо всех остальных, а не каждый посылает гору информации, дублирующей такие же горы, полученные от остальных. Маршрутизаторы в сети также поддерживают частичные отношения, двухстороннее соседство с роутерами сети, не являющимися DR или BDR (DROTHER). Для выборов DR или BDR, маршрутизаторы запоминают уровни приоритета OSPF других маршрутизаторов, полученные в процессе обмена hello-пакетами, и используют их для определения избранника согласно следующим условиям:
- Маршрутизатор, обладающий высшим приоритетом, становится DR.
- Второй по приоритету маршрутизатор становится BDR.
- Приоритет по умолчанию – 1. В случае совпадения приоритетов – сверяются Router ID участников, по тем же правилам.
- Маршрутизатор с нулевым приоритетом не может принимать участие в выборах и не может стать ни DR ни BDR. Маршрутизатор, не являющийся DR или BDR, называется DROTHER.
- Если в сеть добавляется маршрутизатор с более высоким значением приоритета, это не значит, что он сразу станет DR или BDR. Смена ролей происходит только в случае недееспособности DR или BDR. Если «помирает» DR – его роль принимает на себя BDR, и происходят выборы BDR. Если BDR – его переизбирают, и все.
BDR не выполняет никаких операций, если работает DR. Вместо этого BDR получат всю информацию, но DR выполняет перенаправление LSA и задачи по синхронизации LSDB. BDR выполняет задачи DR только в случае отказа второго. У BDR тикает специальный таймер, позволяющий определить потерю работоспособности DR. Если до окончания отсчета таймера BDR не получит ни одного LSA от DR, он будет считать, что DR не работает.
Нужно запомнить, что концепция DR реализована на канальном уровне. DR и BDR избираются для каждого широковещательного сегмента и уникальны на его протяжении, таким образом любой маршрутизатор может быть DR в одном и DROTHER или BDR в другом подключенном сегменте.
Используйте команду ip ospf priority в контексте настройки интерфейса для влияния на выбор DR и BDR. По умолчанию, приоритет – 1 и может быть задан из диапазона 0-255. Обратите внимание еще раз: установка приоритета в 0 предотвращает избрание маршрутизатора в качестве DR или BDR в сети, подключенной к интерфейсу, в контексте которого была выполнена команда.
Опять таки, изменение приоритета срабатывает только после потери работоспособности имеющегося DR или BDR, что может произойти либо вследствие сбоя, либо как результат вмешательства администратора (clear ip ospf например).
Пример ip ospf priority
Router(config)#interface FastEthernet 0/0 Router(config-if)#ip ospf priority 10
!!!Внимание!!! Приоритет интерфейса обычно вступает в силу только когда действующий DR уходит в DOWN. DR не переуступает свой статус просто потому что в hello-пакете от соседа содержится более высокий приоритет. Установка в качестве приоритета нулевого значения срабатывает немедленно. Происходят перевыборы.