OSPF-routrar genererar LSA-paket varje gång routrar startar en OSPF-process eller när ändringar införs i routing-informationen. LSA-paket informerar status på länkar mellan routrarna. Varje OSPF-router som tar emot en LSA utför kontroller och därefter uppdaterar sin databas. När databasen är uppdaterad väljer routern den bästa väg (route) för varje destination. Valet görs med SPF-algoritmen.
Precis som andra routing-algoritmer använder SPF också en metrisk komponent som heter kostnad för att välja den bästa rutten för routing-tabellen.
OSPF-metric
Logiskt sett kommer ett OSPF-paket att ha mer overhead genom en 56 kbps seriell länk än genom en 100 Mbps Ethernet-länk. På motsvarande sätt tar det mindre tid att ta sig genom en högre bandbreddslänk än en lägre bandbreddslänk. OSPF använder denna logik för att beräkna kostnaden. Kostnaden är invers proportionell av bandbredd. Högre bandbredd har en lägre kostnad. Lägre bandbredd har en högre kostnad.
OSPF använder följande formel för att beräkna kostnaden
Kostnad = Referensbandbredd / Interface-bandbredd i bps
Referensbandbredd definierades som godtyckligt värde i OSPF-dokumentation (RFC 2338). Leverantörer behöver använda sin egen referensbandbredd, till exempel Cisco använder 100 Mbps (108 bps) bandbredd som referensbandbredd. Med denna bandbredd skulle OSPF-ekvation vara:
Kostnad = 108 / Interface-bandbredd i bps
Att tänka på när man räknar kostnaden för en väg (route) till en destination:
- Kostnaden är ett positivt heltal värde.
- Eventuellt decimalvärde avrundas tillbaka i närmaste positivt heltal. Ett värde 88,9 resulterar i 88 samma som 88,2
- Värde under 1 betraktas som 1.
Exempel 1: på hur OSPF metric kan räknas ut:
Datorn från 192.168.1.0/24 ska skicka flera paket till dator från 192.168.2.0/24 nätverk, vad är kostnaden?
Vägen till destinationen har följande bandbredd:
- R1 – R2 = 1024 kbps, kostnaden c = 108 / 1024 x 103 = 10(8 – 3) / 1024 = 105 /1024 = 100 000 / 1024 = 97
- R2 – R3 = 512 kbps, kostnaden c = 108 / 512 x 103 = 10(8 – 3) / 512 = 105 / 512 = 100 000 / 512 = 195
- R1 = 100Mbps, kostnaden c = 108 / 100 x 106 = 10(8 – 6) / 100 = 102 / 100 = 100 / 100 = 1
- Totalt kostnad c = 97 + 195 + 1 = 293
- R1 – R5 – R3 = kostnaden c = 97 + 97 +1 = 195
- R1 – R4 128 kbps, kostnaden c = 108 / 128 x 103 = 10(8 – 3) / 128 = 105 / 128 = 100 000 / 128 = 781
- R4 – R3 768 kbps, kostnaden c = 108 / 168 x 103 = 10(8 – 3) / 168 = 105 / 188 = 100 000 / 168 = 130
- Total kostnad c = 781 + 130 +1 = 912
Bästa vägen till 192.168.2.0 /24 nätverk är via R1 – R5 – R3, den lägsta kumulativa kostnaden.