OSPF / BGP

OSPF

Протокол стека TCP/ IP, OSPF Open Shortest Path First, первоочередное открытие кротчайших маршрутов, наследник RIP превосходящий его по скорости и надежности с максимальным количеством переходов (hop-ов) равным 256 (RIP 16 hops), протокол внутреннего шлюза (Interior Gateway Protocol — IGP), протокол внутри доменной маршрутиризации. Протокол OSPF распространяет информацию о доступных маршрутах между маршрутизаторами в рамках одной автономной системы, это протокол динамической маршрутизации, основанный на технологии отслеживания состояния канала (link-state technology) и использующий для нахождения кратчайшего пути алгоритм Дейкстры (вычислительная сложность этого алгоритма предъявляет высокие требования к мощности процессоров используемых маршрутизаторов). RIP Routing Information Protocol протокол используется в качестве протокола внутренней маршрутизации в небольших сетях и поддерживается оборудованием всех производителей.

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

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

адаптивные и неадаптивные

глобальные и децентрализованные

статические и динамические

В свою очередь в зависимости от алгоритма маршрутизации протоколы делятся на два вида:

дистанционно-векторные протоколы (основаны на алгоритме DVA — distance vector algorithm);

протоколы состояния каналов связи (основаны на алгоритме LSA — link state algorithm).

По области применения выделяют протоколы:

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

для внутридоменной маршрутизации.


IGP — Interior Gateway Protocol, протокол внутреннего шлюза — это тип протокола, используемый для обмена информацией о маршрутизации между шлюзами (обычно маршрутизаторами) в автономной системе - (AS) (интернет, например, системе корпоративных локальных сетей).

EGP Exterior Gateway Protocol, используются для передачи информации между автономными системами (AS). На текущий момент представитель этого класса протоколов один: BGP, хотя, чаще всего, BGP используется для передачи маршрутов между разными AS, он может также использоваться и внутри корпоративной сети. Особенно, когда сеть большая.

  • RIP — routing information protocol;

  • IGRP — interior gateway routing protocol (лицензированный протокол фирмы «Cisco Systems»);

  • BGP — border gateway protocol;

  • EIGRP — enhanced interior gateway routing protocol (на самом деле этот протокол гибридный — объединяет свойства дистанционно-векторных протоколов и протоколов состояния каналов связи); лицензированный протокол фирмы «Cisco Systems»). Расширенные протоколы маршрутизации с вектором расстояния имеют как функции протоколов маршрутизации с вектором расстояния, так и протоколов маршрутизации из состояния канала

  • AODV — ad hoc on-demand distance vector.

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

  • IS-IS — intermediate system-to-intermediate system (стек OSI, протокол обмена данными между промежуточными системами);

  • OSPF — open shortest path first;

  • NLSP — NetWare link-services protocol (стек Novell);

  • HSRP — hot standby router/redundancy protocol (протокол резервирования шлюза в сетях Ethernet);

  • CARP — common address redundancy protocol (протокол резервирования шлюза в сетях Ethernet);

  • OLSR — optimized link-state routing;

  • TBRPF — topology dissemination based on reverse-path forwarding.

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

  • EGP — (exterior gateway protocol) внешний шлюзовый протокол. Протоколы класса EGP маршрутизируют данные между автономными системами. Протокол BGP является наиболее

широко известным представителем класса EGP.

  • BGP — (border gateway protocol) пограничный шлюзовый протокол, один из основных протоколов диамической маршрутиризации (https://habr.com/ru/post )

  • MP-BGP Multiprotocol BGP (MP-BGP) - это расширение протокола BGP, позволяющее ему передавать информацию о маршрутизации сразу для нескольких сетевых уровней и адресных семейств. (https://multiprotocol-bgp-mp-bgp-configuration )

  • IDRP — inter-domain routing protocol;

  • IS-IS level 3 — intermediate system to intermediate system level 3.

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

  • RIP — routing information protocol;

  • IS-IS level 1-2 — intermediate system to intermediate system level 1‑2;

  • OSPF — open shortest path first;

  • IGRP — interior gateway routing protocol;

  • EIGRP — enhanced interior gateway routing protocol;

  • DVMRP distance ctor multicast routing protocol.


Терминология OSPF

Interface (Интерфейс) — соединение маршрутизатора и одной из подключенных к нему сетей. При обсуждении OSPF термины интерфейс и канал (link) часто употребляются как синонимы.

Link-state advertisement, LSA (Объявление о состоянии канала) — объявление описывает все каналы маршрутизатора, все интерфейсы и состояние каналов, сообщения с помощью которых распространяется топологическая информация.При транзитной передаче объявлений LSA маршрутизаторы не модифицируют информацию, как это происходит в дистанционно-векторных протоколах, в частности в RIP, а передают ее в неизменном виде. В результате все маршрутизаторы сети сохраняют в своей памяти идентичные сведения о текущей конфигурации графа связей сети. Множество всех LSA, описывающих маршрутизаторы и сети, образуют базу данных состояния каналов (LSDB).

Link-state routing protocol, LSP Протокол маршрутизации на основе состояния канала, OSPF, IS-IS

Link state (Состояние канала) — состояние канала между двумя маршрутизаторами; обновления происходят при помощи пакетов LSA.

Metric (Метрика) — условный показатель растояния до сети назначения.

Cost (стоимость) — условный показатель "стоимости" пересылки данных по каналу. В OSPF зависит от пропускной способности интерфейса (bandwidth)

Autonomous system (Автономная система) — это совокупность сетей под единым административным управлением, обеспечивающим общую для всех входящих в автономную систему маршрутизаторов политику маршрутизации. Обычно автономной системой управляет один поставщик услуг Интернет. Автономная система использует внутренние шлюзовые протоколы IGP (RIP, OSPF и IS-IS).

Area (Зона) — совокупность сетей и маршрутизаторов, имеющих один и тот же идентификатор зоны. https://habr.com/ru/post/162163/

Neighbors (Соседи) — маршрутизаторы, имеющие интерфейсы в общей сети (зоне).

Adjacency (Состояние смежности) — взаимосвязь между определёнными соседними маршрутизаторами, установленная с целью обмена информацией маршрутизации.

Hello protocol (Hello-протокол) — сообщения, используется для поддержания соседских отношений, для контроля состояния связей, сообщения отсылаются каждые 10 сек, это тестирование состояния соседей и связей с ними. Когда сообщения HELLO перестают поступать от какого-либо непосред­ственного соседа, маршрутизатор делает вывод о том, что состояние связи изменилось с работоспособного на неработоспособное, и вносит соответствующие коррективы в свою топологическую базу данных. Одновременно он отсылает всем непосредственным соседям объявление LSA об этом изменении, те также вносят исправления в свои базы данных и в свою очередь рассылают данное объявление LSA своим непосредственным соседям.

Neighbors database (База данных соседей) — список всех соседей.

Link state database, LSDB (База данных состояния каналов) — список всех записей о состоянии каналов. Встречается также термин топологическая база данных (topological database), употребляется как синоним базы данных состояния каналов.

Router ID, RID (Идентификатор маршрутизатора) — уникальное 32-битовое число, которое уникально идентифицирует маршрутизатор в пределах одной автономной системы.

ABRs — Area Border Router


Соседи OSPF:

Neighbours (Соседи) — два маршрутизатора, интерфейсы которых находятся в одном широковещательном сегменте (и на которых включен OSPF на этих интерфейсах)

Adjacency (Отношения соседства) — взаимосвязь между соседними маршрутизаторами, установленная с целью синхронизации информации

Hello protocol (Hello-протокол) — протокол, использующийся для установки и поддержания соседских отношений

Neighbours database (База данных соседей) — список всех соседей (также используется термин neighbour table)

Пакеты OSPF:

Hello — пакеты, которые используются для обнаружения соседей, установки отношений соседства и мониторинга их доступности (keepalive)

DBD, Database Description packet — пакеты, которые описывают содержание LSDB

LSR, Link State Request — пакеты, с помощью которых запрашивается полная информация об LSA, которых недостает в LSDB локального маршрутизатора

LSU, Link State Update — пакеты, которые передают полную информацию, которая содержится в LSA

LSAck, Link state acknowledgment — пакеты, с помощью которых подтверждается получение других пакетов

Link-state technology - routing

В целом стоит поговорить о технологиях маршрутиризации, которые можно поделить на протоколы маршрутизации на основе состояния канала (Link-state routing protocols) — это один из двух основных классов протоколов маршрутизации, используемых в сетях с коммутацией пакетов для компьютерных сетей и протоколы дистанционно-векторной маршрутизации

(distance-vector routing protocols). Примерами Link-state routing protocols будут Open Shortest Path First (OSPF) и Intermediate System to Intermediate System (IS-IS), примеры distance-vector routing protocols протоколы RIP, BGP и тд.

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

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

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

В LSP (Link-state routing protocol) каждый узел передает свой IP-адрес и MAC своему соседу со своей подписью. Соседи определяют подпись и ведут запись IP-адреса и MAC-адреса. Протокол поиска соседей (NLP - Neighbor Lookup Protocol ) выводит и поддерживает MAC и IP адреса каждого сетевого кадра, принятого узлом. Извлеченные данные могут поддерживать сопоставление MAC-адресов и IP-адресов.

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


Можно выделить несколько существенных компонентов для понимания алгоритма Link-state routing (состояния канала):


Сушествование зон

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

Всем маршрутизаторам

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

Представление информации при изменении - метрика

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

Два фактора, как стоимость используется для пакетов при выборе маршрута:

Цена используется только маршрутизаторами, а не станциями в сети. Соединение от одного маршрутизатора к другому — это сеть, а не кабель «точка-точка».

Метрика используется как пакет, который покидает маршрутизатор, а не принимается им.


Относительно к OSPF как примеру LSP: OSPF разбивает процедуру построения таблицы маршрутизации на два этапа, к первому относится построение и поддержание базы данных о состоянии связей сети, ко второму — нахождение оптимальных маршрутов и генерация таблицы маршрутизации.


Построение и поддержание базы данных о состоянии связей сети.

Каждый маршрутизатор обменивается со своими соседями той информацией о графе сети, которой он располагают к данному моменту. Этот процесс похож на процесс распространения векторов расстояний до сетей в протоколе RIP, однако сама информация качественно иная —это информация о топологии сети. Сообщения, с помощью которых распространяется топологическая информация, называются объявлениями о состоянии связей (Link State Advertisement, LSA) сети. При транзитной передаче объявлений LSA маршрутизаторы не модифицируют информацию, как это происходит в дистанционно-векторных протоколах, в частности в RIP, а передают

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


Нахождение оптимальных маршрутов и генерация таблицы маршрутизации.

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

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

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

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


Протокол IS-IS (Intermediate System to Intermediate System) функционально близок к про­токолу OSPF. Существуют различные версии IS-IS, рассчитанные на работу в различных стеках протоколов и способные переносить в своих сообщениях адресную информацию различного типа. Наиболее популярной является версия IS-IS для стека TC P/IP, существует версия IS-IS для работы в сетях Ethernet

0:00

В течение многих лет я спрашивал своих студентов, какой протокол маршрутизации они используют в своих корпоративных сетях и в подавляющем большинстве случаев ответ был OSPF — Open Shortest Path First, первоочередное открытие кротчайших маршрутов, OSPF это один из протоколов динамической маршрутизации, на основе состояния канала (Link-state routing protocols, LSP) как и протокол записи состояния канала, протокол имеет карту сети, знает, как каждый из маршрутизаторов в пределах области сеть взаимосвязан, в отличие от EIGRP, который знает только, что вот следующий hop чтобы добраться до места назначения, EIGRP не знает, как маршрутизаторы взаимосвязаны, в отличии от OSPF который делает запись состояния канала, есть и другие протоколы записи состояния канала, с которым вы можете столкнуться, но в этом видео мы не будем их рассматривать, это промежуточная система к промежуточной системе, поэтому у нас здесь OSPF и ISIS,

0:48

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

1:22

Open Shortest Path First (OSPF) Characteristics:

Open standart

Establishes adjacencies with other routers

Sends Link State Advertisments (LSAs) to other routers in an area

Constructs a Link State Database from received LSAs

Runs the Dijkstra Shortest Path First (SPF) Algorithm to determine the shortest path to a network

Attempts to inject the best path for each network into a router`s IP routing table

OSPF Terminology:

Hello: A protocol used to discover OSPF neghbors and confirm reachability to those neghbors (also used in the election of a Designated Router)

Link State Advertisment (LSA): Information a router sends and receivers about network reachability (used to construct a router`s Link State Database)

Link State Update (LSU): A packet that carries LSAs

Link State Request (LSR): Used by a router to request specific LSA information from a neghbor

Link State Acknowledgement (LSAck): Used by a router to confirm it received an LSU


OSPF это открытый стандарт, и не принадлежащий какому либо конкретному поставщику, маршрутизаторы обмениваются своими кусочки головоломки то есть информации друг с другом формируют adjactncies - смежности(соседства) но есть разница между соседстом - Neighbors и смежностями - Adjacency и я чуть позже отличу их, мы сказали, что разные маршрутизаторы знают различные фрагменты информации и что они собираются вместе составить карту сети используя это фрагменты, и хорошо что информация предоставляется в форме объявлений о состоянии ссылок LSAs, которые отправляются между маршрутизаторами чтобы информировать друг друга о том, какие сети в наличии доступны и как они взаимосвязанны а затем в каждом маршрутизаторе эти LSAs группируются вместе, и в итоге мы складываем головоломку, картину отражающую карту сети и эта карта называется Link State Database, LSDB - база данных состояния каналов связи и как только мы получим эту базу данных мы узнаем, как все взаимосвязано, мы узнаем пропускную способность на каждом из каналов между маршрутизаторами, и тогда мы можем запустить алгоритм кратчайший путь Дейкстры цель которого определить оптимальный путь между любыми, точками сети, и кстати, именно так работает навигационная система нашего автомобиля она также использует алгоритм Дейкстры для определения кратчайший путь или, может быть, у вас есть навигационная программа на смартфоне и ваш смартфон с помощью этого алгоритма может сделать перерасчет, например если есть какая-то авария на дороге он может обнаружить это и предложить объезд назначив более высокую стоимость пути - метрику, так и для сети если есть проблема мы можем перенаправить наш путь в объезд этой проблемы, правда при условии что у нас есть резервный путь, и как только OSPF создаст базу состояние канала LSDB, он будет знаеть, какой маршрут для доступа к определенной сети будет лучшим и этот маршрут становится кандидатом для записи в таблицу маршрутизаци маршрутизатора но здесь важно то, что факт того, что OSPF имеет маршрут к сети не означает, что этот маршрут вычисленный OSPF, обязательно будет занесен в таблицу маршрутиризации потому что у нас может быть источник информации о маршруте который до сих пор декларирует свою сеть которая может быть более "правдоподобнои", оптимальной, чем результат OSPF, напимер возможно EIGRP декларирует эту самую сеть, и если это так, тогда наш маршрутиризатор будет верить(выберет) EIGRP вместо OSPF, потому что EIGRP больше правдоподобен то есть имеет меньшую административную дистанцию 90 по сравнению с OSPF где административное расстояние 110 (потому что EGRP это Cisco)

3:39

Neighborship vs. Adjacencies

Neighbors are routers that:

Reside on the same network link

Exchange Hello messages

Adjacencies are routers that:

Are neighbors

Have exchanged Link Stste Updates (LSUs) and Database Description (DD) packets


И прежде чем мы формлизуем понятие Аdjactncies - смежности(соседства) в сети OSPF, я хочу уточнить терминологию, первое это Hello, то при помощи чего формируются соседства и позже мы поговорим что называется Designated Router (назначенный маршрутиризатор), Hello - это приветственное сообщение и далее так как мы собираемся выбрать назначенный маршрутизатор мы говорим, что информация, которой обмениваются наши маршрутизаторы, эта информация является LSA (Link-state advertisement) - объявление о состоянии канала по нашей аналогии LSA очень похож на пазл головоломки, однако присутствует распространенное заблуждение многие люди скажут, что маршрутизатор отправил LSA пакет, на самом деле это технически неправильно LSA - это информация, LSA не являются типами пакетов OSPF, напротив LSU это разновидность пакета OSPF содержащий LSA, поэтому LSU пакет это LSA информация внутри этого LSU и если вы когда-нибудь собирали головоломку, то сталкивались с ситуацией когда нам кажется, что не хватает кусочка который ты пытаешься вставить в этом углу и ты спрашиваешь своих друзей за столом Эй, у кого-нибудь есть кусок, который выглядит вот так, я его ищу и вы запрашиваете недостающую часть в головоломке, вы хотите посмотреть, есть ли она у кого-нибудь, вот что может сделать маршрутизатор, если он попытался создать свою базу данных состояния каналов, но в ней отсутствует кусочек(пазл) вся радость в том что он может запросить у других маршрутизаторов, недостающую часть, часть информации или другими словами недостающую LSA, и это будет LSR запрос состояния канала и если сосед даст ему недостающую часть информация, он скажет спасибо в форме состояния канала, которое будет называться подтверждение LSAck, теперь поговорим, что есть разница между соседством и смежностями - Neighborship vs.Adjactncies ?.

5:34

Скажем то, что прежде всего сосед находится с маршрутизатором в одном сегменте сети, в одном широковещательном сегменте, мы используем одну и ту же подсеть и обмениваясь сообщениями Hello используем multicast (многоадресную) рассылку мы не транслируем ее как первую версию RIP мы отправляем multicast - Hello на multicast адрес 224.0.0.5. это если ipv4, для ваших заметок для ipv6 в это будет ff02 двоеточие двоеточие 5, но это сосед, мы поздоровались друг с другом, но мы не обменивались информацией вот то, что будет делать "соседство" и когда я думаю об этом, я думаю о двух моих соседях, где я живу есть только два соседа одного соседа я знаю довольно хорошо мы вместе работали над некоторыми проектами, бываем друг у друга в гостях, у нас тесные отншения мы обмениваемся информацией и тд., с другим соседом я знаком не очень хорошо, но я знаю машину на которой он ездит, поэтому когда я его вижу я машу ему рукой, когда ухожу с подъездной дорожки, мы здороваемся друг с другом, короче у нас нет глубоких отношений мы просто соседи, в нашеи аналогии второй сосед и наши с ним отношения они соседские и только, у них нет характеристики смежности - Adjactncies, как со первым соседом, так и маршрутиризаторы, они являются соседями OSPF, и это предварительное условие, однако если в дополнение к просто Hello они обменялись информацией для создания общей базы данных, это будет взаимосвязь, смежность - Adjactncies между определёнными соседними маршрутизаторами, взаимосвязь установленная с целью обмена информацией маршрутизации.

7:10

Вам возможно будет интересно, например у нас есть Ethernet сегмент и в нем несколько маршрутиризаторов общающихся по протоколу OSPF и если все были бы смежны со всеми остальными было бы много взаимосвязей, у нас в примере шесть маршрутиризаторов и если бы каждый маршрутиризатор был смежен с каждым другим что бы произошло? давайте посчитаем, считать будем по такой вот фомуле: # of Adjacencies = [n* (n-1)]/2 - where n is the number of router, тридцать разделить на два будет пятнадцать, у нас должно быть 15 смежностей, что бы объедеить эти маршрутиризаторы вместе, и это всего шесть маршрутиризаторов, представте если бы их было десять это уже 45 смежностей и что мы можем сделать вместо этого в подобных сетях, сетях называемыми широковещательными сетями OSPF, поскольку они принадлежат одному широковещательному домену, мы можем выбрать маршрутизатор в качестве dr - designated(назначенный) router и bdr - backup desinated router - резервный назначенный маршрутиризатор на случай если основной недоступен и вот в чем хитрость, когда мы выбираем назначенный и резервно назначенный маршрутиризатор то другим маршрутиризаторам в такой сети нет нужды образовывать смежности друг с другом им достаточно сформировать смежности с dr и bdr, что естественно уменьшает их количество которые нам необходимо иметь и я упомянул multicast адрес который используют маршрутиризаторы чтобы послать Hello и вот напоминание об этих адресах для ipv4/ipv6

8:47

224.0.0.5 or FF02::5 - All OSPF router

224.0.0.6 or FF02::6 - All designated routers

Если мы просто хотим обновить маршруты с dr и bdr это multicast адрес для ipv4 224.0.0.6, а для ipv6 это FF02::6 это относится ко всем назначенным маршрутиризаторам, включая резервный назначенный. Мы говорили о том, как маршрутиризаторы OSPF разделяют общее представление о сети которую они совместно используют?, для этого существует понятие Area (Зона, область) — совокупность сетей и маршрутизаторов, имеющих один и тот же идентификатор зоны,

9:26

однако мы можем разделить зону, область OSPF на несколько областей, и вот что мы имеем на слайде у нас есть область 0 внизу, и мы получили область 1 и область 2. и обратите внимание, что у меня есть калькулятор рядом с каждой зоной, вообщем я хотел сказать, что алгоритм Дикстра выполняется для каждой из зон, Таким образом если у нас действительно большая зона, то разделение ее на части не потребует больших ресурсов процессора для вычисления алгоритма Дейтрикса, а сложность расчета это один из его недостатков, но вы можете задаться вопросом, как сеть, известная как области ноль, декларируется в область один. Ну, это работа ABRs маршрутизатора границ области, ABRs находится на границе по крайне мере двух областей и он может отправлять информацию и туда и обратно между этими областями, поэтому не обязательно запускать на вычисление алгоритм Dextra в каждой области. Нулевая область является обязательным требованием и если у нас в сети имеется более одной области то должно быть то что называется Backbone Area с нумерацией 0 или 0.0.0.0 поскольку области могут быть пронумерованы как ip адреса, другое название магистральная область, однако это не ip адрес мы просто говорим как добраться до этой сети, можно также использовать десятичную нотацию, которую я обычно и испльзую, вообщем это просто имя, идентификатор зоны обязательный для зоны, как необходим и Router ID, RID - идентификатор маршрутизатора — уникальное 32-битовое число, которое уникально идентифицирует маршрутизатор в пределах одной автономной системы, то есть совокупность сетей под единым административным управлением, обеспечивающим общую для всех входящих в автономную систему маршрутизаторов политику маршрутизации.

И вы можете задаться вопросом с точки зрения дизайна сети, когда нам нужно начинать добавлять области?, "Насколько велики люди настолько они осторожны" учит нас Хемингуэй как и "Люди с возрастом не умнеют. Они просто становятся осторожнее", по этому вопросу как я помню была рекомендация, та что Сisco сделала много лет назад которая звучит так: "если у вас больше 50 маршрутиризаторов в области то чтобы не перегружать их процессоры при работе с алглритмом Дейкстры вы можете разбить ее на другие области", однако эта рекомендация была основана на очень очень старом маршрутиризаторе Сisco и если вы знакомы с Cisco то это были маршрутизаторы серии 2500, которые в наши дни считаются очень медленными, сейчас скорость маршрутиризаторов и возможности процессоров на порядок выше чем в те дни, так что это не такая уж и большая проблема ныне, лично я сейчас начал бы разбивать мою область на несколько областей когда у меня было бы, может быть, несколько сотен маршрутизаторов в области, какую еще пользу можно извлечь из возможности разорвать область? ну представим, что у меня дата центр это может способствовать мне устранять неполадки, засчет того что все маршруты центра обработки данных находились в одной базе данных состояния канала а мои корпоративные маршруты в другой базе состояния канала, например.

Давайте лучше рассмотрим как OSPF определяет наилучший путь, используя RIP, как вы знаете, мы используем наименьшее количество hop-ов маршрутизатора, с OSPF дело иначе.

12:37

Cost = Referens BW / interface BW

Cost for R1-R2-R3 = 1+1+1 = 3

Cost for R1-R3 = 10+1 =11


И что же другое в OSPF? давайте рассмотрим эту топологию мы хотим, чтобы pc1 общался с pc2 и у него есть два способа добраться до цели, можно перейти на r1 до r2 вниз до r3 и затем до pc2 или можно перейти к r1 и перейти напрямую к r3 если бы мы использовали RIP то r1 сказал бы "..oоо" я могу добраться до pc2 одним hop-ом , если я пройду через р3 и зачем мне проходить через два hop-а ..хм, я точно не пойду на r2 а потом на р3 я просто сделаю это за один hop маршрутизатора, все верно, однако обратите внимание на скорость на канале между r1 и r3 она всего лишь 10 мегабит в секунду а скорость соединения между r1 и r2 как и r2 и r3 это каналы со скоростью 100 мегабит в секунду что будет гораздо быстрее, ну очевидно, что хочнтся идти через 100 мегабитные линки и совершенно не интересны 10 мегабитные, это не то, так бы выглядел RIP, но не так делает этот расчет OSPF, он принимает решение на основе стоимости канала, стоимость является функцией скорости этого канала, где скорость у нас есть то, что называется "эталонная полоса пропускания" и мы делим ее на пропускную способность интерфейса, что дает нам стоимость, сейчас на маршрутизаторах Сisco эталонная полоса пропускания по умолчанию составляет 100 мегабит в секунду, так что давайте посчитаем какова будет стоимость этого канала между r1 и r3 ну это будет 100 мегбит, наша эталонная пропускная способность, поделенная на 10 мегабит, скорость соединения 100, разделенная на 10 это 10. у нас есть стоимость 10 при переходе от r1 к r3 а как насчет этих сотен мегабайтов? так что давайте сделаем некоторое сравнение, если бы я перешел от r1 до r2 до r3 какова будет стоимость? один плюс один плюс один это стоимость одного канала, чтобы добраться от r1 до r2 стоимость другова, чтобы перейти от r2 до r3 и еще стоимость одного от r3 до ПК2 всего три, что будет, если я возьму меньше переходов, которые выберет RIP если бы я сразу перешел с r1 на r3, то это будет стоить 10, далее перейти с r3 до пк2 это 1 и того 10 плюс 1 это 11. так что глядя на это лучший путь для pc1, чтобы добраться до pc2, нужно идти от r1 до r2 до r3 а затем на pc2, и это взгляд на теорию открытого кратчайшего пути OSPF.


BGP