Linkkien tilaan perustuva reititys

Samankaltaiset tiedostot
Linkkien tilaan perustuva reititys

Linkkien tilaan perustuva reititys. Linkkien tilaan perustuva reititys

Linkkien tilaan perustuva reititys

Linkkien tilaan perustuva reititys

Linkkien tilaan perustuva reititys. OSPF - Open Shortest Path First on Internetin linkkien tilaan perustuva reititysprotokolla

Linkkien tilaan perustuva reititys

Linkkien tilaan perustuva reititys

100 % Kaisu Keskinen Diat

Introduction to exterior routing

Introduction to exterior routing

Introduction to exterior routing

reititystietojen vaihto linkkitilaviestejä säännöllisin väliajoin ja topologian muuttuessa

reititystietojen vaihto linkkitilaviestejä säännöllisin väliajoin ja topologian muuttuessa

OSPF:n toiminta. Välittäjäreititin. Hello-paketti. Hello-paketin kentät. Hello-paketin kentät jatkuvat. OSPF-sanomat hello naapurien selvillesaaminen

Introduction to exterior routing. Autonomous Systems

T Tietokoneverkot : Reititys sisäverkossa

Kattava katsaus reititykseen

Reititys. Autonomisten järjestelmien sisäinen reititys. luvut 7, 13 ja 15

Internet Protocol version 6. IPv6

4 reititintyyppiä. AS:ien alueet. sisäinen reititin alueen sisäisiä. alueen reunareititin sekä alueessa että runkolinjassa

reitittimet käyttävät samaa reititysprotokollaa (intra-as protocol)

Reititys. Luennon sisältö. Miten IP-paketti löytää tiensä verkon läpi. Edelleenlähetys (forwarding) yksittäisen koneen näkökulmasta

Reititys. Autonomisten järjestelmien sisäinen reititys. luvut 7, 13 ja 15. Sanna Suoranta

Hello-paketin kentät jatkuvat

Hello-paketin kentät jatkuvat

Reititys. Tietokoneverkot 2009 (4 op) Syksy Futurice Oy. Reititys. Jaakko Kangasharju.

Reititys. 4. Reititys (Routing) Verkkokerroksen tehtävänä on toimittaa data (paketit) lähettäjän koneelta vastaanottajan koneelle. Reititysalgoritmit

Reititys. 4. Reititys (Routing) Verkkokerroksen tehtävänä on toimittaa data (paketit) lähettäjän koneelta vastaanottajan koneelle. Reititysalgoritmit

100 % Kaisu Keskinen Diat

ICMP-sanomia. 3. IP-kerroksen muita protokollia ja mekanismeja ICMP (Internet Control Message Protocol)

3. IP-kerroksen muita protokollia ja

4. Reititys (Routing)

Routing Information Protocol

Routing Information Protocol. RIP - Routing Information Protocol on sisäisen reitityksen perusprotokolla

Routing Information Protocol

3.7. Internetin reititysprotokollista

ESPOO VANTAA INSTITUTE OF TECHNOLOGY. ser 0/0. Right WS-3 WS-4. Ennen QoS-määrittelyjä tehdään normaalit reititinmäärittelyt ja testataan IP-yhteys:

Page1. Esimerkki AS. Reititystietojen vaihto. OSPF:n toiminta. Reitittimen R6 reititystaulu. reititystietojen vaihto Kukin reititin lähettl

Reititys. 4. Reititys (Routing) Verkkokerroksen tehtävänä on toimittaa data (paketit) lähettäjän koneelta vastaanottajan koneelle. Reititysalgoritmit

Reititys. Luennon sisältö. Miten IP-paketti löytää tiensä verkon läpi. Edelleenlähetys (forwarding) yksittäisen koneen näkökulmasta

4. Reititys (Routing)

4. Reititys (Routing)

Monilähetysreititys. Paketti lähetetään usealle vastaanottajalle Miksi? Monet sovellukset hyötyvät

S Tietoliikenneverkot / Marko Luoma 1

Malliverkko. Tietoliikenneverkot. Terminologiaa. Ja taas OSI /XHQWR5HLWLW\V

AS 3 AS 0. reitittimet käyttävät samaa reititysprotokollaa (intra-as protocol)

AS 3 AS 5 AS 1 AS 0 AS 2 AS 4

Verkkokerroksen palvelut. 4. Verkkokerros. Virtuaalipiiri (virtual circuit) connection-oriented ~ connectionless. tavoitteet.

Turvallisuus verkkokerroksella

Turvallisuus verkkokerroksella

AH-otsake. Turvallisuus verkkokerroksella. AH-otsake. AH-otsake. ESP-otsake. IP-otsake

Hello-paketin kentät jatkuvat. Tilatietojen vaihto. Linkin tila muuttuu. BGP (jatkuu)

Reitittimien toiminta

3/3/15. Verkkokerros 2: Reititys CSE-C2400 Tietokoneverkot Kirjasta , Verkkokerros. Internet-protokollapino ja verkkokerroksen tehtävä

4. Reititys (Routing)

Lisää reititystä. Tietokoneverkot 2009 (4 op) Syksy Futurice Oy. Lisää reititystä. Jaakko Kangasharju

Lisää reititystä. Tietokoneverkot 2008 (4 op) Syksy Teknillinen korkeakoulu. Lisää reititystä. Jaakko Kangasharju

Verkkokerroksen palvelut

Ja taas OSI. Tietoliikenneverkot. Terminologiaa. Malliverkko. Terminologiaa. Terminologiaa /XHQWR5HLWLW\V. AS (Autonomous System) Alue (Area)

reitittimissä => tehokkaampi 2005 Markku Kojo IPv6

Etäisyysvektoriprotokollat

OSI ja Protokollapino

Esimerkki AS. Page1. Esimerkki AS: a) suunnattu verkko ja b) lyhyimmän n polun puu R6:lle Markku Kojo Markku Kojo

Verkkokerros 2: Reititys

Multicast. Johdanto Ryhmien hallinta Reititys Reaaliaikaiset siirto- ja hallintaprotokollat Resurssien varaus Sessioiden hallinta

Tietoliikenne II. Syksy 2005 Markku Kojo. Tietoliikenne II (2 ov,, 4 op) Page1. Markku Kojo Helsingin yliopisto Tietojenkäsittelytieteen laitos

OSI-malli. S Tietoliikenneverkot. Miksi kytketään. Välitys ja kytkeminen OSI-mallissa. /XHQWR.\WNHQWlMDUHLWLW\V

ELEC-C7241 Tietokoneverkot Verkkokerros

Verkkoinformaation välittämiseen isäntäkoneiden ja reitittimien välillä

OSPF (Open Shortest Path First) linkkitilareititysprorokolla. reititys AS:ien välillä (Exterior gateway protocols) BGP (Border Gateway Protocol)

Hierarkkinen reititys. Reititys (Routing) Autonominen järjestelmä (AS) 3.7. Internetin reititysprotokollista

T : Max-flow / min-cut -ongelmat

Reititys. Tämä ja OSI 7LHWROLLNHQQHWHNQLLNDQSHUXVWHHW $(/&7 0DUNXV3HXKNXUL. Yhteyden jakaminen Reititys Kytkentä Internet-protokolla TCP, UDP

Internet perusteet. Analyysin tasot

S Tietoliikenneverkot

Chapter 4 Network Layer

Verkkokerroksen palvelut. 4. Verkkokerros. Virtuaalipiiri (virtual circuit) connection-oriented ~ connectionless. tavoitteet.

4. Verkkokerros. sovelluskerros. kuljetuskerros. verkkokerros. siirtoyhteyskerros peruskerros. asiakas. end-to-end

Algoritmit 2. Luento 11 Ti Timo Männikkö

Etäisyysvektoriprotokollat

Vuonimiö on pelkkä tunniste

Vuonimiö on pelkkä tunniste

... Laajennusotsakkeet. Reititysotsake. Vuonimiö on pelkkä tunniste. Vuonimiöiden käsittely solmuissa

Etäisyysvektoriprotokollat

T Harjoitustyöluento

Results on the new polydrug use questions in the Finnish TDI data

Tietoliikenteen perusteet. Langaton linkki

Tietoliikenteen perusteet. Langaton linkki

13 Lyhimmät painotetut polut

j n j a b a c a d b c c d m j b a c a d a c b d c c j

Ville Vuorinen. Attribuutit BGP-reitityksessä

Capacity Utilization

Joonas Haapala Ohjaaja: DI Heikki Puustinen Valvoja: Prof. Kai Virtanen

Choose Finland-Helsinki Valitse Finland-Helsinki

Johdanto. Multicast. Unicast. Broadcast. Protokollat. Multicast

Algoritmit 1. Luento 9 Ti Timo Männikkö

Multicast. Johdanto Ryhmien hallinta Reititys Reaaliaikaiset siirto- ja hallintaprotokollat Resurssien varaus Sessioiden hallinta MBone

Bounds on non-surjective cellular automata

Tietoverkkoprojekti. Metropolia Ammattikorkeakoulu Tietotekniikan koulutusohjelma

Multicast. Johdanto Ryhmien hallinta Reititys Reaaliaikaiset siirto- ja hallintaprotokollat Resurssien varaus Sessioiden hallinta

Transkriptio:

Linkkien tilaan perustuva reititys OSPF-1 Linkkien tilaan perustuva reititys Tavoitteena on välttää V-protokollan luomat silmukat ja skaalautua laajempiin verkkoihin ja monenlaisiin topologioihin. Linkintilaprotokolla ylläpitää verkon topologiakarttaa. Jokaisessa solmussa on sama topologiakartta Kun topologia muuttuu, kartat päivitetään nopeasti. Karttoja käytetään reittilaskennassa OSPF (Open Shortest Path First) on ITF:n määrittelemä linkintilaprotokolla Internetiä varten. OSPF on suositeltu RIP:n seuraaja. OSPF-2

Kartta esitetään täydellisenä linkkien luettelona simerkkiverkko 1 2 B 3 4 5 6 Kustakin rivistä vastaa tietty solmu Linkin suunnat esitetään erillisinä Jokaisessa solmussa sama kartta Silmukoita ei voi syntyä Mistä Mihin Linkki täisyys B 1 1 3 1 B 1 1 B 2 1 B 4 1 B 2 1 5 1 3 1 6 1 B 4 1 5 1 6 1 OSPF-3 Levitysprotokolla (flooding protocol) levittää tiedot topologiamuutoksista Päivityssanomat levitetään koko verkkoon 1 B 2 4 5 6 Mistä Mihin Linkki täisyys Mnumero B 1 inf 2 Mistä Mihin Linkki täisyys Mnumero B 1 inf 2 OSPF-4

Levitysprotokolla (flooding protocol) levittää tiedot topologiamuutoksista Levitysalgoritmi: m vastaanotettu tietue L vastaava rivi linkkikannassa Vastaanota tietue m tsi vastaavaa riviä linkkikannasta L mn muutosnumero ei Löytyykö? L.mn < m.mn? L.mn = m.mn? ei ei Lisää tietue Lähetä tietue kaikille muille Päivitä tietue Lähetä tietue kaikille muille Muodosta ml:stä Lähetä m lähettäjälle lopetus OSPF-5 Linkkikanta -B vian levityksen jälkeen Muutosnumerojen laskenta alkaa käynnistyksessä 1:stä. Modulo aritmetiikka määrittelee mikä on vähän suurempi kuin muutosnumerolaskuri voi pyörähtää ympäri. 4294967295 + 1 = 0 1 B 2 3 4 5 6 Mistä Mihin Linkki täisyys Mnumero B 1 inf 2 3 1 1 B 1 inf 2 B 2 1 1 B 4 1 1 B 2 1 1 5 1 1 3 1 1 6 1 1 B 4 1 1 5 1 1 6 1 1 OSPF-6

Kun verkko osittuu, puoliskojen kannat eroavat toisistaan 1 B 2 3 4 5 6 Mistä Mihin Linkki täisyys Mnumero B 1 inf 2 3 1 1 B 1 inf 2 B 2 1 1 B 4 1 1 B 2 1 1 5 1 1 3 1 1 6 inf 2 B 4 1 1 5 1 1 6 1 1 Mistä Mihin Linkki täisyys Mnumero B 1 inf 2 3 1 1 B 1 inf 2 B 2 1 1 B 4 1 1 B 2 1 1 5 1 1 3 1 1 6 1 1 B 4 1 1 5 1 1 6 inf 2 OSPF-7 Linkki 2 vikaantuu kannat eroavat lisää 1 2 B 3 4 5 6 Välittömästi tästä ei aiheudu ongelmaa, mutta jos linkki 1 elpyy... B:n, :n ja :n kannat: Mistä Mihin Linkki täisyys Mnumero B 1 inf 2 3 1 1 B 1 inf 2 B 2 inf 2 B 4 1 1 B 2 inf 2 5 1 1 3 1 1 6 1 1 B 4 1 1 5 1 1 6 inf 2 OSPF-8

Linkki 1 elpyy 1 B 2 3 4 5 6 Mistä Mihin Linkki täisyys Mnumero B 1 1 3 3 1 1 B 1 1 3 B 2 1 1 B 4 1 1 B 2 1 1 5 1 1 3 1 1 6 inf 2 B 4 1 1 5 1 1 6 1 1 Mistä Mihin Linkki täisyys Mnumero B 1 1 3 3 1 1 B 1 1 3 B 2 inf 2 B 4 1 1 B 2 inf 2 5 1 1 3 1 1 6 1 1 B 4 1 1 5 1 1 6 inf 2 Mistä Mihin Linkki täisyys Mnumero B 1 1 3 3 1 1 B 1 1 3 B 2 inf 2 B 4 1 1 B 2 inf 2 5 1 1 3 1 1 6 inf 2 B 4 1 1 5 1 1 6 inf 2 OSPF-10 Osittuneen verkon jälleenyhdistyessä tarvitaan naapurusten yhteenkasvatusta Kannan kuvaus <link-id+mn> B Kannan kuvaus <link-id+mn> m.mn>l.mn tai m.link-id ei löydy L:ssä Linkin tilakysely <kiinnostava link-id> Kyllä Muuttuneet tiedot Kannan päivitys ja levitys kaikille muille naapureille OSPF-11

Mitä jos reititin uudelleenkäynnistyy Verkossa voi olla :n ennen uudellenkäynnistystä luomia ja levittämiä LS:ta. Resetin jälkeen reitin numeroi omat LS:nsa numerolla InitialSequenceNumber Naapuri vastaa, että sillä on uudempaa tietoa. Mikäli haluaa pitää oman LS:nsa voimassa, se kasvattaa muutosnumeron naapurilta saamaansa + 1 ja levittää uudestaan. Mikäli naapurin tieto ei ole kuranttia resetin jälkeen, poistaa sen asettamalla iän Maxge arvoon ja levittämällä tietoa uudestaan. OSPF-12 Linkkikantojen yhtenäisyys on varmistettava Levityssanomat kuitataan linkki kerrallaan Kannan kuvaussanomien perillemeno varmistetaan Kannan kukin tietue suojataan vanhenemisajastimella, jos päivitys ei saavu ajoissa, tietue poistetaan Kannan tietueet on suojattu tarkistussummalla Sanomat sisältävät autentikointitietoa Mutta: päivityksen ollessa käynnissä toiset solmut ovat paremmin ajan tasalla kuin toiset reititysvirheitä OSPF-13

ijkstran lyhin-polku-ensin algoritmi OSPF-14 ijkstran lyhin-polku-ensin algoritmiin OSPF perustuu ijkstran lyhin-polku-ensin (SPF, shortest path first) algoritmiin. lgoritmin tavoitteena on tuottaa reititystaulu. ijkstran algoritmi laskee lyhimmän polun lähdesolmun S ja kaikkien muiden solmujen välillä. ijkstran algoritmi konvergoi nopeammin kuin Bellman-Ford O(M log M) < O(N M) M on linkkien lukumäärä, N on solmujen lukumäärä Solmut jaetaan evaluoituihin, joista alkavat polut tunnetaan ja muihin R. Lisäksi tarvitaan polkujen järjestetty lista O. OSPF-15

ijkstran lyhin-polku-ensin algoritmi ={S}, R={muut solmut}, P = O={S:stä alkavat yhden askeleen polut} sort O = tai O[1].etäisyys= ei p=o[1]; O = O \ p; V=p.mihin Lopetus: P sisältää polut R=saavuttamattomat solmut S R O P lähdesolmu evaluoidut solmut muut solmut polkujen järjestetty lista <mistä, mihin, etäisyys> polut (tulos) V? ei = V, R = R \V P = P p Kaikille V:stä alkaville linkeille L: O = O <V, L.mihin, p.etäisyys + L.etäisyys> sort O Huom: tässä poistetaan silmukat OSPF-16 ijkstran lyhin-polku-ensin algoritmi 1. ={S}, R={N-S}, O={kaikki S:stä lähtevät yhden hypyn polut} 2. Jos O on tyhjä tai jos O:n ensimmäisen polun pituus on ääretön: Merkitse loput R:n solmut saavuttamattomiksi Lopeta 3. P on listan O:n lyhin polku. Poista P O:sta. V on P:n viimeinen solmu. 4. Jos V on :ssä: Mene kohtaan 2 5. Luo joukko uusia polkuja lisäämällä P:hen kaikki V:stä lähtevät linkit. Polun pituus on vanha pituus + linkin kustannus. Lisää nämä polut O:hon pituusjärjestykseen. 6. Mene kohtaan 2 OSPF-17

L ijkstran lyhin-polku-ensin algoritmi esimerkki S 1 B 2 4 3 4 5 6 Mistä Mihin Linkki täisyys B 1 4 3 1 B 1 4 B 2 1 B 4 1 B 2 1 5 1 3 1 6 1 B 4 1 5 1 6 1 ={B}, R={,,, }, P = O={<B,,1>,<B,,1>,<B,,1>} sort O= tai O[1].etäisyys= p=<b,,1>; O = O \ p; V=p.mihin= V Lopetus: P sisältää polut R=saavuttamattomat solmut = V, R = R \V P = P p Kaikille V:stä alkaville linkeille L: O = O <V, L.mihin, p.etäisyys + L.etäisyys> sort O OSPF-18 ijkstran lyhin-polku-ensin algoritmi esimerkki 4 B R,,, O <B,,1> <B,,1> <B,,4> S B ={B}, R={,,, }, P = O={<B,,1>,<B,,1>,<B,,1>} sort O= tai O[1].etäisyys= p=<b,,1>; O = O \ p; V=p.mihin= V Lopetus: P sisältää polut R=saavuttamattomat solmut = V, R = R \V P = P p Kaikille V:stä alkaville linkeille L: O = O <V, L.mihin, p.etäisyys + L.etäisyys> sort O OSPF-19

B, R,, O <B,,1> <,,2> <B,,4> ijkstran lyhin-polku-ensin algoritmi esimerkki 4 S B 1 ={B}, R={,,, }, P = O={<B,,1>,<B,,1>,<B,,1>} sort O= tai O[1].etäisyys= p=<b,,1>; O = O \ p; V=p.mihin= V Lopetus: P sisältää polut R=saavuttamattomat solmut = V, R = R \V P = P p Kaikille V:stä alkaville linkeille L: O = O <V, L.mihin, p.etäisyys + L.etäisyys> sort O OSPF-22 B,, R, O <,,2> <,,2> <B,,4> ijkstran lyhin-polku-ensin algoritmi esimerkki 4 S B 1 1 ={B}, R={,,, }, P = O={<B,,1>,<B,,1>,<B,,1>} sort O= tai O[1].etäisyys= p=<b,,1>; O = O \ p; V=p.mihin= V Lopetus: P sisältää polut R=saavuttamattomat solmut = V, R = R \V P = P p Kaikille V:stä alkaville linkeille L: O = O <V, L.mihin, p.etäisyys + L.etäisyys> sort O OSPF-26

2 B,,, R O ijkstran lyhin-polku-ensin algoritmi esimerkki 4 S B 1 1 ={B}, R={,,, }, P = O={<B,,1>,<B,,1>,<B,,1>} sort O= tai O[1].etäisyys= p=<,,2>; O = O \p; V=p.mihin= Lopetus: P sisältää polut R=saavuttamattomat solmut <B,,4> V = V, R = R \V P = P p Kaikille V:stä alkaville linkeille L: O = O <V, L.mihin, p.etäisyys + L.etäisyys> sort O OSPF-30 3 ijkstran lyhin-polku-ensin algoritmi esimerkki S B 2 1 B,,,, R O <B,,4> 4 1 ={B}, R={,,, }, P = O={<B,,1>,<B,,1>,<B,,1>} sort O= tai O[1].etäisyys= p=<,,3>; O = O \p; V=p.mihin= V Lopetus: P sisältää polut R=saavuttamattomat solmut = V, R = R \V P = P p Kaikille V:stä alkaville linkeille L: O = O <V, L.mihin, p.etäisyys + L.etäisyys> sort O OSPF-35

Linkintilaprotokollien etuja Linkkikantojen tila konvergoituu nopeasti, ilman silmukoita O(M log M) M = linkkien määrä Mittoina voidaan käyttää tarkkoja lukuja. V-protokollassa äärettömyyteen laskenta (inf=16) rajoittaa Yksi protokolla tukee monta etäisyysmittaa: Kapasiteetti, viive, hinta, luotettavuus. Ylläpitää useita polkuja yhteen kohteeseen. Ulkoisten polkujen erillinen esitys. OSPF-37 Useiden etäisyysmittojen käyttö (1) Useiden etäisyysmittojen käyttö edellyttää: Mittojen tallennusta jokaiselle linkille (L.et1, L.et2,...) rillisten reititystaulujen laskemista mitoille (P(et1), P(et2),...) Linkkiprotokolla kuljettaa kaikki mitat Käyttäjäsanomiin merkataan vaadittu mitta. OSPF-38

Useiden etäisyysmittojen käyttö (2) Reittisilmukka on mahdollinen, jos solmut käyttävät eri mittaa samalle käyttäjän paketille 1500 kbps 300 ms B 1500 kbps 300 ms 64 kbps 20 ms 1500 kbps 300 ms 64 kbps 20 ms Käyttäjäsanomiin täytyy merkata vaadittu mitta OSPF-39 Liikenteen jakaminen vaihtoehtoisille samanmittaisille poluille tehostaa verkon käyttöä + Solmujen kokonaisjonopituus laskee + Keskimääräinen viive laskee + Päästä päähän viiveen vaihtelut pienenee + Vikatilanteissa liikenteen heilahtelut vähenee 1 2 B 3 4 5 6 - Vaarana on pakettien järjestyksen muuttuminen, koska polkuviiveet (solmujen jonojen pituudet) vaihtelevat - Hankaluus: menossa oleva liikenne ei pysy nykypolulla (no route pindown) epästabiilisuus mahdollista (2000)? Milloin polut ovat riittävän samanmittaisia? OSPF-40

Milloin polut ovat riittävän samanmittaisia? Mitä tapahtuu jos :hen menevä liikenne jaetaan kahden vaihtoehtoisen polun välille? 1 B 2 1/3 3 1/3 4 2/3 5 2/3 6 X:ään menevä paketti voidaan lähettää solmun Y kautta jos Y on lähempänä kohdetta kuin paikallinen solmu Sääntö Y X, jos etäisyys(y X) < etäisyys( X) rajaa vaihtoehtoiset reitit (monotonisiin) OSPF-41 ijkstran lyhin-polku-ensin algoritmi joka löytää vaihtoehtoiset polut ={S}, R={muut solmut}, P = O={S:stä alkavat yhden askeleen polut} sort O = tai O[1].etäisyys= ei p=o[1]; O = O \ p; V=p.mihin Lopetus: P sisältää polut R=saavuttamattomat solmut V? ei = V, R = R \V P = P p Kaikille V:stä alkaville linkeille L: O = O <V, L.mihin, p.etäisyys + L.etäisyys> sort O W = (p\v).mihin S.et.W < S.et.V? p on onkelvollinen vaihtoehtoinen polku V:hen OSPF-42

ijkstran lyhin-polku-ensin algoritmi joka löytää vaihtoehtoiset polut 1. ={S}, R={N-S}, O={kaikki S:stä lähtevät yhden hypyn polut} 2. Jos O on tyhjä tai jos O:n ensimmäisen polun pituus on ääretön: Merkitse loput R:n solmut saavuttamattomiksi. Lopeta 3. P on listan O:n lyhin polku. Poista P O:sta. V on P:n viimeinen solmu. 4. Jos V on :ssä: Mene kohtaan 6 5. Luo joukko uusia polkuja lisäämällä P:hen kaikki V:stä lähtevät linkit. Polun pituus on vanha pituus + linkin kustannus. Lisää nämä polut O:hon pituusjärjestykseen. Mene kohtaan 2 6. Jos polun P etäisyys S:stä V:hen on sama kuin aiemmin laskettu etäisyys S:stä V:hen Lisää vaihtoehtoinen polku V:hen 7. Mene kohtaan 2 OSPF-43 Linkintilaprotokolla kuvaa useita ulkoisia reittejä tarkoilla (halutuilla) mitoilla V-protokollan mahdollisuudet kuvata reittejä ovat rajalliset äärettömyyteen laskennan ja Bellman-Fordin monimutkaisuuden takia Inf=16 suurin etäisyys rajallinen Bellman-Fordin monimutkaisuus on O(N**2) Linkintilaprotokolla on vapaa yo rajoitteista. SPF reittilaskennan monimutkaisuus on O(N log N) N=ulkoisten reittien määrä sim. noin 30 000 ulkoista reittiä 9 10 8 vs. 450 000 OSPF-44

OSPF protokolla OSPF-45 OSPF sees the network as a graph Stub network Stub network OSPF router OSPF router Stub network xternal dest Transit network Summary network xternal dest OSPF router Stub network Stub network xternal dest OSPF-46

OSPF erottelee reitittimet ja isäntäkoneet OSPF reititin Käyttää aliverkkomaskia ja mainostaa vain yhtä (ali)verkkoa Isäntäkone Isäntäkone B Isäntäkone tynkäverkko (tynkäaliverkko) (stub network) li tästä syntyy kaksi linkintilatietuetta: + reititintietue + tynkäverkkotietue OSPF-47 OSPF tukee yleislähetysverkkoja (1) Yleislähetysverkossa Kaikki voivat lähettää kaikille Yksi voi lähettää kaikille tai joukolle Jos siinä on N reititintä, niillä on N*(N-1)/2 naapuruussuhdetta Jokainen reititin mainostaa N-1 reittiä toisiin reitittimiin + yhtä tynkäverkkoa N 2 kpl B N*(N-1)/2 naapuruussuhdetta sim. thernet, Token ring, FI OSPF-48

OSPF tukee yleislähetysverkkoja (2) edusreititin varaedusreititin B B (x) Naapuruus rajattu vain edusreitittimeen (designated router) dusreititin täytyy valita Helloprotokollan avulla Linkkikantojen synkronointi yksinkertaistuu Varaedusreitin (backup designated router) valitaan samalla kertaa Yleislähetysverkko kuvataan virtuaalireitittimen avulla Linkit virtuaalireitittimestä reitittimiin ovat verkkolinkkejä (network link) dusreititin mainostaa täisyys = 0 Linkit reitittimistä virtuaalireitittimeen Reitittimet mainostavat OSPF-49 OSPF levitysprotokolla yleislähetysverkossa Reititin X,... dusreititin Mainos -> 224.0.0.6 (kaikki edusreitittimet) Varaedusreititin Levitys -> 224.0.0.5 (kaikki OSPF reitittimet) Muut linkit ei tarvitse käsitellä kuittauksia kaikilta muilta verkon reitittimiltä Varaedusreititin on mahdollisimman hiljaa OSPF-50

OSPF levitysprotokolla ei-yleislähetysverkossa i-yleislähetysverkoissa (esim. TM, X.25) OSPF toimii samoin kuin yleislähetysverkoissa paitsi, että yleislähetykset korvataan yksipistelähetyksillä dusreititin B Varaedusreititin Reititin X,... Mainos dusreititin Varaedusreititin Levitys Muut linkit F Kiinteä yhteys edusreitittimeen Kiinteä yhteys varareitittimeen Valinnainen yhteys muiden reitittimien välillä (muu liikenne) Huom: kiinteitä yhteyksiä kannattaa minimoida, koska ne ovat kalliita OSPF-51 Jakamalla laaja verkko alueisiin OSPF helpottaa levitystä ja pienentää linkkikantoja lue 5 luerajareititin lue 1 luerajareititin luerajareititin Levitysprotokollan raja Runkoverkkoalue luerajareititin lue 4 lue 2 luerajareititin luerajareitittimessä on sekä alueen että rungon linkkikannat lue 3 Kukin alue koostuu joukosta aliverkkoja OSPF-52

Muiden alueiden (ali)verkot kuvataan yhteenvetotietueissa, joiden mitta lasketaan RIP:n tapaan lueen linkkikanta: a1, a2, a3 Rungon ja alueen aliverkkotietueet (summary records) B2,B4 täisyys Bx bz tai Bx cy (eli mittoja summataan). Ulkoiset tietueet B2,B4 BB0,BB1 Kaikilla alueilla samat tiedot 1 a2 BB0 b2 B2 Runko b1 BB1 b6 B1 c1 2 lue a1 b3 b5 c2 lue 3 a3 B4 b4 B3 c3 4 Hierarkia i silmukoita OSPF-53 OSPF elpyy helposti alueiden vikatilanteista BB0 b1 Runko b2 BB1 b6 B2 ja B4 mainostavat vain niitä verkkoja, jotka ne todella voivat saavuttaa: B2: a2 ja B4: a3. 1 x x x a2 lue B2 b3 B1 b5 c1 lue 2 c2 Runko ei tunne lueen tarkkaa rakennetta, vaikkakin se tuntee :n kaikki saavutettavat aliverkot. 3 a3 B4 b4 B3 c3 4 OSPF-54

Virtuaalilinkki voi pelastaa rungon jakaantuessa lohkoihin vikojen takia 1 a1 3 a2 lue a3 BB0 x x x B2 b3 B4 b1 Runko b4 BB1 b6 B1 x x x B3 c1 lue c3 2 c2 4 Virtuaalilinkki alueen kautta: etäisyys=c1+c2+c3 OSPF-55 Tynkäalueella (stub area) kaikki ulkoiset reitit summataan oletusreittiin Jos OSPF alueella on vain yksi reunareititin, kaikki liikenne ulkoiseen Internetiin ja ulkoisesta Internetistä kulkee tämän reunareitittimen kautta. i maksa vaivaa mainostaa kaikkia Internetin reittejä tällaisella alueella. Reunareitittimiä voi olla myös useita, mutta niistä ei voi valita sopivinta kohteen perusteella. NSS - Not So Stubby rea on alue, jolla kaikki ulkoiset reitit on summattu oletusreittiin, paitsi jotkut. OSPF-56

OSPF link state records OSPF-57 LS types in OSPF LS Type = 1 Router LS describes set of active If and neighbors LS Type = 2 Network LS describes a network segment (B or NBM) along with the Is of currently attached routers LS Type = 3 Summary LS LS Type = 4 S Border Router Summary LS LS Type = 5 S- external LS describes external routes LS Type = 6 Group Membership LS MOSPF Multicast LS Type = 7 NSS LS to import limited external info LS Type = 8 (proposed) external attributes LS in lieu of Internal BGP Hierarchical Routing NBM = Non-Broadcast Multiple ccess, esim TM OSPF-58

lueen OSPF reitittimillä on samansisältöinen linkkien tilatietokanta Yhteinen linkintilamainoksen otsikko LS ikä optiot LS tyyppi Linkin tila I vain Mainostava reititin LS järjestysnumero LS tarkistussumma pituus 32 bittiä LS ikä: Sekunteina mainoksesta Optiot: - ulkoiset linkit T - palvelun tyyppiin perustuva reititys LS tietuetyypit 1. Reititin (router LS) 2. Verkko (network LS) 3. IP-verkon yhteenveto 4. Reunareitittimen yhteenveto 5. Ulkoinen yhteenvedoilla on sama formaatti 6. Monilähetys LS 7. NSS tietue 8. jne... OSPF-59 LS Sequence Numbers Lollipop sequence space 1-N N-2 0 N/2 N = 2 31 If one of the number is < 0 The higher number is newer If both numbers are 0 If (b-a) < (N-1)/2 then b is newer OSPF-60

Router LS (type 1) RouterType 0 Number of links Link I Link data Type # TOS TOS 0 metric TOS=x 0 TOS x metric TOS=y 0 TOS y metric... TOS=z 0 TOS z metric Router type -bit (xternal) This router is an area-border router B-bit (Border) This router is a border router TOS 0 metric when no TOS is used Type 1. Link is a point-to-point link to another router Link I = router s OSPF I, link data = router s interface address 2. Link connects to a transit network Link I = IP address of designated router s interface, link data = router s interface address 3. Link connects to a stub network Link I = Network/subnet number, link data = network/subnet mask OSPF-62 xample of the Router LS (2,5) 10.1.1.1 (1,3) (1,5) (1,3) (3,3) 10.1.1.3 (2,3) 10.1.1.2 (3,1) (2,1) (1,1) (1,1) (3,3) 10.1.1.5 (2,3) 10.1.1.4 (3,10) (2,10) (2,6) (1,6) 10.1.1.6 0=ordinary 1=pt-t-pt 1=pt-t-pt 3=stub network Router 10.1.1.1 s router-ls: LS ge = 0 seconds Options LS type=1 Link State I = 10.1.1.1 dvertising Router = 10.1.1.1 LS Sequence Number = 0x80000006 hecksum= 0x9b47 Length = 60 bytes RouterType=0 0 Nrof links = 3 Link I = 10.1.1.2 (neighb) Link ata = IF-index 1 (unnum) Type=1 #TOS=0 Metric=3 Link I = 10.1.1.3 (neighb) Link ata = IF-index 2 (unnum) Type=1 #TOS=0 Metric=5 Link I = 10.1.1.1 Link ata = 255.255.255.255 Type=3 #TOS=0 Metric=0 -bit 1=Router LS MIB-II IF-index Output ost Length = 24 + 3 * 12 = 60 bytes Router with 100 interfaces: Length = 24 + 100 * 12 = 1224 bytes OSPF-63

Network Link LS (type 2) Network mask ttached router ttached router... tttached router dvertised by designated routers for transit networks Link state I = IP interface I ttached router = OSPF identifier of the attached router OSPF-64 Summary Link LS (type 3,4) 0 TOS=x TOS=y TOS=z For IP networks LS type = 3 Network mask of network/subnet Link state I = IP network/subnet number For border routers LS type = 4 Network mask = FFFFFFFF Link state I = IP address of border router One separate advertisement for each destination Network mask 0 TOS 0 metric 0 TOS x metric 0 TOS y metric... 0 TOS z metric OSPF-66

xternal Link LS (type 5) Network mask,tos=0 0 TOS 0 metric xternal route tag (0),TOS=x 0 TOS x metric xternal route tag (x)...,tos=z 0 TOS z metric xternal route tag (z) dvertised by border routers Information from external gateway protocols (BGP-4) One destination per record Link state I = IP network/subnet of destination Network mask = network/subnet mask -bit indicates that distance is not comparable to internal metrics Larger than any internal metric Route tag is only used by border routers (not used by OSPF) OSPF-67 stub network omputation of routes external destination OSPF router OSPF router transit network stub network external destination OSPF router OSPF router summarized network Separate routes for each TOS and for TOS 0 Possibly unreachable destainations for some TOS if not all routers support TOS routed with TOS 0 stub network summarized network OSPF-68

OSPF protokolla OSPF-71 OSPF packets the protocol itself OSPF works directly on top of IP. OSPF protocol number is 89. For most packets TTL = 1, except for hierarchical routing estination IP address = Neighbors IP address or llospfrouters (224.0.0.5) or llrouters (224.0.0.6) Packet types are Type 1: Hello Type 2: atabase escription packet Type 3: Link State Request packet Type 4: Link State Update packet Type 5: Link State cknowledgement packet OSPF-72

OSPF protokolla toimii suoraan IP:n päällä OSPF:ssä on 3 osaprotokollaa: 1. Huomio (hello) protokolla 2. Tiedonvaihto (exchange) protokolla 3. Levitys (flooding) protokolla OSPF sanomien yhteinen otsikko on: Versio Tyyppi Paketin pituus Reitittimen I lueen tunnus Tarkistussumma utentikointityyppi utentikointi utentikointi OSPF nykyversio on 2. Tyyppi erottelee OSPF sanomat toisistaan utentikointityyppi 0 = i autentikointia 1 = Salasana Rajallinen merkitys 2 = Kryptografinen autentikointi M5 0 vain I Pituus Kryptografinen järjestysnumero OSPF-73 Huomioprotokolla varmistaa, että linkit toimivat ja valitsee edus- ja varaedusreitittimen R1 R2 Otsikkotyyppi = 1 Hello ( kaikille OSPF reitittimille) Verkkomaski Huomioväli Optiot Vanhenemisväli dusreititin Varaedusreititin Naapuri --- Naapuri - lista naapureista, joilta on tullut viestejä viimeisen vanhenemisvälin aikana Huomioväli kertoo, kuinka usein paketteja lähetetään. Prioriteetti kertoo kelpoisuudesta edusreitittimeksi. Huomioviestien pitää kulkea linkillä molempiin suuntiin, jotta linkki kelpaisi reitiksi Naapuri Prioriteetti Optiot = ulkoisia linkkejä T = TOS reititys onnistuu. dusreititin ja varaedusreititin = 0 jos ei tiedossa OSPF-74

Huomioprotokollan avulla valitaan edus- ja varaedusreititin 1. Vaalikelpoisuus saavutetaan yhden vanhenemisvälin jälkeen mikäli kaksisuuntainen saavutettavuus on OK. 2. Varaedusreitittimeksi valitaan korkeimman prioriteetin omaava niistä, jotka ilmoittautuivat. Tasatilanteessa valitaan suurimman I:n omaava. 3. Jos kukaan ei ilmoittautunut varaedusreitittimeksi, valitaan korkeimman prioriteetin omaava naapuri. Tasatilanteessa suurimman I:n omaava. 4. dusreitittimeksi valitaan ilmoittautuneista yo. säännöllä. 5. Jos yksikään ei ilmoittaudu edusreitittimeksi, varaedusreititin ylennetään. Kohdat 2 ja 3 suoritetaan uudestaan varaedusreitittimen valitsemiseksi. 6. Muutoksia minimoidaan siten, että korjattu entinen edusreititin ei kiirehdi ilmoittautumaan uudelleen. Kohtia 2...5 suoritetaan jatkuvasti. OSPF-75 R1 Vaihtoprotokolla alkusynkronoi linkkikannan edusreitittimen kannan kanssa (1) dd_req (I=1,M=1,Ms=1) dd_req (I=1,M=1,Ms=0) dd_req (I=0,M=1,Ms=1) dd_req (I=0,M=1,Ms=0) dd = data description M = more Vaihtoprotokolla käyttää tietokannan kuvauspaketteja (database description packets) nsin valitaan master ja slave R2 Masterin valinta Kuvausten vaihto I = initialize Ms = Master/slave Otsikkotyyppi = 2 (dd) 0 0 Optiot dd järjestysnumero 0IMMs Jos molemmat ilmoittautuvat mastereiksi, korkein osoite voittaa Uudelleenlähetys jos paketti hukataan Sama järjestysnumero vastauksessa OSPF-76

R1 Vaihtoprotokolla alkusynkronoi linkkikannan edusreitittimen kannan kanssa (2) dd_req (I=1,M=1,Ms=1) dd_req (I=1,M=1,Ms=0) dd_req (I=0,M=1,Ms=1) dd_req (I=0,M=1,Ms=0) dd = data description M = more Master lähettää oman kantansa kuvauksen järjestysnumeroiduissa paketeissa Slave kuittaa paketit lähettämällä vastaavat omat kuvauksensa. R2 Masterin valinta Kuvausten vaihto I = initialize Ms = Master/slave Otsikkotyyppi = 2 (dd) 0 0 Optiot 0IMMs dd järjestysnumero Linkin tilatyyppi Linkin tila I Mainostava reititin Linkin tilan järjestysnumero Linkin tilan tark.summa Linkin tilan ikä --- Vaihto jatkuu kunnes molemmat ovat lähettäneet omat kuvauksensa. (M=0) rot kirjataan kyseltävien tietueiden listaan. OSPF-77 R1 Tietueiden sisältö kysellään pyyntöpaketeilla, jotka kuitataan levitysprotokollan paketein rq levitysprotokollan mainos rq = request Vastausta odotetaan uudelleenlähetyksen väli. Jos ei vastausta, pyyntö toistetaan. Jos kyseltävät tietueet eivät mahdu yhteen pakettiin, tietueet jaetaan useaan kyselyyn. Jonkin mennessä pieleen, palataan roolien uudelleen neuvotteluun. Tietuesisältöjen kysely voi alkaa heti, kun yksikin eroava tietue on havaittu, jolloin dd-pakettien ja rq-pakettien vaihto tapahtuu rinnan. Määrätty otsikkotyyppi = 3 (rq) Linkin tilatyyppi Linkin tila I Mainostava reititin --- OSPF-78

Reititin X,... Levitysprotokolla ylläpitää alueen linkkikantojen yhtenäisyyttä Mainos Kuittaus dusreititin Varaedus r otsikkotyyppi = 4 (upd.) Mainosten lukumäärä Linkin tilamainokset (ks.tietueformaatti) --- Levitys otsikkotyyppi = 5 (ack.) Linkin tilamainosten otsikot --- lkuperäisen mainoksen lähettää aina linkistä vastaava reititin. Mainosta levitetään levityssääntöjen mukaan koko alueelle (age = age + 1). Uuden tietueen kuittaus voidaan B verkossa korvata levityssanomalla Yksi ack voi kuitata monta mainosta. Viiveen avulla saadaan monta kuittausta samaan pakettiin. OSPF-79 Summary of OSPF subprotocols Hello protocol atabase exchange Flooding protocol Hello (1) X (2) LS rq (3) LS upd (4) LS ack (5) X X X X X X Server ache Synchronization Protocol (SSP) is OSPF without ijkstra s algorithm and with more generic data objects. OSPF-80

Linkkitietueilla on ikä, vanhat poistetaan kannasta (1) Vanhat tiedot on poistettava kannasta Kaikilla solmuilla on oltava samat tiedot Poistot täytyy synkronoida OSPF:n linkkitietuet vanhenevat Ikä = 0 kun tietue luodaan Ikä = mainosten kulkemien linkkien lkm + sekunnit vastaanotosta Maksimi-ikä on 1 tunti i käytetä reittien laskennassa Poistettava Jokaista tietuetta pitää mainostaa vähintään 30 min välein. Uusi mainos nollaa iän ja inkrementoi tietueen järjestysnumeron. OSPF-81 Linkkitietueilla on ikä, vanhat poistetaan kannasta (2) Kun ikä tulee täyteen (Maxge = 1 h) tietue poistetaan Reititin on lähetettävä mainos naapurille kun se poistaa vanhentuneen tietueen Levitysalgoritmi tutkii vastaanotetun tietueen iän 1. Maxge mainos hyväksytään ja levitetään - tämä poistaa vanhan tiedon. 2. Jos mainoksen ikäero kantaan on pieni, mainosta ei levitetä, jotta saman tiedon kopiot eivät kuormittaisi verkkoa. Tämä tapahtuu normaalissa levityksessä kun tietue saapuu eri solmujen kautta. 3. Jos mainoksen ikäero kantaan on suuri (>Maxgeiff), uusin mainos hyväksytään ja levitetään. Tässä tapauksessa reititin on todennäköisesti käynnistety uudelleen. 4. Jos Maxge tietuetta ei löydy, mainos ei aiheuta toimenpiteitä, (koska reititin on jo ehtinyt poistaa vanhan tiedon.) OSPF-82

OSPF timeouts - LS ge field onstant MinLSrrival MinLSInterval heckge Maxgeiff LSRefreshTime Value 1 second 5 seconds 5 min min 15 15 min min 30 30 min min ction of of OSPF router Max Max rate rate at at which a router will will accept updates of of any any LS LS via via flooding Max Max rate rate at at which a router can can update an an LS LS Rate Rate to to verify an an LS LS hecksum in in B B When ges ges differ more more than than 15 15 min, min, they they are are considered separate. Smaller LS LS age age --newer! Router must must refresh any any self-originated LS LS whose age age has has reached 30 30 min. min. Maxge 1 hour hour LS LS is is removed from from B. B. OSPF-83 The purpose of hierarchical routing in OSPF is to reduce routing table growth RT size Flat routing linear growth Logarithmic growth using areas etc. Number of network segments The cost is: sometimes suboptimal routes. OSPF-84

xample of routing hierarchy 10.0.0.0/8 10.1.3 10.1. 10.1.1 10.1.2 10.3.3 10.3. 10.3.1 10.3.2 10.2.3 10.2. 10.2.1 10.2.2 xample: - 16 segments in each lowest level network - flat routing: RTsize= 16*9=144 - areas 10.1.1: 16 local routes + 10.1.2/24 10.1.3/24 10.2/16 10.3/16 == 20 RT entries! OSPF-85 OSPF supports 4 level routing hierarchy rea 3 rea 2 Internet Level escription 1 Intra-area routing 2 Inter-area routing 3 xternal Type 1 metrics Backbone 4 xternal Type 2 metrics rea 1 RIP cloud Type 1 metrics are of the same order as OSPF metrics, e.g. hop count (for RIP and OSPF) Type 2 metrics are always more significant than OSPF internal metrics OSPF-86

Why is it difficult to route packets around network congestion? BBN RPNT link state metric varied with the length of the output queue of the link lead to route trashing. The problem is there is no route pin-down for existing traffic. By limiting the range of the metric changes, an equilibrium could be reached. Nevertheless routing instability is the problem. When QoS or lass of Service a la iffserv is introduced this problem again becomes important. OSPF-87 OSPF development history IR 1987 1989 1991 1993 1995 1997 OSPF Group formed OSPFv1 published RF 1131 OSPFv2 published RF 1247 RF 1583 OSPF update Becomes recommended ryptographic authentication Point-to-multipoint interfaces MOSPF OSPFv2 updated RF 2178 OSPF-88