OSPF versus BGP: IGP en EGP, routekeuze, verbindingen tussen routers en schaal
Internet bestaat uit onderling verbonden AS'en (autonome systemen), netwerken die worden beheerd door organisaties zoals providers, universiteiten en bedrijven. Een protocol dat routes binnen een AS uitwisselt, heet een IGP, en een protocol dat routes tussen AS'en uitwisselt een EGP; OSPF is het typische IGP en BGP het typische EGP. OSPF vindt automatisch de kortste route op basis van de linkkosten binnen een AS en is erop gericht na een storing snel om te schakelen. BGP kiest routes tussen AS'en op basis van attributen zoals de reeks doorlopen AS'en (AS_PATH) en van het beleid van elke organisatie, bijvoorbeeld welke buur de voorkeur krijgt. Omdat het de routes van het hele internet verwerkt, is het ontworpen voor stabiliteit en controle in plaats van snelheid.
| Kenmerk | OSPF | BGP |
|---|---|---|
| Indeling en reikwijdte | IGP; binnen één AS (organisatie) | EGP; tussen AS'en; ook gebruikt tussen BGP-routers binnen hetzelfde AS (iBGP) |
| Type protocol | Link-state | Path vector |
| Routekeuze | Vindt de route met de laagste totale linkkosten met het algoritme van Dijkstra | Vergelijkt attributen zoals LOCAL_PREF, de lengte van AS_PATH en MED in een vaste volgorde; attributen kunnen worden ingesteld om het beleid van de organisatie toe te passen |
| Voorkomen van lussen | Alle routers in een area berekenen de kortste paden met dezelfde kaart | Verwerpt een ontvangen route waarvan het AS_PATH het eigen AS-nummer bevat |
| Hoe buren verbinding maken | Draait direct over IP (protocolnummer 89); verstuurt Hello's via multicast en ontdekt buren automatisch | Maakt verbinding via TCP-poort 179; elke peer wordt door de beheerder afzonderlijk ingesteld |
| Hoe updates worden verstuurd | Als er iets verandert, worden LSA's door de area verspreid; Hello's controleren of buren nog actief zijn (elke 10 seconden in het voorbeeld van RFC 2328) | Verstuurt eerst de volledige set routes en daarna alleen wijzigingen in UPDATE-berichten; routes worden niet periodiek opnieuw verstuurd, en KEEPALIVE's houden de sessie in stand |
| Convergentiesnelheid | In het algemeen snel; rekent direct opnieuw zodra het een linkstoring opmerkt | In het algemeen trager; het detecteren van een storing kan betekenen dat op de hold time moet worden gewacht (90 seconden voorgesteld in RFC 4271), en er zijn veel meer routes |
| Aantal routes en schaal | Routes binnen de organisatie; grote netwerken worden opgedeeld in area's om rekenwerk en informatie te beperken | Kan het zeer grote aantal routes van het hele internet aan; gebruikt tussen providers en door organisaties die met meerdere providers zijn verbonden |
De getalswaarden zijn typische ordegroottes en variëren per procesgeneratie en product.