ISIS (Intermediate System to Intermediate
System) – протокол динамической маршрутизации. Относится наряду с OSPF к так называемым link-state протоколам, то
есть хранит топологию сети полностью.
Одно из главных отличий ISIS от
других протоколов маршрутизации состоит в том, что он работает на втором (data
link) уровне модели OSI, следовательно не требует действительного адреса
интерфейса для передачи сообщений.
Использует инкапсуляцию 802.3.
Для уменьшения нагрузки на
маршрутизаторы, в ISIS реализовано деление автономной системы на области
(area), однако роутеры на границах областей принадлежат только одной области, а
не обеим, как в OSPF. Для того, чтобы маршрутизаторы, принадлежащие к разным
областям могли устанавливать соседство (adjacency) в ISIS реализована концепция уровней (Levels):
Для каждого линка существует
небольшая метка (tag), определяющая уровень линка: L1, L2, L1L2. Каждый
маршрутизатор хранит две отдельные топологии: L1 и L2.
Все маршрутизаторы соеденинные
линками L1 должны иметь одинаковые идентификаторы области (Area ID) чтобы установить
соседство. Для L2 линков, которые по сути являются основой (backbone) Area ID не важен, единственное условие состоит в том, что L2
топология должна быть неразрывной и не-L2 маршрутизаторы должны быть
изолированы от остальных.
Каждый линк может одновременно
участвовать в L1 и L2 топологии.
Каждый маршрутизатор, участвующий
в L2 топологии добавляет ATT (attachment) бит к своим сообщениям, а L1
маршрутизаторы в пределах области высчитывают кратчайший путь до L1L2
маршрутизатора и устанавливают в свою таблицу маршрутизации соответствующий
машрут по умолчанию (default route), соответственно L1 маршрутизатор "знает" только путь к маршрутизаторам в пределах L1 области. По такому же принципу устроены NSSA
области в OSPF.
В заголовке ISIS может содержаться более одного Area ID (как правило не более
трех). ISIS собирает данные об Area ID (advertised area id) с обоих концов
линка, и, если находится хотя бы одно совпадение соседство устанавливается. Пользуясь этим принципом можно не прерывая
связи разбивать объединять области (сначала конфигурируется общая область, затем
удаляются более мелкие), соединять области или менять их нумерацию.
Информация о топологии хранится в
LSDB (Link-State Database), дляка каждого уровня (L1 и L2) своя база.
Чтобы отобразить содержимое базы
данных используется команда
show isis database (как в IOS так и в JUNOS)
Адресация
ISIS использует систему адресов
ISO, отличную от IP. Для каждого маршрутизатора достаточно одного адреса.
Адреса (NET) состоят из трех
частей:
• The Area-ID (идентификатор области) (Первый байт –
идентификатор семейства адресов (Address Family Identifier (AFI)) – определяет интерпретацию остальной части идентификатора
области, в частности значение 49 указывает на приватную адресацию (Private
addressing).
• The System-ID (идентификатор системы) (уникальная
метка, идентифицирующая маршрутизатор в сети. В данный момент наилучшей
практикой считается получение данного идентификатора из IP адреса лупбэка)
• The NET Selector (NSEL) (В ISIS
всегда должен быть равен нулю, иначе соседство не устанавливается. Можно
сравнить с полем «протокол» (protocol) в загаловке IP пакета).
IOS configuration
New-York# show
running-configuration
[… ]
router isis
net
49.0cf8.0001.1930.8322.3228.00
[… ]
JUNOS configuration
hannes@London>
show configuration
[…]
interfaces {
lo0 {
unit 0 {
family inet {
address
172.31.208.1/32;
}
family iso {
address 49.0cf8.0001.1930.8322.3228.00;
}
}
}
}
[…]
Базовый конфиг для IOS:
R1:
interface Loopback0
ip address 1.1.1.1 255.255.255.0
ip router isis
!
interface
FastEthernet0/0
ip address 10.1.1.1 255.255.255.0
ip router isis
duplex auto
speed auto
!
router isis
net 12.1111.1111.1111.00
R2:
interface Loopback0
ip address 2.2.2.2 255.255.255.0
ip router isis
!
interface
FastEthernet0/0
ip address 10.1.1.2 255.255.255.0
ip router isis
duplex auto
speed auto
!
router isis
net 12.2222.2222.2222.00
Для просмотра соседей
используется команда
show isis neighbors (IOS)
show isis adjacency (JunOS)
Hello соощения
Каждое Hello сообщение сбрасывает
holddown таймер (по умолчание 27 секунд в JunOS и 30 секунд в IOS). Уникальная
для ISIS черта: каждый маршрутизатор может устанавливать собственный hold
таймер.
Источники:
Hannes Gredler and Walter Goralski “The Complete IS-IS Routing Protocol”
JNCIA Study Guide
Hannes Gredler and Walter Goralski “The Complete IS-IS Routing Protocol”
JNCIA Study Guide
Комментариев нет:
Отправить комментарий