BFD (Bidirectional Forwarding Detection)
Hálózati protokoll, amelynek egyetlen célja van: a hálózati útvonalak közötti szakadás villámgyors észlelése.
Míg a hagyományos routing protokollok (mint az OSPF vagy BGP) másodpercek alatt veszik észre a hibát, a BFD ezt miliszekundumok alatt teszi meg. Ez kritikus fontosságú a modern hálózatokban (pl. VoIP vagy pénzügyi tranzakciók, stb.), ahol a több másodperces kiesés már komoly adatvesztéssel járna.
Miért van rá szükség?
Képzeljük el, hogy két router között van egy switch. Ha a switch elromlik, a routerek fizikai interfészei (Link State) továbbra is "Up" állapotban maradhatnak, mert a kábelük egy működő (de elszigetelt) switch-be csatlakozik.
-
Probléma: Az OSPF vagy BGP alapértelmezetten 30-180 másodpercig várhat a "Hello" csomagokra, mielőtt halottnak nyilvánítaná a szomszédot.
Erőforrás-igényesek, ha kifejezetten gyakorira állítjuk az ellenőrzést, hiszen az megterheli a router processzorát (Control Plane).
Protokollfüggőek mivel minden protokoll máshogy kezeli a hibadetektálást. -
Megoldás: A BFD-t "ráültetjük" ezekre a protokollokra. Amint a BFD érzékeli a hibát, azonnal szól a routing protokollnak: "Ne várj tovább, az útvonal megszakadt!".
Hogyan működik?
A BFD rendkívül egyszerű és alacsony erőforrás-igényű, így a legtöbb modern router hardveresen (ASIC szinten) kezeli.
1. Kézfogás (Session Establishment)
Két szomszédos eszköz UDP csomagokat (3784-es port) kezd küldeni akár 10-50 ms-onként egymásnak. Megállapodnak az időzítésben, például: "Küldök egy csomagot 50ms-onként, és ha 3-at nem kapok meg, szakadtnak vesszük a vonalat."
Ez azért jó, mert sok modern eszközben a hálózati kártya (ASIC/Data Plane) tudja kezelni, így nem terheli a fő processzort.
2. Üzemmódok
Hibaérzékelési idő OSPF/BGP esetén másodpercek (pl. 10s - 40s) míg BFD esetén miliszekundumok (pl. 50ms - 300ms) ami akár aszinkron mód (folyamatos küldés) vagy Echo mód (visszaküldött csomagok) is lehet.
CPU terhelés OSPF/BGP esetén magasabb (komplex algoritmusok) viszont BFD esetén nagyon alacsony (egyszerű UDP heartbeat)
Protokollfüggetlenség OSPF/BGP esetén nem valósulhat meg, de BFD esetén garantált (bármilyen routinghoz hozzáadható) |
Fontos: A BFD önmagában nem módosítja a routing táblát. Csak egy "riasztó", ami szól az OSPF-nek vagy BGP-nek, hogy indítsák el az újraszámítást és keressenek alternatív utat.