OSPF databassynkronisering

Efter att routrarna når Two-Way-status fortsätter de till databas synkronisering. Medan Hello-paket används för att etablera grannrelationer (neighbor adjacencies), används de övriga fyra typerna av OSPF-paket under processen för att utbyta och synkronisera LSDB (Link-State Database). Denna process sker i tre steg enligt följande:

  1. Beslut om första routern som inleder DBD-utbyte
  2. Utbyte av DBD databaser
  3. Skicka en LSR

1. Beslut om första routern som inleder DBD-utbyte

I ExStart-statusen avgör de två intilliggande routrarna vilken av dem som ska skicka Database Description (DBD)-paketen först. Routern med det högre router-ID får rollen som den ledande routern och inleder DBD-utbytet. Under Exchange-statusen är det därför denna router som skickar sina DBD-paket först.

I figuren har R2 det högre router-ID, vilket gör att R2 inleder processen genom att skicka sina DBD-paket först.

2. Utbyte av DBD databaser

I Exchange-statusen utbyter de två routrarna ett eller flera Database Description (DBD)-paket. Ett DBD-paket innehåller information om Link-State Advertisement (LSA)-poster som finns i routerns Link-State Database (LSDB). Dessa poster kan beskriva antingen en länk eller ett nätverk. Varje LSA-post inkluderar följande information:

  • Länkstatus-typen: Typen av information som annonseras (t.ex. nätverk, router eller extern länk).
  • Avsändarens adress: Adressen till routern som skickar LSA-posten.
  • Kostnaden för länken: Den OSPF-kostnad som är associerad med länken.
  • Sekvensnummer: Används för att identifiera och spåra ändringar i den annonserade länkstatusinformationen.

Sekvensnumret gör det möjligt för routern att avgöra om den mottagna LSA-informationen är nyare än det som redan finns i dess LSDB.

I figuren skickar R2 ett DBD-paket till R1. När R1 tar emot detta paket, utför den följande åtgärder:

  1. Bekräftar mottagandet av DBD: R1 skickar ett LSAck (Link-State Acknowledgment)-paket till R2 för att bekräfta att DBD-paketet har tagits emot.
  2. Skickar sitt eget DBD-paket: Därefter skickar R1 sitt DBD-paket till R2.
  3. R2 bekräftar mottagandet: Slutligen skickar R2 en bekräftelse till R1.

3. Skicka en LSR

Loading-statusen inträffar när en router jämför informationen från ett mottaget Database Description (DBD)-paket med informationen i sin egen Link-State Database (LSDB). Om DBD-paketet innehåller en mer aktuell Link-State Advertisement (LSA)-post, skickar routern en Link State Request (LSR) för att begära den kompletta informationen och övergår till Loading-status.

Till exempel, i figuren, skickar R1 en LSR till R2 för att begära mer detaljerad information om nätverket 172.16.6.0. R2 svarar med den fullständiga informationen i ett Link State Update (LSU)-paket. När R1 tar emot LSU-paketet, skickar den en Link State Acknowledgment (LSAck) för att bekräfta mottagandet. Därefter uppdaterar R1 sin LSDB med de nya länkstatus-posterna.

När alla LSR har uppfyllts för en given router anses de intilliggande routrarna vara fullständigt synkroniserade och går över till Full-status.

LSU (Link State Update) skickas endast till grannar under följande förhållanden:

  1. Vid förändringar: När en förändring i nätverkstopologin upptäcks skickas inkrementella uppdateringar.
  2. Periodiska uppdateringar: Varje 30 minuter skickas LSU för att säkerställa att alla routrar har samma LSDB.