articolo
 

Routing Dinamico interno ad un Autonomous System:

i protocolli IGRP,

E-IGRP, OSPF

protocolli IGRP, E-IGRP e OSPF sono alla base del routing in Internet. Conoscere tali problematiche, però, non è semplice a causa della complessità di tali protocolli

di Antonio Gullì

In un precedente articolo ci siamo occupati del Routing Internet Protocol (RIP) evidenziandone i limiti d'utilizzo. Il suo studio, teorico e pratico, ci ha consentito di descrivere le problematiche che devono essere risolte in presenza di un numero di router appena superiore alle poche unità. Partendo da queste premesse, nel presente articolo, introdurremo i tre protocolli che sono attualmente adottati su Internet per effettuare routing all'interno di un Sistema Autonomo. IGRP[1] ed Enanched IGRP [2] si propongono come un'evoluzione del RIP sviluppata dalla Cisco e, come quest'ultimo, utilizzano algoritmi appartenenti alla famiglia vector distance che si basano sull'algoritmo sviluppato da Bellman e Ford [3]. OSFP è un protocollo non proprietario sviluppato dalla IETF che utilizza una differente classe d'algoritmi detta link state [4]. Nel corso di quest'articolo forniremo inizialmente una base teorica sufficientemente dettagliata che permetterà di comprendere cosa avviene quando adottiamo una particolare configurazione in una rete di router. Il primo protocollo di cui ci occupiamo è IGRP.

IGRP

IGRP (Internal Gateway Routing Protocol) nasce come un'evoluzione del RIP; per questa ragione prima di proseguire nella lettura vi consiglio di rileggere l'articolo [5] pubblicato sul terzo numero di Login che descrive quest'ultimo protocollo dettagliatamente. Alcune delle modifiche apportate al protocollo originale sono sotto il copyright della Cisco. Alla base dello IGRP vi è un update periodico inviato in multicast delle informazioni possedute da ciascun gateway. Ogni informazione di routing è composta da quattro attributi principali destinati al calcolo del miglior cammino sorgente-destinazione:

Ritardo (R): indica la somma di tutti i ritardi accumulati nel cammino intrapreso. Il valore può essere calcolato staticamente in base al tipo di reti attraversate o modificato dall'amministratore di sistema.

Banda (B): rappresenta la banda disponibile sul più lento link attraversato. Il calcolo di questo valore avviene quasi sempre staticamente.

Affidabilità (A): rappresenta una stima dell'errore medio presente su ogni connessione fisica ed è calcolato dinamicamente monitorando, istante per istante, le condizioni presenti sulla rete.

Carico (C): indica il valore di picco registrato sul router più occupato attraversato nel cammino sorgente-destinazione.

Durante l'applicazione del classico algoritmo vector distance, la scelta tra due cammini che conducono alla medesima destinazione si effettua in base ad una funzione di metrica che tiene conto dei quattro parametri appena descritti e di alcune costanti che condizionano il risultato finale. Ricordo che il RIP, al contrario, usa una metrica molto meno complessa e basata esclusivamente sulla distanza intesa come numero di link attraversati. Uno dei principali problemi evidenziati dal RIP è la difficoltà di rilevare la creazione di un ciclo nel caso di caduta di un link. Nel precedente articolo si è visto che la tecnica standard per gli algoritmi basati sulla distanza è la counting to infinity che presenta lunghi tempi morti prima di potere esser applicata.

A counting to infinity il RIP affianca i metodi Split Horizon, Trigger Updtate e Poisonous Reverse. IGRP utilizza, al posto del Poisonous Reverse, uno fra i due metodi descritti di seguito:

Path HoldDown: si basa su una semplice ma efficace osservazione: la creazione di loop si verifica se e solo se un router, che ha già rilevato la caduta di un link, riceve l'informazione contraria (per errore o per ritardi di propagazione delle informazioni) da un router che non ha rilevato la mutata condizione topologica, prima di riuscire ad immettere sulla rete questo nuovo stato. Partendo da quest'osservazione Path HoldDown non appena rileva la caduta di un link l impone un "periodo di quarantena" durante il quale non è accettato alcun update esterno relativo ad l.

Route Poisonous: osserva che la tecnica counting to infinite, in presenza di creazione di un loop, fa crescere progressivamente la metrica associata ai cammini coinvolti. Se questa condizione si verifica improvvisamente, IGRP considera in modo conservativo il cammino inutilizzabile sino al prossimo trigger update. Un effetto collaterale di questa strategia è la creazione di problemi temporanei quando la topologia fisica della rete viene modificata intenzionalmente (ad esempio aggiungendo nuovi router).

Oltre ai metodi di prevenzione dei loop, una nuova caratteristica del protocollo è la possibilità di mantenere nelle tavole di routing non solo il miglior cammino verso una specifica destinazione ma anche percorsi ausiliari da utilizzare come backup. L'algoritmo del RIP è leggermente modificato per consentire la memorizzazione anziché lo scarto di un link con metrica maggiore, in caso di presenza di un link con metrica minore.

EIGRP

EIGRP è la risposta Cisco ad OSPF. La casa americana, pur avendo implementato nei propri router quest'ultimo protocollo, sostiene che ci siano dei validi motivi per non abbandonare la tecnologia vector distance. L'Enhanced IGRP è essenzialmente un algoritmo vector distance cui è affiancato il metodo conosciuto come "Diffusion Update Algorithm (DUAL)" [6] sviluppato da J.J.Garcia-Luna-Aceves sulla base di un precedente algoritmo di E.W. Dijkstra.

Ne spieghiamo il procedimento procedendo per gradi.

Supposto che ogni router h mantenga per ciascuna destinazione j la metrica d (k, j). La metrica è propagata attraverso ciascuno dei k router direttamente connessi con h. Sia inoltre l (h, k) il costo associato al link che collega lo stesso h con k.

In condizioni normali per raggiungere j, il router h seleziona il router direttamente connesso x tale che sia minimizzata la funzione di costo [FC] d (h, j) = l (h, x) + d (x, j).

In altre parole, h privilegia il router x che è raggiunto con minore costo rispetto sia al link di connessione sia alla distanza per la destinazione j.

Supponiamo che h, dopo aver ricevuto come update dal router y i due valori d1(y, j) ed l1(h, y), verifichi che la nuova somma risulta minore del valore precedentemente calcolato (analiticamente l1(h, y) + d1(y, j) < d(h, j) ). Il router h selezionerà semplicemente come "next hop" y al posto di x. Al di là delle notazioni, il funzionamento è fino a questo momento semplice e, sorprendentemente, vi sono poche possibilità di creare dei loop in caso di caduta di un link. Vediamo perché: se viene effettuato un update, che incrementa il costo di un link (come nel caso di creazione di un ciclo), non si modifica la tavola di routing perché in ogni caso l'algoritmo impone la scelta del cammino di costo minimo. La condizione precedente è vera con l'eccezione del caso in cui l'update incrementa il costo del router x correntemente selezionato, in altre parole del cammino con costo di per sé già minimo. In tal caso EIGRP è più complicato poiché cerca nuovamente l'esistenza di un router vicino k tale che d (k, j) < d (h, j) dove d (h, j) è il vecchio valore di metrica che ha permesso di selezionare il router x prima dello update che ha incrementato il costo verso x. Se la selezione da luogo ad un insieme I di router, si sceglie quello che minimizza FC. Se non esiste nessun router che soddisfi la condizione richiesta la tavola di routing per la entry relativa alla destinazione j è messa in quarantena fotografando la situazione precedente all'update incriminato. Da quel momento viene eseguita la parte Diffusion dell'algoritmo. Si noti che in questa fase, in modo poco conservativo, si considera il link verso x come valido anche se, di fatto, esso potrebbe essere interrotto.

Un router entrato in modo Diffusion invia una "query" a tutti i vicini con l'esclusione del router x, segnalando la nuova distanza d1(h, j) = l1(h, x) + d1 (x, j). Chi riceve il messaggio, supponiamo il router z, ha due comportamenti: se z non possiede alcun'informazione circa la raggiungibilitá della destinazione j o, se al contrario, non solo possiede informazioni su j ma è stato in grado di selezionare un vicino per raggiungere x risponde alla query immediatamente con la propria tavola di routing. In caso le condizioni precedenti non siano vere anche z invia una query ai propri vicini passando in modo Diffusion.

Un router ritorna in modo normale non appena riceve una risposta ad una sua query, preoccupandosi di propagare la stessa a tutti quei vicini da cui aveva eventualmente ricevuto richieste. A quel punto la tavola è tolta dalla quarantena ed aggiornata con le nuove informazioni acquisite.

E-IGRP non è semplice. Tuttavia, esso rappresenta, a ragion veduta, lo stato dell'arte per ciò che riguarda la classe d'algoritmi vector distance. Semplificando, il suo obiettivo è quello di minimizzarne gli effetti negativi ricorrendo in caso d'insuccesso ad una forma di elaborazione distribuita.

Esempi di configurazione RIP, IGRP, EIGRP

Dopo avere fornito una sufficiente base teorica, passiamo alla configurazione vera e propria dei router. Le topologie d'interconessione sono pressoché infinite. Cercheremo, dunque, di analizzare quelle più comuni.

In prima analisi, immaginiamo di trovarci in presenza di una rete preesistente di router RIP cui si vuole affiancare una rete di router IGRP. La configurazione è semplice se si utilizza un particolare gateway che faccia da interprete tra i due protocolli. Riferendo la Figura 1, GWa "ridistribuisce" le informazioni di routing apprese con il RIP all'interno della nuvoletta di router IGRP. Le informazioni di RIP fluiscono attraverso l'interfaccia ethernet e non necessitano di essere propagate all'interno della nuvola di router IRGP connessa attraverso la seriale. In modo di configurazione globale, su Cisco IOS, questo si ottiene con i comandi descritti nel Listato 1-a. Commentiamolo brevemente: il RIP è usato per la rete "130.10.8.0", mentre l'IGRP per la "130.10.62.0". Il comando "passive-interface" impedisce alle informazioni di routing RIP di fluire verso i router IGRP. Il comando "redistribuite" traduce le informazioni RIP nel formato di IGRP assegnando una metrica predefinita. Passiamo a qualcosa di un po' più complesso: la configurazione di un router che ridistribuisca al proprio interno le informazioni apprese da due distinte sessioni EIGRP. Per fare questo utilizziamo una facility del Cisco IOS la route-map. Riferendo la Figura 2 ed il Listato 1-b abbiamo sullo stesso router due sessioni EIGRP, ciascuna appartenete a Sistemi Autonomi (AS) differenti. Per comodità numeriamo i processi di routing con il numero di AS cui le reti appartengono. Il listato risulta un po' oscuro? Analizziamolo assieme. Le prime quattro direttive non necessitano di commenti, con "redistribuite eigrp 40 route-map 40-to-31" informiamo il processo di routing 31 di ridistribuire le informazioni acquisite dal processo di routing 40 avvalendosi delle "informazioni di filtro" definite nella route-map con etichetta "40-to-31". Quest'ultima permette la propagazione esclusiva delle informazioni relative alla rete "192.9.200.0". In questo modo non si consente al processo di routing con etichetta 31 di conoscere le informazioni che il processo di routing con etichetta 40 apprende da eventuali altre sessioni. La direttiva "set metric 10000 100 255 1500" serve ad assegnare una metrica di default per le informazioni acquisite. La descrizione di tutti i parametri assegnati è molto complicata ed esula dagli scopi di quest'articolo. Infine le ultime cinque linee ridistribuiscono le informazioni apprese da un processo di routing (non definito nell'esempio), assegnando loro un opportuno filtro ed una metrica di default.

OSPF

Dopo avere parlato di IGRP ed IGRP, passiamo adesso ad OSPF (Open Shortest Path First). Contrariamente ai protocolli vector distance, OSFP è basato su una differente tecnica detta link state che, in media, richiede minore tempo per convergere ad una soluzione stabile. Semplicemente ciascun router R deve:

l Scoprire l'indirizzo di ogni router vicino Ri.

l Misurare il costo necessario per raggiungere ciascun Ri usando una funzione idonea allo scopo.

l Inviare un messaggio a tutti i router diffondendo le informazioni acquisite.

l Calcolare, in locale, il cammino minimo verso ogni altro router utilizzando un algoritmo sviluppato da Dijkstra[5].

La maggiore differenza rispetto agli algoritmi vector distance è che gli algoritmi link state richiedono che ciascun router sia informato circa la completa topologia e i ritardi presenti nella rete.

Sulla base di queste informazioni ogni router calcola in locale il cammino minimo verso ogni destinazione conosciuta. Un tecnico di mia conoscenza ama dire che OSPF (e la sua versione multicast MOSPF) calcola tutto con precisione maniacale.

Scoperta dei vicini e misura dei costi di raggiungimento

Per conoscere l'intera topologia di una rete sono necessari alcuni accorgimenti: in primo luogo conoscere da ciascun punto l'insieme di router direttamente connessi. Per far questo non appena un router è inserito, invia un pacchetto di HELLO su tutte le connessioni point-to-point disponibili e riceve come risposta dai router direttamente connessi il relativo identificativo. Per calcolare il costo di connessione con i router vicini, è utilizzato un pacchetto ECHO misurando il tempo necessario ad ottenere la relativa risposta.

Diffusione delle informazioni ed algoritmo di flooding

Una volta che le informazioni necessarie allo scambio sono state collezionate, ciascun router costruisce un pacchetto contenente l'identità di chi invia, un numero di serie e la lista dei vicini (ciascuno con la stima di costo associata). L'algoritmo di diffusione serve a fare conoscere ad ogni gateway la completa topologia di rete a cui si è stati connessi. Esso si basa su di una tecnica di flooding in cui il numero di serie è usato per verificare la consistenza delle informazioni. Supponiamo che un pacchetto Psr (s indica il numero di serie ed r l'origine) giunga su di un router R:

Se il pacchetto non è mai stato acquisito o se, al contrario, già esiste un pacchetto Ptr (con numero di serie t e con origine r) tale che s > t allora Psr viene forwardato su tutte le connessioni point-to-point con l'eccezione di quella da cui è arrivato.

Se s = t il pacchetto è duplicato e si procede al suo scarto.

Se il numero di serie del pacchetto s è inferiore di t si procede egualmente allo scarto per obsolescenza.

In base a questo semplice sistema, dopo un certo numero di iterazioni, ogni gateway conosce la topologia di rete cui è stato connesso.

Calcolo del cammino minimo con algoritmo di Dijkstra

Non appena tutti i router hanno acquisito la topologia della rete, possono costruire un grafo pesato G che rappresenta le connessioni: ciascun link fisico è rappresentato da una coppia d'archi di direzione opposta e con pesi eventualmente differenti. Su G applicano l'algoritmo per il calcolo dei cammini minimi su grafo sviluppato da Dijkstra. Le basi matematiche dell'algoritmo sono illustrate nel Riquadro 1. Riportiamo di seguito i passi principali:

Dato l'insieme di tutti i nodi nella rete (i router che utilizzano OSPF) si definisca E l'insieme dei nodi già considerati ed R l'insieme di quelli rimanenti. Poniamo inizialmente E={r} (con r nodo rappresentante il router locale). Sia O l'insieme dei cammini uscenti da r; poniamo inizialmente O pari all'insieme dei cammini uscenti da r di lunghezza uno. Si ordini per metrica crescente O. Se O è vuoto o contiene soltanto cammini con metrica infinita, allora si possono marcare tutti i nodi in R come irraggiungibili. L'algoritmo termina.

Si esamini il cammino di minore lunghezza P contenuto in O e lo si rimuova da questo insieme. Sia v l'ultimo nodo di P. Se v è già in E si ritorna al passo precedente altrimenti si è certi che P sia il più breve cammino da s ad v. Si sposta, quindi, v dall'insieme R all'insieme E. Si costruisca un nuovo insieme NP di j cammini candidati, collegando a P ciascun nodo fra gli nj adiacenti al nodo v. Il costo associato è pari al costo di P sommato al costo di nj. L'insieme NP è unito all'insieme O mantenendo l'ordinamento per costi crescenti. Si continua dal secondo passo.

L'algoritmo appena descritto si chiama Shortest Path (da cui il nome Open Shortest Path First) perché costruisce in modo incrementale l'insieme dei cammini minimi. Ad ogni passo si prova a verificare se sono soddisfatte le condizioni di Bellman (vedi riquadro). L'ordinamento dei cammini è realizzato mantenendo i nodi in una coda di priorità. Pur senza approfondire il perché, può essere utile citare il fatto che la complessità computazionale dell'algoritmo è pari ad O(MlogM) con M pari al numero di link di connessione contenuti nel network in esame. A titolo di paragone ricordo che i protocolli "distance vector", basandosi sull'algoritmo di Bellman-Ford, convergono in O(MN) dove N è il numero di router presenti nel network.

I motivi del successo del protocollo OSPF

Per esporre i motivi del successo del protocollo OSPF, possiamo evidenziare i seguenti punti:

Aderenza agli standard: OSPF è un protocollo non proprietario ed il suo sviluppo è stato curato dalla IETF (Internet Engenieering Task Force) con il contributo di vari vendor privati. Inoltre, la IAB (Internet Architecture Board) lo raccomanda come scelta ottimale per sostituire il RIP.

Velocità di convergenza: da un punto di vista computazionale l'algoritmo di Dijkstra si comporta meglio di quello di Bellman-Ford anche in presenza di un discreto numero di router sulla rete. Inoltre il calcolo dei cammini avviene in modo preciso.

Mancata creazione di loop temporanei: grazie al fatto che le tabelle di routing sono calcolate in locale e solo dopo il processo di flooding, il metodo è esente dalla creazione di loop temporanei in caso di caduta di un router. In caso di modifica della topologia, ciascun gateway è informato delle mutate condizioni della topologia di rete e provvede a calcolare la nuova mappa utilizzando, se necessario, la tecnica counting-to-infinity sempre in locale.

Inoltre alcune caratteristiche sono state introdotte per la prima volta in OSPF e poi mutuate in altri protocolli:

Validazione degli update: In un articolo precedente abbiamo visto come sia possibile attaccare una rete iniettando informazioni di routing RIP non valide. La stessa metodologia non è attuabile con OSPF che prevede tecniche di passaggio delle tabelle basate su checksum e password, riconoscimenti hop-hop, timeout dei singoli record.

Supporto per metriche multiple: Il supporto per metriche multiple e per cammini multipli è particolarmente richiesto in reti complesse perché lasciano la possibilità al network manager di attivare percorsi alternativi in caso di guasti o di bilanciare il carico durante il normale funzionamento.

Alcuni aspetti implementativi

Durante la descrizione dei passi usati da OSPF ho omesso un particolare che il lettore più attento avrà notato. Il processo di flooding coinvolgendo N nodi ha un costo pari ad O(N^2), visto che ogni nodo deve interagire con i restanti N-1. Tale caratteristica rischia di rendere la tecnica OSPF molto costosa.

Router Eletto e Router Candidato: La IEFT ha risolto questo problema introducendo il concetto di "Router Candidato". Ogni gateway evita di considerare le connessioni dirette ed "elegge", con un apposito algoritmo distribuito, un router cui tutti i rimanenti sono virtualmente connessi. Questa connessione è solo astratta e non necessariamente fisica: quando un router intende notificare ai rimanenti la mutata condizione di un link in suo possesso, si limita a segnalare l'evento al router eletto che si occupa di "rifletterla" a tutti i rimanenti. Per ragioni di fault-tollerance lo stesso algoritmo provvede ad eleggere un router che interviene in caso di caduta del "reflector" primario. A tale scopo sia l'eletto che il "candidato al back-up" mantengono il database della topologia continuamente aggiornato. Un altro problema che affligge OSPF è la crescita del database della topologia sia per problemi di memoria che per problemi di risorse (cicli di CPU) richieste per la convergenza dell'algoritmo.

Suddivisione in Aree: OSPF adotta una tecnica gerarchica per risolvere il problema: molteplici aree sono connesse tra di loro attraverso una area di backbone. Ciascun'area è un insieme di router (generalmente intorno alle cinquanta macchine) che utilizza OSPF al proprio interno. Vi è un certo numero di router che appartiene a più di un'area e provvede ad iniettare in ciascuna parte informazioni di raggiungibilitá delle rimanenti con informazioni di "summarize" (in altre parole sono fatte passare solo le informazioni strettamente necessarie per l'accesso ad una area).

Esempi di Configurazione: una topologia mista RIP, IGRP, OSPF

In quest'esempio approfondiremo le modalità d'integrazione di una rete che usa Open Shortest Path First con altre due reti una delle quali usa il RIP e l'altra IGRP.

I router Cisco saranno il nostro modello di riferimento sia per la loro diffusione commerciale sia perché supportano tutti e tre i tipi di protocolli. In ogni caso gli esempi qui riportati possono essere adattati ad altri modelli di router con poche modifiche. Nel Listato 2 sono riportate le configurazioni di quattro Cisco rispettivamente chiamati "Tiziano", "Donatello", "Giotto" e "Leonardo". Raffaello usa il RIP, Donatello il RIP e l'OSPF, Giotto l'OSPF e l'IGRP, Leonardo solo l'IGRP. Analizziamo in dettaglio le configurazioni:

Tiziano: Tiziano ha due interfacce ethernet attive: una sulla rete di classe C "192.20.100.0", una sulla rete di classe C "192.20.101.10". Sul router gira il protocollo RIP che annuncia l'intera porzione "194.20.0.0" grazie al comando router rip network 192.20.0.0.

Vi ricordo che sebbene quest'ultimo comando comprenda un insieme di reti aggregato, di queste solo quelle realmente presenti sulle interfacce direttamente connesse al gateway vengono annunciate. Ricorrere ad una notazione aggregata è quindi solo un modo per evitare di complicare la configurazione con righe ripetute e differenti per poche condizioni.

Donatello: Donatello ha un'interfaccia ethernet attiva sulla rete di classe C "192.20.101.20" ed un'interfaccia seriale con protocollo HDLC sulla rete "194.20.240.10". Sul router gira il RIP configurato dai comandi router rip, network 194.20.0.0.

Il comando redistribuite ospf 100 ridistribuisce le informazioni apprese da OSFP in quelle mantenute dal protocollo RIP. Poiché non è necessario far girare il protocollo sulla Serial 0, l'annuncio del RIP attraverso tale interfaccia è soppresso con il comando passive interface Serial 0. Per contro il protocollo OSPF è attivato dal comando router ospf 100 e configurato attraverso i due comandi network. In questo semplice esempio supporremo che la rete di router appartenga ad un'unica area OSPF. La configurazione di un numero maggiore di aree è un argomento avanzato al di fuori degli scopi introduttivi di quest'articolo. Il comando redistribuite rip subnets ridistribuisce le informazioni apprese dal RIP all'interno dell'area OSPF. Senza la parola chiave subnets solo l'annuncio delle reti non subnettate sarebbe trasferito da un protocollo di routing all'altro. Con il comando passive interface Ethernet 0 si evita il passaggio degli annunci OSPF sull'interfaccia ethernet. Poiché le metriche di protocolli differenti non possono essere direttamente confrontate è necessario specificare staticamente una metrica di default per indicare quale sia il costo delle informazioni redistribuite durante la conversione da un protocollo ad un altro. Lo scopo è raggiunto con il comando default-metric.

Giotto: Giotto ha una configurazione simile a quella di Donatello. L'interfaccia ethernet ha assegnato un indirizzo sulla rete di classe C "192.20.200.10", mentre l'interfaccia seriale ha assegnato l'indirizzo IP "194.20.240.20".

Il protocollo OSPF annuncia entrambe le reti solo sull'interfaccia seriale ed accetta la ridistribuzione degli annunci che provengono da IGRP. Quest'ultimo protocollo viene attivato dal comando router igrp 1 e configurato dal comando network 194.20.0.0. Come specificato dal comando redistribuite ospf 100 vengono accettate le conversioni di annuncio da OSPF.

Leonardo: Leonardo ha attive due interfacce ethernet una con IP "192.20.200.20" ed una con IP "192.20.201.20"; il protocollo IGRP annuncia entrambe le reti grazie al comando network 192.20.0.0

Uno schema di connessione dei router è riportato in Figura 3. Lo schema è completo delle informazioni di reti utilizzate, dagli indirizzi IP, del tipo d'informazioni di routing accettate. Per ragioni di semplicità di disegno anche le connessioni su ethernet sono rappresentate come punto-punto, sebbene in situazioni reali alla ethernet è connesso un certo numero di macchine.

La complessità di OSPF

Come ho più volte ripetuto OSPF è molto complesso. Vi sono un certo numero di argomenti avanzati che non possono essere trattati in questo articolo introduttivo: la configurazione di un certo numero di aree OSPF distinte se il numero di router cresce al di sopra di un certo valore, la configurazione dello scambio sicuro di mappe di topologia, la configurazione di cammini multipli, la differenza tra route esterne ed interne e molto altro. Tuttavia le informazioni che vi ho fornito dovrebbero essere sufficienti per cominciare.

Conclusioni

In quest'articolo abbiamo discusso dei protocolli che stanno alla base del routing su Internet e che contribuiscono a rendere possibile la sua crescita in modo ordinato e senza le catastrofiche esplosioni che periodicamente vengono predette. Il mio personale giudizio sulla scelta di un protocollo di routing interno ad un AS è la seguente: escluderei l'utilizzo del RIP e dello IGRP laddove possibile poiché entrambi i protocolli sono oramai ritenuti obsoleti. La scelta che si pone è tra E-IGRP ed OSPF. Io preferisco di gran lunga la seconda in quanto pienamente aderente a degli standard e non proprietaria. Dal punto di vista delle prestazioni il discorso si fa molto più complesso e dipendente dalla particolare topologia di router presente; perciò la valutazione non può essere assoluta.

Bibliografia

[1] C.L. Hendricks, "An Introduction to IGRP", Center for Computer and Information Services, Laboratory for Computer Science Research, Rutgers University, August 22, 1991.

[2] Dino Farinacci, "Introduction to Enhanced IGRP (EIGRP)", cisco System. July 1993.

[3] R.Tarajan, "Data Structures and Network Algorithms" SIAM Philadelphia , 1983

[4] C. Hiutema, "Routing in The Internet" Prentice Hall, 1995

[5] A.Gullí, "Routing Interno ad un Sistema Autonomo", Login: Building the Information Highway, terzo numero

[6] J.J. Garcia-Luna-Aceves, "A Unified Approch to Loop-Free Routing Using Distance Vector or Link State", ACM Sigcomm' 89 Symposium, September 1989

 

 

(c) 1998 Edizioni Infomedia srl