BFD(Bidirectional Forwarding Detection)是一種用於檢測轉發引擎之間通信故障的協定。它通過在兩個系統之間建立BFD會話,並周期性地傳送BFD控制報文來檢測路徑的連通性。如果一方在既定的時間內沒有收到BFD控制報文,則認為路徑上發生了故障。BFD的特點包括輕負荷、短持續時間的檢測,以及使用單一機制對所有類型的介質和協定層進行檢測,實現全網統一的檢測機制。
BFD的檢測機制包括:
建立BFD會話:兩個系統建立BFD會話,並綁定本端出接口和對端IP位址。
周期性傳送BFD控制報文:會話建立後,雙方系統定時在彼此之間的路徑上傳送BFD控制報文。
檢測報文丟失:如果一方在既定的時間內沒有收到BFD控制報文,則認為路徑上發生了故障。
BFD的配置步驟(靜態單跳檢測)包括:
全局使能BFD。
配置BFD組播IP位址(可選),默認為224.0.0.184。
創建BFD會話綁定信息,區分不同的BFD會話。
配置BFD會話本地標識符。
配置BFD會話遠端標識符。
提交BFD會話配置。
BFD的配置步驟(靜態多跳檢測)包括:
全局使能BFD。
配置三層接口來實現多跳檢測,不需要配置預設組播IP位址。
綁定對端IP位址和保證路由可達。
BFD的檢測模式包括異步模式,其中系統之間相互周期性地傳送BFD控制報文,如果某個系統連續幾個報文都沒有接收到,就認為此BFD會話的狀態是Down。此外,還有Echo功能,當一個BFD控制報文按照特定方式傳送時,遠端系統通過它的轉發路徑進行回應。