Открыть сервис

IS-IS

IS-IS (Intermediate System to Intermediate System) — это протокол динамической маршрутизации, используемый для обмена информацией о маршрутах между маршрутизаторами (промежуточными системами) в автономной системе (AS). Относится к классу протоколов внутренних шлюзов (IGP) и работает на основе алгоритма состояния каналов (link-state). В отличие от многих других протоколов, IS-IS изначально разрабатывался для работы в сетях с эталонной моделью OSI, но впоследствии был адаптирован для поддержки протокола IP (включая IPv4 и IPv6). IS-IS широко применяется в крупных корпоративных и провайдерских сетях, особенно в магистральных сегментах интернета, благодаря своей масштабируемости, надёжности и гибкости.

История

Протокол IS-IS был разработан в конце 1980-х годов организацией Digital Equipment Corporation (DEC) как часть стека протоколов DECnet Phase V. Изначально он предназначался для маршрутизации в сетях, построенных на основе эталонной модели OSI (Open Systems Interconnection). В 1990 году протокол был стандартизирован Международной организацией по стандартизации (ISO) в документе ISO 10589.

В начале 1990-х годов, с ростом популярности стека TCP/IP, возникла необходимость адаптировать IS-IS для маршрутизации IP-трафика. В 1992 году вышла спецификация RFC 1195, которая определила расширение протокола, получившее название Integrated IS-IS (или Dual IS-IS). Это расширение позволило IS-IS одновременно передавать информацию о маршрутах для протоколов OSI и IP, что сделало его конкурентом протоколу OSPF (Open Shortest Path First).

В 2000-х годах IS-IS получил поддержку IPv6 через расширения, описанные в RFC 5308. В последующие десятилетия протокол продолжал развиваться: были добавлены механизмы для работы с трафик-инжинирингом (MPLS-TE), сегментной маршрутизацией (Segment Routing) и другими современными технологиями. На сегодняшний день IS-IS остаётся одним из ключевых протоколов маршрутизации в крупных сетях, особенно в сетях операторов связи.

Основные принципы работы

IS-IS относится к протоколам состояния каналов (link-state). Каждый маршрутизатор (промежуточная система, IS) в сети собирает информацию о своих соседях и состоянии подключённых к нему каналов. Эта информация распространяется по всей сети в виде специальных сообщений — LSP (Link State PDU). На основе полученных LSP каждый маршрутизатор строит полную карту топологии сети (базу данных состояния каналов, LSDB) и вычисляет кратчайшие пути до всех известных сетей с помощью алгоритма SPF (Shortest Path First), также известного как алгоритм Дейкстры.

Иерархическая структура

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

  • Level 1 (L1) — внутренняя маршрутизация внутри одной области (area). Маршрутизаторы L1 знают топологию только своей области и передают трафик к другим областям через ближайший маршрутизатор L1/L2.
  • Level 2 (L2) — маршрутизация между областями. Маршрутизаторы L2 образуют магистраль (backbone) и обмениваются информацией о маршрутах к другим областям.
  • Level 1/2 (L1/L2) — маршрутизаторы, которые работают одновременно на обоих уровнях, выступая в роли шлюзов между областями.

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

Типы пакетов

IS-IS использует три основных типа пакетов (PDU — Protocol Data Unit):

  • Hello PDU (IIH — IS-IS Hello) — используются для обнаружения соседей и поддержания смежности (adjacency). Отправляются периодически на все интерфейсы.
  • Link State PDU (LSP) — содержат информацию о состоянии каналов маршрутизатора (список соседей, метрики, префиксы IP-сетей). Распространяются по всей сети с помощью механизма флудинга (flooding).
  • Sequence Number PDU (SNP) — используются для подтверждения получения LSP и синхронизации баз данных. Делятся на частичные (PSNP) и полные (CSNP).

Сравнение с OSPF

IS-IS и OSPF — два наиболее распространённых протокола состояния каналов в современных сетях. Несмотря на схожие принципы работы, они имеют ряд существенных отличий:

ХарактеристикаIS-ISOSPF
СтандартизацияISO (10589), затем IETF (RFC)IETF (RFC 2328, 5340)
Модель сетиOSI (CLNP)IP (TCP/IP)
ИерархияДвухуровневая (L1, L2)Многоуровневая (backbone area 0, обычные области)
Тип сетиШироковещательная, точка-точкаШироковещательная, NBMA, точка-точка, точка-многоточка
Выбор DRDIS (Designated IS) на широковещательных сетяхDR (Designated Router) и BDR (Backup DR)
МетрикиПо умолчанию 10 (для 64-битных — 1-16777215)Стоимость (cost), по умолчанию 100 / пропускная способность
Поддержка IPv6Через расширения (RFC 5308)Встроенная (OSPFv3)
ГибкостьВысокая (легко расширяется через TLV)Средняя (расширения через опции)

Основное практическое преимущество IS-IS — его гибкость и расширяемость за счёт использования формата TLV (Type-Length-Value). Это позволяет добавлять новые возможности (например, поддержку Segment Routing) без изменения базового протокола. Кроме того, IS-IS считается более стабильным и масштабируемым в очень больших сетях, так как он менее чувствителен к изменениям топологии.

Применение

IS-IS широко используется в сетях операторов связи (ISP) и крупных корпоративных сетях, где требуется высокая надёжность и масштабируемость. Основные сценарии применения:

  • Магистральные сети (backbone) — IS-IS часто используется в качестве IGP на магистральных маршрутизаторах, особенно в сочетании с MPLS (Multiprotocol Label Switching) и MPLS-TE (Traffic Engineering).
  • Центры обработки данных (ЦОД) — в крупных ЦОД, где требуется быстрое сходимость (convergence) и поддержка больших объёмов маршрутной информации.
  • Сети с Segment Routing — IS-IS является одним из основных протоколов для реализации Segment Routing (SR-MPLS и SRv6), так как его архитектура TLV позволяет легко передавать информацию о сегментах.
  • Сети с поддержкой IPv6 — благодаря расширениям, IS-IS может использоваться для маршрутизации как IPv4, так и IPv6 трафика в одной сети.

Интересные факты

  • IS-IS является одним из немногих протоколов маршрутизации, который был разработан для модели OSI, но успешно адаптирован для TCP/IP. Это делает его уникальным примером кросс-протокольной совместимости.
  • В отличие от OSPF, IS-IS не требует настройки идентификатора маршрутизатора (Router ID) — он использует адрес сетевого уровня OSI (NET — Network Entity Title), который может быть произвольным.
  • Протокол IS-IS поддерживает 64-битные метрики, что позволяет использовать его в сетях с очень высокой пропускной способностью (например, 100 Гбит/с и выше) без потери точности.
  • IS-IS является стандартом де-факто для многих крупных интернет-провайдеров, включая Level 3, CenturyLink, NTT Communications и другие.

Источники

  1. ISO 10589:2002 — "Intermediate System to Intermediate System (IS-IS) Intra-Domain Routing Protocol".
  2. RFC 1195 — "Use of OSI IS-IS for Routing in TCP/IP and Dual Environments".
  3. RFC 5308 — "Routing IPv6 with IS-IS".
  4. RFC 5120 — "M-ISIS (террористическая организация, запрещена в РФ): Multi Topology (MT) Routing in Intermediate System to Intermediate Systems (IS-ISs)".
  5. «Routing TCP/IP, Volume 1» (Jeff Doyle, Jennifer Carroll) — Cisco Press, 2005.
  6. «IS-IS: Network Design and Implementation» (Hannes Gredler, Walter Goralski) — Cisco Press, 2005.

BFOmetr — база данных и аналитика по компаниям России.

На главную BFOmetr →