戴俊勉 胡江云 陶慧 吉家昊


摘要:本文通過研究承載鐵路綜合視頻監控系統的數據通信網出現次優路由問題,結合OSPF(開放式最短路徑協議)和VRRP(虛擬路由器冗余協議)的相關原理,分析網絡架構,采用基于Route-policy(路由策略)與Ip-prefix(前綴列表)的路由控制策略進行路由優化,并予以實施,解決因OSPF與VRRP聯動產生次優路由,導致影響業務正常運行的問題。
關鍵詞:數據通信網;開放式最短路徑協議;虛擬路由器冗余協議;次優路由;網絡優化;路由策略;前綴列表
隨著高速鐵路的快速發展,鐵路系統在國民生產和生活中發揮越來越大的作用。由于鐵路系統具有部門多、地點分散、環境復雜等特點,為保證鐵路系統的運輸安全,鐵路綜合視頻監控系統的穩定性和安全性尤為重要。在贛深高鐵綜合視頻監控系統中,數據通信網采用OSPF和VRRP協議進行聯動,以保證綜合視頻監控服務器的正常運行,一旦設置不合理,數據通信網內極容易產生次優路由,嚴重影響綜合視頻監控服務器的正常運行,因此有必要對綜合視頻監控系統網絡結構及協議進行深入分析。
一、網絡結構
贛深高鐵綜合視頻監控系統網絡結構,如圖1所示。
接入路由器AR01作為綜合視頻監控網絡的出口,由華為NE20E-S8擔當;CE01和CE02作為綜合視頻監控服務器接入交換機,由華為S7706擔當,三臺設備間運行OSPF協議實現路由互通。為確保綜合視頻監控系統的高可靠性和高可用性,綜合視頻監控服務器Server01和Server02之間采用熱備的方式,同時每臺服務器均采用雙網卡主備模式,即同一時間僅有主網卡進行工作。并且為了防止單臺網關交換機故障影響,采用VRRP協議實現綜合視頻監控服務器網關的虛擬化冗余備份[1],在CE01和CE02上配置兩個VRRP備份組,其中備份組1的VIP(虛擬網關)作為Server01的網關,其Master(主用)路由設備為CE01;備份組2的VIP作為Server02的網關,其Master路由設備為CE02。
在網絡正常狀態下,工程建設人員為確保Server1的流量全部從CE01和AR01的直連鏈路轉發,Server2的流量全部從CE02和AR01的直連鏈路轉發,并且不允許兩臺Server的流量在一條鏈路上轉發。工程建設人員在CE01和CE02的下行接口VLANIF上均配置arp direct-route enable的命令,通過基于ARP表生成主機路由,CE01和CE02將Server01和Server02的主機路由分別通告給AR01,實現AR01路由表中關于Server01和Server02的主機路由下一跳分別為CE01和CE02。
為驗證CE交換機上VRRP虛擬網關冗余情況,對CE02交換機進行重啟操作后,分析服務器流量轉發路徑,發現在AR01路由表中關于Server02的路由存在異常,去往Server02路由的下一跳從CE02變更為CE01,未按照預先設計方案要求進行流量轉發,存在次優路由的情況,因此有必要對路由協議進行深入分析。
二、協議分析
(一)OSPF協議
OSPF協議是一種鏈路狀態路由協議,其基于IP運行[2],協議的LSDB(鏈路狀態數據庫)報文直接采用IP封裝,通過Hello、DD(數據庫描述)、LSR(鏈路狀態請求)、LSU(鏈路狀態更新)和LSAck(鏈路狀態確認)5種協議報文來實現協議的建立及數據的交互。其中Hello報文用于發現直連鏈路上的OSPF鄰居,并用于維護OSPF鄰居關系;DD報文用于描述LSDB中LSA(鏈路狀態通告)的頭部數據;LSR報文用于向OSPF鄰居請求LSA;LSU(鏈路狀態更新)報文用于發送完整的LSA數據,并通過組播的方式進行泛洪;LSAck(鏈路狀態確認)報文用于設備收到LSU后,對接收到的LSA進行確認[3]。
OSPF協議中設備間兩種關系:鄰居關系和鄰接關系[4],其中鄰居關系指的是路由器在激活OSPF協議后,通過互聯網接口交互Hello報文實現路由器相互發現,并形成2-Way(雙向通信)狀態,以CE01和AR01建立鄰居關系為例,如圖2所示。
其中CE01和AR01的Router-ID分別為1.1.1.1和3.3.3.3。CE01的G1/0/0接口率先激活OSPF協議并開始發送Hello報文,在該報文的頭部中包含設備的Router-ID及接口的區域ID,在該報文的載荷中包含接口的網絡掩碼,Hello間隔、路由器失效間隔,以及該接口上所發現的鄰居,由于協議剛激活,此時鄰居為空。AR01收到Hello報文后,首先對報文進行檢查,檢查自己接口的網絡掩碼是否與收到的Hello報文中的“網絡掩碼”是否一致,同時對其他相關參數進行核對,若存在異常,則忽略Hello報文,當檢查通過后,AR01將CE01的狀態置為Init(初始)狀態。接下來,AR01給CE01發送Hello報文,其中“鄰居”字段中寫入CE01的Router-ID值。當CE01收到AR01發送的Hello報文,并且在“鄰居”字段中發現自己的Router-ID值,CE01將AR01添加到自己的鄰居表中,并且將AR01的狀態置為2-Way。隨后CE01給AR01發送Hello報文,其中“鄰居”字段中寫入AR01的Router-ID值。AR01收到CE01發送的Hello報文后,同理進行判斷后,將CE01的狀態置為2-Way,此時CE01和AR01的OSPF的鄰居關系建立完成。鄰居關系建立完成后,路由器間通過交互DD報文,實現雙方LDSB報文中LSA頭部數據互通,當路由器需要完整的LSA數據時,將通過LSR報文發起報文更新請求,實現路由器之間LSDB報文的同步,此時CE01和AR01間的狀態為Full(全毗鄰),CE01和AR01的關系將變為鄰接關系。
(二)VRRP協議
VRRP協議能夠使得多臺同屬于一個廣播域的網絡設備協同工作,實現設備冗余,從而提高網絡的可靠性,其配置在三層交換機或路由器上的接口上,通過Advertisement Package(通告報文)進行協議交互。在VRRP協議中定義了VRID(虛擬路由器標識符)和Priority(優先級)兩種參數[5],一個VRRP備份組必須使用相同的VRID進行標識,并且Priority值越大,三層交換機或路由器的接口越容易成為Master。Master路由設備承擔VRRP備份組的報文轉發任務,并且在一個VRRP備份組中,只有Master路由設備會響應針對虛擬網關的ARP Request,而處于Backup路由設備并不參與數據轉發工作,但會實時監控當前Master的狀態,以便隨時接替其工作[6]。根據業務轉發需要,備份組1中CE01和CE02優先級分別設置為120和100;備份組2中CE01和CE02優先級分別設置為100和120。
(三)路由分析
根據Server02的流量走向,查看AR01上的路由信息,發現AR01學習到的Server02主機路由是由CE01而非CE02通告,查看CE01和CE02路由表中上關于Server02的路由信息,發現CE01上路由信息為直連路由,路由優先級為255;CE02上路由信息為O_ASE(OSPF的外部路由信息),路由優先級為150,CE02并未通過直連路由學習到Server02主機路由,而是通過OSPF協議學習到的。進一步對CE02上路由信息進行詳細分析,可發現直連路由的狀態為Inactive Adv(未激活狀態),而狀態為Active Adv(激活狀態)的路由條目是從AR01設備上通過OSPF協議學習到的。結合VRRP協議進行深入分析,在測試VRRP功能時,CE02設備發生重啟,在CE02設備重啟過程中,Server02主備網卡發生切換,同時VRRP備份組2的主設備變為CE01,由CE01生成Server2的主機路由,并將Server02的主機路由通告給AR01。當CE02設備重啟完成時,AR01會將Server02的主機路由通過OSPF協議通告給CE02,此時Server02主備網卡再次切換,CE02設備通過arp direct-route enable命令學習到直連的主機路由,由于ARP生成的直聯主機路由優先級為255,小于OSPF路由優先級150,所以CE02直連路由不生效,生效的主機路由是通過OSPF學習到的。同時在CE01上關于Server02的ARP表項刷新到Eth-turnk1端口,由于Eth-trunk1端口也加入了下行口的VLAN,因此CE01會生成關于Server02的主機路由,并將該主機路由通告給AR01,導致上層AR01上關于Server02的主機路由不會刷新,由此在網絡中產生次優路由。
三、優化方案
為了確保VRRP冗余切換完成后,綜合視頻監控系統數據通信網內不出現次優路由的問題,使用Route-policy來解決。Route-policy是一種路由選擇和控制工具,功能強大、靈活多變,可對路由信息進行篩選、過濾和屬性設置等操作,其常與ACL(訪問控制列表)或Ip-prefix配合使用,來實現對路由的控制,可以影響數據流量的轉發[7]。通過在CE01和CE02上部署基于Route-policy與Ip-prefix的路由控制策略,實現CE01在arp direct-route enable命令下,只允許發布Server01的主機路由;CE02在arp direct-route enable命令下,只允許發布Server02的主機路由,從而打破次優路由產生的條件,以CE01為例,具體操作如下:
①創建一條名字為Server01的前綴列表,僅允許Server01的主機地址通過,命令行:ip ip-prefix server01 index 10 permit 10.0.0.4 32。
②創建一條Route-policy,名字為Server01,節點號為10,命令行:route-policy server01 permit node 10;在節點視圖下,使用if-match語句匹配名字為Server01的前綴列表,命令行:if-match ip-prefix server01。
③將創建好的路由策略應用到arp direct-route enable,實現路由發布控制,命令行:arp direct-route enable route-policy server01。
同理在CE02上完成對Server02主機路由的路由策略配置,完成上述配置后,對VRRP冗余性進行驗證,確認數據通信網內流量轉發不存在次優路由的情況。
同時由于工程建設人員未對命令行的工作機制和使用限制進行深入了解,錯誤地認為arp direct-route enable命令生成的直連路由優先級最高,使得在OSPF等多協議的聯動過程中對數據通信網網絡產生異常影響,因此在數據通信網的建設與維護過程中,應完善作業標準化流程,加強對網絡協議聯動的敏感性。
四、結束語
本文通過研究鐵路綜合視頻監控系統中數據通信網出現次優路由的問題,結合OSPF和VRRP協議的工作原理,采用基于Route-policy與Ip-prefix的路由控制策略,解決了OSPF和VRRP協議聯動過程中產生次優路由的問題,排查安全隱患,對數據通信網的工程建設和網絡維護,具有一定的參考意義。
作者單位:戴俊勉 胡江云 陶慧 吉家昊 中國鐵路廣州局集團有限公司
參 ?考 ?文 ?獻
[1]朱仕耿.HCNP路由交換學習指南[M].北京:人民郵電出版社,2017:490-492.
[2]華為技術有限公司.HCNA網絡技術學習指南[M]. 北京:人民郵電出版社,2015:192-194.
[3] 蔣建峰.HCNA網絡技術[M].北京:電子工業出版社,2018:78-85.
[4] Jeff Doyle.OSPF和IS-IS詳解[M].孫余強,譯.北京:人民郵電出版社,2014:196-220.
[5]朱壯普.基于MSTP和VRRP的網絡高可用性技術研究與實現[J].太原學院學報(自然科學版),2018,36(04):46-51.
[6]胡江云,肖琳琳,龔蕓嫻,等.數據通信網VRRP與MSTP聯動引發的次優路由問題分析[J].鐵道通信信號,2020,56(08):59-62.
[7]戴俊勉,李銘煜,唐春英,等.鐵路數據網MPLS BGP VPN雙歸屬業務路由優化控制研究[J].鐵道通信信號,2019,55(07):54-56.