趙杰
摘 要:上海的歐洲貓自動化系統(tǒng)已運行多年,在其發(fā)生過的網(wǎng)絡(luò)故障中,路由器工作異常導(dǎo)致塔臺席位降級是其中的一個典型案例。文章以該現(xiàn)象為線索,通過對其進(jìn)行深入分析,找到問題結(jié)癥所在,并嘗試性地提出相應(yīng)的解決方案,以期為今后工作的開展提供便利。
關(guān)鍵詞:歐洲貓系統(tǒng);網(wǎng)絡(luò)故障;XSR-1850路由器;塔臺席位降級
中圖分類號:V226 文獻(xiàn)標(biāo)識碼:A 文章編號:1006-8937(2014)32-0019-03
1 上海歐洲貓系統(tǒng)主用網(wǎng)絡(luò)結(jié)構(gòu)簡述
上海區(qū)域管制中心使用的歐洲貓系統(tǒng)共分設(shè)四個分部:區(qū)調(diào)分部、進(jìn)近分部、虹橋塔臺分部以及浦東塔臺分部。系統(tǒng)中的A、B兩個網(wǎng)絡(luò)組成雙冗余的工作網(wǎng)模式,即便某個交換機(jī)或路由器出現(xiàn)故障,也能保障各分部之間的數(shù)據(jù)通信。在分區(qū)內(nèi)部采用smartswitch系列的交換機(jī),在邏輯鏈路上,它們之間通過SPANNING TREE協(xié)議連接,形成在邏輯拓?fù)浣Y(jié)構(gòu)上的無環(huán)網(wǎng)絡(luò),既可減少物理結(jié)構(gòu)的雙網(wǎng)冗余模式下的資源浪費,又可通過軟件設(shè)置將多個物理端口合成為一個邏輯端口,減少網(wǎng)絡(luò)風(fēng)暴的可能性。
從網(wǎng)絡(luò)分層的角度來說,歐洲貓網(wǎng)絡(luò)一般分為三層架構(gòu):
歐洲貓系統(tǒng)的交換機(jī)等設(shè)備處于網(wǎng)絡(luò)的最底層,即接入層,負(fù)責(zé)將區(qū)管ACC、TMA或是遠(yuǎn)程塔臺的數(shù)據(jù)流導(dǎo)入網(wǎng)絡(luò),所有的終端用戶(即歐洲貓上的席位和服務(wù)器)通過接入層來訪問網(wǎng)絡(luò);而XSR-1850路由器處于整個網(wǎng)絡(luò)的中間層,它的目地就是通過使用各種路由策略來處理接入層進(jìn)來的數(shù)據(jù)包,顯然,XSR-1850使用的是OSPF路由協(xié)議;在這兩層之上,則是網(wǎng)絡(luò)的核心層,它負(fù)責(zé)傳輸從本地路由器來的數(shù)據(jù)包(主要是UDP包),發(fā)送到遠(yuǎn)端的路由器上,目前上海三地的環(huán)網(wǎng)連接方式如圖1所示。
2 XSR-1850路由器簡介
由圖1所示,圖中的Router實例是歐洲貓所用的XSR-1850路由器,該路由器承擔(dān)著區(qū)管和兩個塔臺工作網(wǎng)間數(shù)據(jù)的路由交換功能。
2.1 到塔臺鏈路的設(shè)備分布情況
從圖1可以看出,青浦-虹橋塔臺、青浦-浦東塔臺兩部分分別采用了該型號的路由器,每個路由器配1個以太網(wǎng)網(wǎng)口,用于連接本地以太網(wǎng),還配置一個E1接口,用于串連對端遠(yuǎn)端網(wǎng)絡(luò)。
2.2 虛擬路由功能(VRRP)
所有XSR-1850路由器配置的虛擬網(wǎng)絡(luò)地址都是相應(yīng)的A網(wǎng)路由器的IP地址,并且虛擬的MAC地址也默認(rèn)是A網(wǎng)路由器的MAC地址,當(dāng)整個網(wǎng)絡(luò)啟動時,在同一個分組中,擁有最高優(yōu)先權(quán)(一般是0~255中的某個數(shù)字)的那臺路由器將成為主用狀態(tài);如果優(yōu)先權(quán)相同,則哪臺路由器的IP地址大,哪臺就被選為主路由器;當(dāng)主路由器癱瘓時,它的優(yōu)先權(quán)就變?yōu)?,那么將由其它路由器來代替。
涉及塔臺的VRRP共分2組:
GROUP 3:TMA-虹橋塔;GROUP 4:TMA-浦東塔臺。
2.3 所使用的路由算法:OSPF
該協(xié)議的建立比較復(fù)雜,通過5種不同的OSPF分組通知來建立完整的路由信息,有:hello分組、DBD分組、LSR分組、LSU分組和LSAck分組,故每個路由器都要花費一定的時間來完成對整個網(wǎng)絡(luò)的路由信息的維護(hù),從而才能夠為數(shù)據(jù)包做出路由選擇。
歐洲貓系統(tǒng)的OSPF協(xié)議配置較為簡單,整個上海歐洲貓系XSR-1850路由器都配在一個區(qū)域內(nèi),可在路由器上通過指令show ip ospf來了解相應(yīng)的配置情況,同時也可以通過指令show ip route來了解路由表信息。
當(dāng)XSR-1850路由器啟動后,需要在自己所處的組中選舉VR,并在自己所處的區(qū)域中完成OSPF的鏈路更新。
3 故障現(xiàn)象
3.1 故障綜述
目前,XSR-1850路由器出現(xiàn)頻率最高的故障就是E1端口不斷地在進(jìn)行UP、DOWN的切換,這種切換也叫做路由翻動(flapping)。根據(jù)OSPF的協(xié)議規(guī)定,一條翻動的鏈路必然會促使相關(guān)路由器發(fā)送一系列的LSU分組通知,那么,接收到這些更新的路由器將不得不重新運行SPF算法來更新自己的路由表。而長時間的翻動會嚴(yán)重影響路由器的性能,不斷重復(fù)進(jìn)行的SPF計算則會導(dǎo)致錄取一點CPU負(fù)擔(dān)過重;而從整個網(wǎng)段來看,連續(xù)不斷地進(jìn)行路由更新回使得OSPF的鏈路狀態(tài)數(shù)據(jù)庫無法快速、有效地收斂。凡是涉及到與遠(yuǎn)程塔臺通信出現(xiàn)故障,且能夠第一時間在OASYS上監(jiān)控到有某個路由器的端口在不停地翻動的情況,那么無一例外是E1端口在翻動,即從側(cè)面反映了每個分區(qū)的內(nèi)部網(wǎng)絡(luò)是比較穩(wěn)定的。從目前的現(xiàn)實情況來看,由于中心結(jié)點光端機(jī)機(jī)器放在虹橋,所以通常做電信切割時,影響到的是青浦到兩個塔臺的路由器,因為有VR的存在,A、B路的路由器不會同時發(fā)生路由翻動的情況,通常情況是A路某個E1口翻動,并迅速恢復(fù),所以如果切換到B路,那么B網(wǎng)上的路由器也會有同樣的問題出現(xiàn)。
塔臺接收從青浦傳來的UDP數(shù)據(jù)包,根據(jù)不同的用途,分為3種類型,它們被分別放到不同的緩存中去:
TYPE 1數(shù)據(jù):存放在buffer_infos和buffer兩個不同的緩存中,前者負(fù)責(zé)描述存儲在內(nèi)的數(shù)據(jù)(如:存儲編號),后者則是一個循環(huán)鏈表,存儲實際要發(fā)送的數(shù)據(jù);
TYPE 2數(shù)據(jù):存放在循環(huán)鏈表buf2中。
FIFO 數(shù)據(jù):存放在循環(huán)鏈表fifo_buffer中。
后兩種數(shù)據(jù)被CDP發(fā)送后即刻刪除,這樣便可以保障這兩個緩存基本上不出于飽和狀態(tài);而對于TYPE 1數(shù)據(jù)類型來說,當(dāng)青浦向塔臺發(fā)送一個TYPE 1數(shù)據(jù)后,塔臺的CDP在收到數(shù)據(jù)的同時會回送一個ACK的消息(即:內(nèi)容與計數(shù)器類似),此時青浦會將該數(shù)據(jù)在bufer_infos和buffer中刪除;否則會將向塔臺CDP發(fā)送一個NACK的消息,用于塔臺CDP判斷還有哪些數(shù)據(jù)需要本方來傳送。
3.2 故障現(xiàn)象一:塔臺席位目標(biāo)停滯
當(dāng)路由器E1端口出現(xiàn)翻動現(xiàn)象前5~10 min,CDP的日志中就已經(jīng)有鏈路oerflow的告警提示了,具體日志信息如下:
lscmio文件:設(shè)備SHTM_HQRT_CDP處于非正常工作狀態(tài);
too many requests stored in buffer
No packet monitoring on link to shrhcdp1ada because overflow status
Msg not added because link is in overflow
DLI messge NOT sent to HQRT:shrhcdp1ada
cdp00x文件:RX PACKET from HQRT:shrhcdp1ada
CONNECT from HQRT:shrhcdp1ada
Link is OVERFLOW and we have received a CON- connection has been dropped at the other end.
在緩存中有大量傳送數(shù)據(jù)的請求,鏈路處于overflow(溢出)狀態(tài),由于緩存容量有限,故DLI信息無法送到目的地(shrhcdp1ada)。
塔臺席位內(nèi)的日志信息:
ENV:FDP Mode:NORMAL
RDP Mode:MULTI
DLI信息里主要是雷達(dá)航跡,由于DLI信息在buffer中發(fā)送,所以屬于TYPE 1類型;上述情況表明雷達(dá)航跡無法傳送到塔臺的CDP節(jié)點,顯然在塔臺的席位上,會出現(xiàn)雷達(dá)航跡不更新的現(xiàn)象,相當(dāng)于其管制的航班停滯不前了;此時,塔臺席位的雷達(dá)航跡不更新,而且也不降級,鼠標(biāo)、鍵盤功能都正常,這種情況系統(tǒng)更本不能自動降級,只是鏈路斷續(xù),在路由器上E1端口的翻動現(xiàn)象很頻繁,但路由器本身沒有失效,CDP的相應(yīng)鏈路會顯示處于STARTING狀態(tài),必須重啟路由器。
3.3 現(xiàn)象二:塔臺席位降級使用
塔臺席位內(nèi)的日志信息:
ENV:FDP Mode:NORMAL /LOCAL
RDP Mode:MULTI /BYPASS
從監(jiān)控上看到塔臺的工作網(wǎng)鏈路中斷時,CDP的相應(yīng)鏈路會顯示處于FAILED狀態(tài)(如:shtm-hqrt-cdp FAILED),在這種情況下,青浦不能將數(shù)據(jù)發(fā)送到塔臺,那么塔臺席位將自動降級;此時在外部鏈路回復(fù)正常前,重啟路由器無效。
3.4 降級后的恢復(fù)
當(dāng)確認(rèn)外部鏈路正常后,再對路由器進(jìn)行重啟,一般塔臺席位都能恢復(fù)正常。
此時青浦的日志信息為:
Resetting active link type 1 to HQRT and the other type one.
BNS resending required form HQRT.
Starting REMOTE consistency for HQRT:shrhcdp1ada and resetting all the buffers.
ADDING initialisation_data in buffer at indes 0 for link to HQRT.
4 故障探討
在OSI七層模型中,數(shù)據(jù)鏈路層的作用是將強(qiáng)物理層傳輸原始bit的功能,該層發(fā)送的數(shù)據(jù)都封裝在數(shù)據(jù)幀(Data Frame)中,該層又分為MAC和LLC兩個子層,MAC負(fù)責(zé)對共享介質(zhì)的存取,而LLC即:邏輯鏈路控制子層,負(fù)責(zé)處理差錯檢測(Error Detection)和差錯控制(Error Control);對于上海的EUROCAT-X系統(tǒng)來說,降級多發(fā)生于虹橋塔臺,這是由于外部鏈接上的特殊性所造成的:由于網(wǎng)絡(luò)公司的中心結(jié)點在虹橋航管樓,從航管樓到虹橋塔臺還要經(jīng)過一個從大光端機(jī)到小光端機(jī)的傳輸環(huán)節(jié),比到浦東塔臺多了一個環(huán)節(jié);故當(dāng)電信切割發(fā)生在虹橋中心節(jié)點機(jī)上后,SDH設(shè)備需要重新建鏈時,大、小光端機(jī)有所差異(大約有55 ms的空隙時間),由于其本身沒有時鐘同步機(jī)制,導(dǎo)致發(fā)生時隙延時,從而導(dǎo)致了數(shù)據(jù)幀的傳送錯誤;這往往會影響到歐洲貓路由器的同步,表現(xiàn)為E1端口不斷地翻動,如果此時察看路由器的Slip seconds參數(shù),那么必有數(shù)值增加的現(xiàn)象。此外,為了保障可靠的傳輸,數(shù)據(jù)鏈路層要求對端回送特殊的控制幀,作為對發(fā)送端的肯定或是否定性的確認(rèn),這些都會產(chǎn)生大量XSR-1850可以容忍的CRC校驗錯誤,最終導(dǎo)致青浦無法向塔臺傳送信息。
由于XSR-1850路由器支持VR,且默認(rèn)配置是A路路由器優(yōu)先級高于B路,故一旦A路出故障,只要路由器認(rèn)為自己還是正常的,只不過是有一個端口狀態(tài)不穩(wěn)定而已,那么鏈路就不可能自動切換到B路,從而導(dǎo)致塔臺席位降級。
5 建 議
在對歐洲貓的兩個遠(yuǎn)程分區(qū)進(jìn)行A/B網(wǎng)連接時,應(yīng)為A/B網(wǎng)設(shè)置不同的工作鏈路,并且將A網(wǎng)(系統(tǒng)默認(rèn)主用網(wǎng)絡(luò))放在相對更安全的那條鏈路上。
此外,基于到遠(yuǎn)程分區(qū)的鏈路都要通過租用外部運營商的通信鏈路,那么我們還可以通過引入多套外部傳輸鏈路,如:中國聯(lián)通ATM機(jī)、中國移動光端機(jī)設(shè)備等,分解由單一運行商設(shè)備故障導(dǎo)致的鏈路問題。具體改造方案如圖2所示。
6 結(jié) 語
以XSR-1850路由器為代表的網(wǎng)絡(luò)設(shè)備是系統(tǒng)分區(qū)間數(shù)據(jù)發(fā)送的物理中轉(zhuǎn)站,當(dāng)發(fā)生塔臺席位降級現(xiàn)象時,可結(jié)合具體鏈路情況并結(jié)合查詢系統(tǒng)日志進(jìn)行統(tǒng)一分析,提高故障定位的準(zhǔn)確性,從而可為塔臺席位恢復(fù)正常使用節(jié)約下寶貴的時間;但作為維護(hù)人員,從根本上解決這種情況需要從目前的網(wǎng)絡(luò)架構(gòu)入手進(jìn)行改造,才能從本質(zhì)上減少由于網(wǎng)絡(luò)原因造成塔臺席位降級的可能性。
參考文獻(xiàn):
[1] 龔宏偉,周欣.基于塔臺仿真系統(tǒng)的飛行短期沖突檢測[J].計算機(jī)技術(shù)與發(fā)展,2013,(4).