Confronto dell'algoritmo dello stato dei collegamenti con l'algoritmo del vettore di distanza
Sappiamo che quando un pacchetto arriva a un router, il router indicizza una tabella di inoltro e determina l'interfaccia di collegamento a cui consegnare il pacchetto. E gli algoritmi di routing operano nei router di rete, scambiando e calcolando le informazioni utilizzate per configurare tali tabelle di inoltro. Lo scopo di un algoritmo di routing è trovare un buon percorso dal router di origine al router di destinazione tra una serie di router. Normalmente, un buon percorso è quello che ha il minor costo ed è anche il percorso più breve.
Esistono alcuni tipi di algoritmi di routing come stati di collegamento o algoritmi di routing vettoriale a distanza. Mentre l'algoritmo degli stati di collegamento è un algoritmo che utilizza informazioni globali, l'algoritmo del vettore di distanza è iterativo, asincrono e distribuito. Per l'algoritmo DV, ogni nodo parla solo ai suoi vicini direttamente collegati, ma fornisce al suo vicino le stime dei costi minimi da se stesso a tutti i nodi. Per l'algoritmo LS, ogni nodo parla con tutti gli altri nodi, ma dice loro solo il costo del confronto diretto di alcuni dei loro attributi. Ci sono alcuni aspetti per cui possiamo confrontare questi due algoritmi
Complessità dei messaggi: con lo stato dei collegamenti, ogni nodo deve conservare le informazioni sul costo di ciascun collegamento all'interno della rete. E ogni volta, se uno qualsiasi dei costi viene modificato, tutti i nodi. Con l'algoritmo del vettore di distanza, il messaggio viene scambiato tra due host che sono direttamente collegati tra loro. E se la modifica del costo nel collegamento che appartiene al percorso meno costoso per uno dei nodi, l'algoritmo DV aggiornerà il nuovo valore. Ma se la modifica non appartiene alla parte meno costosa tra 2 host, non ci sarà alcun aggiornamento
Velocità di convergenza: l'implementazione di LS è un messaggio O (| N | 2) che richiede il messaggio O (| N || E |). Ma con l'algoritmo DV, può convergere lentamente e avere loop di routing mentre l'algoritmo sta convergendo. Inoltre, l'algoritmo DV soffre anche del problema del conteggio all'infinito.
Robustezza: per LS, quando un router è inattivo, può trasmettere un costo errato per quello più vicino. Inoltre, un nodo può corrompere o rilasciare il pacchetto che ottiene come parte di una trasmissione LS. Tuttavia, un nodo LS sta calcolando per la propria tabella di inoltro e altri nodi eseguono il calcolo da soli. Quindi rende il calcolo separato in qualche modo all'interno di LS che fornisce robustezza. Per DV, il percorso meno costoso errato può essere passato a più di uno o l'intero nodo in modo che il calcolo errato venga elaborato nell'intera rete. Questo problema di DV è molto peggio dell'algoritmo LS.