T-110.4100 Tietokoneverkot : Reititys sisäverkossa
Teemu Kiviniemi Funet-verkko
CSC – Tieteen tietotekniikan keskus Oy
Luento pohjautuu Sanna Suorannan aiempaan materiaaliin.
7.2.2012
Luennon sisältö
Reititys ja Internetin rakenne Etäisyysvektoriprotokollat
– RIPv2 ja RIPng
Linkkitilaprotokollat
– OSPF, OSPFv3 ja IS-IS
Protokollien vertailu (lyhyesti)
Muita reititysprotokollia (lyhyesti)
Funet
Suomen
korkeakoulujen ja tutkimuksen
tietoverkko
Yli 80 organisaatiota
– Yliopistoja
– Ammattikorkeakouluja – Tutkimuslaitoksia
Noin 350 000 käyttäjää
3
Pakettien kulku Internetissä
Internet on pakettikytkentäinen verkko, joka
koostuu reitittimistä ja niiden välisistä yhteyksistä (linkit).
IP-pakettien otsikkotiedoissa on lähettäjän ja vastaanottajan osoitteet.
Reitittimet välittävät IP-paketteja toisistaan
riippumatta. Paketit voivat kulkea samaan
kohteeseen eri reittejä.
Reititystaulu
Jokainen verkon reititin rakentaa itsenäisesti oman reititystaulun.
– Käytössä olevia reititystauluja voi olla myös enemmän kuin yksi.
Reititystaulussa on reitittimen ”maailmankuva”, eli tieto siitä mihin tiettyyn kohdeosoitteeseen lähetetty paketti tulisi välittää.
– Yhteen kohdeverkkoon voi olla useampia reittejä, jotka voivat olla myös käytössä yhtä aikaa.
– Aktiivinen reitti valitaan usein jonkin annetun
metriikan perusteella: esim. linkin kustannus/etäisyys.
5
Reititystaulu: esimerkki
> show route 193.10.252.19 table inet.0
inet.0: 392571 destinations, 794302 routes (391340 active, 3 holddown, 1286 hidden) + = Active Route, - = Last Active, * = Both
193.10.252.0/24 *[BGP/170] 3w5d 10:32:28, MED 100, localpref 95 AS path: 2603 I
> to 109.105.102.65 via ae1.0
[BGP/170] 2w2d 03:17:05, MED 100, localpref 95, from 193.166.5.21 AS path: 2603 I
> to 193.166.255.94 via ae0.0
Staattinen ja dynaaminen reititys
Reitittimen ylläpito voi lisätä reititystauluun reittejä käsin: staattinen reititys
– Yhteyden (linkin) katketessa verkon ylläpito joutuu muuttamaan reitin käsin.
Reititysprotokollien avulla reititystaulu voidaan rakentaa dynaamisesti.
– Reitittimet jakavat tietoa omista verkoistaan ja yhteyksistään muille reitittimille. Jokainen reititin rakentaa tiedon pohjalta oman reititystaulun.
– Yhteyden katketessa voidaan laskea uusi reitti automaattisesti.
7
Paketinvälitys
Reititin käsittelee jokaisen vastaanotetun paketin erikseen.
Paketin kohdeosoitetta verrataan aktiiviseksi valittuihin reitteihin, ja sen perusteella valitaan minne paketti tulee välittää.
– Paketin Time to Live- (IPv4) tai Hop Limit-kentän (IPv6) arvoa lasketaan.
Valitun reitin kohteen (Next Hop) linkkikerroksen osoite (esim. Ethernet MAC) selvitetään, ja
paketti paketoidaan linkkikerroksen kehykseen
ja välitetään eteenpäin.
8Internetin rakenne
Internet koostuu itsenäisistä verkoista, autonomisista järjestelmistä: autonomous systems (AS).
R R R
R
R R
R
R R
R
R
R
R
AS1
AS2
AS3
AS4
R R
9
Autonomiset järjestelmät (Autonomous Systems, AS)
Autonomiset järjestelmät ovat itsenäisiä verkkoja, joilla on oma hallittu reitityssäännöstö.
– Autonomiset järjestelmät on numeroitu. AS-numeroavaruutta hallinnoi IANA, joka myöntää numeroavaruudesta palasia edelleenjaettavaksi alueellisille osoitehallintaorganisaatioille (RIR) - Euroopassa RIPE NCC.
Tyypillisesti yksi AS = yksi operaattori tai muu
organisaatio, mutta yhdellä operaattorilla voi olla myös useita AS-numeroita.
– Funetin AS-numero on 1741.
Reititys ja AS:t
AS:ien sisällä ja AS:ien välillä käytetään erilaisia reititysprotokollia.
AS:ien välillä käytetään tyypillisesti BGP:tä,
jonka avulla reittienvaihtoa toisten AS:ien kanssa voidaan tehdä hallitusti, paikallisesti valittujen ja toisen AS:n kanssa sovittujen käytäntöjen
mukaan.
Yhden AS:n sisällä kaikki reitittimet ovat AS:n omassa hallinnassa, joten käytettävät
reititysprotokollat voivat olla erilaisia.
11
AS:n sisäiset reititysprotokollat (Interior Gateway Protocols, IGP)
Käytetään AS:ien sisällä reittien jakamiseen.
– AS:n sisällä saatetaan käyttää IGP:n rinnalla myös BGP:tä. Aiheesta kerrotaan lisää seuraavalla
luennolla.
Kaksi perustyyppiä: etäisyysvektoriprotokollat ja
linkkitilaprotokollat
Etäisyysvektoriprotokollat (distance vector protocols)
Reitittimet jakavat tietoa etäisyyksistä toisiin reitittimiin <kohde,etäisyys> -pareina.
Lyhimmät reitit lasketaan jokaisessa reitittimessä Bellman-Ford-algoritmilla.
Esimerkkejä: RIP, RIPng, IGRP, EIGRP
13
Etäisyysvektoriprotokollan yleinen toimintaperiaate
1. Naapurireitittimien selvittäminen
2. Yhteyksien metriikoiden selvittäminen: etäisyys, kustannus, pituus
3. Tunnettujen reittien vaihtaminen naapureiden kanssa <kohde,etäisyys> -pareina.
4. Parhaiden reittien laskeminen
naapurireitittimien ilmoitusten perusteella.
5. Jatketaan kohdasta 3
1
Esimerkki etäisyysvektoriprotokollan reitinlaskennasta
Hyvät uutiset eli uudet
reitit leviävät nopeasti.
A B C D
E F
1 1 2
2
5 3
1 1
A:n taulu B C D E F
Alkutila 1, - 2, -
1. kierros 1, - 2, B 2, - 5, E 2. kierros 1, - 2, B 4, B 2, - 3, B
B:n taulu E:n taulu A: 1, - A: 2, - C: 1, - B: 1, - E: 1, - C: 5, - F: 3, -
B:n taulu E:n taulu A: 1, - A: 2, - C: 1, - B: 1, - D: 3, C C: 2, B E: 1, - D: 4, F F: 2, C F: 3, -
Alkutila:
suorat naapurit
1. kierroksen jälkeen:
naapureiden naapurit
15
Etäisyysvektoriprotokollat: ongelmia
Reitin katkeamistieto leviää hitaasti.
Kun B:n linkki A:han katkeaa:
– B kuvittelee että C:llä on vaihtoehtoinen reitti A:han.
– Etäisyydet kasvavat äärettömyyteen.
Ongelmaan on olemassa ratkaisuja.
A B C D
1 1 2
B C D
1, - 2, B 4, C 2, B 4, C 3, C 2, B 4, C 3, C 4, B 4, C 5, C 4, B 6, C
… … …
Routing Information Protocol (RIP)
Reititin ilmoittaa säännöllisin väliajoin reititystaulunsa sisällön naapureilleen <kohde, etäisyys> -pareina
– Kohdeverkon osoite, aliverkon peite, ensimmäisen hypyn reititin, metriikka
Naapurit kuuntelevat ja päivittävät reititystaulunsa – Mutta vain jos uusi reitti on oikeasti lyhyempi.
Äärettömyys on määritelty 16:ksi.
– Reitityssilmukan synnyttyä äärettömyyteen laskeminen tapahtuu nopeammin.
– Rajoittaa verkon kokoa.
17
RIPv2 (RFC 2453) – viestin otsikko
RIP toimii UDP:n päällä, portissa 520
– Ryhmälähetys (multicast) osoitteella 224.0.0.9.
RIPv1 käytti yleislähetystä (broadcast).
RIP-viestissä voi olla useampia reittitietueita (route entry, RTE)
Command Version= 2 (must be zero) Address Family Identifier Route Tag
IP Address Subnet Mask
Next Hop Metric
0 8 16 24 31
RTE=reittitietue (route entry)
18
RIPv2 – viestin otsikko (2)
Komennot (Command)
– 1=pyyntö (request), 2=vastaus (response, lähetetään myös säännöllisesti ilman pyyntöä)
– RIPv2 osaa vastata myös RIPv1-pyyntöihin
Address Family Identifier (AFI): AF_INET = 2
– Voi myös olla autentikaatiotunniste, jolloin RTE sisältääkin autentikaatiodataa.
Reittitagin (Route Tag) avulla voi esimerkiksi erottaa RIP:n sisäiset reitit RIP:n ulkopuolisista reiteistä. RFC ei määrittele käyttöä tarkemmin.
19
RIPv2 – viestin otsikko (3)
IP-osoite ja aliverkon peite (Subnet Mask):
kertoo reitin kohteen ja verkon koon.
Next Hop: seuraavan välittävän reitittimen IP- osoite
– 0.0.0.0 jos käytetään vastausviestin lähettänyttä reititintä
Metriikka (metric): koko reitin kustannus/pituus
– Jos kohde on saavuttamattomissa, metriikka on 16 eli ääretön.
RIP – viestin lähettäjän tunnistaminen
Alkuperäisessä RIP-protokollassa ei tunnistettu viestien lähettäjää lainkaan tai käytettiin selväkielistä salasanaa.
– Suojasi vain satunnaiselta väärinkonfiguroinnilta.
RFC 4822 määrittelee autentikointilaajennuksen: kaksi RTE-tietuetta täyttävä viesti
– Jos RTE:n AFI on 0xFFFF => RTE sisältää autentikaatio- eikä reititystietoa
Ensimmäisessä autentikointi-RTE:ssä mm. sekvessinumero ja käytetyn avaimen ID.
Jälkimmäinen autentikointi-RTE sisältää varsinaisen tiivisteen, esim. HMAC- SHA1.
– Käytössä voi olla useita avaimia: avainta on mahdollista vaihtaa ilman katkoja.
– Avain välitetään turvallista kanavaa pitkin, ei koskaan
selväkielisenä. 21
RIPng for IPv6 (RFC 2080)
Toimii UDP:n päällä, portissa 521
Prefiksin pituus kertoo verkkomaskin.
– CIDR 2001:db8::/32 => prefiksin pituus = 32
Command Version=1 (must be zero) IPv6 prefix
Route Tag Prefix Length Metric
0 8 16 24 31
RTE=reittitietue
RIPng - Seuraavan hypyn RTE
Seuraavan hypyn osoite kerrotaan erillisellä RTE-tietueella. Tietue kertoo seuraavan hypyn kaikille tätä seuraaville reittitietueille.
– Käytetään kunnes viesti sisältää toisen seuraavan hypyn RTE:n tai viesti loppuu.
IPv6 Next Hop Address
(must be zero) (must be zero) 0xFF
0 8 16 24 31
23
RIP - äärettömyyteen laskemisen välttäminen
Jaettu horisontti (split horizon)
– Reittejä ei mainosteta takaisin siihen suuntaan, mistä reitti saatiin.
– Ei estä silmukoiden syntymistä kolmen reitittimen välille.
Lähteen myrkytys (poisoned reverse)
– Ilmoitetaan kohteen metriikaksi ääretön (16) sille naapurille jolta kohteen käytössä oleva reitti saatiin.
Tietojen nopea välitys (triggered updates)
– Kun reittitaulu muuttuu, välitetään muuttunut tieto (lähes) välittömästi naapureille.
Linkkitilaprotokollat (link state protocols)
Jokaisella reitittimellä on kuva koko verkon topologiasta.
Lyhimmät reitit lasketaan jokaisessa reitittimessä Dijkstran lyhimmän polun algoritmillä.
Esimerkkejä: OSPF, OSPFv3, IS-IS
25
Linkkitilaprotokollan yleinen toimintaperiaate
1. Naapurireitittimien selvittäminen
2. Yhteyksien metriikoiden selvittäminen: etäisyys, kustannus, pituus
3. Tunnettujen reittien ja linkkien tilatiedon vaihtaminen naapureiden kanssa.
4. Parhaiden reittien laskeminen.
5. Jatketaan kohdasta 3
Linkkitilaprotokollat:
Dijkstran lyhimmän polun algoritmi
1. Etäisyys omaan solmuun = 0 ja muihin , merkitään solmut
vierailemattomiksi, aloitetaan tarkastelu omasta solmusta.
2. Lasketaan etäisyys tarkasteltavasta solmusta naapureihin.
• Jos löytyi lyhyempi polku kuin tiedossa oleva, päivitetään lyhin polku.
• Merkitään solmu vierailluksi.
3. Jos on jäljellä vierailemattomia
solmuja, siirrytään niistä lähimpään ja jatketaan kohdasta 2.
• Jos kaikissa solmuissa on jo vierailtu, lopetetaan.
A B C D
E F
1 1 2
2
1 5 3
1 1
Kierros ja solmu
B C D E F
1. A 1, A 2, A
2. B 1, A 2, B 2, A
3. E 1, A 2, B 2, A 5, E
4. C 1, A 2, B 4, C 2, A 3, C 5. F 1, A 2, B 4, C 2, A 3, C 6. D 1, A 2, B 4, C 2, A 3, C
27
Open Shortest Path First Protocol (OSPF) versio 2
OSPF käyttää linkkitila-algoritmia ja jokaisella reitittimellä on kokonaiskuva verkon topologiasta.
OSPF:n avulla verkko voidaan jakaa itsenäisiin OSPF-alueisiin.
– Reitittimet jaetaan sisäisiin, alueen rajalla oleviin, runkoverkko- yhteydellisiin ja AS:n rajalla oleviin.
– Jakamalla verkko alueisiin reititystaulut pysyvät pienempinä.
OSFP-reitittimet voidaan tunnistaa.
– Kuka tahansa ei voi muuttaa reititystaulujen sisältöä.
OSFP toimii suoraan IP:n päällä: protokolla 89
– Viestien lähettämiseen käytetään ryhmälähetystä osoitteella 224.0.0.5.
OSPF - Kolme aliprotokollaa
Hello-protokolla
– Naapureiden selvitys, naapureiden saavutettavuuden seuraaminen.
Exchange-protokolla
– Protokollan avulla vaihdetaan koko linkkitilatietokannan sisältö uuden naapurin kanssa.
Flooding-protokolla
– Käytetään muuttuneiden reititystietojen levittämiseen muille reitittimille.
– Päivityksiä lähetetään säännöllisin väliajoin, ja linkkien tilan muututtua.
Kaikkilla protokollilla on yhteinen OSPF-otsikko.
29
OSPF (RFC 2328) - Otsikko
Viestien tyypit (Type)
1 = Hello 3 = Link State Request 2 = Database Description 4 = Link State Update
(Exchange-viesti) 5 = Link State ACK Version=2 Type Packet Length
Router ID Area ID
Checksum Authentication Type Authentication
0 8 16 24 31
OSPF - Otsikko (2)
Router ID: lähettäjän osoite
Area ID: 32-bittinen OSPF-alueen tunniste.
– 0.0.0.0 = backbone
– Yleensä viestit eivät kulje ulos alueelta.
Tarkistussumma (Checksum) kattaa koko OSPF- viestin paitsi tunnistedatan.
Autentikaatiotyypit (Authentication Type):
– 0 = ei autentikointia, 1 = selväkielinen salasana, – 2 = jaettu salaisuus + MD5 (alkuperäinen), HMAC-
SHA (RFC 5709) vahvempi
31
OSPF - Hello
Hello-viestien avulla reitittimet muodostavat yhteydet toisiinsa ja testaavat yhteyden toimivuuden aika-ajoin.
– Yhteydet ovat kaksisuuntaisia.
Jos linkillä on useampia naapureita, kaikkiin naapureihin ei muodosteta yhteyttä.
Jaetulta linkiltä valitaan edustaja (designated router) – Edustaja muodostaa naapuruuden kaikkien linkin
reitittimien kanssa, sen sijaan että kaikki reitittimet muodostaisivat naapuruudet kaikkien kanssa.
– Ratkaisu pienentää linkkitilatietokannan kokoa.
OSPF - Edustajareitittimen valinta (designated router)
Kun reititin (lähettämällä Hello-viestin) kytkeytyy linkille, jossa on valittu edustaja, käytetään jo
olemassaolevaa edustajaa.
– Näin tehdään vaikka linkille kytkeytynyt reititin haluaisi olla edustaja ja sillä olisi korkeampi prioriteetti.
Jos linkillä ei ole vielä edustajaa, edustajaksi valitaan halukkaista reitittimistä se, jolla on
korkein prioriteetti. Tasapelitilanteessa valitaan se reititin jolla on suurin ID.
Jos edustajareititin kaatuu ja mikään reitittimistä ei halua edustajaksi, valitaan se varaedustaja,
jolla on korkein prioriteetti (tai ID).
33OSPF - Hello
(OSPF header, Type = 1) ...
Network Mask
HelloInterval Options Router priority
RouterDeadInterval Designated Router
Backup Designated Router Neighbor 1
...
Neighbor n
0 8 16 24 31
OSPF - Hello (2)
Network mask: tämän verkkorajapinnan verkkomaski Options: Tuetut OSPF-ominaisuudet. Naapuri voidaan hylätä, jos reitittimien OSPF-ominaisuudet eivät täsmää.
HelloInterval: Tämän reitittimen Hello-viestien lähetysväli sekunteina.
Router priority: Tämän reitittimen prioriteetti edustajareititinvalinnassa.
– Jos 0, ei voi olla edustaja tai varaedustaja
RouterDeadInterval: aika, jonka jälkeen reitittimen katsotaan olevan alhaalla (sekuntia).
35
OSPF - Hello (3)
Designated Router: viestin lähettäjän näkemys valitusta edustajareitittimestä
– 0.0.0.0 jos edustajareititintä ei ole valittu.
Backup Designated Router
– Edellisen varalla. 0.0.0.0 jos ei ole valittu.
Neighbor 1 … n
– Tiedossa olevien aktiivisten naapureiden ID:t.
OSPF - Tilatietojen vaihto/alustus (Exchange, Database description)
Käytetään koko linkkitilatietokannan yhteenvedon lähettämiseen naapureille.
Viesti voi sisältää useamman paketin, sillä koko verkon kuvaus välitetään kaikille OSPF-reitittimille
(OSPF header, Type=2) …
Interface MTU Options 00000 I M MS DD sequence number
LSA headers
0 8 16 24 31
useampi LSA-otsikko (Link State Advertisement)
37
OSPF - Exchange (2)
Interface MTU: linkin pakettien maksimikoko.
Tietokannan sisältö voi olla laaja, jolloin
lähetetään useampi Database Description-viesti
– I(nit) = 1 => ensimmäinen DD-paketti – M(ore) = 1 => lisää DD-paketteja seuraa
MS-bitti: reititin on joko 1= master tai 0=slave DD-sekvenssinumero
– Ensimmäisessä paketissa uniikki, seuraavissa paketeissa edellinen + 1.
OSPF – Linkkitilatietueen (LSA) otsikko
Jokainen LSA kuvaa palan OSPF- reititysaluetta.
LS age Options LS Type Link State ID
Advertising Router LS sequence number
LS Checksum Length
…
0 8 16 24 31
39
OSFP - LSA-otsikko (2)
LS Age: aika sekunteina tietueen luomisesta Options: tuetut valinnaiset OSPF-ominaisuudet LS Type:
– 1 = Router-LSA 3= Summary-LSA (IP network) – 2 = Network-LSA 4= Summary-LSA (ASBR)
– 5 = AS-external-LSA
Link State ID: riippuu LS-tyypistä, esim IP-osoite
Advertising Router: Sen reitittimen ID joka alunperin mainosti tiedon.
LS sequence number: kasvava sekvenssinumero, jonka avulla tunnistetaan vanhat ja duplikaatit LSA:t
LS Checksum: LSA:n tarkistussumma (ei sisällä LS Age-kenttää) Length: LSA:n pituus sisältäen otsikon
OSPF - LSA-tyypit
1 = Router-LSA
– Kuvaa reitittimeen suoraan kytkeytyvät linkit.
2 = Network-LSA
– Jaetun linkin kuvaus, jonka on lähettänyt kyseisen linkin edustajareititin (Designated Router)
3 = Summary-LSA (IP network)
– Alueen reunareitittimen luoma tietue toisella alueella olevasta verkosta.
4 = Summary-LSA (AS Border Router)
– Alueen reunareitittimen luoma tietue AS-reunareitittimestä (ASBR).
5 = AS-external-LSAs
– ASBR:n luoma tietue AS:n ulkopuolisesta reitistä.
41
OSPF - Router-LSA
Jokainen reititin luo Router-LSA:n
– Kuvaus reitittimen jokaisesta verkkoliitännästä.
0 V E B 0 Link Count Link ID
Link Data
Type # TOS Metric ...
TOS 0 TOS Metric
0 8 16 24 31
OSPF - Reititin-LSA (2)
Liput:
– V = virtuaalilinkin päätepiste – E = AS:n reunareititin
– B = OSPF-alueen reunareititin
Link Count: reitittimen verkkoliitäntöjen lukumäärä, jokainen linkki kuvataan
Type Link ID Link Data
Suora yhteys reitittimeen Naapurireitittimen ID MIB-II ifIndex-arvo
Transit-verkko Edustajareitittimen IP Verkkoliitännän IP-osoite Stub-verkko Aliverkko-osoite Aliverkon peite
Virtuaalilinkki Naapurireitittimen ID Verkkoliitännän IP-osoite
43
OSPF - Reititin-LSA (3)
# TOS: erilaisten TOS-metriikoiden lukumäärä Metric: linkin kustannus
TOS: Type of Service (IP-otsikossa), jonka metriikka on määritelty
TOS Metric: TOS-kohtainen metriikka
OSPF – Network-LSA
Kuvaa alueella olevan transit-verkon.
– Network Mask: Transit-verkon aliverkon peite – Aliverkon peitteen jälkeen listataan kaikkien
verkkoon kytkeytyvien reitittimien ID:t.
Verkon edustajareititin luo verkko-LSA:n
– Listassa on mukana myös edustajareititin itse.
Network Mask
Attached Router ...
0 8 16 24 31
45
OSPF – Summary LSA
Kuvaa alueen ulkopuolisia kohteita.
– Alueen reunareititin luo ja mainoistaa muille alueille.
– Tyyppi 3: IP-verkko, Tyyppi 4: AS-reunareititin
Network Mask: Kohdeverkon IP-verkkomaski (tyyppi 3) tai 0 (tyyppi 4)
Metric: reitin metriikka (kustannus)
– Myös Type of Service-kohtaiset metriikat voidaan määritellä.
Network Mask 0 Metric
TOS TOS Metric ...
0 8 16 24 31
Network Mask
E 0 Metric Forwarding Address
External Route Tag (TOS) …
OSPF - AS-external-LSA
Kuvaa kohteita, jotka ovat nykyisen AS:n ulkopuolella. Esim. oletusreitti.
– LSA:n lopussa voi listata myös TOS-kohtaiset reittitiedot.
0 8 16 24 31
47
OSPF - AS-external-LSA (2)
Network Mask: Kohdeverkon IP-verkkomaski E-bitti: ulkoisen metriikan tyyppi
– 1: Type 2: metriikka on suurempi kuin yksikään AS:n sisäinen polku.
– 0: Type 1: metriikka on verrattavissa AS:n sisäisiin metriikoihin.
Forwarding Address: IP-osoite johon liikenne välitetään. 0.0.0.0 => välitetään LSA:n
alkuperäiselle lähettäjälle.
External Route Tag: Voidaan käyttää AS-
reunareititinten väliseen viestintään (OSPF ei
käytä tietoa mihinkään).
OSPF - Tilatietojen levitys (Flooding)
Kun kaikki reititystieto on vaihdettu, sitä aletaan ylläpitää.
Reitittimet lähettävät päivitysviestejä (Link State Update) – Päivitysviestit sisältävät LSA-tietueita.
– LSA:n originoiva reititin lähettää säännöllisesti uuden LSA:n vanhojen tietojen päivittämiseksi.
Naapurilta vastaanotetut päivitysviestit pitää kuitata (Link State Acknowledgement).
49
OSPF - Link State Request
Viestillä pyydetään LSA-tietuetta naapurilta.
– Useampia LSA-tietueita voi kysyä yhdellä Link State Request-paketilla.
(OSPF header, Type = 3) ...
LS Type Link State ID
Advertising Router
0 8 16 24 31
OSPF - Link State Update
Vastaus Link State Request-viestiin, tai verkossa tapahtunut muutos.
– Voi sisältää tietoa useammasta linkistä, jokaiselle oma LSA-tietue.
(OSPF header, Type = 4) ...
LSA Count LSAs
0 8 16 24 31
51
OSPF - Link State Acknowledgment
Päivitysviestit, eli kaikki vastaanotetut LSA:t kuitataan LSA-otsikoilla.
Useampia LSA:ita voidaan kuitata kerralla (viivästetty kuittaus) tai heti (jos saadaan duplikaatti).
Päivitysviesti lähetetään uudelleen, jos ei kuittausta kuulu.
(OSPF header, Type = 5) ...
LSA headers
0 8 16 24 31
OSPF for IPv6 (RFC 5340) - OSPFv3
OSPFv2 tukee vain IPv4:ää.
OSPFv3 tukee IPv6:ta.
– OSPFv3 toimii suoraan IPv6:n päällä.
Perusperiaatteet ovat samoja kuin OSPFv2:ssa.
– tiedonvaihto – tuki alueille
– lyhimmän polun laskenta
53
OSPFv3 - Eroja OSPFv2:een
Ei puhuta aliverkoista, vaan linkeistä.
– Yhdellä linkillä voidaan ajaa useampaa OSPF- instanssia.
IPv6-osoitteita ei käytetä OSPF-paketeissa
– Sen sijaan esim. reitittimillä on 32-bittiset ID:t.
– IPv6-osoitteet näkyvät vain LSA-tietueissa.
Tilatietojen päivitykselle laajuusmäärittelyt (scope) – Paikallinen linkki(verkko), alue, AS-alue (AS-
reunareitittimet)
Protokollan suojaamiseen käytetään IPsec AH/ESP.
– Otsikoista poistettu autentikointikentät.
OSPFv3 (RFC 5340) - Otsikko
Muutoin ~sama kuin v2, mutta samalla linkillä voi olla käytössä useampi instanssi OSPF:stä, joille tunniste.
– Router ID: 32-bittinen tunniste, ei IPv6-osoite.
Version=3 Type Packet Length Router ID
Area ID
Checksum Instance ID 0
0 8 16 24 31
55
OSPFv3 - Hello
Melkein samat tiedot kuin OSPFv2:ssa, hieman eri järjestyksessä.
– Verkkomaskin sijaan verkkoliitännän ID.
(OSPFv3 header, Type=1) ...
Interface ID
Router Priority Options
HelloInterval RouterDeadInterval
Designated Router ID
Backup Designated Router ID Neighbor 1 ID
...
Neighbor n ID
0 8 16 24 31
OSPFv3 - Muut viestit
Muiden viestien otsikot vastaavat OSPFv2:ta.
– Database Description – Link State Request – Link State Update
– Link State Acknowledgement
LSA-tietueiden muoto eroaa OSPFv2:sta.
– IPv6-osoitteet.
– LSA Type sisältää myös viestien laajuuden (scope) (paikallinen/alue/AS)
– TOS-tiedot poistettu.
57
Intermediate System To Intermediate System (IS-IS)
ISO:n standardoima linkkitilaprotokolla Toimii OSI-protokollapinon päällä.
Helposti laajennettavissa.
OSPF:n alueiden sijaan level 1- ja level 2- reitittimiä.
Laajassa käytössä operaattoriverkoissa.
Transparent Interconnection of Lots of links
(TRILL) käyttää IS-IS:ää.
RIP vs. OSPF
Reittien laskeminen on kevyttä.
RIP on yksinkertainen.
– RFC on 40 sivua.
RIP:n konfigurointi on
yksinkertaista, samoin sen
toteuttaminen (implementointi).
RIP ei skaalaudu suuriin verkkoihin.
Metriikoiden valinta rajoittunutta.
Reagoi hitaasti verkon muutoksiin.
Toimii UDP:n päällä.
Reittien laskeminen on raskaampaa.
OSPF on selvästi RIP:iä monimutkaisempi.
– RFC:t 245 sivua (v2) ja 95 sivua (v3)
OSPF skaalautuu paremmin suurempiin verkkoihin. Verkko on jaettavissa alueisiin.
Metriikat voidaan valita kohtuullisen vapaasti.
Reagoi nopeasti verkon muutoksiin.
Toimii IP:n päällä.
59
Muita reititysprotokollia
IGRP (1988) ja Enhanced IGRP (EIGRP, 1993) – Ciscon reititysprotokollat, osia patentoitu
– etäisyysvektoriprotokolla, metriikkana viive, kaista, luotettavuus ja kuorma
– käyttää split horizon ja triggered updates – tekniikoita
Vanhoja protokollia
– Gateway to gateway protocol (GGP), RIP:n edeltäjä – HELLO käytti aikaa metriikkana (vaatii synkronoidut
kellot)
Lähteitä
RFC 1812 Requirements for IP Version 4 Routers, 1995 RFC 2453 RIP version 2, 1998 (RFC 1058 RIPv1)
RFC 2080 RIPng for IPv6, 1997
RFC 4822 RIPv2 Cryptographic Authentication, 2007 RFC 2328 OSPF version 2, 1998
RFC 5340 OSPF for IPv6, 2008
RFC 5838 Support of Address Families in OSPFv3, 2010
RFC 5709 OSPFv2 HMAC-SHA Cryptographic Cryptographic Authentication, 2009
RFC 6325 Routing Bridges (Rbridges): Base Protocol Specification, 2011 RFC 6326 Transparent Interconnection of Lots of Links (TRILL) Use of IS- IS, 2011
ISO/IEC 10589:2002: IS-IS
61