logo

Afstand vektor Routing Algoritme

    Afstandsvektoralgoritmen er iterativ, asynkron og distribueret.
      Fordelt:Det er fordelt ved, at hver knude modtager information fra en eller flere af sine direkte tilknyttede naboer, udfører beregninger og derefter distribuerer resultatet tilbage til sine naboer.Iterativ:Det er iterativt, idet dets proces fortsætter, indtil der ikke er mere tilgængelig information til udveksling mellem naboer.Asynkron:Det kræver ikke, at alle dets noder fungerer i låsetrinet med hinanden.
  • Afstandsvektoralgoritmen er en dynamisk algoritme.
  • Det bruges hovedsageligt i ARPANET og RIP.
  • Hver router vedligeholder en afstandstabel kendt som Vektor .

Tre nøgler til at forstå, hvordan Distance Vector Routing Algorithm fungerer:

    Viden om hele netværket:Hver router deler sin viden gennem hele netværket. Routeren sender sin indsamlede viden om netværket til sine naboer.Rute kun til naboer:Routeren sender kun sin viden om netværket til de routere, der har direkte links. Routeren sender hvad end den har om netværket gennem portene. Informationen modtages af routeren og bruger informationen til at opdatere sin egen routingtabel.Informationsdeling med jævne mellemrum:Inden for 30 sekunder sender routeren informationen til naborouterne.

Afstand vektor Routing Algoritme

Lad dx(y) være prisen for den billigste vej fra node x til node y. De mindste omkostninger er relateret til Bellman-Ford-ligningen,

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

Hvor minv er ligningen taget for alle x naboer. Efter at have kørt fra x til v, hvis vi betragter den billigste vej fra v til y, vil vejomkostningerne være c(x,v)+di(y). Den mindste omkostning fra x til y er minimum af c(x,v)+di(y) overtaget alle naboer.

Med Distance Vector Routing-algoritmen indeholder noden x følgende routinginformation:

  • For hver nabo v er prisen c(x,v) vejomkostningen fra x til direkte tilknyttet nabo, v.
  • Afstandsvektoren x, dvs. Dx= [Dx(y) : y i N ], med dets omkostninger til alle destinationer, y, i N.
  • Afstandsvektoren for hver af dens naboer, dvs. Di= [Di(y): y i N] ​​for hver nabo v af x.

Afstandsvektorrouting er en asynkron algoritme, hvor node x sender kopien af ​​sin afstandsvektor til alle dens naboer. Når node x modtager den nye afstandsvektor fra en af ​​dens nabovektorer, v, gemmer den afstandsvektoren for v og bruger Bellman-Ford-ligningen til at opdatere sin egen afstandsvektor. Ligningen er givet nedenfor:

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

Noden x har opdateret sin egen afstandsvektortabel ved at bruge ovenstående ligning og sender sin opdaterede tabel til alle sine naboer, så de kan opdatere deres egne afstandsvektorer.

Algoritme

 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> 

Bemærk: I Afstandsvektoralgoritme opdaterer node x sin tabel, når den enten ser en omkostningsændring i en direkte linket node eller modtager en vektoropdatering fra en nabo.

Lad os forstå gennem et eksempel:

Deling af oplysninger

Afstand vektor Routing Algoritme
  • I ovenstående figur repræsenterer hver sky netværket, og tallet inde i skyen repræsenterer netværks-id'et.
  • Alle LAN'er er forbundet med routere, og de er repræsenteret i kasser mærket som A, B, C, D, E, F.
  • Afstandsvektor routingalgoritme forenkler routingprocessen ved at antage, at prisen på hvert link er én enhed. Derfor kan transmissionens effektivitet måles ved antallet af links til at nå destinationen.
  • I Distance vector routing er prisen baseret på hoptælling.
Afstand vektor Routing Algoritme

I ovenstående figur observerer vi, at routeren sender viden til de nærmeste naboer. Naboerne tilføjer denne viden til deres egen viden og sender den opdaterede tabel til deres egne naboer. På den måde får routere sine egne oplysninger plus de nye oplysninger om naboerne.

Routing tabel

Der sker to processer:

  • Oprettelse af tabellen
  • Opdatering af tabellen

Oprettelse af tabellen

Indledningsvis oprettes routingtabellen for hver router, der indeholder mindst tre typer information såsom netværks-id, prisen og det næste hop.

Afstand vektor Routing Algoritme
    NET ID:Netværks-id'et definerer den endelige destination for pakken.Koste:Prisen er det antal hop, pakken skal tage for at komme dertil.Næste hop:Det er routeren, som pakken skal leveres til.
Afstand vektor Routing Algoritme
  • I ovenstående figur er de originale routingtabeller vist for alle routerne. I en routingtabel repræsenterer den første kolonne netværks-id'et, den anden kolonne repræsenterer omkostningerne ved linket, og den tredje kolonne er tom.
  • Disse rutetabeller sendes til alle naboerne.

For eksempel:

 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. 

Opdatering af tabellen

  • Når A modtager en routingtabel fra B, bruger den dens information til at opdatere tabellen.
  • Routingtabellen i B viser, hvordan pakkerne kan flytte til netværk 1 og 4.
  • B'et er nabo til A-routeren, pakkerne fra A til B kan nå i et hop. Så 1 lægges til alle omkostningerne angivet i B's tabel, og summen vil være omkostningerne for at nå et bestemt netværk.
Afstand vektor Routing Algoritme
  • Efter justering kombinerer A derefter denne tabel med sin egen tabel for at skabe en kombineret tabel.
Afstand vektor Routing Algoritme
  • Den kombinerede tabel kan indeholde nogle duplikerede data. I ovenstående figur indeholder den kombinerede tabel for router A de duplikerede data, så den beholder kun de data, der har de laveste omkostninger. For eksempel kan A sende dataene til netværk 1 på to måder. Den første, som ikke bruger nogen næste router, så den koster et hop. Det andet kræver to hop (A til B, derefter B til netværk 1). Den første mulighed har den laveste pris, derfor beholdes den, og den anden udgår.
Afstand vektor Routing Algoritme
  • Processen med at oprette routingtabellen fortsætter for alle routere. Hver router modtager informationen fra naboerne og opdaterer routingtabellen.

De endelige routingtabeller for alle routerne er angivet nedenfor:

Afstand vektor Routing Algoritme