IS-IS

S Vikipedije, slobodne enciklopedije

IS-IS (engl. Intermediate System to Intermediate System) je mrežni protokol rutiranja. Osnovna uloga ovog protokola je računanje najkraće putanje za mrežni paket unutar autonomnog sistema, a ne između autonomnih sistema. Zbog ovoga, IS-IS je interni protokol rutiranja IGP (engl. Interior Gateway Protocol). Zasniva se na Dajkstrinom algoritmu.

Istorija[uredi | uredi izvor]

Začet od firme DEC (engl. Digital Equipment Corporation), prve specifikacije protokola su bile publikovane 1987. godine pod standardom ISO 10589. Ovaj dokument je nanovo publikovan u specifikaciji RFC 1142[1].

U to vreme, IS-IS nije imao nikakvu vezu sa Internet protokolom (IP). Bio je korišćen u OSI okruženju sa CLNP protokolom (engl. Connectionless Network Protocol) [2]. Dve godine nakon definicije podrške IP steka u RFC 1195 1990., Cisco Systems je implementirao Integrated IS-IS ili Dual IS-IS [3]. Ova dual-stek verzija podržava prenos oba tipa paketa IP i CLNP.

IS-IS je kroz vreme doživeo važna unapređenja. Od 1999. IETF je preuzeo odgovornost za njegovu standardizaciju. Dva glavna napretka koja potiču od ove grupe su: definicja strukture TLV (engl. Type-Length-Value) i precizna objašnjenja operacionih funkcija[4], koja su omogućila homogenije implemetacije protokola. Do tada su proizvođači imali veću slobodu za različite interpretacije.

Zone[uredi | uredi izvor]

IS-IS protokol je osmišljen da se koristi u složenim mrežama koje se mogu dinamički razvijati. Iz tog razloga, autonomni sistem, to jest IS-IS mrežni domen, organizovan je hijerarhijski po zonama. To omogućava bolju kontrolu domena, manju tabelu ruta (mreža) i samim tim brže funkcionisanje rutera.

IS-IS zone se mogu smatrati kao mali potskupovi autonomnog sistema. Pritom, zone su mrežni domeni u tehničkom, a ne administrativnom smislu, jer nisu rezultat polisa, već su jednostavno granica jedne grupe rutera.

IS-IS ruter može funkcionisati unutar jedne zone ili između više zona. Analogija se može pronaći u odnosu između IGP-EGP protokola rutiranja. Za razliku od OSPF rutera, IS-IS ruter pripada jednoj i samo jednoj zoni.

Nivoi[uredi | uredi izvor]

IS-IS ruter operiše y sledećim nivoima:

  • Nivo 0 : rutiranje sa krajnjim uređajem (na primer server) ES (engl. End System)
  • Nivo 1 : (N1) unutar zone
  • Nivo 2 : (N2) između zona
  • Nivo 3 : između mrežnih domena, slično BGP protokolu

Većina implementacija ovog protokola podržava samo nivoe 1 i 2. IS-IS ruter komunicira isključivo sa ruterima koji su u njegovom nivou. Ruteri koji imaju ulogu da operišu u oba nivoa, označeni su sa N1-2.

  • Funkcije N1 rutera su ograničene na jednu zasebnu zonu. Paketi koji su upućeni ka mreži van zone, usmereni su do prvog N1-2 rutera.
  • Rutiranje među zonama vrši N2 ruter. On nema topološke detalje unutar jedne zone.
  • N1-2 ruter je posrednik između rutera N1 i N2. On poseduje informacije oba nivoa, ima karakteristike i sposobnosti oba tipa rutera.

Susedstvo[uredi | uredi izvor]

Svi ruteri izgrađuju baze u kojima su zapisane informacije o topologiji mreže. Ruteri istog nivoa imaju identičnu "mapu" mreže. Kako bi se ove topološke baze izgradile, potrebno je prvo poznavanje neposrednih veza. Tako se IS-IS ruter uz pomoć HELLO protokola prvo upozna sa svojim direktno vezanim IS-IS susedima.

Neposredan IS-IS sused mora biti istog nivoa. Takođe, on deli istu mrežu (IP ili CLNP). Drugim rečima, paket od suseda do suseda pređe samo jedan domen emisije.

HELLO[uredi | uredi izvor]

HELLO protokol ima dve osnovne uloge: otkrivanje IS-IS suseda i održavanje susedskih veza.

Stvaranje susedske veze se vrši u tri etape:

  • Ruter A šalje prvu HELLO poruku inicijacije.
  • Primalac B šalje potvrdu o prvoj primljenoj poruci.
  • Konačno, inicijator A potrvđuje uspostavljenu susedsku vezu trećim paketom.

Struktura HELLO paketa zavisi od tipa veze:

  • LAN Nivo 1
  • LAN Nivo 2
  • Point-to-Point

Pseudo čvor[uredi | uredi izvor]

Bez pseudo čvora
Sa pseudo čvorom

IS-IS protokol podržava dva tipa mreže: lokalnu LAN mrežu i Point-to-Point mrežu.

Na lokalnoj mreži tipa Eternet svi ruteri su dosežni u jednom koraku (skoku). Ruter treba da sklopi susedske odnose sa svim ruterima koji dele njegov mrežni segment. Dakle, svaki ruter mora sklopiti n-1 veza, gde n predstavlja ukupan broj rutera. Ovo je ilustrovano na slici Bez pseudo čvora.

Moguće je optimizovati ukupan broj konekcija, tako što se svi susedski odnosi ostvaruju preko jednog "imaginarnog" čvora, to jest imaginarnog rutera (slika Sa pseudo čvorom). Ovim vezivanjem na imaginarni ruter, smanjuje se broj konekcija: koliko ima rutera u mreži, toliko ima i veza.

DIS[uredi | uredi izvor]

DIS: Izabrani ruter kao pseudo čvor

DIS (engl. Designated Intermediate System) je izabrani IS-IS ruter čija je odgovornost da vrši dodatne funkcije u ime pseudo čvora. To znači da se procesi pseudo čvora vrše na izabranom ruteru, paralelno sa procesima ovog domaćina.

Do biranja DIS rutera dolazi na lokalnim mrežama (LAN) od samog pokretanja procesa IS-IS. U funkciji najviše podešenog prioriteta, bira se odgovorni ruter. U odsustvu prioriteta, uzima se za kriterijum najveća brojna veličina MAC fizičke adrese. Obzirom da su topološke baze odvojene po nivou (N1 i N2), tako se i odabir vrši nezavisno za svaki nivo. Na primer, N1-2 ruter može biti izabran dva puta kao DIS - u oba nivoa.

Pri svakoj promeni mrežne topologije, proces biranja se ponavlja. To znači da ukoliko se poveže novi ruter sa većim prioritetom, on automatski preuzima ulogu odgovornog rutera. Takođe, ukoliko se odgovorni ruter isključi iz mreže, ne postoji njegov zamenik koji bi preuzeo odgovornost, već se mora izvršiti nova selekcija. Ove dve karakteristike, preemptivnost i nepostojanje zamenika deo su ključnih razlika u odnosu na OSPF protokol.

Struktura Paketa[uredi | uredi izvor]

IS-IS komunicira uz pomoć tri tipa paketa:

  • Hello
  • LSP
  • SNP

Struktura svakog paketa je podeljena u tri polja TLV (engl. Type / Length / Value):

  • Type: identifikuje tip paketa
  • Length: veličina podataka koju nosi paket
  • Value: sadrži podatke

Metrike[uredi | uredi izvor]

Četiri metrike su definisane[1]:

  • Osnovna, podrazumevana metrika (engl. Default)
  • Zakašnjenje (engl. Delay) : kašnjenje paketa u prenosu
  • Trošak (engl. Expense) : monetarna vrednost mrežnog prenosa
  • Greška (engl. Error) : verovatnoća pojavljivanja greške u prenosu podataka

Od ovih metrika, koristi se pre svega osnovna metrika. Ona se izražava u pozitivnom, celom broju i najčešće označava propusni kapacitet veze. Njena je vrednost proizvoljno dodeljena IS-IS vezama od strane administratora. Što je vrednost manja, to znači da je veza bolja.

Topološka baza podataka[uredi | uredi izvor]

Pored toga što IS-IS ruter ažurira informacije o svojim susedskim vezama, on takođe deli te informacije sa svim drugim ruterima iz svoje zone (istog nivoa). Zahvaljujući ovoj raspodeli informacija, izgradi se topološka baza podataka. Ta baza je globalna vizija mreže, jednaka kod svih rutera koji su učestvovali u njenom formiranju. Uz pomoć Dajkstrinog algoritma, iz ove se baze izvedu zasebne tabele rutiranja, jedinstvene za svaki ruter.

LSP[uredi | uredi izvor]

LSP (engl. Link-State Protocol Data Unit), to jest paketi stanja veze, kreiraju i održavaju topološke baze podataka. Od pokretanja protokola prvo se vrši istovremena emisija paketa. Ona ima za cilj da poplavi zonu (engl. flooding) kako bi svaki ruter dobio sve topološke podatke.

Obzirom da je IS-IS podeljen po nivoima, LSP paketi su odgovorni za postojanje dve topološke baze i dele se na:

  • LSP Nivo 1
  • LSP Nivo 2

LSP nosi u sebi više od puke informacije o stanju veze. On sadrži identifikaciju rutera, svoj redni broj paketa, svoj životni vek, kao i rute (adrese mreža) sa njihovim metrikama.

SNP[uredi | uredi izvor]

Uloga SNP paketa (engl. Sequence Number Packets) je sinhronizacija toploške baze podataka. Razmenjuje se u sledećim formatima:

  • CSNP (engl. Complete Sequence Number Packets)
    • CSNP Nivo 1
    • CSNP Nivo 2
  • PSNP (engl. Partial Sequence Number Packets)
    • PSNP Nivo 1
    • PSNP Nivo 2

CSNP, ili kompletni SNP, služi za prenos svih zaglavlja topološke baze podataka.

PSNP, ili parcijalni SNP, služi za:

  • zahtev za noviji LSP paket
  • potvrdu o primljenom LSP paketu

Adresiranje[uredi | uredi izvor]

Nezavisno od protokola mreže (IP ili CLNP), IS-IS koristi ISO adresiranje. Od samog početka, ovaj protokol rutiranja je predviđen za podršku velikog adresnog prostora. Tako jedna ISO adresa ima 160 bita, što je za celih 32 bita više od IPv6 adrese.

NSAP[uredi | uredi izvor]

NSAP (engl. Network Services Access Point) je mrežna adresa koja na jedinstven način identifikuje jedan sistem OSI (engl. Open Systems Interconnection). Podeljena je u dva semantička dela: IDP i DSP [5]:

Ova osnovna podela adrese ima hijerarhijski značaj:

Adresa je dalje podeljena u šest polja. Ovo je predstavljeno u tabeli ispod:

Struktura NSAP adrese
IDP DSP
AFI IDI HO-DSP SID NSEL
  • AFI (engl. Authority Format Identifier) - administrativno telo koje dodeljuje adresu i format IDI polja
  • IDI (engl. Initial Domain Identifier) - OSI mrežni domen i telo koje dodeljuje DSP vrednosti
  • HO-DSP (engl. High Order DSP) - označava IS-IS zonu
  • SID (engl. System ID) - jednistvena identifikacija sistema (često je to MAC fizička adresa)
  • NSEL (engl. NET Selector) - ova vrednost označava servis višeg sloja OSI modela

NET[uredi | uredi izvor]

Identifikacioni broj IS-IS rutera

IS-IS ruter koristi jednu NET (engl. Network Entity Title) adresu za identifikaciju na mreži. Ova virtuelna adresa nema nikakvu vezu sa fizičkim interfejsima rutera (ilustrovano na grafiku desno).

NET adresa je zapravo NSAP adresa čije NSEL polje nosi x00 bajt - nula vrednost. Ovo je logično, obzirom da se radi o ruteru koji ne funkcioniše u višim slojevima OSI modela.

Interna funkcija protokola[uredi | uredi izvor]

Sledeće tabele, to jest baze podataka su izgrađene u toku operacije IS-IS protokola:

  • Circuit Database : baza fizičkih veza
  • Adjacency Database : baza suseda (nivoi 1 i 2)
  • Link State Database : topološka baza (nivoi 1 i 2)
  • Shortest Paths Tables : privremene tabele koje se koriste tokom računanja tabele rutiranja
  • Forwarding Database : tabele rutiranja

Operacija protokola je organizovana u četiri procesa:

  • Update process : stvaranje, podela i ažuriranje topološke baze
  • Forwarding process : usmerivanje (rutiranje) podataka
  • Receive process : prihvatanje podataka i u funkciji njihovog tipa, prosleđivanje jednom od dva prethodna procesa
  • Decision process : izgradnja tabele rutiranja pomoću Dajkstrinog algoritma

Reference[uredi | uredi izvor]

  1. ^ a b RFC 1142
  2. ^ RFC 1195
  3. ^ Intermediate System-to-Intermediate System Protocol  [IP Routing] - Cisco Systems
  4. ^ Hannes Gredler, Walter Goralski. The Complete IS-IS Routing Protocol. Springer (December 2004). ISBN 1-85233-822-9. стр. 540.
  5. ^ INTERNATIONAL STANDARD ISO/IEC 8348:2002

Vidi još[uredi | uredi izvor]