logo

Etäisyysvektorireititysalgoritmi

    Etäisyysvektorialgoritmi on iteratiivinen, asynkroninen ja hajautettu.
      Hajautettu:Se jakautuu siten, että kukin solmu vastaanottaa tiedot yhdeltä tai useammalta suoraan liitetyltä naapuriltaan, suorittaa laskennan ja jakaa sitten tuloksen takaisin naapureilleen.Iteratiivinen:Se on iteratiivinen siinä mielessä, että sen prosessi jatkuu, kunnes naapureiden välillä ei ole enää saatavilla vaihdettavaa tietoa.Asynkroninen:Se ei edellytä, että kaikki sen solmut toimivat lukitusvaiheessa keskenään.
  • Etäisyysvektorialgoritmi on dynaaminen algoritmi.
  • Sitä käytetään pääasiassa ARPANETissa ja RIP:ssä.
  • Jokainen reititin ylläpitää etäisyystaulukkoa, joka tunnetaan nimellä Vektori .

Kolme avainta etäisyysvektorireititysalgoritmin toiminnan ymmärtämiseen:

    Tietoa koko verkostosta:Jokainen reititin jakaa tietonsa koko verkon kautta. Reititin lähettää kerätyt tietonsa verkosta naapureilleen.Reititys vain naapureille:Reititin lähettää tietonsa verkosta vain niille reitittimille, joilla on suorat linkit. Reititin lähettää porttien kautta kaiken, mitä sillä on verkosta. Reititin vastaanottaa tiedot ja käyttää tietoja oman reititystaulukkonsa päivittämiseen.Tietojen jakaminen säännöllisin väliajoin:Reititin lähettää tiedot viereisille reitittimille 30 sekunnin kuluessa.

Etäisyysvektorireititysalgoritmi

Anna dx(y) on edullisimman polun hinta solmusta x solmuun y. Alhaisimmat kustannukset liittyvät Bellman-Ford-yhtälöön,

 d<sub>x</sub>(y) = min<sub>v</sub>{c(x,v) + d<sub>v</sub>(y)} 

Missä minv on yhtälö, joka on otettu kaikille x naapureille. Kun otamme huomioon vähiten kustannuksia aiheuttavan polun v:stä y:hen siirtymisen jälkeen, polun hinta on c(x,v)+dsisään(y). Pienin kustannus x:stä y:ään on c(x,v)+d:n minimisisään(y) ottanut haltuunsa kaikki naapurit.

Distance Vector Routing -algoritmilla solmu x sisältää seuraavat reititystiedot:

  • Kullekin naapuri v:lle kustannus c(x,v) on polkukustannus x:stä suoraan liitettyyn naapuriin v.
  • Etäisyysvektori x, eli Dx= [Dx(y) : y N ], joka sisältää sen kustannukset kaikkiin kohteisiin, y, N.
  • Jokaisen naapurinsa etäisyysvektori, eli Dsisään= [Dsisään(y) : y in N ] jokaiselle x:n naapurille v.

Etäisyysvektorireititys on asynkroninen algoritmi, jossa solmu x lähettää kopion etäisyysvektoristaan ​​kaikille naapureilleen. Kun solmu x vastaanottaa uuden etäisyysvektorin yhdeltä naapurivektoriltaan v, se tallentaa v:n etäisyysvektorin ja päivittää oman etäisyysvektorinsa Bellman-Ford-yhtälön avulla. Yhtälö on annettu alla:

java kommentteja
 d<sub>x</sub>(y) = min<sub>v</sub>{ c(x,v) + d<sub>v</sub>(y)} for each node y in N 

Solmu x on päivittänyt oman etäisyysvektoritaulukkonsa käyttämällä yllä olevaa yhtälöä ja lähettää päivitetyn taulukkonsa kaikille naapureilleen, jotta he voivat päivittää omat etäisyysvektorinsa.

Algoritmi

 At each node x, <p> <strong>Initialization</strong> </p> for all destinations y in N: D<sub>x</sub>(y) = c(x,y) // If y is not a neighbor then c(x,y) = &#x221E; for each neighbor w D<sub>w</sub>(y) = ? for all destination y in N. for each neighbor w send distance vector D<sub>x</sub> = [ D<sub>x</sub>(y) : y in N ] to w <strong>loop</strong> <strong>wait</strong> (until I receive any distance vector from some neighbor w) for each y in N: D<sub>x</sub>(y) = minv{c(x,v)+D<sub>v</sub>(y)} If D<sub>x</sub>(y) is changed for any destination y Send distance vector D<sub>x</sub> = [ D<sub>x</sub>(y) : y in N ] to all neighbors <strong>forever</strong> 

Huomautus: Etäisyysvektorialgoritmissa solmu x päivittää taulukkonsa, kun se joko näkee kustannusmuutoksen yhdessä suoraan linkitetyssä solmussa tai vastaanottaa minkä tahansa vektoripäivityksen joltakin naapuriltaan.

Ymmärretään esimerkin kautta:

Tietojen jakaminen

Etäisyysvektorireititysalgoritmi
  • Yllä olevassa kuvassa kukin pilvi edustaa verkkoa ja pilven sisällä oleva numero edustaa verkon tunnusta.
  • Kaikki lähiverkot on yhdistetty reitittimillä, ja ne on esitetty laatikoissa, jotka on merkitty A, B, C, D, E, F.
  • Etäisyysvektorireititysalgoritmi yksinkertaistaa reititysprosessia olettaen, että jokaisen linkin hinta on yksi yksikkö. Siksi lähetyksen tehokkuutta voidaan mitata määränpäähän saavuttavien linkkien lukumäärällä.
  • Etäisyysvektorireitityksessä hinta perustuu hyppyjen määrään.
Etäisyysvektorireititysalgoritmi

Yllä olevassa kuvassa havaitsemme, että reititin lähettää tiedon välittömille naapureille. Naapurit lisäävät tämän tiedon omiin tietoihinsa ja lähettävät päivitetyn taulukon omille naapureilleen. Tällä tavalla reitittimet saavat omat tietonsa sekä uudet tiedot naapureista.

Reititystaulukko

Kaksi prosessia tapahtuu:

  • Taulukon luominen
  • Päivitetään taulukkoa

Taulukon luominen

Aluksi reititystaulukko luodaan jokaiselle reitittimelle, joka sisältää vähintään kolmen tyyppistä tietoa, kuten verkkotunnuksen, hinnan ja seuraavan hypyn.

Etäisyysvektorireititysalgoritmi
    NET ID:Verkkotunnus määrittää paketin lopullisen määränpään.Kustannus:Hinta on hyppyjen määrä, jonka paketin on kuljettava päästäkseen perille.Seuraava pysäkki:Se on reititin, jolle paketti on toimitettava.
Etäisyysvektorireititysalgoritmi
  • Yllä olevassa kuvassa on kaikkien reitittimien alkuperäiset reititystaulukot. Reititystaulukossa ensimmäinen sarake edustaa verkon tunnusta, toinen sarake linkin hintaa ja kolmas sarake on tyhjä.
  • Nämä reititystaulukot lähetetään kaikille naapureille.

Esimerkiksi:

 A sends its routing table to B, F &amp; E. B sends its routing table to A &amp; C. C sends its routing table to B &amp; D. D sends its routing table to E &amp; C. E sends its routing table to A &amp; D. F sends its routing table to A. 

Päivitetään taulukkoa

  • Kun A vastaanottaa reititystaulukon B:ltä, se käyttää tietojaan taulukon päivittämiseen.
  • B:n reititystaulukko näyttää kuinka paketit voivat siirtyä verkkoihin 1 ja 4.
  • B on A-reitittimen naapuri, paketit A:sta B:hen voivat saavuttaa yhdellä hyppyllä. Joten 1 lisätään kaikkiin B:n taulukossa annettuihin kustannuksiin ja summa on kustannukset tietyn verkon saavuttamisesta.
Etäisyysvektorireititysalgoritmi
  • Säädön jälkeen A yhdistää tämän taulukon omaan pöytäänsä luodakseen yhdistetyn taulukon.
Etäisyysvektorireititysalgoritmi
  • Yhdistetty taulukko saattaa sisältää päällekkäisiä tietoja. Yllä olevassa kuvassa reitittimen A yhdistetty taulukko sisältää kaksoistiedot, joten se säilyttää vain ne tiedot, joiden kustannukset ovat edullisimmat. Esimerkiksi A voi lähettää tiedot verkkoon 1 kahdella tavalla. Ensimmäinen, joka ei käytä seuraavaa reititintä, joten se maksaa yhden hypyn. Toinen vaatii kaksi hyppyä (A:sta B:hen, sitten B:stä verkkoon 1). Ensimmäinen vaihtoehto on edullisin, joten se säilytetään ja toinen jätetään pois.
Etäisyysvektorireititysalgoritmi
  • Reititystaulukon luonti jatkuu kaikille reitittimille. Jokainen reititin saa tiedot naapureista ja päivittää reititystaulukon.

Alla on kaikkien reitittimien lopulliset reititystaulukot:

Etäisyysvektorireititysalgoritmi