Ricerca sul protocollo OSPF: routing dinamico e configurazione di rete

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.

Anteprima

Protocolli di routing dinamico

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.

Link state

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.

Motivi per preferire il link state

  • Arriva più velocemente alla convergenza, per via della minor complessità computazionale dell'algoritmo utilizzato;
  • Mentre i protocolli distance vector non supportano metriche molto raffinate. Se il costo dei link è variabile o se il costo dei link migliori diventa di ordini di grandezza di minor valore rispetto a quelli dei link piu' lenti, c'e' il rischio di attendere tempi lunghi, quando il conteggio all'infinito diventa necessario. Questo rischio non esiste con i protocolli link state. Poiche' il calcolo del percorso piu' breve viene eseguito conoscendo completamente la tipologia, si possono utilizzare arbitrariamente precise metriche senza rallentare la convergenza. Infatti, la precisione del calcolo rende possibile il supporto di numerose metriche in parallelo.

Il protocollo OSPF

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:

  • La metrica basata sulla distanza tra il router di frontiera e l'effettiva destinazione. Questa è l'opzione di default.
  • Oltre alla distanza esterna include anche la distanza dal router di partenza a quello di frontiera (opzione preferibile rispetto alla precedente)

OSPF neighbors

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:

  • Esso può essere specificato manualmente tramite la CLI;
  • Altrimenti viene utilizzato in più grande ip di loopback configurato nel router
  • Se esso non è impostato verrà scelto l'indirizzo ip di una qualsiasi porta fisica.

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:

  • Area ID
  • Area Type (stub, NSSA, etc.)
  • Prefix
  • Subnet Mask
  • Hello Interval
  • Dead Interval
  • Network Type (broadcast, point-to-point, etc.)
  • Authentication

La tabella dei vicini di ogni router è costituita dalle seguenti informazioni presenti nel pacchetto Hello:

  • Il router id di ogni vicino
  • Lo stato corrente di ogni vicino ( "up" o "down" )
  • L'interfaccia che connette ogni vicino al router
  • L'indirizzo ip delle reti remote di ogni vicino

OSPF - Stati dei vicini

I router possono trovarsi in diversi stati in una rete gestita tramite OSPF:

  • DOWN: indica che non sono stati ricevuti pacchetti hello da un determinato vicino;
  • INIT: indica che il vicino ha risposto con un pacchetto hello, ma la comunicazione non è ancora stata instaurata.
  • 2-WAY: indica che la comunicazione bidirezionale è stata instaurata;
  • ExStart: indica che i router si stanno preparando ad inviare pacchetti link state contenenti informazioni sulla topologia, tramite il sistema slave/ master.
  • Exchange: indica che i router si stanno scambiando informazioni relative ai loro database della topologia;
  • Loading: I router si scambiano messaggi di link state advertisement che contengono richieste per ottenere informazioni complete relative alle router mancanti scoperte nella fase di exchange;
  • Full: le route sono sincronizzate e si è arrivati ad una fase di convergenza.

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

OSPF Designated router

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.

Tipologie di reti OSPF

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.

  • Broadcast multi-access: indica una rete in cui avviene la trasmissione broadcast. Possono essere ad esempio ethernet, token ring, ATM;
  • Point-to-Point: indica una topologia dove 2 router sono direttamente connessi;
  • Point-to-multipoint: indica una topologia in cui ogni router può connettersi a più destinazioni;
  • Non-broadcast multi-access Network: è uguale alla precedente ma non piò avvenire la trasmissione tramite broadcast.

Nota bene: in una rete non broadcast i vicini devono essere specificati manualmente, perché non sono permessi i multicast hello.

Link state advertisement

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
  • Router LSA: è spedito dai router interni ai DR e BDR per avvertirli di un cambiamento di topologia;
  • Network LSA: il DR annuncia tramite questo tipo di pacchetto a tutti i router dell'area la nuova topologia di rete.
  • Network Summary LSA: è generato dagli ABR e contiene informazioni su tutte le reti presenti nell'area. Questi messaggi sono inviati per consentire la comunicazione tra aree diverse.
  • ASBR Summary LSA: sono generati dagli ABR e contengono le rotte per ogni ASBR in maniera da permettere ai router di ogni area di uscire dal sistema autonomo.
  • External LSA: sono generati dagli ASBR nel sistema OSPF e contengono le le destinazioni all'esterno del sistema autonomo.

LSA 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.

Non hai trovato quello che cercavi?

Esplora altri argomenti nella Algor library o crea direttamente i tuoi materiali con l’AI.