Toate protocoalele de rutare împart componente similare. Toate folosesc mesaje de protocol de rutare pentru a schimba informații despre rută. Mesajele ajută la construirea structurilor de date , care sunt apoi prelucrate utilizând un algoritm de rutare.
Cele trei componente principale ale protocolului de rutare OSPF includ:
Structuri de Date
OSPF creează și menține trei baze de date (vedeți Figura 1).
- Baza de Date de Adiacență - Creează tabela vecinului
- Bază de Date Link-State (LSDB) - Creează tabela de topologie
- Baza de Date de Transmitere - Creează tabela de rutare
Aceste tabele conțin o listă a routerelor vecine pentru a schimba informații de rutare și sunt ținute și gestionate în RAM.
Mesajele Protocolului de Rutare
OSPF schimbă mesaje pentru a transmite informații despre rutare utilizând cinci tipuri de pachete. Aceste pachete , așa cum se arată în Figura 2 , sunt:
- Pachet Hello
- Pachet de descriere a Bazei de Date
- Pachet cerere Link-State
- Pachet Actualizat Link-State
- Pachet de confirmare Link-State (LSAck)
Aceste pachete sunt utilizate pentru a descoperi routerele vecine și de asemenea a schimba informații de rută pentru a menține informații exact cu privire la rețea.
Algoritm
CPU-ul procesează tabelele vecine și topologice utilizând algoritmul SPF a lui Dijkstra. Algoritmul SPF este bazat pe costul cumulat pentru a ajunge la o destinație.
Algoritmul SPF creează arborele SPF prin a plasa fiecare router la rădăcina arborelui și calculează calea cea mai scurtă pentru fiecare nod. Arborele PSF este apoi utilizat pentru a calcula rutele cele mai bune. OSPF pune cele mai bune rute în baza de date de transmitere , care este folosit pentru a crea tabela de rutare.