BGP vs OSPF: czym się różnią i gdzie ich używać?
BGP to zewnętrzny protokół (EGP) między systemami autonomicznymi, sterowany polityką. OSPF to wewnętrzny IGP liczący trasy z metryki kosztu. Skala i użycie.
Ostatnia aktualizacja:
BGP i OSPF to dwa protokoły routingu, które działają na różnych poziomach sieci. BGP (Border Gateway Protocol, RFC 4271) to protokół zewnętrzny (EGP), który wymienia trasy między systemami autonomicznymi i wybiera ścieżki na podstawie polityki. OSPF (Open Shortest Path First, RFC 2328 dla IPv4 i RFC 5340 dla IPv6) to protokół wewnętrzny (IGP), który w obrębie jednej domeny administracyjnej liczy najkrótsze ścieżki na podstawie metryki kosztu. OSPF wie, jak dotrzeć do każdego routera w Twojej sieci, a BGP decyduje, przez którego sąsiada wyjść do reszty internetu.
| Cecha | BGP | OSPF |
|---|---|---|
| Klasa protokołu | EGP, między systemami autonomicznymi | IGP, wewnątrz jednego AS |
| Algorytm | Path vector | Link state (Dijkstra) |
| Podstawa wyboru trasy | Polityka: local-pref, AS-path, MED | Metryka kosztu wynikająca z pasma |
| Skala | Pełna tablica DFZ, ponad milion tras | Od setek do tysięcy tras w obszarze |
| Zbieżność | Wolniejsza, liczona w minutach | Szybka, liczona w sekundach |
| Transport | TCP, port 179 | Bezpośrednio nad IP, protokół 89 |
| Typowe zastosowanie | Peering, tranzyt, multihoming | Routing wewnętrzny i ścieżki do next-hopów |
EGP kontra IGP: gdzie przebiega granica
Protokoły różnią się przede wszystkim zasięgiem administracyjnym. OSPF działa wewnątrz pojedynczego systemu autonomicznego (AS) i utrzymuje pełną mapę topologii w bazie stanu łączy (LSDB). BGP działa na styku z innymi sieciami. Każda sesja eBGP łączy dwa różne numery AS, a iBGP rozprowadza trasy zewnętrzne wewnątrz własnego AS. Dlatego OSPF nazywamy IGP, a BGP zaliczamy do protokołów EGP.
- OSPF: jeden AS, jedna domena zaufania, pełna widoczność topologii.
- BGP: wiele różnych AS, brak zaufania między sieciami, widoczność na poziomie prefiksów i atrybutów.
- OSPF działa bezpośrednio nad IP (numer protokołu 89). BGP korzysta z sesji TCP na porcie 179.
- OSPF nie kieruje się polityką operatora. O trasach w BGP decyduje polityka operatora.
Polityka kontra metryka: jak każdy wybiera trasę
OSPF wybiera trasę algorytmem SPF (Dijkstra) na podstawie sumarycznego kosztu łączy, więc decyzja jest deterministyczna i czysto techniczna. BGP wybiera trasę wieloetapowym procesem decyzyjnym, w którym najpierw liczą się atrybuty polityki, a dopiero potem długość ścieżki. Dzięki temu operator steruje ruchem niezależnie od liczby przeskoków.
- OSPF: koszt łącza (domyślnie, zależnie od producenta, 10^8 / przepustowość), najniższa suma wygrywa.
- BGP: kolejno Weight, Local Preference, AS-Path, Origin, MED, a następnie preferencja eBGP nad iBGP.
- OSPF zbiega w sekundach dzięki szybkiemu zalewaniu pakietami LSA.
- BGP zmienia decyzje przez community, prepend AS-Path i Local Preference, a nie przez fizyczną metrykę łącza.
Skala: liczba tras i stabilność
OSPF projektuje się dla dziesiątek do kilkuset routerów w obrębie jednej organizacji. Duże domeny dzieli się na obszary (areas), aby ograniczyć rozmiar LSDB i obciążenie SPF. BGP jest stworzony do obsługi globalnej tablicy, która do 2026 roku przekroczyła milion prefiksów IPv4 i ponad 200 tysięcy prefiksów IPv6. OSPF nie udźwignąłby pełnej tablicy internetu, ponieważ każda zmiana wymuszałaby ponowne liczenie SPF w całej domenie. Dlatego do internetu wychodzi się przez BGP, a wewnętrzną osiągalność kolejnych skoków (next-hop) zapewnia OSPF.
BGP i OSPF w sieci AS202520 SkyPass
W AS202520 SkyPass OSPF (lub inny IGP) zapewnia wewnętrzną osiągalność między routerami brzegowymi w punktach styku (PoP) w Warszawie i Wrocławiu, a BGP realizuje całą politykę styku ze światem: tranzyt IP, peering na polskich punktach wymiany ruchu (THINX, TPIX, WRIX, 1-IX) oraz zdalny dostęp do IXP. Jeśli prowadzisz własny AS, Twój IGP utrzymuje topologię, a sesje eBGP z nami decydują, którędy ruch trafia do reszty internetu. Tam, gdzie trzeba, wspieramy inżynierię ruchu przez community i Local Preference.
Najczęstsze pytania
Czy BGP może zastąpić OSPF wewnątrz sieci?
W praktyce nie. BGP nie wykrywa topologii ani nie reaguje na zmiany łączy tak szybko jak IGP. Wewnątrz AS prawie zawsze używa się OSPF lub IS-IS do osiągalności, a iBGP do roznoszenia tras zewnętrznych.
Czy potrzebuję OSPF, jeśli mam tylko jeden router brzegowy?
Niekoniecznie. Przy jednym routerze wystarczą trasy statyczne i jedna sesja eBGP do operatora. OSPF zaczyna się opłacać, gdy masz wiele routerów i potrzebujesz automatycznej osiągalności wewnętrznej.
Dlaczego BGP wewnątrz AS potrzebuje IGP?
iBGP wskazuje next-hop, ale to IGP (np. OSPF) musi wiedzieć, jak fizycznie dotrzeć do tego next-hopa. Bez działającego IGP trasy iBGP są nierozwiązywalne i pozostają w tablicy jako nieaktywne.
Czy OSPF i BGP można uruchomić na tym samym routerze?
Tak, to standard na routerach brzegowych. OSPF utrzymuje topologię wewnętrzną, a BGP obsługuje sesje z operatorami i IXP. Redystrybucję między nimi stosuje się ostrożnie, by nie wstrzyknąć pełnej tablicy do IGP.
