Routing di Rete: Funzionamento, Protocolli Statici e Dinamici per Reti Efficienti
Classificato in Informatica
Scritto il in italiano con una dimensione di 8,2 KB
Routing: Concetti Fondamentali
Il routing è la funzione responsabile della selezione dei percorsi che i messaggi devono seguire attraverso la rete e si svolge a livello di Rete. Richiede l'identificazione di un indirizzo unico, noto come routing. I processi di routing sono eseguiti da appositi dispositivi chiamati router.
Tabelle di Routing
Il router conosce la posizione di eventuali destinatari dei messaggi perché gestisce le proprie "mappe". Queste mappe sono rappresentazioni della topologia di rete e sono memorizzate in apposite tabelle. La tabella di un router può essere configurata in due modi:
Routing Statico
Consiste nel modificare manualmente le tabelle di routing per includere le rotte che non variano. Queste voci della tabella vengono create quando c'è solo una via verso una destinazione e questa non cambierà a breve. È utile anche per la sicurezza, quando si desidera impedire agli utenti esterni di ottenere informazioni dettagliate sullo stato della rete intercettando i messaggi inviati dai router.
Routing Dinamico
Consiste nell'attivazione di un protocollo di routing che consente l'invio di informazioni di routing tra dispositivi per creare tabelle con voci dinamiche. Le voci della tabella sono dinamiche nel senso che cambiano al variare dello stato della rete. Questo meccanismo è migliore rispetto alle rotte statiche in quanto mantiene le informazioni sullo stato della rete molto più aggiornate, rendendo il routing più efficace ed efficiente. Per il routing dinamico, i router devono da un lato mantenere le tabelle di routing con informazioni sui migliori percorsi e, dall'altro, inviare informazioni tra loro per modificare e aggiornare queste tabelle in base allo stato della rete. Per questo motivo, il protocollo di routing dinamico deve definire quali tipi di messaggi verranno utilizzati per aggiornare le informazioni di routing, come e quando inviarli.
Obiettivi dei Protocolli di Routing Dinamico
I protocolli di routing dinamici sono progettati per soddisfare diversi obiettivi:
Scegliere il percorso migliore
La selezione del percorso migliore può essere fatta sulla base di diversi criteri: la distanza o il numero di dispositivi intermedi fino alla destinazione, strade meno congestionate, collegamenti con capacità di trasmissione più elevata, percorsi più affidabili, ecc.
Semplicità
È importante che l'algoritmo di routing sia semplice, in modo che i router non richiedano grandi requisiti di memoria e consumo del processore. Un algoritmo semplice facilita anche la crescita della rete, evitando ritardi nella trasmissione dei messaggi.
Robustezza
Il protocollo di routing deve essere preparato ad affrontare ogni tipo di imprevisto o situazione improbabile, in modo da evitare blocchi o malfunzionamenti nel router.
Velocità
Quando ci sono variazioni nella rete, come l'installazione di nuove apparecchiature e collegamenti di comunicazione o quando alcuni smettono di funzionare, è importante che il protocollo di routing calcoli i percorsi nel minor tempo possibile per evitare la perdita di messaggi. L'algoritmo deve raggiungere il più presto possibile lo stato di convergenza, che si raggiunge quando tutti i router di rete hanno calcolato i migliori itinerari per tutte le destinazioni possibili.
Scalabilità
È importante considerare la capacità dell'algoritmo di routing di funzionare in modo ottimale in una rete di piccole o grandi dimensioni.
Caratteristiche dei Protocolli di Routing Dinamico
1. Metrica
I protocolli di routing dinamico valutano ciascuna delle rotte verso potenziali destinazioni per determinare quale sia la migliore in termini di velocità e affidabilità. Questa valutazione dovrebbe essere di tipo quantitativo, in modo che gli algoritmi possano confrontare i percorsi e decidere dove inviare le informazioni in ogni momento. Questo parametro è chiamato metrica ed è un valore numerico calcolato dal router e inviato ai suoi vicini come informazione. Minore è il valore metrico, migliore è considerato il percorso. Il calcolo della metrica può essere semplice, come contare il numero di router intermedi tra la sorgente e la destinazione, o complesso, come valutare la velocità di trasmissione e il grado di congestione di un collegamento. In generale, gli algoritmi di routing dinamico possono prendere in considerazione i seguenti parametri quando eseguono il calcolo della metrica:
- Velocità di trasmissione: la capacità di trasmissione del collegamento, espressa in bps (bit per secondo).
- Ritardo: il tempo impiegato dal messaggio per raggiungere la sua destinazione.
- Congestione: il numero di messaggi che circolano attraverso il percorso e che vengono elaborati dai router intermedi.
- Affidabilità: il tasso di messaggi che raggiungono la loro destinazione rispetto alla perdita.
- Salti (Hop Count): il numero di router intermedi.
- Costo: utilizzato nelle reti con prezzi per esprimere il costo economico di inviare il messaggio alla sua destinazione.
2. Bilanciamento del Carico (Load Balancing)
Molti protocolli di routing dinamico possono includere più voci nelle loro tabelle di routing che specificano le stesse destinazioni con lo stesso valore o metriche diverse. In questo modo è possibile ottenere un bilanciamento del carico, ovvero il router invia i messaggi verso la stessa destinazione ma attraverso percorsi diversi. Ciò permette di distribuire meglio il carico di lavoro sulla rete, con conseguente utilizzo più efficiente della rete. RIP esegue il bilanciamento del carico solo quando i percorsi per la stessa destinazione hanno la stessa metrica. Tuttavia, IGRP consente il bilanciamento del carico anche se i percorsi verso la stessa destinazione hanno parametri diversi, e anche tenendo conto della velocità dei collegamenti di trasmissione.
3. Cicli di Routing (Routing Loops)
Nei protocolli di routing basati sul vettore distanza, è possibile che si verifichino situazioni in cui i messaggi attraversano lo stesso router più volte, che sono note come cicli di routing. Questi cicli sono dovuti a voci incoerenti nelle tabelle di routing, che si verificano quando la rete impiega molto tempo per raggiungere lo stato di convergenza. Si tratta di cicli molto spiacevoli che si verifichino in una rete, in quanto i messaggi rimangono indefinitamente in circolo. In questa situazione, è preferibile che uno dei router si accorga di ciò e scarti il messaggio. Affinché i router siano in grado di distinguere e scartare i messaggi in loop, è necessario che questi contengano informazioni sul conteggio degli hop, ovvero il numero di router intermedi che hanno attraversato, in modo che quando si raggiunge un certo valore possano essere scartati. Questo valore massimo dovrebbe essere impostato su un valore maggiore del numero di salti che esistono tra le due destinazioni più lontane della rete.
4. Distanze Amministrative
In un'architettura di rete è facile trovare diversi protocolli di routing; per questo motivo, molti router lavorano con diversi algoritmi di routing contemporaneamente, sia statici che dinamici. Quando un router funziona con altri protocolli di routing simultaneamente, ciascuno avrà le proprie tabelle e le proprie metriche calcolate sulla base delle diverse misurazioni. In questa situazione, è logico considerare che ogni protocollo registra le voci della tabella, ma con differenti valori di metrica. Il problema che si pone ha a che fare con l'utilizzo di diverse misure di metriche per protocolli diversi, che non sono direttamente comparabili. Per risolvere questo problema di confronto dei percorsi tra i diversi protocolli di routing, si definisce la distanza amministrativa, che è il valore di affidabilità di un protocollo. Più basso è questo valore, più un protocollo è considerato affidabile rispetto ad altri, e più frequentemente verranno selezionati i suoi percorsi.