I tidigare avsnitt har vi sett hur routing-protokoll använder en metric för att bestämma den bästa vägen för ett paket över ett nätverk. I OSPF används kostnad som metric, där en lägre kostnad indikerar en bättre väg. Kostnaden är omvänt proportionell mot bandbredden för ett interface – ju högre bandbredd, desto lägre kostnad.
Beräkning av OSPF-kostnad
Kostnaden för ett interface beräknas med följande formel:
Kostnad = Referens bandbredd (bps) / Interfacets bandbredd (bps)
Den förinställda referens bandbredden i OSPF är 100 Mbps (10^8 bps), vilket ger följande formel:
Kostnad = 100 000 000 bps / Interfacets bandbredd i bps
Exempel på standard kostnader:
Interface | Bandbredd | Kostnad |
---|---|---|
Fast Ethernet | 100 Mbps | 1 |
Gigabit Ethernet | 1 000 Mbps | 1 |
10 Gigabit Ethernet | 10 000 Mbps | 1 |
Observera att Fast Ethernet, Gigabit Ethernet och 10 Gigabit Ethernet alla får samma kostnad (1) med standard referens bandbredden, eftersom OSPF avrundar resultatet av beräkningen till det närmaste heltalet. Detta kan orsaka problem i nätverk med högre bandbredd.
Justering av Referens bandbredd
För att skilja på kostnader för snabbare länkar (t.ex. Gigabit Ethernet och 10 Gigabit Ethernet) måste referens bandbredden justeras. Detta påverkar inte den faktiska bandbredds kapaciteten på länken, utan endast beräkningen av OSPF-kostnader.
Kommandot auto-cost reference-bandwidth
Referens bandbredden kan justeras med kommandot auto-cost reference-bandwidth, uttryckt i Mbps:
Router(config-router)# auto-cost reference-bandwidth
Exempel:
För att justera referensbandbredden för Gigabit Ethernet:
auto-cost reference-bandwidth 1000
För 10 Gigabit Ethernet:
auto-cost reference-bandwidth 10000
För att återgå till standardreferensbandbredden:
auto-cost reference-bandwidth 100
Det är viktigt att samma referens bandbredd används på alla routrar i OSPF-domänen för att undvika felaktiga ruttberäkningar. När referens bandbredden ändras visar OSPF ett meddelande som påminner administratören om detta:
% OSPF: Reference bandwidth is changed. Please ensure reference bandwidth is consistent across all routers.
Exempel:
I detta specifika scenario med endast 1 Gbps-portar är det inte nödvändigt att ändra referens bandbredden om det inte finns planer på att införa snabbare länkar, till exempel 10 Gbps. Standard referens bandbredden på 100 Mbps kommer att ge följande kostnad för 1 Gbps-portar:
Kostnad för 1 Gbps med standard referens bandbredd = 100 Mbps / 1000 Mbps = 0,1 avrundat 1
Alla 1 Gbps-portar kommer att få en OSPF-kostnad på 1, vilket också är korrekt men mindre förberett för framtida nätverks uppgraderingar.
Även om det inte är nödvändigt för det aktuella nätverket, rekommenderas att ändra referens bandbredden från 100 Mbps till 10 000 Mbps för att:
- Säkerställa skalbarhet och framtidssäkring.
- Undvika att behöva ändra referens bandbredden när snabbare länkar introduceras.
- Få konsekventa och proportionella kostnadsberäkningar även i nätverk med varierande bandbredd.
Konfigurations exempel:
R1(config-router)# auto-cost reference-bandwidth 10000 R2(config-router)# auto-cost reference-bandwidth 10000 R3(config-router)# auto-cost reference-bandwidth 10000 R4(config-router)# auto-cost reference-bandwidth 10000 R5(config-router)# auto-cost reference-bandwidth 10000
Nu med 10 Gbps länkar blir OSPF kostnader:
Kostnad för 10 Gbps = 10 000 Mbps /10 000 Mbps = 1
Men med 1 Gbps länkar blir OSPF kostnader:
Kostnad för 10 Gbps = 10 000 Mbps /1 000 Mbps = 10
Manuellt justering av OSPF kostnad
Alternativt kan kostnaden för ett specifikt interface anges manuellt med kommandot ip ospf cost. Detta görs på gränssnitts nivå och åsidosätter den automatiska kostnadsberäkningen:
Router(config-if)# ip ospf cost <värde>
Denna metod är användbar när ett specifikt interface kräver en exakt kostnad som inte kan åstadkommas genom att justera referens bandbredden. Låt oss utforska hantering av OSPF kostnader i följande exempel:
R1-R2 länk
R1(config)# interface GigabitEthernet0/0 R1(config-if)# ip ospf cost 5 R1(config)# interface GigabitEthernet0/1 R1(config-if)# ip ospf cost 20 R1(config-if)# end R1# R2(config)# interface GigabitEthernet0/0 R2(config-if)# ip ospf cost 5 R2(config-if)# exit R2#
R2-R5 länk
R2(config)# interface GigabitEthernet0/1 R2(config-if)# ip ospf cost 5 R2(config-if)# end R2# R5(config)# interface GigabitEthernet0/1 R5(config-if)# ip ospf cost 5 R5(config-if)# exit R5(config)#
R5-R4 länk
R5(config)# interface GigabitEthernet0/0 R5(config-if)# ip ospf cost 5 R5(config-if)# end R5# R4(config)# interface GigabitEthernet0/0 R4(config-if)# ip ospf cost 5 R4(config-if)# end R4#
Broadcast-nätverk R1-R3-R4
R1(config)# interface GigabitEthernet0/1 R1(config-if)# ip ospf cost 20 R1(config-if)# end R1# R3(config)# interface GigabitEthernet0/1 R3(config-if)# ip ospf cost 20 R3(config-if)# end R3# R4(config)# interface GigabitEthernet0/1 R4(config-if)# ip ospf cost 20 R4(config-if)# end R4#
Syfte med nuvarande konfiguration
Den nuvarande OSPF-konfigurationen prioriterar specifika vägar genom att manipulera kostnader på gränssnitt. Detta åstadkommer följande:
- Styrning av trafikflöde:
- Trafiken från R1 till 10.11.0.0/16 styrs genom R2 istället för via broadcast-nätverket.
- Trafiken från R4 till 10.5.0.0/16 styrs genom R5 istället för direkt via broadcast-nätverket.
- Reduktion av onödig broadcast-trafik:
- Broadcast-nätverket, där R1, R3 och R4 är anslutna, har en högre kostnad (20) än punkt-till-punkt-länkar (5). Detta minimerar användningen av broadcast-nätverket som en primär väg för datatrafik.
- Minimering av DR/BDR-kommunikation:
- I broadcast-nätverk väljer OSPF en Designated Router (DR) och en Backup Designated Router (BDR). Alla DROTHER-routrar skickar sina LSAs till DR/BDR, vilket kan generera extra trafik. Genom att prioritera punkt-till-punkt-länkar undviker man onödig belastning på DR och BDR i broadcast-nätverket.
Trots att denna konfiguration uppfyller målen för trafikstyrning och minimering av broadcast-trafik, medför den vissa potentiella nackdelar, särskilt en begränsning av tillgängliga redundanta vägar. Den aktuella konfigurationen är främst avsedd för utbildningssyfte. I praktiska nätverk kan det vara fördelaktigt att balansera kostnaderna mellan punkt-till-punkt-länkar och broadcast-nätverk. Detta skulle möjliggöra både effektiv trafikstyrning och bättre utnyttjande av redundanta vägar för ökad nätverks resiliens och flexibilitet.