◆俞 淮
?
冗余鏈路的可靠性研究與實現
◆俞 淮
(92126部隊 福建 350007)
為了提升網絡的可靠性和穩定性,本文提出VRRP+端口track+BFD+NQA的冗余鏈路可靠性解決方案, 確保網絡的穩定運行,讓客戶獲得高可靠的網絡業務體驗。
冗余鏈路;VRRP;BFD;NQA
隨著互聯網的發展,大型企業的網絡已經從簡單的信息承載平臺轉變為公共服務平臺,這就要求企業網絡越來越穩定。為了保證網絡的健壯性、效率和穩定性,企業有必要對機房中的關鍵設備采用硬件備份和雙機冗余技術,利用相關的軟件提供強有力的管理機制、控制手段和硬件技術,實現冗余鏈路的可靠切換。本文介紹的是采用虛擬路由器冗余協議(Virtual Router Redundancy Protocol,VRRP)[1-4]。
虛擬路由器冗余協議是一種容錯協議,也可以叫做備份路由協議。每一個VRRP組就是抽象出來一個虛擬的路由器,該路由器充當網絡中的網關。對用戶而言,只需知道虛擬路由器的IP,至于數據由誰來轉發,Master故障以后誰來接替,這是VRRP的工作。在每一個VRRP組中,僅有master響應對虛擬IP地址的ARP請求。Master路由器周期性地發送VRRP消息,以便告知Backup路由器自己的存活。一旦Master路由器出現故障,處于監聽狀態的Backup路由器就開始接替工作[5-7]。
VRRP技術可以提供冗余鏈路主備切換,但是在實際部署中發現上行鏈路故障,主備無法切換,下行鏈路故障,主備切換時間過長等問題。下面針對每種問題,提出相應的改進辦法。
上行直連鏈路故障時,由于下行鏈路正常,主備設備之間VRRP交互報文不受影響,所以導致主備無法切換。端口跟蹤技術可以很好的解決這個問題,讓VRRP組跟蹤上行端口的狀態,如果檢測到端口由UP狀態變為DOWN狀態,則自動將主設備的優先級降低到備份設備優先級以下,備份設備收到VRRP交互報文后會自動由backup狀態切換到master狀態,從而實現主備切換。具體配置如下所示:
#主設備優先級設為150,備份優先級默認為100
[GigabitEthernet0/0/1]vrrp vrid 1 priority 150
#主設備上行端口故障時,優先級降低60
[GigabitEthernet0/0/1]vrrp vrid 1 track interface Gi0/0/24 reduced 60
主設備故障,或者下行鏈路故障時,備份設備要等3個VRRP交互報文周期,大約是3.4秒[8],如果還未收到交互報文,則默認主設備故障,備份設備由backup狀態切換為master狀態,接替工作,實現主備切換。但是這個等待的時間對一些實時性要求高的業務是無法忍受的,所以采用BFD聯動技術,使得冗余鏈路的切換時間縮短到1秒以內,大大提高可靠性。
VRRP與BFD聯動部署配置如下所示:
#使能BFD
[R1]bfd
[R1-bfd]quit
[R1]bfd atob bind peer-ip 192.168.1.253 interface Gi0/0/1
[R1-bfd-session-atob]discriminator local 1
[R1-bfd-session-atob]discriminator remote 2
#設置bfd檢測間隔50ms
[R1-bfd-session-atob]min-rx-interval 50
[R1-bfd-session-atob]min-tx-interval 50
R2的配置
#使能BFD
[R2]bfd
[R2-bfd]quit
[R2]bfd btoa bind peer-ip 192.168.1.252 interface Gi0/0/1
[R2-bfd-session-btoa]discriminator local 2
[R2-bfd-session-btoa]discriminator remote 1
#設置bfd檢測間隔50ms
[R2-bfd-session-btoa]min-rx-interval 50
[R2-bfd-session-btoa]min-tx-interval 50
設置VRRP與BFD聯動
#如果bfd檢測失敗,備份設備優先級提升60
[R2-GigabitEthernet0/0/1]vrrp vrid 1 track bfd-session 2
increased 60
上行直連鏈路故障可以用端口跟蹤技術解決,但是上行多跳鏈路故障,VRRP主設備是無法感知的。這時候需要使用華為數通設備的NQA(Network Quality Analysis)技術,來檢測上行多跳鏈路某個IP地址的可達性,如果檢測失敗則降低主設備的優先級,切換到備份鏈路接替工作,保證冗余鏈路的可靠性。
VRRP與NQA聯動配置如下所示:
#設置NQA管理和實例名稱
[R1]nqa test-instance admin test
#探測協議類型為ICMP,
[R1-nqa-admin-test]test-type icmp
[R1-nqa-admin-test]destination-address ipv4 192.168.4.1
#設置檢測周期為3秒
[R1-nqa-admin-test]frequency 3
#設置ICMP報文發送間隔
[R1-nqa-admin-test]interval seconds 1
#超時時間為1秒
[R1-nqa-admin-test]timeout 1
#一個探測周期的發包個數
[R1-nqa-admin-test]probe-count 2
#立即開始檢測
[R1-nqa-admin-test]start now
#vrrp與nqa實例聯動,檢測失敗則降低優先級60
[R1-GigabitEthernet0/0/1]vrrp vrid 1 priority 150
[R1-GigabitEthernet0/0/1]vrrp vrid 1 track nqa admin test
reduce 60
在部署NQA的時候,各參數的設置不正確,會導致檢測結果異常,需遵循如下規則:
interval * probe-count + timeout < frequency
在上行多跳鏈路故障中,如果未部署NQA,鏈路在斷流一段時間以后也會自動恢復,但是主備不會切換,從路由跟蹤可以發現,流量是先到主設備,再到備份設備的。斷流的時間由ospf等動態路由協議收斂的時間決定。
冗余鏈路可靠性技術的優缺點如表1所示。單純的VRRP技術在設備故障或者下行鏈路故障時,備份設備在VRRP交互報文超時以后接替工作。VRRP+端口track技術對上行鏈路故障感知較快,自動降低優先級并通知備份設備。VRRP+BFD技術可以較快的感知設備故障和下行鏈路故障,接替時間縮短到1秒以內。VRRP+NQA技術可以利用ICMP監測端口,感知上行多跳鏈路故障,及時降低主設備優先級,并通告給備份設備。
表1 冗余鏈路可靠性技術

綜上所述,我們提出VRRP+端口track+BFD+NQA的冗余鏈路可靠性解決方案。既可以縮短主備切換的時間,又可以感知上行多跳鏈路故障,大大提高冗余鏈路的可靠性,確保網絡業務的穩定運行。
為驗證解決方案的有效性,配置如圖1所示的VRRP性能測試拓撲。設備包括華為AR2220路由器一臺,S5700三層交換機4臺,S3700二層交換機一臺,PC機一臺,網線若干。實驗測試在下行鏈路故障,上行鏈路故障,上行多跳鏈路故障三種情況下分別進行,測試冗余鏈路的可靠性,包括網絡斷流和丟包情況,具體如下所述。
LSW1和LSW2配置VRRP組,其中LSW1為master,LSW2為backup。
LSW1交換機track跟蹤上行端口。
LSW1和LSW2下行通過LSW5連接的鏈路配置BFD。
LSW1和AR1之間配置NQA。
PC1用ICMP協議ping AR1的LOOPBACK0地址監測鏈路。

圖1 性能測試拓撲圖
拔掉LSW1與LSW5之間的網線,造成下行鏈路故障,從PC1上未發現網絡丟包,在LSW2上display vrrp brief發現其已經變成master狀態。
拔掉LSW1與LSW3之間的網線,造成上行鏈路故障,從PC1上未發現網絡丟包,在LSW2上display vrrp brief發現其已經變成master狀態。
拔掉LSW3與AR1之間的網線,造成上行多跳鏈路故障,從PC1上未發現網絡丟包,在LSW2上display vrrp brief發現其已經變成master狀態。
通過對冗余鏈路可靠性技術的研究,提出一種優化的解決方案,經過測試,可以使VRRP的切換速度達到秒級以內,大大提高了網絡的可靠性。
[1]郭能華.基于MSTP+VRRP雙核心技術的企業網絡冗余設計與實現[J].中國管理信息化,2016.
[2]孫光懿.基于VRRP和MSTP協議實現校園網高可靠性[J].中央民族大學學報(自然科學版),2018.
[3]王軼群.VRRP路由協議介紹及配置[J].赤峰學院學報(自然科學版),2013.
[4]張文川.使用VRRP技術提高網絡的可靠性[J].軟件工程,2017.
[5]蒲寶卿.一種提高校園網可靠性的VRRP協議解決方案[J].甘肅高師學報,2011.
[6]曾志峰.VRRP協議與網絡安全的高可靠性[J].計算機安全,2003.
[7]王英杰.基于BFD和VRRP的出口鏈路冗余設計與實現[J].軟件導刊,2015.
[8]暨仲明.VRRP與監測功能聯動的設計與實現[J].電子器件,2009.