BFD 是什么?
BFD (Bidirectional Forwarding Detection)的是雙向轉(zhuǎn)發(fā)檢測。是一種用于檢測兩個轉(zhuǎn)發(fā)引擎之間路徑故障的標準化全網(wǎng)統(tǒng)一檢測機制。該機制能夠為上層應(yīng)用提供毫秒級檢測服務(wù),并實現(xiàn)鏈路的快速故障檢測。通過BFD檢測到鏈路故障后,上層協(xié)議可以采取措施及時糾正故障。
BFD 要解決什么問題?
隨著網(wǎng)絡(luò)應(yīng)用日益廣泛,對網(wǎng)絡(luò)的可靠性要求越來越高。為減少設(shè)備故障對業(yè)務(wù)的影響,要盡可能縮短故障檢測時間,從而觸發(fā)保護倒換,確保業(yè)務(wù)快速恢復(fù)?,F(xiàn)有路由協(xié)議(如OSPF、IS-IS)或冗余網(wǎng)關(guān)協(xié)議(如VRRP)的故障檢測時間通常在秒級,難以滿足關(guān)鍵業(yè)務(wù)的高可靠性要求。BFD能提供毫秒級故障檢測,并與其他協(xié)議聯(lián)動,實現(xiàn)業(yè)務(wù)的快速切換。
BFD的工作原理
BFD通過建立會話,在系統(tǒng)之間周期性地發(fā)送BFD數(shù)據(jù)包。若某一方在指定時間內(nèi)未收到對端響應(yīng),即判定會話狀態(tài)為"Down"(即檢測到路徑故障)。 本節(jié)從三個維度描述BFD的工作原理:BFD會話建立過程、BFD會話建立模式和BFD故障檢測機制。
BFD會話建立過程
BFD會話具有以下狀態(tài):Down(關(guān)閉)、Init(初始化)、Up(已建立)和AdminDown(管理性關(guān)閉)。BFD報文中的State字段指示會話狀態(tài)。系統(tǒng)根據(jù)本地會話狀態(tài)和接收到的對端會話狀態(tài)來更改會話狀態(tài)。
- Down:初始狀態(tài)或鏈路故障狀態(tài)。
- Init:初始化狀態(tài),表示BFD會話正在建立。
- Up:正常狀態(tài),表示鏈路正常。
- AdminDown(管理性關(guān)閉):BFD會話被管理性關(guān)閉。
BFD狀態(tài)機實現(xiàn)了用于BFD會話建立或刪除的三次握手,以確保兩個系統(tǒng)檢測到狀態(tài)變化。下圖顯示了BFD會話的建立過程,以描述狀態(tài)機的轉(zhuǎn)換過程。
會話建立過程BFD會話建立模式
“BFD會話建立模式”指的是在兩個設(shè)備之間創(chuàng)建和初始化一個BFD會話所采用的具體方法。它主要定義了關(guān)鍵的會話參數(shù)(尤其是標識符)是如何被確定和交換的。BFD會話可以通過靜態(tài)或動態(tài)模式建立。靜態(tài)和動態(tài)BFD會話的區(qū)別在于本地和遠程鑒別符的配置方式不同。
- 靜態(tài)建立BFD會話參數(shù),包括本地和遠程鑒別符,在CLI上手動指定。BFD會話建立請求手動分發(fā)。
- 動態(tài)建立當(dāng)動態(tài)建立BFD會話時,系統(tǒng)按以下方式處理本地和遠程鑒別。
- 動態(tài)分配的本地鑒別符:當(dāng)上層協(xié)議(如OSPF)發(fā)現(xiàn)鄰居并需要BFD進行檢測時,它會通知BFD模塊,BFD模塊自動生成一個本地標識符。
- 自學(xué)習(xí)的遠程鑒別符:通過自我學(xué)習(xí)獲得。初始建立時,設(shè)備發(fā)送的BFD報文中“遠程標識符”字段為0,表示“請告訴我你的本地標識符”。對端設(shè)備收到后,會回復(fù)包含自己本地標識符的報文。這樣,雙方就學(xué)習(xí)到了對方的標識符。
BFD故障檢測機制
兩個網(wǎng)絡(luò)設(shè)備建立一個 BFD 會話以監(jiān)控它們之間的路徑并服務(wù)于上層應(yīng)用程序。BFD 不提供鄰居發(fā)現(xiàn)。相反,BFD 從其服務(wù)的上層應(yīng)用程序獲取鄰居信息。兩個設(shè)備建立 BFD 會話后,它們周期性地相互發(fā)送 BFD 數(shù)據(jù)包。如果一個設(shè)備在設(shè)定的時間限制內(nèi)未收到響應(yīng),則該設(shè)備認為轉(zhuǎn)發(fā)路徑存在故障。然后 BFD 將此故障通知上層協(xié)議。
當(dāng) OSPF 和 BFD 一起使用時,BFD會話建立在上圖中,SwitchA 和 SwitchB 上都配置了 OSPF 和 BFD,建立 BFD 會話的過程如下:1 OSPF 使用 Hello 機制發(fā)現(xiàn)鄰居并建立鄰居關(guān)系。2 OSPF 將鄰居信息(包括源地址和目的地址)通知給 BFD。3 BFD 根據(jù)接收到的鄰居信息建立會話。4 BFD 會話建立后,BFD 開始監(jiān)控鏈路并對任何鏈路故障做出快速響應(yīng)。

上圖中,1 被監(jiān)控的鏈路發(fā)生故障。2 BFD 快速檢測到鏈路故障并將 BFD 會話狀態(tài)更改為 Down。3 BFD 通知本地 OSPF 進程該鄰居不可達。4 本地 OSPF 進程終止 OSPF 鄰居關(guān)系。
數(shù)據(jù)中心和運營商網(wǎng)絡(luò)中交換機作為核心轉(zhuǎn)發(fā)設(shè)備,承擔(dān)著數(shù)據(jù)包的高速轉(zhuǎn)發(fā)、VLAN劃分、流量控制等關(guān)鍵功能。它的穩(wěn)定性和可靠性直接決定了整個網(wǎng)絡(luò)的性能和業(yè)務(wù)的連續(xù)性。其中支持的高可靠性BFD通過與路由協(xié)議(如OSPF、IS-IS)、網(wǎng)關(guān)協(xié)議(如VRRP)等聯(lián)動,能夠在毫秒級內(nèi)檢測到鏈路或設(shè)備故障,并立即觸發(fā)保護切換,確保業(yè)務(wù)流量不會因單點故障而中斷。
-
故障檢測
+關(guān)注
關(guān)注
0文章
78瀏覽量
20433 -
BFD
+關(guān)注
關(guān)注
0文章
12瀏覽量
6069
發(fā)布評論請先 登錄
請問FPGA在啟動的時候是否有對于Flash的任何故障檢測機制呢?
BFD技術(shù)白皮書 華為
詳解Linux內(nèi)核搶占實現(xiàn)機制
通力電梯故障代碼詳解
通信IP網(wǎng)BFD應(yīng)用的研究
基于多核處理器BFD協(xié)議的設(shè)計
流量檢測儀表和物位檢測儀表等自動化儀表的故障處理案例分析
BFD協(xié)議的機制和如何實現(xiàn)分布式BFD系統(tǒng)的詳細說明
故障度量和安全機制ASIL等級的詳解
構(gòu)建高可靠網(wǎng)絡(luò):硬件BFD的關(guān)鍵作用

BFD 故障檢測機制詳解
評論