OSPF (Open Shortest Path First) è un protocollo di routing dello stato del collegamento. Poiché è uno standard aperto, è implementato da una varietà di fornitori di rete. OSPF verrà eseguito sulla maggior parte dei router che non devono necessariamente essere router Cisco (a differenza di EIGRP che può essere eseguito solo su router Cisco).
Ecco le caratteristiche più importanti di OSPF:
- un protocollo di routing classless
- supporta VLSM, CIDR, sintesi manuale del percorso, equal cost load balancing
- sono supportati gli aggiornamenti incrementali
- utilizza un solo parametro come metrica: il costo dell’interfaccia.,
- la distanza amministrativa delle rotte OSPF è, per impostazione predefinita, 110.
- utilizza gli indirizzi multicast 224.0.0.5 e 224.0.0.6 per gli aggiornamenti di routing.
I router che eseguono OSPF devono stabilire relazioni vicine prima di scambiare rotte. Poiché OSPF è un protocollo di routing dello stato del collegamento, i vicini non scambiano le tabelle di routing. Invece, si scambiano informazioni sulla topologia di rete. Ogni routerFPp esegue quindi l’algoritmo SFP per calcolare i percorsi migliori e aggiunge quelli alla tabella di routing., Poiché ogni router conosce l’intera topologia di una rete, la possibilità che si verifichi un ciclo di routing è minima.
Ogni router OSPF memorizza le informazioni di routing e topologia in tre tabelle:
- Neighbor table – memorizza le informazioni sui neighbors OSPF
- Topology table – memorizza la struttura topologica di una rete
- Routing table – memorizza i percorsi migliori
OSPF neighbors
I router OSPF devono stabilire una relazione tra vicini prima di, I vicini OSPF vengono rilevati dinamicamente inviando pacchetti Hello a ciascuna interfaccia OSPF su un router. I pacchetti Hello vengono inviati all’indirizzo IP multicast di 224.0.0.5.
Il processo è spiegato nella figura seguente:
I router R1 e R2 sono collegati direttamente. Dopo che OSp è abilitato, entrambi i router inviano Hellos l’un l’altro per stabilire una relazione vicina. È possibile verificare che la relazione vicina sia stata effettivamente stabilita digitando il comando Mostra vicini ospf ip.,
Nell’esempio sopra, puoi vedere che l’id del router di R2 è 2.2.2.2. Ad ogni router OSPF viene assegnato un ID router. Un ID router viene determinato utilizzando uno dei seguenti elementi:
1. utilizzando il comando router-id sotto il processo OSPF.
2. utilizzando l’indirizzo IP più alto delle interfacce di loopback del router.
3. utilizzando l’indirizzo IP più alto delle interfacce fisiche del router.,
I seguenti campi di pacchetti Hello deve essere lo stesso su entrambi i router in modo che i router diventare vicini di casa:
- subnet
- area id
- ciao e morto intervallo timer
- autenticazione
- area stub bandiera
- MTU
per impostazione predefinita, OSPF invia pacchetti hello ogni 10 secondi su una rete Ethernet (Ciao intervallo)., Un timer morto è quattro volte il valore dell’intervallo hello, quindi se un router su una rete Ethernet non riceve almeno un pacchetto Hello da un vicino OSp per 40 secondi, il router dichiara che il vicino è inattivo.
OSPF neighbor states
Prima di stabilire una relazione vicina, i router OSPF devono passare attraverso diverse modifiche di stato. Questi stati sono spiegati di seguito.
1. Stato Init-un router ha ricevuto un messaggio Hello dall’altro router OSp
2. stato a 2 vie – il vicino ha ricevuto il messaggio Hello e ha risposto con un messaggio Hello del proprio
3., Exstart state-inizio dello scambio LSDB tra entrambi i router. I router stanno iniziando a scambiare informazioni sullo stato del collegamento.
4. Exchange state-I pacchetti DBD (Database Descriptor) vengono scambiati. I DBD contengono intestazioni LSA. I router useranno queste informazioni per vedere quali LSA devono essere scambiati.
5. Stato di caricamento: un vicino invia LSR (richieste di stato del collegamento) per ogni rete di cui non è a conoscenza. L’altro vicino risponde con gli LSU (Link State Updates) che contengono informazioni sulle reti richieste., Dopo che tutte le informazioni richieste sono state ricevute, altro vicino passa attraverso lo stesso processo
6. Stato completo-entrambi i router hanno il database sincronizzato e sono completamente adiacenti tra loro.
Aree OSPF
OSPF utilizza il concetto di aree. Un’area è un raggruppamento logico di reti e router contigui. Tutti i router nella stessa area hanno la stessa tabella topologica, ma non conoscono i router nelle altre aree., I principali vantaggi della creazione di aree è che la dimensione della topologia e la tabella di routing su un router è ridotta, meno tempo è necessario per eseguire l’algoritmo SFP e gli aggiornamenti di routing sono ridotti.
Ogni area della rete OSPF deve connettersi all’area backbone (area 0). Tutti i router all’interno di un’area devono avere lo stesso ID area per diventare vicini OSPF. Un router che ha interfacce in più di un’area (area 0 e area 1, ad esempio) è chiamato Area Border Router (ABR)., Un router che collega una rete OSPF ad altri domini di routing (rete EIGRP, per esempio) è chiamato Autonomous System Border Router (ASBR).
In OSPF, la sintesi manuale del percorso è possibile solo su ABRs e ASBRs.
Per comprendere meglio il concetto di aree, si consideri il seguente esempio.
Tutti i router sono in esecuzione OSPF. I router R1 e R2 si trovano all’interno dell’area backbone (area 0). Router R3 è un ABR, perché ha interfacce in due aree, vale a dire area 0 e area 1. Router R4 e R5 sono all’interno area 1., Router R6 è un ASBR, perché collega la rete OSp a un altro dominio di routing (un dominio EIGRP in questo caso). Se la sottorete collegata direttamente a R1 non riesce, il router R1 invia l’aggiornamento del routing solo a R2 e R3, poiché tutti gli aggiornamenti del routing sono localizzati all’interno dell’area.
Il ruolo di un ABR è quello di pubblicizzare i riassunti degli indirizzi nelle aree limitrofe. Il ruolo di un ASBR è quello di collegare un dominio di routing OSPF a un’altra rete esterna (ad esempio Internet, rete EIGRP…).,
LSA, LSU e LSR
Le LSA (Link-State Advertisements) sono utilizzate dai router OSPF per scambiare informazioni sulla topologia. Ogni LSA contiene informazioni di routing e toplogy per descrivere una parte di una rete OSPF. Quando due vicini decidono di scambiare rotte, si inviano a vicenda un elenco di tutti gli LSAa nel rispettivo database di topologia. Ogni router controlla quindi il suo database di topologia e invia un messaggio di richiesta dello stato del collegamento (LSR) che richiede tutti gli LSA non trovati nella sua tabella di topologia. L’altro router risponde con l’aggiornamento dello stato del collegamento (LSU) che contiene tutti gli LSA richiesti dall’altro vicino.,
Il concetto è spiegato nel seguente esempio:
Dopo aver configurato OSPF su entrambi i router, i router si scambiano LSA per descrivere il rispettivo database topologico. Router R1 invia un’intestazione LSA per la sua rete collegata direttamente 10.0.1.0 / 24. Router R2 controlla il suo database topologico e determina che non ha informazioni su quella rete. Router R2 invia quindi il messaggio di richiesta dello stato del collegamento che richiede ulteriori informazioni su quella rete. Router R1 risponde con Link State Update che contiene informazioni sulla subnet 10.0.1.,0/24 (prossimo indirizzo hop, costo…).