Routing Information Protocol istance Vector Routing Principles Routing loops and countermeasures to loops ellman-ford route calculations RIP S8./RKa s-00 -
RIP - Routing Information Protocol on sisäisen reitityksen perusprotokolla RIP on etäisyysvektoriprotokolla. 5 simerkkiverkko, jossa solmut,, Tarkastellaan V-protokollien toimintaperiaatetta lkutila: Noodit tuntevat omat osoitteensa ja liitäntänsä, mutta ei muuta Solmu muodostaa reititystaulun: :sta solmuun Linkki Kustannus paikallinen 0 Taulua vastaa etäisyysvektori =0. S8./RKa s-00 -
Reititystaulujen muodostus käynnistyy, kun kaikki solmut lähettävät toisilleen omat etäisyysvektorinsa kaikista liitännöistä Tarkastellaan vastaaottoa solmussa 5 =0 :sta solmuun Linkki Kustannus paikallinen 0. lisää heti etäisyysvektoriin + --> = ja. etsii tulosta omasta taulusta, ei löydy. lisää saamansa tiedon reititystauluunsa, tulos on :sta solmuun Linkki Kustannus paikallinen 0 S8./RKa s-00 -
muodostaa oman vektorinsa ja lähettää sen kaikille naapureille =>=0 :sta Linkki Kustannus paikallinen 0 5 5 =0, = =0, = :sta Linkki Kustannus - 0 :sta Linkki Kustannus - 0 = == = ei huomioida S8./RKa s-00 -
Solmut, joiden reititystaulut muuttuivat lähettävät uudet etäisyysvektorit naapureille :sta Linkki Kustannus :sta Linkki Kustannus - - 0 =0, =, = 0 5 S8./RKa s-00-5 =0, =, = 5 5 =0, =, =, = :sta Linkki Kustannus - 0 5
Muutokset lähetetään taas... =0, =, =, =, = :sta Linkki Kustannus - :sta Linkki Kustannus - 0 0 =0,=,=,= 5 5 5 S8./RKa s-00 - :sta Linkki Kustannus =0,=,=, =,= - 5 5 0,, ja muodostavat vielä vektorit, lähettävät ne mutta ne eivät enää aiheuta muutoksia.
Linkin katkeaminen käynnistää päivityskierroksen :sta Linkki Kustannus - 0 inf. inf. inf. :sta Linkki Kustannus - 0 inf inf =0,=inf,=,=inf,=inf =0,=inf,=inf,=,= xxxx 5 S8./RKa s-00-7
, ja päivittävät reititystaulunsa =0,=inf,=,=inf,=inf =,=inf,=,=inf,=inf :sta Linkki Kustannus - 0 inf =0,=inf,=inf,=,= :sta Linkki Kustannus xxxx - 0 5 inf 5 5 :sta Linkki Kustannus - 0 inf 5 S8./RKa s-00-8
,, generoivat etäisyysvektorinsa... :sta Linkki Kustannus - 0 inf.. =0,=,=inf,=,= xxxx 5 :sta Linkki Kustannus - 0 inf =0,=,=inf,=,= =0,=,=inf,=,= :sta Linkki Kustannus :sta Linkki Kustannus - 0-0 5 S8./RKa s-00-9
,,, generoivat etäisyysvektorinsa :sta Linkki Kustannus - 0. :sta Linkki Kustannus - 0 :sta Linkki Kustannus - 0 5 5 5 =0,=inf,=,=,= =0,=inf,=,=,= xxxx 5 =0,=,=,=,= =0,=,=,=,= Tuloksena on, että kaikki voivat taas kommunikoida kaikkien kanssa. S8./RKa s-00-0
V-protokolla voi synnyttää transientin reittisilmukan 5 Oletetaan, että linkin 5 kustannus on 8. Stabiili lähtötila reiteillä :hen olisi: x:sta :hen Linkki x:stä Kustannus Keskitytään vain kunkin reitin ensimmäiseen linkkiin -> -> -> - 0 -> -> S8./RKa s-00 -
=0,=,=,=,= V :sta :hen saapuu ensin Linkki vioittuu... =0,=,=,=,= xxxxxx 5 x:sta Linkki :hen x:stä -> -> Kustannus inf -> - 0 -> -> välitila Kaikki viestit :hen ohjataan :lle, joka lähettää ne :lle, joka lähettää ne :lle... kunnes TTL=0. (ouncing effect - pallottelu) x:sta Linkki :hen x:stä -> -> Kustannus -> - 0 -> -> S8./RKa s-00 -
ja lähettävät etäisyysvektorinsa x:sta Linkki :hen x:stä Kustannus =0,=,=,=,= xxxxxx 5 -> -> 5 -> - 0 -> -> generoi uuden etäisyysvektorin 5 =0,=,=,=5,= --> näkemä etäisyys :hen kasvaa :een S8./RKa s-00 -
lähettää uuden etäisyysvektorin =0,=,=,=,= xxxxxx 5 x:sta :hen -> -> Linkki x:stä Kustannus 7 -> - 0 -> -> 7 generoi uuden etäisyysvektorin =0,=,=,=7,= --> näkemä etäisyys :hen kasvaa 8:een S8./RKa s-00 -
lähettää uuden etäisyysvektorin =0,=,=,=8,= xxxxxx 5 x:sta :hen -> -> Linkki x:stä Kustannus 8 9 -> - 0 -> -> 9 8 generoi uuden etäisyysvektorin =0,=,=,=9,= --> näkemä etäisyys :hen kasvaa 0:een S8./RKa s-00-5
lähettää uuden etäisyysvektorin x:sta :hen -> Linkki x:stä Kustannus 0 =0,=,=,=0,= xxxxxx -> -> - 0 5 -> -> 5 8 generoi uuden etäisyysvektorin =0,=,=,=,= generoi uuden etäisyysvektorin =0,=,=,=,=8 S8./RKa s-00 -
lähettää uuden etäisyysvektorin xxxxxx 5 x:sta :hen -> -> Linkki x:stä Kustannus 0 9 -> - 0 -> -> 5 9 8 =0,=,=,=,=8 S8./RKa s-00-7
lähettää V:n, mutta taulut on jo OK x:sta :hen -> -> Linkki x:stä Kustannus 0 9 -> - 0 -> -> 5 9 8 5 =0,=,=,=9,= xxxxxx Jokainen päivityskierros korjasi kustannuksia :lla Prosessi etenee satunnaisessa järjestyksessä, koska siinä on aitoa rinnakkaisuutta. Prosessin aikana verkon tila on huono, V-protokollasanomia voi hukkua pallottelevien käyttäjäviestien aiheuttamassa ruuhkassa. S8./RKa s-00-8
Irralliset saarekkeet aiheuttavat laskemisen äärettömään Kun linkin vikaantumisesta on toivuttu, myös linkki vikaantuu. Kaikki linkkikustannukset=. =0,=,=,=,= xxxxx 5 :sta Linkki Kustannus - 0 inf inf inf xxxxx ei ehdi lähettää V:tään :sta Linkki Kustannus - 0 Tuloksena on silmukka, kustannukset kasvavat :lla joka kierroksella. On sovittava, että max etäisyyttä suurempi kustannus = inf. S8./RKa s-00-9
Silmukoita voidan vähentää karsimalla etäisyysvektoreista tietoa ja generoimalla V:t heti taulun muututtua Karsintasääntö = 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 edellisen esimerkin silmukkaa ei synny. mainostaa :lle: X=inf. ( split horizon with poisonous reverse ) kahden solmun silmukat kuolee heti. S8./RKa s-00-0
Kolmen solmun silmukat ovat silti mahdollisia x:sta :hen Linkki x:stä Kustannus -> -> 5 -> inf x:sta :hen Linkki x:stä Kustannus -> inf -> 5 -> inf xxxxx xxxxx X 5 :hen lähetetty vektori hukataan =0,=,=inf,=inf,= S8./RKa s-00 -
On :n aika mainostaa myrkytetyin vektorein :sta Linkki Kustannus - 0 =0,=inf,=,=,= xxxxx 5 =0,=,=inf,=inf,=inf xxxxx :sta Linkki Kustannus S8./RKa s-00 - - 0 inf inf 5 i muutu
Kolmen solmun silmukka on valmis... muodostaa myrkytetyt vektorit =0,=inf,=inf,=inf,= xxxxx =0,=,=,=,=inf xxxxx 5 x:sta :hen Linkki x:stä Kustannus -> -> 5 -> 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... S8./RKa s-00 -
Received istance Vectors are processed so = estination, d = distance + L = link of reception Yes RT No No L=RT(,l) dd (,L,d) to RT Yes ccept d as RT(,d) Note: this is simplified, shows only the principle! Legend: RT - Routing Table RT(dest) - RT-entry RT(est, x) - x-field of the entry) d< RT(,d) Yes Update (,L,d) to RT(,l,d) S8./RKa s-00 -
Milloin V-protokollan 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 - hidastele S8./RKa s-00-5
Tapahtuman laukaisemat päivitykset parantavat RIP:n toimintaa Reititystaulukon riveillä on virkistys- ja vanhenemisajastin RIP lähettää aina virkistysajastimen lauetessa ja heti kun muutos havaitaan Laukaistu päivitys nopeuttaa laskua äärettömään ja vähentää silmukoiden syntyä S8./RKa s-00 -
V-protokollat perustuvat ellman-ford Keskitetty versio: algoritmiin. Olkoon N solmujen lukumäärä ja M linkkien lukumäärä.. L on M-rivinen linkkitaulukko, L[l].m - linkin mitta, L[l].s - linkin alkupää L[l].d - linkin kohde. on N N matriisi, jossa [i,j] on etäisyys i:stä j:hin. H on N N matriisi, jossa H[i,j] on linkki, jolla i lähettää j:lle.. i.. N : j : N etäisyys i:stä j:hin Linkkitaulussa on molemmat suunnat erikseen! Sarake vastaa solmun etäisyysvektoria! S8./RKa s-00-7
ellman-ford algoritmi on. lustetaan: Jos i=j silloin [i,j] = 0, muuten [i,j] = inf. lustetaan H[i,j] = -.. l ja kohteille k aseta i = 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. S8./RKa s-00-8
lustetut etäisyys- ja linkkimatriisit ovat.... N 0 : 0 0 : 0 N 0 H.... N - - - - - : - - - - - - - - - - : - - - - - N - - - - - Huom: Linkkivektori sisältää molemmat suunnat erikseen. luksi -matriisissa täyttyvät yhden linkin päässä olevien solmujen väliset etäisyydet, seuraavaksi kahden linkin päässää olevat, jne. S8./RKa s-00-9
RIP protokollan peruspiirteitä ovat RIP versio - RF-058 RIP:iä käytetään autonomisen järjestelmän sisällä Reititystaulun rivi esittää isäntäkonetta, verkkoa tai aliverkkoa (subnet) <netid,subnetid,host> esittää isäntäkonetta <netid,subnetid,0> esittää aliverkkoa <netid,0,0> esittää verkkoa <0.0.0.0> esittää reittiä ulos autonomisesta järjestelmästä täisyys = hop count = polun peräkkäisten linkkien lukumäärä, =inf. S8./RKa s-00-0
RIP:n piirteitä ovat myös RIP toimii sekä jaetun median (thernet) että yksipisteverkoissa (pt-to-pt) RIP toimii UP:n ja IP:n päällä. RIP lähettää 0 s välein, yli 80s vanha reititysrivi --> etäisyys asetetaan inf:iin jastimen käynnistämiä lähetyksiä täytyy satunnaistaa, jotta RIP liikenne tasoittuisi. RIP käyttää myrkytettyjä vektoreita Lähetykset naapuri-aliverkkoon aggregoidaan S8./RKa s-00 -
RIP sanomaformaatti on 8 8 komento() Versio() täytyy olla nolla () Osoiteperheen tunniste täytyy olla nolla () IP osoite () täytyy olla nolla () täytyy olla nolla () mitta () Pyyntö (), vaste () bittiä S8./RKa s-00 -
RIP reititystaulun rivi sisältää Kohteen osoite täisyys kohteeseen Seuraavan reitittimen osoite Äsken päivitetty -lippu Useita ajastimia (virkistys-, vanhenemis-...) S8./RKa s-00 -
RIP versio - sanomat RF-88 (87,89) 8 8 komento() Versio() Reititysalue () Osoiteperheen tunniste Reittilippu() IP osoite () liverkon maski () Seuraava linkki () mitta () Monta päällekkäistä S:ta samalla langalla -->autentikointi Ulkoiset reitit merkataan RIP- on rajoitetusti yhteensopiva päivitys (RIP- kone ymmärtää RIP- konetta osittain.) IR S8./RKa s-00 -
Reititys aliverkosta toiseen RIP-:n aliverkkomaski ei ole tunnettu aliverkon ulkopuolella, vaan ulos kerrotaan ainostaan netid --> Isäntäkonetta ja aliverkkoa ei voi erottaa toisistaan --> Kaikki aliverkot pitää yhdistää kaikkiin ja ulkoa reititettävä verkon lähimpään reitittemeen aliverkosta riippumatta RIP- korjaa tilannetta kertomalla ulos aliverkon ja aliverkkomaskin S8./RKa s-00-5
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./RKa s-00 -
Huomioita RIP:stä Reitittimillä on spontaani taipumus synkronoida lähetyshetkensä. Tämä lisää virheiden todennäköisyyttä verkossa. Siksi lähetyshetket satunnaistetaan 5s... 5s välille. Syy: lähetysväli = vakio+sanoman pakkausaika+yhtä aikaa tulleiden sanomien käsittelyaika. Kun RIP:ä käytetään ISN linkin yli -->uusi puhelu/0s --> 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./RKa s-00-7