понедельник, 11 ноября 2013 г.

Коротко об IS-IS



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 Identier (AFI)) – определяет интерпретацию остальной части идентификатора области, в частности значение 49 указывает на приватную адресацию (Private addressing).
The System-ID (идентификатор системы) (уникальная метка, идентифицирующая маршрутизатор в сети. В данный момент наилучшей практикой считается получение данного идентификатора из IP адреса лупбэка)
• The NET Selector (NSEL) (В ISIS всегда должен быть равен нулю, иначе соседство не устанавливается. Можно сравнить с полем «протокол» (protocol) в загаловке IP пакета).
 
IOS conguration
New-York# show running-conguration

[… ]

router isis

net 49.0cf8.0001.1930.8322.3228.00

[… ]



JUNOS conguration
hannes@London> show conguration

[…]

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 

Комментариев нет:

Отправить комментарий