Sartomiki.net

  • Aumenta dimensione caratteri
  • Dimensione caratteri predefinita
  • Diminuisci dimensione caratteri
Home Appunti Tecnologie per reti di calcolatori Algoritmo di Distance Vector

Algoritmo di Distance Vector

E-mail Stampa PDF
Valutazione attuale: / 2
ScarsoOttimo 

Distance vector
Secondo l'algoritmo di routing "distance vector" ogni router deve cooperare con tutti gli altri, dicendo tutto ciò che sa della rete. Appena un nodo riceve un pacchetto di distance vector mette insieme le informazioni che già ha della rete (operazione di merging) e le ridistribuisce a tutti gli altri.
L'informazione che si propaga è, come dice il nome dell'algoritmo, un vettore delle distanze, o meglio dei costi. Ad ogni distance vector ricevuto, i router devono aggiungere il costo relativo alla propria tratta prima di inoltrare il nuovo distance vector.
Nel momento in cui un router deve inoltrare un pacchetto consulta il vettore delle distanze e prende la direzione più breve.
Nel caso in cui un link cada tutte le linee di distance vector relative a quel nodo vengono cancellate e viene ricavato il nuovo distance vector. Il transitorio di questo algoritmo è limitato, in quanto passa un po' di tempo tra il momento in cui è riconosciuto un cambiamento e il tempo in cui si ristabilizzano le route. Il tempo di convergenza è ridotto, anche se durante il transitorio c'è la possibilità di formare black hole o loop.
Il problema che sta alla base del distance vector è il fatto che nessuno conosce la topologia della rete e questo limita la precisione. Per cercare di risolvere i problemi di black hole o loop sono stati introdotti nell'algoritmo base di distance vector alcune efficaci anche se incomplete soluzioni:
-split horizon, principio secondo cui un nodo non può raggiungere una destinazione passando per il nodo precedente. In questo modo però non si risolvono i loop complessi (cioè quelli che coinvolgono maglie di router), ma solo i loop che coinvolgono due router.
-split horizon with poisonous reverse, principio secondo il quale le destinazioni raggiungibili passando per il nodo a cui si sta inviando il distance vector vengono messe a costo infinito. In questo modo si risolve il problema di ambiguità dovuto alla non ricezione di un distance vector: senza questo accorgimento, se non si riceve un distance vector da un nodo, non si sa se esso è diventato irraggiungibile oppure se semplicemente si è perso il pacchetto che lo conteneva.
-path hold down, meccanismo secondo il quale nel momento in cui un router diventa irraggiungibile, si aspetta un certo periodo di tempo prima di annunciarlo. Questo principio rallenta i tempi di convergenza, ma è utile per aumentare la stabilità. Infatti se si tratta di un problema momentaneo non sconvolge tutte le tabelle di routing dei nodi della rete.
-route poisoning, meccanismo che ha tentato di sostituire il path hold down. In presenza di un count to infinity, si è notato che il costo verso una certa destinazione cresce progressivamente. L'idea è quella di bloccare l'utilizzo di tutte le route che aumentano in modo progressivo di costo. La route verrà rimessa in servizio solo quando due annunci consecutivi confermeranno la presenza della route. Questo algoritmo è migliore del precedente in quanto migliora i tempi di convergenza, anche se comunque scarta a priori annunci legittimi.


blog comments powered by Disqus
 

http://sartomiki.net/modules/mod_fuofb/assets/it/find-us-on-facebook-1.png

Follow me

Amici

Chi è online

 3 visitatori online

Siti amici

Banner

Notizie flash

Sono online un po' di appunti! A partire da calcolatori elettronici, proseguendo per introduzione alle reti telematiche e passando infine per sistemi operativi. Scrivetemi se trovate qualche errore... A breve saranno aggiunti nuovi appunti e completati quelli attuali!

PUBBLICITA'