Routing & Switching

Protokół IS-IS: Wprowadzenie do protokołu sieciowego ISO

Przewodnik po protokole IS-IS, jego zastosowanie w routingu IP oraz konfigurację w dużych sieciach komputerowych.
Protokół IS-IS: Wprowadzenie do protokołu sieciowego ISO
W: Routing & Switching, Service Provider

Protokół IS-IS (Intermediate System to Intermediate System) jest kluczowym protokołem sieciowym wykorzystywanym w dużych sieciach korporacyjnych i u dostawców usług internetowych.

W tym artykule poznasz podstawowe koncepcje IS-IS, jego działanie oraz praktyczne zastosowania. Nauczysz się, jak skonfigurować IS-IS w swojej sieci i zrozumiesz jego główne zalety w porównaniu z innymi protokołami routingu.

Czym jest protokół IS-IS?

Intermediate System to Intermediate System (IS-IS) został stworzony przez firmę DEC jako część DECnet, a w 1992 roku został ustandaryzowany przez ISO dla frameworku sieciowego Open Systems Interconnection (OSI).

IS-IS jest hybrydowym protokołem stanu łącza, który działa jako protokół stanu łącza w obrębie obszaru oraz jako protokół wektora odległości pomiędzy obszarami. W przeciwieństwie do OSPF, IS-IS funkcjonuje na warstwie łącza danych, co może prowadzić do nieporozumień. Jak to możliwe?

IS-IS pierwotnie zaprojektowano dla OSI, a nie dla TCP/IP, i jest bezpośrednio osadzony w ramkach warstwy drugiej.

Adresacja w IS-IS

Pomimo że IS-IS został zmodyfikowany do współpracy ze stosem TCP/IP, nadal zawiera wiele elementów charakterystycznych dla OSI. Dla przykładu,RouterID, który w protokołach routingu odpowiada za jednoznaczne określenie urządzenia, tutaj nazywa się NET (Network Entity Title).

Spójrzmy na adres NET: 49.0001.0000.0000.0001.00.

  1. Identyfikator rodziny adresów (AFI): Pierwsze 8 bitów (49) oznacza lokalny format adresowania. Większość firm używa 49.
  2. Obszar: Następne 16 bitów (0001) to obszar, który można zostawić pusty (49.0000.0000.0001.00) lub przypisać mu konkretny numer, jak 0001 lub 501.
  3. Identyfikator systemu: Kolejne 48 bitów to identyfikator systemu w formacie 12 cyfr szesnastkowych z dwoma kropkami. Popularną praktyką jest konwersja adresu IP, który w innym przypadku stanowił router ID.
  4. Pole SEL: Ostatnie pole o długości 8 bitów identyfikuje usługę na węźle docelowym, która przetwarza dane.

Obszary IS-IS

IS-IS, podobnie jak OSPF, pozwala na podzielenie jednego systemu autonomicznego na mniejsze obszary. Jednak w przeciwieństwie do OSPF nie ma tu koncepcji gwiazdy, z centralnym obszarem 0 oraz przylegającymi do niego obszarami.

W IS-IS wyróżniamy dwa typy poziomów:

  • Level 1 -router wewnątrz obszaru. Może komunikować się wyłącznie z innymirouteramiLevel 1.
  • Level 2 -router należący do obszaru backbone. Komunikuje się wyłącznie zrouteramiLevel 2.

W IS-IS router (lub w terminologii OSI Intermediate System) może należeć wyłącznie do jednego typu poziomu. Dlatego istnieje jeszcze trzeci typ, który pełni rolę ABR:

  • Level 1/Level 2 - router, który może komunikować się z routerami Level 1 oraz Level 2.

Dzięki temu możemy tworzyć różne obszary, w których umieścimy routery L1 lub L2. Warunkiem jest, aby na granicy znajdował się router L1/L2, który umożliwi wymianę informacji.

Nawiązywanie sąsiedztwa IS-IS

IS-IS obsługuje sieci broadcast oraz punkt-punkt. Dla każdej sieci rozgłoszeniowej IS-IS wybiera jeden Designated Intermediate System (DIS). W IS-IS nie ma koncepcji zapasowego DIS, a jego obecność nie jest konieczna. Wybór DIS opiera się na następujących kryteriach:

  1. Routerz najwyższym priorytetem interfejsu.
  2. W przypadku remisurouterz najwyższym Subnetwork Point of Attachment (SNPA; adres MAC warstwy łącza danych interfejsu podłączonego do podsieci) ma pierwszeństwo.
  3. Jeśli SNPAs nie mogą być porównane,routerz najwyższym identyfikatorem systemu zostaje ogłoszony zwycięzcą.

DIS ma dwie ważne funkcje:

  • Pomaga routerom w segmencie rozgłoszeniowym synchronizować ich bazę topologii sieci.
  • Przyjmuje rolę samodzielnego obiektu—pseudonoda (wirtualnego routera), aby reprezentować segment rozgłoszeniowy w bazie danych stanu łącza.

W przypadku interfejsu punkt-punkt, w którym IS-IS oczekuje pojedynczego sąsiada, ustanawia sąsiedztwo poprzez proces three-way handshake, a następnie synchronizuje bazy danych stanu łączy.

IS-IS ma trzy możliwe stany sąsiedztwa:

  • Down: To jest początkowy stan, w którym nie otrzymano żadnych komunikatów IS-IS Hello (IIH) od sąsiada.
  • Initializing: Otrzymano IIH od sąsiada, ale istnieje niepewność co do tego, czy sąsiad prawidłowo odbiera IIH tegoroutera.
  • Up: Otrzymano IIH od sąsiada, co potwierdza, że sąsiad prawidłowo odbiera IIH tegoroutera.

Rodzaje Pakietów w Protokole IS-IS

Protokół IS-IS (Intermediate System to Intermediate System) wykorzystuje różne typy pakietów PDU (Protocol Data Units) do wymiany informacji.

IS-IS Hello PDU (IIH)

IS-IS Hello PDU służy do wykrywania i utrzymywania relacji z sąsiadującymirouterami. Jest to odpowiednik Hello pakietów w OSPF, ale z kilkoma istotnymi różnicami:

  • Występują dwa rodzaje Hello PDU:
    • Point-to-Point Hello PDU - używany na łączach punkt-punkt
    • LAN Hello PDU - stosowany w sieciach rozgłoszeniowych, z podziałem na Level 1 i Level 2
  • LAN Hello PDU wykorzystuje dedykowane adresy multicast:
    • Level 1: 01-80-C2-00-00-14
    • Level 2: 01-80-C2-00-00-15
  • Każdy Hello PDU zawiera parametr Hold Time, określający maksymalny czas oczekiwania na kolejny pakiet Hello przed oznaczeniem sąsiada jako niedostępnego

Link-State PDU (LSP)

LSP to pakiety zawierające informacje o stanie łączy i topologii sieci.

  • Zawierają numer sekwencyjny, który jest zwiększany przy każdej zmianie stanu
  • Posiadają pole Remaining Lifetime określające czas życia informacji
  • Są generowane niezależnie dla Level 1 i Level 2
  • Wysyłane są zarówno periodycznie, jak i w przypadku zmian w topologii:
    • Pojawienie się nowego sąsiada
    • Utrata połączenia z sąsiadem
    • Zmiana kosztu łącza

Complete Sequence Number PDU (CSNP)

CSNP pełni rolę mechanizmu synchronizacji baz danych międzyrouterami:

  • Zawiera kompletną listę wszystkich LSP znajdujących się w bazie danychroutera
  • Jest wysyłany periodycznie przez Designated IS (DIS) w sieciach rozgłoszeniowych
  • Generowany jest oddzielnie dla każdego poziomu (Level 1/Level 2)
  • Służy do wykrywania różnic w bazach danych między sąsiadami

Partial Sequence Number PDU (PSNP)

PSNP to mechanizm służący do zarządzania aktualizacjami LSP:

  • Działa podobnie do mechanizmu NACK (Negative Acknowledgment)
  • Używany jest do żądania retransmisji brakujących lub nieaktualnych LSP
  • Potwierdza otrzymanie zaktualizowanych LSP
  • Pomaga w efektywnej synchronizacji baz danych międzyrouterami

Type/Length/Values (TLV)

TLV to elastyczna struktura danych wykorzystywana przez wszystkie typy PDU do przekazywania informacji:

  • Pozwala na przekazywanie różnorodnych informacji:
    • Nazwy hostówrouterów
    • Informacji związanych z MPLS-TE
    • Metryk łączy
    • Adresów IP
    • Parametrów routingu
  • Umożliwia rozszerzanie funkcjonalności protokołu bez modyfikacji jego podstawowej struktury

Podstawowa konfiguracja IS-IS

Do podstawowego działania potrzebujemy dwóch rzeczy: włączyć proces IS-IS poleceniem router isis i zdefiniować NET. W kolejnym kroku należy dołączyć interfejsy poleceniem ip router isis.

Przykładowa topologia:

R1
!
interface Loopback0
 ip address 1.1.1.1 255.255.255.255
 ip router isis 
!
interface Ethernet0/0
 ip address 10.1.2.0 255.255.255.254
 ip router isis 
 isis network point-to-point 
!
router isis
 net 49.0000.0010.0100.1001.00
 is-type level-1
R2
!
interface Loopback0
 ip address 2.2.2.2 255.255.255.255
 ip router isis 
!
interface Ethernet0/0
 ip address 10.1.2.1 255.255.255.254
 ip router isis 
 isis network point-to-point 
!         
interface Ethernet0/1
 ip address 10.2.3.0 255.255.255.254
 ip router isis 
 isis network point-to-point 
!
router isis
 net 49.0000.0020.0200.2002.00
R3
!
interface Loopback0
 ip address 3.3.3.3 255.255.255.255
 ip router isis 
!
interface Ethernet0/1
 ip address 10.2.3.1 255.255.255.254
 ip router isis 
 isis network point-to-point 
!
router isis
 net 49.0000.0030.0300.3003.00
 is-type level-1

Weryfikacja konfiguracji

Sprawdzanie sąsiadów IS-IS

R2#show  isis neighbors 

System Id       Type Interface     IP Address      State Holdtime Circuit Id
R1              L1   Et0/0         10.1.2.0        UP    27       01
R3              L1   Et0/1         10.2.3.1        UP    28       02

Sprawdzanie bazy danych topologii

R2#show  isis database 

IS-IS Level-1 Link State Database:
LSPID                 LSP Seq Num  LSP Checksum  LSP Holdtime/Rcvd      ATT/P/OL
R1.00-00              0x00000002   0x374B                 617/1200      0/0/0
R2.00-00            * 0x00000004   0x183C                 622/*         0/0/0
R3.00-00              0x00000002   0x52D7                 621/1200      0/0/0
IS-IS Level-2 Link State Database:
LSPID                 LSP Seq Num  LSP Checksum  LSP Holdtime/Rcvd      ATT/P/OL
R2.00-00            * 0x00000004   0x7244                 622/*         0/0/0

R2#show  isis database R1.00-00 detail 


IS-IS Level-1 LSP R1.00-00
LSPID                 LSP Seq Num  LSP Checksum  LSP Holdtime/Rcvd      ATT/P/OL
R1.00-00              0x00000002   0x374B                 544/1200      0/0/0
  Area Address: 49.0000
  NLPID:        0xCC 
  Hostname: R1
  Metric: 10         IS R2.00
  IP Address:   1.1.1.1
  Metric: 10         IP 1.1.1.1 255.255.255.255
  Metric: 10         IP 10.1.2.0 255.255.255.254

Przykładowa konfiguracja w CML

Przedstawioną topologię możesz pobrać i uruchomić za darmo w CML.

Jeśli jeszcze nie masz lub nie wiesz, jak zainstalować darmową wersję CML-a, ten tutorial może Cię zainteresować.

Cisco CML Free Tier (za darmo)
Poznaj, w jaki sposób Cisco Modeling Lab 2.8.0 udostępnia bezpłatny dostęp do symulacji sieci z pięcioma urządzeniami. Zobacz, czy to odpowiednie rozwiązanie dla Ciebie!
Napisane przez
Rafał Rudewicz
Pasjonat sieci komputerowych i automatyzacji. CCNP Enterprise & DevNet Specialist. IP/MPLS SME. Dołącz do mnie, aby razem odkrywać fascynujący świat technologii!
Komentarze
Spis treści
Świetnie! Udało ci się pomyślnie zarejestrować.
Witaj z powrotem! Zalogowałeś się pomyślnie.
Pomyślnie subskrybowałeś Inna Sieć.
Twój link wygasł.
Sukces! Sprawdź swoją skrzynkę e-mailową, aby uzyskać magiczny link do logowania.
Sukces! Twoje informacje rozliczeniowe zostały zaktualizowane.
Twoje informacje rozliczeniowe nie zostały zaktualizowane.