täisyysvektoriprotokollat täisyysvektoriprotokollien periaatteet Reittisilmukat ja niiden poistaminen ellmanford algoritmi RIPprotokolla S8. / Fall / RKa, N V
täisyysvektoriprotokollien periaatteet S8. / Fall / RKa, N V
RIP Routing Information Protocol on sisäisen reitityksen perusprotokolla RIP on etäisyysvektoriprotokolla Perustuu ellmanford algoritmiin Reititystaulu sisältää tietoja muista tunnetuista solmuista etäisyys linkki to Link 5 Solmut lähettävät säännöllisesti reititystauluun perustuvat etäisyysvektorit jokaiselle linkilleen Solmut päivittävät reititystauluaan vastaanotettujen etäisyysvektoreiden avulla istance S8. / Fall / RKa, N V
Tarkastellaan etäisyysvektoriprotokollien toimintaperiaatetta simerkkiverkko, jossa solmut,,,, jalinkit,,,,5,. 5 lkutila: Solmut tuntevat omat osoitteensa ja liitäntänsä, mutta ei muuta. Solmun reititystaulu: Solmusta solmuun Taulua vastaa etäisyysvektori =. S8. / Fall / RKa, N V
Reititystaulujen muodostus käynnistyy, kun kaikki solmut lähettävät toisilleen omat etäisyysvektorinsa kaikista liitännöistä = = 5 Tarkastellaan vastaanottoa solmussa. luksi :n taulu: Solmusta solmuun. vastaanottaa etäisyysvektorin =. lisää heti + etäisyysvektoriin ÿ =. etsii tulosta omasta taulusta, ei löydy. lisää saamansa tiedon reititystauluunsa, tulos on Solmusta solmuun 5. muodostaa etäisyysvektorinsa =, = S8. / Fall / RKa, N V5
muodostaa oman vektorinsa ja lähettää sen kaikille naapureille ÿ = > = =, = 5 ÿ ÿ S8. / Fall / RKa, N V
lähettää vektorinsa kaikille naapureille ÿ 5 =, = ÿ = == = ÿ no change S8. / Fall / RKa, N V7
Solmut, joiden reititystaulut muuttuivat lähettävät uudet etäisyysvektorit naapureille =, =, = ÿ ÿ 5 =, =, = 5 5 =, =, =, = ÿ 5 S8. / Fall / RKa, N V8
Muutokset lähetetään taas... ÿ ÿ =, =, =, =, = S8. / Fall / RKa, N =,=,=,= 5 5 5 ÿ =,=,=, =,= 5 5,, ja muodostavat vielä vektorit, lähettävät ne mutta ne eivät enää aiheuta muutoksia. V9
Processing of received distance vectors = destination d = distance + ink cost L = link of reception Yes RT No dd (,L,d) to RT L==RT(,l) Yes ccept d as RT(,d) Note: this is simplified, shows only the principle! Legend: RT RT(dest) RT(dest, x) No Routing Table RTentry Field x of the entry d<rt(,d) Yes Update (,L,d) to RT(,l,d) S8. / Fall / RKa, N V
Linkin katkeaminen S8. / Fall / RKa, N V
Linkin katkeaminen käynnistää päivityskierroksen laittaa linkin kautta saavutettavien solmujen etäisyydeksi ääretön. ÿ Inf. Inf. Inf. ÿ Inf. Inf. =,=inf,=inf,=,= =,=inf,=,=inf,=inf 5 S8. / Fall / RKa, N V
, ja päivittävät reititystaulunsa =,=inf,=,=inf,=inf + =,=inf,=,=inf,=inf =,=inf,=inf,=,= 5 ÿ 5 5 Inf. ÿ Inf. ÿ 5 Inf. S8. / Fall / RKa, N V
ÿ,, generoivat etäisyysvektorinsa... Inf. 5 ÿ Inf. =,=,=inf,=,= =,=,=inf,=,= =,=,=inf,=,= ÿ S8. / Fall / RKa, N ÿ 5 V
,,, generoivat etäisyysvektorinsa ÿ ÿ ÿ 5 5 5 =,=inf,=,=,= =,=inf,=,=,= 5 =,=,=,=,= =,=,=,=,= Tuloksena on, että kaikki voivat taas kommunikoida kaikkien kanssa. S8. / Fall / RKa, N V5
Reittisilmukat S8. / Fall / RKa, N V
täisyysvektoriprotokolla voi synnyttää tilapäisen reittisilmukan 5 Oletetaan, että linkin 5 kustannus on 8 Stabiili lähtötila reiteillä :hen olisi: Keskitytään vain kunkin reitin ensimmäiseen linkkiin x ÿ x:stä Kustann us S8. / Fall / RKa, N V7
vioittuu =,=,=,=,= V :sta :hen saapuu ensin =,=,=,=,= 5 x ÿ x:stä Kustann us Inf. Välitila Kaikki viestit :hen ohjataan :lle, joka lähettää ne :lle, joka lähettää ne :lle... kunnes TTL=. (ouncing effect pallottelu) x ÿ x:stä Kustann us S8. / Fall / RKa, N V8
vioittuu =,=,=,=,= lähettää etäisyysvektorinsa =,=,=,=,= ÿ näkemä etäisyys :hen kasvaa :ään 5 Kaikki viestit :hen ohjataan :lle, joka lähettää ne :lle, joka lähettää ne :lle... kunnes TTL=. (ouncing effect pallottelu) x ÿ x:stä Kustann us S8. / Fall / RKa, N V9
ja lähettävät etäisyysvektorinsa =,=,=,=,= 5 x ÿ x:stä Kustann us 5 5 generoi uuden etäisyysvektorin =,=,=,=5,= ÿ näkemä etäisyys :hen kasvaa :een S8. / Fall / RKa, N :n lähettämät etäisyysvektorit eivät aiheuta muutoksia linkin kustannuksen takia V
lähettää uuden etäisyysvektorin =,=,=,=,= 5 x ÿ x:stä Kustann us 7 7 generoi uuden etäisyysvektorin =,=,=,=7,= ÿ näkemä etäisyys :hen kasvaa 8:een S8. / Fall / RKa, N V
lähettää uuden etäisyysvektorin =,=,=,=8,= 5 x ÿ x:stä Kustann us 8 9 9 8 generoi uuden etäisyysvektorin =,=,=,=9,= ÿ näkemä etäisyys :hen kasvaa :een S8. / Fall / RKa, N V
lähettää uuden etäisyysvektorin =,=,=,=,= 5 x ÿ x:stä 5 Kustann us 8 generoi uuden etäisyysvektorin =,=,=,=,= generoi uuden etäisyysvektorin =,=,=,=,=8 S8. / Fall / RKa, N V
lähettää uuden etäisyysvektorin 5 =,=,=,=,=8 x ÿ x:stä 5 Kustann us 9 9 8 S8. / Fall / RKa, N V
lähettää V:n, mutta taulut ovat jo OK 5 x ÿ Kustann x:stä us 9 9 5 8 =,=,=,=9,= Jokainen päivityskierros korjasi kustannuksia :lla. Prosessi etenee satunnaisessa järjestyksessä, koska siinä on aitoa rinnakkaisuutta. Prosessin aikana verkon tila on huono. Vprotokollasanomia voi hukkua pallottelevien käyttäjäviestien aiheuttamassa ruuhkassa. S8. / Fall / RKa, N V5
Irralliset saarekkeet aiheuttavat laskemisen äärettömään () on vikaantunut, ja siitä on toivuttu. Kaikki linkkikustannukset = ÿ 5 ÿ S8. / Fall / RKa, N V
Irralliset saarekkeet aiheuttavat laskemisen äärettömään () Myös linkki vikaantuu. ei ole ehtinyt lähettää etäisyysvektoriaan. ÿ 5 ÿ Inf. Inf. Inf. S8. / Fall / RKa, N V7
Irralliset saarekkeet aiheuttavat laskemisen äärettömään () ehtii lähettää etäisyysvektorinsa ensin: =,=,=,=,= lisää :n lähettämät tiedot reititystauluunsa. ÿ 5 ÿ S8. / Fall / RKa, N V8
Irralliset saarekkeet aiheuttavat laskemisen äärettömään () Tuloksena on silmukka. Kustannukset kasvavat :lla joka kierroksella. ÿ 5 5 5 On sovittava, että inf on maxetäisyyttä suurempi kustannus ÿ S8. / Fall / RKa, N V9
Silmukoita voidaan vähentää karsimalla Karsintasääntö: etäisyysvektoreista tietoa Jos solmu lähettää solmulle X solmun kautta, :n ei kannata yrittää tavoitella X:ää :n kautta. ÿ :n ei kannata mainostaa :lle lyhyttä etäisyyttään X:ään Toteutusvariaatiot:. ei mainosta etäisyyttään X:ään :lle lainkaan ( split horizon ) ÿ edellisen esimerkin silmukkaa ei synny. mainostaa :lle: X=inf. ( split horizon with poisonous reverse, myrkytetyt vektorit ) ÿ kahden solmun silmukat kuolevat heti. S8. / Fall / RKa, N V
Split horizon esimerkki ÿ Normally: sends: =,=,=,= Split horizon: sends: = Split horizon with poisonous reverse: sends: =,=inf,=inf,=inf S8. / Fall / RKa, N V
ÿ Normaalisti: Split horizon esimerkki lähettää: =,=,=,= Split horizon: lähettää : =,= Split horizon with poisonous reverse: lähettää : =,=inf,=,=inf, Huom: ri etäisyysvektori linkillä S8. / Fall / RKa, N V
Kolmen solmun silmukat ovat silti mahdollisia on vikaantunut, ja siitä on toivuttu. Kaikki linkkikustannukset = () 5 x ÿ x:stä 5 Kustann us S8. / Fall / RKa, N V
Kolmen solmun silmukat ovat silti mahdollisia Myös linkki vikaantuu. () lähettää etäisyysvektorinsa :hen ja :hen =,=,=inf,=inf,= 5 =,=,=inf,=inf,= x ÿ x:stä Kustann us 5 Inf. S8. / Fall / RKa, N V
Kolmen solmun silmukat ovat silti mahdollisia Myös linkki vikaantuu. () lähettää etäisyysvektorinsa :hen ja :hen =,=,=inf,=inf,=... Mutta :hen lähetetty etäisyysvektori hukataan X 5 =,=,=inf,=inf,= x ÿ x:stä Kustann us Inf. 5 Inf. S8. / Fall / RKa, N V5
Kolmen solmun silmukat ovat silti mahdollisia On :n aika mainostaa myrkytetyin vektorein () =,=inf,=,=,= 5 =,=,=inf,=inf,=inf ÿ ÿ 5 Inf. Inf. S8. / Fall / RKa, N V
Kolmen solmun silmukat ovat silti mahdollisia muodostaa myrkytetyt vektorit Kolmen solmun silmukka on valmis Reitit :hen eivät enää muutu, lasketaan äärettömään, mikä viimein purkaa silmukan: linkillä 5 kerrotaan kustannus, :n käsitys etäisyydestä :hen alkaa kasvaa... (5) 5 =,=,=,=,=inf x ÿ =,=inf,=inf,=inf,= x:stä 5 Kustann us S8. / Fall / RKa, N V7
Milloin Vprotokollan kannattaa lähettää Lähetyshetki on kompromissi: Tiedon välitön päivittäminen + Pakettien katoamisesta toipuminen + Naapureiden monitorointitarve + Kaikkien muutosten lähettäminen yhtä aikaa Protokollan aiheuttama liikennekuorma +=Nopeasti + = Hitaasti S8. / Fall / RKa, N V8
Silmukoita voidaan vähentää generoimalla V:t heti taulun muututtua Reititystaulukon riveillä on virkistys ja vanhenemisajastin RIP lähettää aina virkistysajastimen lauetessa heti kun muutos havaitaan Laukaistu päivitys nopeuttaa laskua äärettömään ja vähentää silmukoiden syntyä S8. / Fall / RKa, N V9
ellmanford algoritmi S8. / Fall / RKa, N V
ellmanford algoritmi () Vprotokollat perustuvat ellmanford algoritmiin Keskitetty versio:. Olkoon N solmujen lukumäärä ja M linkkien lukumäärä.. L on Mrivinen linkkitaulukko, L[l].m linkin mitta, L[l].s linkin alkupää, L[l].d linkin kohde. on N X N matriisi, jossa [i,j] on etäisyys i:stä j:hin. H on N X N matriisi, jossa H[i,j] on linkki, jolla i lähettää j:lle.. i.. N : etäisyys j i:stä j:hin : N S8. / Fall / RKa, N taulussa on molemmat suunnat erikseen! Sarake vastaa solmun etäisyysvektoria! V
ellmanford algoritmi () lustetut etäisyys ja linkkimatriisit.. i.. N :.. i.. N : j j : N täisyysmatriisi : N matriisi H i:stä j:hin S8. / Fall / RKa, N V
ellmanford algoritmi (). lustetaan: Jos i=j silloin [i,j] =, muuten [i,j]=inf. lustetaan H[i,j]=.. l ja kohteille k:asetai = L[l].s, j = L[l].d ja laske d =L[l].m + [j,k]. Jos d < [i,k], aseta [i,k] =d;h[i,k] =l.. Jos edes yksi [i,k] muuttui, toista kohta, muutoin algoritmi päättyy. (edellinen kalvo) S8. / Fall / RKa, N V
ellmanford algoritmi () luksi matriisissa täyttyvät yhden linkin päässä olevien solmujen väliset etäisyydet, seuraavaksi kahden linkin päässä olevat, jne. skelten lukumäärä N Kompleksisuus: O(M N ) Hajautetun algoritmin kompleksisuus: O(M N) S8. / Fall / RKa, N V
RIP Protokolla S8. / Fall / RKa, N V5
RIPprotokollan peruspiirteitä () Yksinkertainen protokolla. Käytössä jo ennen standardointia. RIP versio RF 58. 988 RIP:iä käytetään autonomisen järjestelmän sisällä. RIP toimii sekä jaetun median verkoissa (esim. thernet) että yksipisteverkoissa (pointtopoint). RIP toimii UP:n ja IP:n päällä. S8. / Fall / RKa, N V
RIPprotokollan peruspiirteitä () Reititystaulun rivi esittää isäntäkonetta, verkkoa tai aliverkkoa (subnet) <netid,,> esittää verkkoa <netid,subnetid,> esittää aliverkkoa <netid,subnetid,host> esittää isäntäkonetta <...> esittää reittiä ulos autonomisesta järjestelmästä Maski pitää konfiguroida käsin Lähetykset naapuriverkkoon aggregoidanan S8. / Fall / RKa, N V7
RIPprotokollan peruspiirteitä () täisyys (hop count) = polun peräkkäisten linkkien lukumäärä i muita kustannusfunktioita täisyys = ääretön RIP lähettää s välein Yli 8 s vanha reititysrivi ÿ etäisyys asetetaan äärettömäksi jastimen käynnistämiä lähetyksiä täytyy satunnaistaa, jotta RIP liikenne tasoittuisi. 5 s. RIP lähettää myös 5 s päivityksen jälkeen. RIP käyttää myrkytettyjä vektoreita S8. / Fall / RKa, N V8
RIP sanomaformaatti 8 bittiä 8 bittiä bittiä bittiä Komento Versio Täytyy olla nolla IP= Osoiteperheen tunniste IP osoite Täytyy olla nolla Täytyy olla nolla Mitta Täytyy olla nolla Komento: = Pyyntö, = Vaste Versio = Mitta: S8. / Fall / RKa, N V9
RIP reititystaulu Reititystaulun rivi sisältää Kohteen osoite täisyys kohteeseen Seuraavan reitittimen osoite Äsken päivitetty lippu Useita ajastimia (virkistys, vanhenemis...) S8. / Fall / RKa, N V5
simerkki Kernel reititystaulu # netstat nr Kernel routing table estination Gateway Genmask Flags Metric Ref Use Iface 7... * 55.55.55.55 UH lo 9.7.. * 55.55.55. U 7 eth 9.7.. 9.7.. 55.55.55. UG eth 9.7.. 9.7.. 55.55.55. UG eth S8. / Fall / RKa, N V5
Processing of Received istance Vectors = destination d = distance + L = link of reception Yes RT No dd (,L,d) to RT L==RT(,l) Yes ccept d as RT(,d) Note: this is simplified, shows only the principle! Legend: RT RT(dest) RT(dest, x) No Routing Table RTentry Field x of the entry d<rt(,d) Yes Update (,L,d) to RT(,l,d) S8. / Fall / RKa, N V5
RIP vastesanomat täisyysvektorit lähetetään vastesanomissa sekunnin välein Kaikki reititystaulun rivit ri linkeillä eri etäisyysvektori myrkytettyjen vektoreiden takia Yli 5 riviä ÿ useita sanomia Päivitysviestejä muutosten jälkeen Muuttuneet rivit 5 sekunnin viiveellä, jotta kaikki samaan muutokseen liittyvät päivitykset saataisiin samaan sanomaan Voidaan jättää pois kohteet joiden etäisyys on ääretön, jos next hop pysyy samana. S8. / Fall / RKa, N V5
RIP pyyntösanomat Käynnistyessä reititin voi pyytää reititystaulut naapureiltaan Täydellinen lista Samanlainen kuin normaali päivitys (+myrkytetyt vektorit) Osa reititystaulusta Virheiden etsintää varten i myrkytettyjä vektoreita S8. / Fall / RKa, N V5
Hiljaiset solmut Kun vain RIP oli käytössä, isäntäkoneet pystyivät kuuntelemaan reititysliikennettä ja ylläpitää omia reititystauluja Mikä reititin on lähinnä kohdetta? Mikä linkki, jos useita linkkejä? Nämä olivat hiljaisia solmuja, jotka vain kuuntelivat reititysliikennettä Nykyään myös RIP, OSPF, IGRP,... S8. / Fall / RKa, N V55
RIP versio S8. / Fall / RKa, N V5
RIP versio RF88 (87,89) Miksi? Yksinkertainen ja kevyt vaihtoehto OSPF:lle ja ISIS:lle RIP on rajoitetusti yhteensopiva päivitys RIP kone ymmärtää RIP konetta osittain Parannuksia utentikointi Seuraava linkki kenttä liverkkomaski IRtuki Ulkoisia reittejä Päivitykset multicastilla S8. / Fall / RKa, N V57
RIPversio sanomat 8 bittiä 8 bittiä bittiä Komento Versio Reititysalue Osoiteperheen tunniste Reittilippu utentikointi IP osoite liverkon maski Seuraava linkki Mitta Monta päällekkäistä S:ta samalla langalla Ulkoiset reitit merkataan IR S8. / Fall / RKa, N V58
Reititys aliverkosta toiseen () RIP:n aliverkkomaski ei ole tunnettu aliverkon ulkopuolella, vaan ulos kerrotaan ainoastaan verkkonumero ÿ liverkkoja (ja isäntäkoneita) ei voi erottaa toisistaan ÿ Kaikki aliverkot pitää yhdistää kaikkiin ja ulkoa reititettävä verkon lähimpään reitittimeen aliverkosta riippumatta RIP korjaa tilannetta kertomalla ulos aliverkon ja aliverkkomaskin ri pituisia maskeja saman verkon sisällä IR RIP ei ymmärrä S8. / Fall / RKa, N V59
Reititys aliverkosta toiseen ()... / 55.55..... / 55...... / 55.55.. F... / 55... S8. / Fall / RKa, N V
Reititysalue ja seuraava linkki S X S Y Reititin, jossa on reititystaulua X ja Y. F Seuraava linkki ÿ mainostaa X:ssä, että etäisyys F:ään on f ja seuraava linkki on! S8. / Fall / RKa, N V
Support for local multicast RIP broadcasts advertisements to all addresses on the wire Hosts must examine all broadcast packets RIP uses a multicast address for advertisements...9 No real multicast support needed, since packets are only sent on the local network ompatibility problems between RIP and RIP S8. / Fall / RKa, N V
Huomioita RIP:stä () Reitittimillä on spontaani taipumus synkronoida lähetyshetkensä. Tämä lisää virheiden todennäköisyyttä verkossa. Siksi lähetyshetket satunnaistetaan 5 s... 5 s välille. Syy: lähetysväli = vakio + sanoman pakkausaika + yhtä aikaa tulleiden sanomien käsittelyaika. S8. / Fall / RKa, N V
Huomioita RIP:stä () Kun RIP:ä käytetään ISN linkin yli Uusi puhelu / s ÿ kallista Hidas alusverkko ÿ jonojen pituudelle rajoituksia. RIP lähettää sanomansa (5 riviä/sanoma) putkeen ÿ RIP sanomia voi kadota. Korjausehdotus perustuu lähetysten kuittausmoodiin, jossa periodisia lähetyksiä ei tapahdu ÿ RIP sanomien puuttuessa oletetaan, että naapuri on edelleen tavoitettavissa ÿ Tieto kaikista vaihtoehtoisista reiteistä talletetaan. S8. / Fall / RKa, N V