Сначала открыть кратчайший путь (OSPF ) протокол маршрутизации для сетей Интернет-протокол (IP). Он использует алгоритм маршрутизации состояния канала (LSR) и попадает в группу протоколов внутреннего шлюза (IGP), работающих в единой автономной системе (AS).. Он определен как OSPF Version 2 в RFC 2328 (1998) для IPv4. Обновления для IPv6 указаны как OSPF версии 3 в RFC 5340 (2008). OSPF поддерживает модель адресации бесклассовой междоменной маршрутизации (CIDR).
OSPF - широко используется IGP в больших корпоративных сетях. IS-IS, другой протокол на основе ЛСР, чаще встречается в крупных сетях поставщиков услуг.
OSPF был разработан как протокол внутреннего шлюза (IGP), для использования в автономной системе, например в локальной сети (LAN). Он реализует алгоритм Дейкстры, также известный как алгоритм поиска кратчайшего пути (SPF). Как протокол маршрутизации по состоянию состояния, он был основан на алгоритме состояния канала, разработанном для ARPANET в 1980 году, и протоколе маршрутизации IS-IS. OSPF был впервые стандартизирован в 1989 году как RFC 1131, который теперь известен как OSPF версии 1. Работа по разработке OSPF до его кодификации в качестве открытого стандарта в основном проводилась Digital Equipment Corporation, который разработал собственные проприетарные протоколы DECnet.
Протоколы маршрутизации, такие как OSPF, рассчитывают кратчайший маршрут к пункту назначения через сеть на основе алгоритма. Первый широко внедренный протокол маршрутизации, Протокол информации о маршрутизации (RIP), рассчитывал кратчайший маршрут на основе переходов, то есть числа маршрутизаторов, которые отправляют IP-пакет. пришлось пройти, чтобы достичь хоста назначения. RIP успешно реализовал динамическую маршрутизацию, при которой таблица маршрутизации изменяет, если топология сети изменяется. Но RIP не адаптировал свою маршрутизацию в соответствии со своими условиями, такими как скорость передачи данных. Спрос на протокол динамической маршрутизации, который может рассчитывать самый быстрый маршрут до пункта назначения, вырос. OSPF был разработан таким образом, чтобы кратчайший путь через сеть рассчитывался на основе маршрута с учетом пропускной способности, задержки и нагрузки. OSPF выполняет расчет стоимости маршрута на основе параметров стоимости канала, которые могут быть взвешены администратором. OSPF был быстро принят, потому что он стал надежным вычислением маршрутов через большие и сложные локальные сети.
В качестве протокола маршрутизации состояний каналов OSPF поддерживает базы данных состояний каналов, которые на самом деле являются картами топологии сети на каждом этапе. роутер, на котором это реализовано. Состояние данного маршрута в сети - это стоимость, а алгоритм OSPF позволяет каждому маршрутизатору рассчитать стоимость маршрутов к любому допустимому месту назначения. Если администратор не выполнил конфигурацию, стоимость канала для пути подключенного к маршрутизатору, определяется скорость передачи (1 Гбит / с, 10 Гбит / с и т. Д.) Интерфейса. Интерфейс маршрутизатора с OSPF затем объявляет стоимость своего канала соседним маршрутизатором посредством многоадресной рассылки, известной как процедура приветствия. Все маршрутизаторы с реализацией OSPF распространяют пакеты приветствия, и, таким образом, изменения их стоимости каналов известны соседним маршрутизаторам. Информация о стоимости канала, то есть точка-точка скорости между двумя маршрутизаторами, затем каскадно передается по сети, поскольку маршрутизаторы OSPF объявляют информацию, которую они получают от соседнего маршрутизатора, всем другим соседним маршрутизаторам. Этот процесс лавинной рассылки информации о состоянии канала через сеть известен как синхронизация. На основе этой информации все маршрутизаторы с реализацией OSPF обновляют свои базы данных каналов, добавляя информацию о топологии сети и корректируют свои таблицы маршрутизации.
Сеть OSPF может быть структурирована или разделена на маршрутизации для упрощения администрирования. и оптимизировать трафик и использование ресурсов. Области идентифицируют себя 32-битными числами, которые используются для адресов IPv4, либо просто в той же десятичной системе счисления. По соглашению, область 0 (ноль) или 0.0.0.0 представляет основную или магистральную область сети OSPF. Хотя определения других областей могут быть выбраны по желанию; администраторы часто выбирают IP-адрес основного маршрутизатора в области в качестве программного обеспечения области. Каждая дополнительная область должна иметь соединение с магистральной областью OSPF. Такие соединения поддерживаются маршрутизатором, известным как граничный маршрутизатор области (ABR). ABR поддерживает отдельные базы данных состояний каналов для каждой, которую он обслуживает, и поддерживает общие маршруты для всех областей в сети.
OSPF обнаруживает изменения в топологии, такие как сбои каналы, и сходится в новой структуре маршрутизации без петель за секунды.
OSPF стал популярной динамической маршрутизацией протокола. Другими широко используемыми протоколами динамической маршрутизации являются RIPv2 и Border Gateway Protocol (BGP). Сегодня маршрутизаторы используются по крайней мере один протокол внутреннего шлюза для анонсирования своих таблиц маршрутизации в локальной сети. Часто, помимо OSPF, используются следующие протоколы внутреннего шлюза: RIPv2, IS-IS и EIGRP (протокол расширенной маршрутизации внутреннего шлюза)..
OSPF поддерживает сложные сети с маршрутизаторами, включая резервные маршрутизаторы, для балансировки нагрузки трафика по нескольким каналам с другими подсетями. Соседние маршрутизаторы в том же широковещательном домене или на каждом конце двухточечного канала обмениваются данными друг с другом через OSPF. Маршрутизаторы образуют друг друга, когда они обнаруживают друг друга. Это открывается, запускается, когда маршрутизатор идентифицирует себя в пакете протокола Hello. После подтверждения это устанавливает двустороннее состояние и самые основные отношения. Маршрутизаторы сети в Ethernet или Frame Relay выбирают выделенный маршрутизатор (DR) и резервный выделенный маршрутизатор (BDR), который имеет как концентратор для уменьшения трафика между маршрутизаторами. OSPF использует режимы одноадресной передачи и многоадресной передачи для отправки пакетов «Hello» и обновлений состояния канала.
В качестве протокола маршрутизации на основе состояния канала OSPF устанавливает и поддерживает отношения для обмена обновлениями маршрутизации с другими маршрутизаторами. Таблица отношений соседства называется базой данных смежности. Два маршрутизатора OSPF представляют собой соседние системы, в которых используются маску подсети, таймеры и аутентификация. По сути, OSPF - это отношения между двумя маршрутизаторами, которые позволяют им видеть и друг друга, но не более того. Соседи OSPF не обмениваются никакой информацией о маршрутах - они обмениваются только пакетами Привет. Смежности OSPF формируются между выбранными соседями и позволяют им обмениваться информацией маршрутизации. Два маршрутизатора сначала должны быть соседними, и только потом они могут стать соседними. Два маршрутизатора дополнительными, если хотя бы один из них является назначенным маршрутизатором или резервным выделенным маршрутизатором (в сети с множественным доступом), или они соединены сетью типа «точка-точка» или «точка-многоточка». Для формирования отношений между собой интерфейсы используются соседние отношения для формирования отношений, должны находиться в одной и той же области OSPF. Хотя интерфейс может быть настроен для использования к нескольким областям, это обычно не практикуется. При настройке во второй области интерфейса должен быть настроен как вторичный интерфейс.
Каждый маршрутизатор OSPF в обменивается данными с другими соседними маршрутизаторами на каждом соединительном интерфейсе, чтобы установить состояния всех смежных последовательностей. Каждая такая коммуникационная последовательность представляет собой отдельный диалог, идентифицируемый парой коммуникаторов маршрутизаторов взаимодействующих соседей. RFC 2328 определить протокол для запуска этого диалога (протокол Hello) и для состояния полных взаимосвязей (пакеты базы данных, пакеты запроса канала). В ходе каждого разговора маршрутизатора проходит восемь максимальных условий, определяемых конечным автоматом:
В отличие от других протоколов маршрутизации, OSPF не передает данные через транспортный протокол, такой как Протокол дейтаграмм пользователя (UDP) или протокол управления передачей (TCP). Вместо этого OSPF формирует дейтаграммы IP напрямую, упаковывая их, используя номер протокола 89 для поля IP Protocol. OSPF определяет пять различных типов сообщений для различных типов связи:
Сеть OSPF может быть разделена на области, которые включают логические группы узлов и сетей. Область включает в себя подключенный маршрутизатор, имеющий интерфейсы, указанные к сети. Область поддерживает отдельную базу данных каналов, информация о которой может быть суммирована для остальной части сети с помощью подключаемой части сети. Таким образом, топология области за пределами неизвестна. Это уменьшает трафик маршрутизации между частями автономной системы.
Области однозначно идентифицируются 32-битными числами. Идентификаторы обычно записываются в десятичной системе с точками, знакомой по адресам IPv4. Однако они не являются IP-адресами и могут без конфликтов дублировать любой IPv4-адрес. Идентификаторы области для реализаций IPv6 (OSPFv3) также используют 32-битные индикаторы, записанные в той же нотации. Когда точечное форматирование опущено, некоторые различные варианты расширяют область 1 до диагностической области 0.0.0.1, но известно, что некоторые расширяют ее как 1.0.0.0.
OSPF определяет несколько типов областей:
Магистральная область (также известная как область 0 или область 0.0.0.0) образует ядро сети OSPF. Все остальные области подключены к нему напрямую или через другие маршрутизаторы. Маршрутизация между областями происходит через маршрутизаторы, подключенные к магистральной области и к своим собственным областям. Это логическая и физическая структура для «домена OSPF», присоединенная ко всем ненулевым областям в домене OSPF. Обратите внимание, что в OSPF терминаторный маршрутизатор автономной системы (ASBR) является историческим в том смысле, что многие домены OSPF могут сосуществовать в одной и той же видимой в Интернете автономной системе, RFC 1996.
Магистральная область отвечает за распределение маршрутизации информации между не магистральными областями. Магистраль должна быть непрерывной, но не обязательно физически смежной; Магистральное соединение может быть установлено и поддержано посредством конфигурации виртуальных каналов.
Все области OSPF должны подключаться к магистральной области. Однако это соединение может быть через виртуальное соединение. Например, предположим, что область 0.0.0.1 имеет физическое соединение с областью 0.0.0.0. Далее предположим, что область 0.0.0.2 не имеет соединения с магистралью, но эта область имеет соединение с областью прямого 0.0.0.1. Область 0.0.0.2 может использовать виртуальный канал через транзитную область 0.0.0.1 для достижения магистрали. Чтобы быть транзитной зоной, она должна иметь атрибут транзита.
Тупиковая область - это область, которая не принимает объявления о маршрутах, внешних по отношению к AS, а маршрутизация изнутри области полностью основана на маршруте по умолчанию. ABR удаляет LSA типа 4, 5 из внутренних маршрутизаторов, отправляет им маршрут по умолчанию 0.0.0.0 и идет в шлюз по умолчанию. Это уменьшает размер LSDB и таблицы маршрутизации для внутренних маршрутизаторов.
Модификации базовой концепции тупиковой области были реализованы поставщиками систем, например, полностью тупиковая зона (TSA) и не очень тупиковая зона (NSSA), обе являются расширением в Cisco Системы оборудование маршрутизации.
Не такая короткая область (NSSA) - это тип заглушки, которая может импортировать внешние маршруты автономной системы и отправлять их в другие области, но все же не может получать внешние маршруты AS из других областей. NSSA - это расширение функции тупиковой области, которое позволяет вводить внешние маршруты ограниченным образом в тупиковую область. Тематическое исследование имитирует решение NSSA обойти проблему Stub Area, связанную с невозможностью импортировать внешние адреса. Он визуализирует следующие действия: ASBR импортирует внешние адреса с LSA типа 7, ABR преобразует LSA типа 7 в тип 5 и перенаправляет его в другие области, ABR действует как «ASBR» для других областей. ASBR не принимают LSA типа 5, а затем преобразуются в LSA типа 7 для области.
Несколько поставщиков (Cisco, Allied Telesis, Juniper, Alcatel-Lucent, Huawei, Quagga) реализуют два указанных ниже расширения для тупиковых и не очень тупиковых областей. Хотя они и не охватываются стандартами RFC, многие считают их стандартными функциями в реализациях OSPF.
Недавно приобретенная дочерняя компания является одним из примеров того, где область может быть одновременно не- такая короткая и совсем короткая, еслипрактичное место для установки ASBR находится на краю полностью короткой области. В таком случае ASBR отправляет внешние сигналы в полностью закрытую область, и они доступны для динамиков OSPF в этой области. В реализации Cisco внешние маршруты можно суммировать, прежде чем ввести их в полностью изолированную область. В общем, ASBR не должен объявлять дефолт в TSA-NSSA, хотя это может работать при очень тщательном проектировании и эксплуатации в тех ограниченных случаях, когда такая реклама имеет смысл.
Если объявить полностью короткую область как NSSA, никакие внешние маршруты из магистрали, кроме маршрута по умолчанию, не войдут в обсуждаемую область. Внешние компоненты достигают области 0.0.0.0 через TSA-NSSA, но никакие маршруты, кроме маршрута по умолчанию, не входят в TSA-NSSA. Маршрутизаторы в TSA-NSSA отправляют весь трафик в ABR, за исключением маршрутов, объявленных ASBR.
Транзитная зона - это зона с двумя или более граничными маршрутизаторами OSPF, которая используется для передачи сетевого трафика из одной соседней зоны в другую. Транзитная зона не является частью этого трафика и не является его местом назначения.
OSPF определяет следующие перекрывающиеся категории маршрутизаторов:
Тип маршрутизатора является атрибутом процесса OSPF. Данный физический маршрутизатор может иметь один или несколько процессов OSPF. Например, маршрутизатор, подключенный к нескольким областям и получающий маршруты от процесса BGP, подключенного к другому AS, являющийся пограничным маршрутизатором области, так и пограничным маршрутизатором автономной системы.
У каждого маршрутизатора есть, обычно записываемый в десятичном формате с точками (например, 1.2.3.4) IP-адреса. Этот идентификатор должен быть установлен в каждом экземпляре OSPF. Если явно не настроен, наивысший логический IP-адрес будет продублирован как маршрутизатор. Однако, идентификатор маршрутизатора не является безопасным IP-адресом, он не обязательно должен быть частью какой-либо маршрутизируемой подсети в сети.
Помимо четырех типов маршрутизаторов, OSPF использует термины назначенный маршрутизатор (DR) и резервный назначенный маршрутизатор (BDR), которые являются атрибутами интерфейса маршрутизатора.
Данный маршрутизатор может иметь некоторые интерфейсы, которые назначены (DR), другие - резервные (BDR), а другие - не обозначенные. Если ни один маршрутизатор не является DR или BDR в данной подсети, сначала выбирается BDR, а затем вторые выборы для DR. DR выбирается на основе следующих критериев по умолчанию:
DR существуют для уменьшения сетевого трафика путем предоставления источников обновлений. DR поддерживает полную таблицу топологии сети и отправляет обновления другим маршрутизаторам посредством многоадресной рассылки. Все маршрутизаторы в сегменте сети с множественным доступом будут формировать отношения ведомый / ведущий с DR. Они образуют взаимосвязь только с DR и BDR. Каждый раз, когда маршрутизатор отправляет обновление, он отправляет его в DR и BDR по многоадресному адресу 224.0.0.6. Затем DR отправит обновление всем другим маршрутизаторам в этой области на адрес многоадресной рассылки 224.0.0.5. Таким образом, всем маршрутизаторам не нужно постоянно обновлять друг друга. Использование многоадресной рассылки нагрузку на сеть. DR и BDR всегда настраиваются / выбираются в широковещательных сетях OSPF. DR также можно выбрать в сетях NBMA (Non-Broadcast Multi-Access), таких как Frame Relay или ATM. DR не выбираются для соединений точка-точка (соединение WAN точка-точка), потому что два маршрутизатора по обе стороны канала должны быть полностью совместимыми, а пропускная способность между ними не может быть дополнительно оптимизирована. Маршрутизаторы DR и без DR переходят от двусторонних отношений к полной совместности путем обмена DD, Request и Update.
OSPF использует стоимость пути в качестве метрики маршрутизации, которая была определена стандартом как не приравниваемая к какому-либо стандартному значению, например скорости, чтобы разработчик сети мог выбрать нужную метрику. к дизайну. На практике это определяется скоростью передачи, используемой в данном режиме, как правило, для этого требуются коэффициенты масштабирования, специфичные для сети, теперь, когда соединение со скоростью более 25 Мбит / с является обычным явлением. Cisco использует такую метрику, как (10 бит / с) / пропускная способность (эталонное значение, 10 бит / с по умолчанию, можно изменить). Таким образом, канал со скоростью 100 Мбит / с будет иметь стоимость 1, 10 Мбит / с - стоимость 10 и так далее. Но для каналов со скоростью, превышающей 100 Мбит / с, стоимость будет <1.
. Метрики, однако, напрямую сопоставимы только тогда, когда они одного типа. Различают четыре типа показателей. В порядке уменьшения предпочтения эти типы (например, внутризонный маршрут всегда предпочтительнее внешнего маршрута независимо от метрики):
OSPF версии 3 вносит изменения в протокол IPv4. За исключением виртуальных каналов, все соседние коммутаторы используют исключительно локальную адрес IPv6. Протокол IPv6 работает на каждом канале, а не на основе подсети. Вся информация IP-префикса была удалена из объявлений о состоянии канала и из пакета обнаружения приветствия, что сделало OSPFv3 практически независимым от протокола. Несмотря на расширенную IP-адрес до 128 битов в IPv6, указание области и маршрутизатора по-прежнему основывается на 32-битных числах.
OSPF-TE - это расширение OSPF, расширяющее выразительность, позволяющее проектировать трафик и использовать его в не-IP-сетях. Используя OSPF-TE, можно обмениваться дополнительной дополнительной информацией топологии, используя непрозрачные LSA, несущие элементы тип-длина-значение. Эти расширения позволяют OSPF-TE полностью работать вне полосы пропускания сети уровня данных. Это означает, что его также можно использовать в сетях, отличных от IP, например в оптических.
OSPF-TE используется в сетях GMPLS как средство описания топологии, по которому могут быть установлены пути GMPLS. GMPLS использует свои собственные протоколы настройки пути и пересылки после получения полной карты сети.
В протоколе резервирования ресурсов (RSVP) OSPF-TE используется для записи и лавинной рассылки резервирований пропускания, сигнализируемых RSVP, для путей с коммутацией меток в базе данных состояний каналов.
RFC 3717 документы работают с оптической маршрутизацией для IP на основе расширений OSPF и IS-IS.
Протокол Multicast Open Shortest Path First (MOSPF) является расширением OSPF для поддержки многоадресной маршрутизации. MOSPF позволяет маршрутизаторам обмениваться информацией о членстве в группах.
В множестве широковещательных сетей с множественным доступом между соседними широковещательными пакетами приветствуется динамически с использованием многоадресных пакетов приветствия на 224.0.0.5. DR и BDR обычно выбираются и функционируют нормально.
Для нешироковещательных сетей с следующим доступом (NBMA) проверенные два режима:
Cisco определила следующие три дополнительных режима для OSPF в топологии NBMA:
OSPF - это широко распространенный протокол маршрутизации, который может объединить сеть за несколько секунд и отсутствие петель на пути. Это позволяет сделать политику в отношении распределения маршрутов, которые могут быть предоставлены локально, для распределения нагрузки и для выбора импорта маршрутов. IS-IS, напротив, может быть настроено для снижения накладных расходов в стабильной сети, что чаще встречается в ISP, чем в корпоративных сетях. Есть несколько исторических случайностей, которые сделали IS-IS предпочтительным IGP для интернет-провайдеров, но сегодня интернет-провайдеры вполне могут выбрать использование функций теперь эффективных реализаций OSPF, предварительно рассмотрев плюсы и минусы IS-IS в средах поставщиков услуг..
OSPF может обеспечить лучшее распределение нагрузки по внешним ссылкам, чем другие IGP. Когда маршрут по умолчанию к ISP вводится в OSPF из нескольких ASBR как внешний маршрут типа I и указана такая же внешняя стоимость, другие маршрутизаторы будут переходить к ASBR с наименьшей стоимостью пути из его местоположения. Это можно настроить дополнительно, изменив внешнюю стоимость. Если маршрут по умолчанию от разных ISP вводится с разными внешними затратами, как внешний маршрут типа II, более дешевый по умолчанию становится основным выходом, а более дорогой становится только резервным.
Единственный реальный ограничивающий фактор, который может заставить основных интернет-провайдеров выбирать IS-IS вместо OSPF, - это наличие сети с более чем 850 маршрутизаторами.