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