Documento di Informatica sul protocollo OSPF, un protocollo di routing dinamico. Il Pdf esplora concetti chiave come i protocolli distance vector e link state, la struttura dei pacchetti LSA e Hello, e le procedure di configurazione di una rete OSPF.
Mostra di più22 pagine
Visualizza gratis il Pdf completo
Registrati per accedere all’intero documento e trasformarlo con l’AI.
Nelle reti gestite tramite protocolli distance vector ogni router nella rete misura la distanza tra esso e i router adiacenti, ricevendo i dati dai router vicini. Applicando l'algoritmo di Bellman Ford, ogni router andrà a formare la sua tebella di routing, la quale sarà aggiornata periodicamente.
I protocolli di routing link state gestiscono la rete assegnando ad ogni router una mappa della rete stessa e delle distanze tra i vari router. Ogni nodo acquisisce informazioni sullo stato dei collegamenti adiacenti e le inoltra ai router vicini tramite una tecnica chiamata flooding. Il router di destinazione accetta o rifiuta il pacchetto in base al sequence number presente su di esso e di conseguenza aggiorna la sua tabella di routing e manda ai suoi vicini le informazioni apprese. I protocolli link state utilizzano l'algoritmo di Dijkstra per il calcolo del percorso minimo da un router verso tutti gli altri, il quale è più efficiente rispetto a quello visto precedentemente. La tabella di routing sarà aggiornata solamente di fronte ad un cambiamento di topologia.
L'OSPF è un sistema gerarchico che suddivide ogni sistema autonomo in alcune aree più piccole. Il traffico di rete all'interno di un sistema autonomo può essere intra-area, cioè all'interno della stessa area, inter-area cioè tra aree diverse e external cioè tra sistemi autonomi. Ogni router di una determinata area conosce informazioni relative all'area stessa memorizzate all'interno di un database della topologia. L'Area 0 anche chiamata "backbone" interconnette tutte le aree di un sistema autonomo, quindi perché un'area comunichi con un'altra deve per forza passare per la backbone. I router in comune fra 2 aree sono chiamati Area Border Routers e contengono nel loro database le topologie di entrambe le aree, mentre tutti gli altri router sono chiamati internal routers. Un router che appartiene alla backbone ed è collegato con una rete al di fuori del sistema autonomo viene chiamato Autonomous System Border Router. L'ASBR ci consente di comunicare con reti esterne al sistema tramite 2 tipi di rotte:
L'OSPF mette in relazione ogni router con i suoi vicini (o adiacenze) tra i router della stessa area attraverso lo scambio di pacchetti tramite l'indirizzo multicast 224.0.0.5. Ogni router router ha il suo Router ID, per identificare la provenienza di ogni pacchetto all'interno della rete. I router ID possono essere assegnati in 3 modi:
I pacchetti del protocollo Hello sono inviati ogni 10 secondi sia per le reti broadcast e point-to-pont mentre ogni 30 secondi per le reti non broadcast e point-to-pont. OSPF utilizza un parametro chiamato Dead interval che indica dopo quanto tempo un router che non ha inviato pacchetti Hello debba essere visto come DOWN. Due router diventano vicini solo se i seguenti parametri sono identici:
La tabella dei vicini di ogni router è costituita dalle seguenti informazioni presenti nel pacchetto Hello:
I router possono trovarsi in diversi stati in una rete gestita tramite OSPF:
In una rete OSPF soltanto i router DR e BDR arriveranno allo stato Full sopra descritto, mentre gli altri router rimarranno in 2 way state. Esempio di inizializzazione dei vicini:
+ --- + | RT1 | + --- + + --- + |RT2 | + --- + Down Hello(DR=0,seen=0) Hello (DR=RT2, seen=RT1, ... ) Init ExStart D-D (Seq=x, I, M, Master ) D-D (Seq=y, I , M, Master ) ExStart Exchange D-D (Seq=y, M, Slave) D-D (Seq=y+1, M, Master) Exchange D-D (Seq=y+1, M, Slave) . . . D-D (Seq=y+n, Master) D-D (Seq=y+n, Slave) Loading LS Request Full LS Update LS Request LS Update Down Full
Il designated router viene stabilito per evitare di collegare tutti i router tra di loro il che comporterebbe la necessità di n(n - 1)/2 collegamenti dove n è il numero dei router. Per ogni broadcast e NBMA (non-broadcast multiple access) verrà eletto un DR e un Backup DR. Se avviene un cambio della topologia l'informazione verrà recapitata soltanto dal DR, il quale provvederà ad inviarla a tutti gli altri router. Vengono scelti in base ad una priorità definita tramite il numero di interfacce di ogni router, più interfacce ha, più la priorità è elevata. Il router con priorità maggiore diventerà il DR, mentre il secondo sarà in BDR.
Inizialmente è importante definire la differenza tra transit e stub network: Le prime sono reti che generano e ricevono informazioni destinate non solo alla rete locale ma anche ad altre reti, mentre le stub inviano pacchetti localmente generati e non transitano informazioni provenienti da altre reti a meno che il destinatario non sia locale.
Nota bene: in una rete non broadcast i vicini devono essere specificati manualmente, perché non sono permessi i multicast hello.
I router link state advertisement sono dei messaggi che vengono creati dai router interni quando avvertono un cambiamento di topologia. Essi sono inviati tramite l'indirizzo multicast 224.0.0.6 al DR e il BDR che si occuperanno di apportare i rispettivi cambiamenti sul database dell'area e rispedirlo a tutti i router. Possiamo distinguere tra diversi tipi di LSA:
Type 1 = Hello Type 2 = DataBase Descriptor Type 3 = Link State Request Type 4 = Link State Update Type 5 = Link State Acknowlegement
---- Version Packet Type Packet Length Router ID Area ID Checksum Authentication Type Authentication Data Packet Data OSPF Header
L'Header del pacchetto LSA è costituito da 24 byte e contiene il tipo di LSA, il Link state ID, e l'Advertising router field. La combinazione di questi 3 parametri costituisce un identificatore univoco del pacchetto.