IL DATABASE LINK STATE
Home ] SOMMARIO ] CATTURE ] INTRODUZIONE ] DISTANCE VECTOR ] LINK STATE ] RIP ] IGRP ] EIGRP ] BGP ] OSPF ]

 

 

L'header Link State

Router Link

Network Link

Summary Link

Summary Link (IP Network)

Summary Link (to a border router)

External Link

Il calcolo delle routes

 

 

I routers OSPF o, piu' precisamente, i routers OSPF nella stessa area, condividono un database composto di records link state. Questi records rappresentano la topologia della rete e sono utilizzati per calcolare il percorso piu' breve.  Ci sono 5 tipi di link state o LS (router, rete, sommario per rete IP, sommario per router di confine, esterno) e 4 tipi di record link state, in quanto i sommari dei link per rete IP e per router di confine hanno lo stesso formato. Di seguito analizzeremo, con maggior dettaglio, l'header ed i vari tipi di record.

Torna all'inizio

 

L'HEADER LINK STATE

Ci sono numerosi tipi di record link state, ma tutti condividono lo stesso header LSA (Link State Advertisment) :

 

  Age: anzianità dell’LSA corrente (secondi)

  Options: Solo 2 degli 8 bit a disposizione hanno significato:

  E: External Link, usato dal protocollo Hello

  T: settato quando il router supporta il TOS (Type Of Service) Routing; un valore di zero indica che e' supportata solo la metrica "tipo 0" e che il router non supporta il TOS routing. 

  Type: tipo di LSA trasportato. Ne esistono di 5 tipi:

  Router Link

  Network Link

  Summary Link (IP Network)

  Summary Link (to a border router)

  External Link

I formati dei pacchetti di questi 5 tipi di LSA devono essere sempre preceduti dall’LSA Header

  Link_State_ID: identificativo dell’LSA scelto dall’Advertising Router, ma il significato preciso può variare a seconda di Type

  Advertising Router: uno degli indirizzi IP del router (quello selezionato come OSPF_ROUTER_ID)  

  Sequence number: puo' variare tra 1-N e N-2, dove N = 231. Quando un router invia il primo LSA, il numero di sequenza sara' il numero negativo 1-N; questo numero verra' regolarmente incrementato per i successivi LSA.

  Lenght: la totale lunghezza del record, inclusi i 20 bytes dell'header

Torna all'inizio

 

ROUTER LINK

Riporta le informazioni su tutti i link connessi al router che sta facendo l’advertising. Le informazioni riportate comprendono quindi tutti i router adiacenti e tutte le LAN collegate. Siccome gli LSA generati da un internal router devono raggiungere tutti i router della sua area, le reti contenute in un'area devono essere contigue, cioè deve essere possibile spostare un pacchetto da un qualsiasi router interno all'area ad un qualsiasi altro transitando esclusivamente su collegamenti (e router) interni all'area.

Viene propagato solo all’interno dell’area (sia per le aree non backbone che per il backbone).

I campi dal Link_ID fino alla fine sono ripetuti N volte pari al numero di link presenti.

Campo LS Type = 1

 

  E: se il router è un Area Border Router (External)

  B: se il router è un AS Boundary Router (Border)

  Link_State_ ID, Link Data, Link Type:

  Se Link_Type è un link punto - punto:

- Link_State_ID: OSPF_ID di questo router

- Link_Data: indirizzo IP dell’interfaccia del router

  Se Link_Type è un link su una rete che ha un Designated Router:

- Link_ State_ ID: indirizzo IP dell’interfaccia del Des. Router

- Link_Data: indirizzo IP dell’interfaccia del router

  Se Link_Type è un link che si connette ad una rete Stub:

- Link_ State_ ID: indirizzo IP della rete / sottorete

- Link_Data: netmask relativa al punto precedente

  # TOS: il numero di tipi di servizio con cui vengono differenziate le metriche; essendo i valori del campo TOS 28 non è necessario riportare la metrica per tutti i TOS, ma solo per quelli che differiscono dal TOS 0

  TOS 0 metric: il costo di percorrenza del link per i pacchetti con TOS = 0

  TOS = x: il TOS dei pacchetti IP che utilizzano una metrica alternativa a quella standard

  TOS x metric: la metrica associata ai pacchetti che hanno TOS pari a x

Torna all'inizio

 

NETWORK LINK

È generato dal Designated Router per le reti di transito (transit networks) ed e' simile ad un tradizionale LSP generato per conto di una LAN.

Elenca tutti i router presenti sulla LAN e viene propagato sul backbone dai backbone router.

Campo LS Type = 2

 

  Network Mask: Netmask della rete di transito

  Attached Router: Indirizzo IP di tutti i router che vi si affacciano sulla LAN (o meglio, tutti i router che hanno creato una adiacenza con il designated router). Non è necessario indicare il numero di router adiacenti in quanto la lunghezza del messaggio è data dal campo LENGHT dell’header

  Link_State_ID (dell’header LSA): è il corrispondente indirizzo IP dell’interfaccia del Designated Router collegata alla rete di transito

Torna all'inizio

 

SUMMARY LINK

Sono generati ambedue dagli Area Border Routers, e ne esistono di due tipi:

  Summary Links for IP Networks (LS Type = 3): propagano le informazioni sommarizzate relative alla distanza tra l’ABR e le destinazioni interne all’AS

  Summary Links for Border Routers (LS Type = 4): propagano le informazioni sommarizzate relative alla distanza tra l’ABR e gli AS Border Router

Sono diversi dai Router Links fondamentalmente perché propagano delle informazioni sommarizzate

Ogni LSA contiene una sola destinazione (contrariamente ai Router Links) mentre ogni ABR ne genera molti, inseriti nello stesso pacchetto.

 

Summary Links for IP Networks

Un ABR genera LSA con contenuto diverso per ognuna delle aree su cui si affaccia.

Gli LSA inviati in un area comprendono un LSA per ogni indirizzo IP esterno all’area in esame ma interno all’area stessa. Gli LSA inviati sul backbone comprendono un LSA per ogni indirizzo IP appartenente alle aree su cui si affaccia l’ABR.

È utilizzato dagli ABR per riassumere e propagare le informazioni su una singola area.

 

Summary Links for Border Routers

Viene propagato senza variazioni su tutte le aree (e sul backbone) dove si affaccia l’ABR

 

  Network Mask:

Summary Links for IP Networks: quella della rete o della subnet che viene summarizzata

Summary Links for Border Routers: fissata a 0xFFFFFFFF

  TOS = x, TOS x metric: stesso significato di quello dei Router Links. Non serve il campo # TOS in quanto la lunghezza si ricava dall’header LSA

  Link_State_ID (dell’header LSA):

Summary Links for IP Networks: l’indirizzo IP della rete o della subnet che viene summarizzata

Summary Links for Border Routers: l’indirizzo IP del Border Router

Torna all'inizio

 

EXTERNAL LINK

Riportano le informazioni relative a destinazioni esterne al dominio (costo dal router che ha generato il LSA ad una destinazione esterna all’AS).

Sono generati dagli AS Border Router e vengono propagati a tutti i router del dominio OSPF.

Comprendono una destinazione per LSA (come i Summary Links).

Campo LS Type = 5

 

  Network Mask: netmask della rete o della sottorete destinazione

  E: bit 0 del campo TOS. Indica se la metrica e le route esterne vengono acquisiti tramite protocolli quali EGP e BGP, i quali non necessariamente forniscono una metrica comparabile a quella di OSPF. Se viceversa è settato indica che la metrica non è compatibile con OSPF e quindi la distanza deve essere considerata "maggiore di ogni altra route interna". Nel caso la metrica sia compatibile, e' possibile farne la somma con i costi interni al dominio OSPF ricavando il costo effettivo per raggiungere la destinazione.

  External Route Tag: utilizzato dai Border Router per scambiarsi informazioni in riferimento a quella route. Non e' utilizzata ne' analizzata da OSPF

  TOS = x, TOS x metric: stesso significato di quello dei Router Links. Non serve il campo # TOS in quanto la lunghezza si ricava dall’header LSA

  Link_State_ID (header LSA): indirizzo IP della rete o della sottorete destinazione

Torna all'inizio

 

IL CALCOLO DELLE ROUTES

Il database link state e' utilizzato per calcolare le routes della rete, che devono essere nuovamente calcolate dopo ogni modifica della topologia.

L'algoritmo SPF viene utilizzato per calcolare il percorso piu' breve ed i percorsi uguali dal router locale OSPF  verso ciascuna destinazione. Da questo calcolo, il router deriva il next hop per la destinazione, ossia il router successivo al quale inviare i dati ed il link che dovrebbe essere utilizzato per raggiungerlo. Dopo aver calcolato la tabella, il processo OSPF passa le informazioni al processo IP.

Vengono prima calcolate le routes per il "default TOS", il TOS 0.  Se il router e' in grado di espletare il TOS routing, dovrebbe quindi calcolare le routes per ciascun altro TOS. TOS e' un campo del protocollo IP denominato "Type Of Service", attualmente lungo 5 bits, che OSPF attualmente utilizza per definire delle metriche, con la seguente codifica :

 

Decimal Encoding

Binary Encoding

RFC-1349 TOS values

0

00000

Normal service

2

00010

Minimize monetary cost

4

00100

Maximize reliability

8

01000

Maximize throughput

16

10000

Minimize delay

 

Ad esempio, se un pacchetto IP ha il campo TOS settato a 01000, dovrebbe essere instradato in accordo alle routes calcolate per la metrica numero 8 (maximize throughput).

I routers che non supportano il TOS routing settano il bit "support-of-TOS" a 0 nel loro LSA e, onde evitare possibili situazioni di destinazioni irraggiungibili che potrebbero verificarsi per routers non zero TOS,  questi instraderanno sempre i pacchetti in accordo al TOS 0.

Torna all'inizio