Поиск по этому блогу

18.08.2016

IS-IS vs OSPF

IS-IS и OSPF относятся к link-state протоколам. Вот краткое сравнение:
  • Оба поддерживают Bidirectional Forwarding Detection (BFD) и могут обеспечивать сходимость до 50мс в зависимости от аппаратной реализации оборудования;
  • Используя ресурсы CPU, оба протокола работают одинаково быстро, так как применяется один и тот же алгоритм Дейкстры. Однако, настройки позволяют из базы IS-IS исключить connected сети и оптимальные пути для IS-IS будут быстрее считаться. При современном уровне производительности процессоров это преимущество незначительно;
  • Оба протокола поддерживают MPSL-TE и какой-то один из них используется в качестве IGP в операторских сетях. Дополнительно применяется протокол BGP.
Таким образом, выбор сводится к IS-IS+BGP vs OSPF+BGP. IS-IS - это изначально не ip-протокол, но в него был добавлен необходимый для маршрутизации в ip-сетях функционал. Есть небольшие ограничения, которые могут подтолкнуть отказаться от IS-IS в пользу OSPF или к использованию в сетях обоих протоколов маршрутизации одновременно. Так, например, IS-IS из всех возможных туннелей будет работать только через GRE, но не через GRE поверх IPSEC. Пример для понимания лучше привести про SRX.
Работает через gre, не работает через ipip-туннели.
user@srx# set interfaces gr-0/0/0.0 family ?     
Possible completions:
+ apply-groups Groups from which to inherit configuration data
+ apply-groups-except Don't inherit configuration data from these groups
> ccc Circuit cross-connect parameters
> inet IPv4 parameters
> inet6 IPv6 protocol parameters
> iso OSI ISO protocol parameters
> mpls MPLS protocol parameters
> tcc Translational cross-connect parameters

user@srx# set interfaces ip-0/0/0.0 family ?
Possible completions:
+ apply-groups Groups from which to inherit configuration data
+ apply-groups-except Don't inherit configuration data from these groups
> ccc Circuit cross-connect parameters
> inet IPv4 parameters
> inet6 IPv6 protocol parameters
> mpls MPLS protocol parameters
> tcc Translational cross-connect parameters
IS-IS не работает через gre туннель поверх ipsec. С одной стороны это логично, так как понадобился бы какой-нибудь isosec.
user@srx# set interfaces st0.0 family ?                                          
Possible completions:
+ apply-groups Groups from which to inherit configuration data
+ apply-groups-except Don't inherit configuration data from these groups
> inet IPv4 parameters
> mpls MPLS protocol parameters
> vpls Virtual private LAN service parameters
IS-IS может работать через gre с шифрованием как в примере ниже.
interface Tunnel0
ip address 10.2.3.4 255.255.255.254
ip mtu 1500
ip router isis
ip tcp adjust-mss 1360
isis metric 100
tunnel source 9.8.7.6
tunnel destination 5.4.3.2
tunnel protection ipsec profile GRE-profile

Кстати, до сих пор в некоторых мультиплексорах синхронных сетей можно увидеть clns-адресацию.