丁 奕,李坤妃,馬 龍,李辰嶺,徐 瑾
(1北京交通大學(xué) 電子信息工程學(xué)院,北京 100044;2.北京工業(yè)大學(xué),北京 100022)
地鐵骨干網(wǎng)用于傳輸車(chē)站與車(chē)站之間、車(chē)站與車(chē)之間的大量數(shù)據(jù)信息,因此,實(shí)時(shí)掌握骨干網(wǎng)的狀態(tài)非常重要。目前,北京地鐵昌平線(以下簡(jiǎn)稱昌平線)正處于試運(yùn)行,尚沒(méi)有合適的網(wǎng)絡(luò)管理軟件來(lái)管理昌平線的骨干網(wǎng)。本文設(shè)計(jì)了一種基于C#平臺(tái),采用SNMP協(xié)議,適合北京地鐵昌平線的網(wǎng)絡(luò)管理軟件,測(cè)試結(jié)果表明,可滿足對(duì)昌平線骨干網(wǎng)絡(luò)狀態(tài)監(jiān)控和管理的需求。
骨干網(wǎng)有3種實(shí)現(xiàn)方式:RPR、SDH和基于交換的ATM。這3種方式都是現(xiàn)今使用較多的骨干網(wǎng)傳輸方式,分別適用于不同的網(wǎng)絡(luò)環(huán)境。
彈性分組環(huán)(RPR)是一種數(shù)據(jù)優(yōu)化網(wǎng)絡(luò),環(huán)網(wǎng)上的節(jié)點(diǎn)共享帶寬,不需要進(jìn)行電路指配。利用公平控制算法使環(huán)網(wǎng)上的各個(gè)節(jié)點(diǎn)能夠自動(dòng)地完成帶寬協(xié)調(diào)。每個(gè)節(jié)點(diǎn)都有一個(gè)環(huán)形網(wǎng)絡(luò)拓?fù)鋱D,都能將數(shù)據(jù)發(fā)送到光纖子環(huán)上,并送往目的節(jié)點(diǎn)。RPR包括2個(gè)反方向環(huán)繞的單項(xiàng)環(huán),環(huán)上鏈路具有相同的數(shù)據(jù)速率,能夠支持單播和組播。
SDH具有路由自動(dòng)選擇能力,維護(hù)、控制、管理功能強(qiáng),便于傳輸更高速率的業(yè)務(wù)等優(yōu)點(diǎn),能很好地適應(yīng)通信網(wǎng)飛速發(fā)展的需要。SDH有多種網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu),所組成的網(wǎng)絡(luò)非常靈活,能增強(qiáng)網(wǎng)絡(luò)監(jiān)控,優(yōu)化網(wǎng)絡(luò)性能,使網(wǎng)絡(luò)運(yùn)行靈活、安全、可靠。SDH是嚴(yán)格同步的,從而保證了整個(gè)網(wǎng)絡(luò)穩(wěn)定可靠,誤碼少,且便于復(fù)用和調(diào)整。
ATM是一種傳輸模式。在這一模式中,信息被組織成信元,因?yàn)榘瑏?lái)自某用戶信息的各個(gè)信元不需要周期性出現(xiàn),所以這種傳輸模式是異步的。ATM信元是固定長(zhǎng)度的分組、語(yǔ)音、數(shù)據(jù)、圖像等。所有的數(shù)字信息都要經(jīng)過(guò)切割,然后封裝成統(tǒng)一格式的信元在網(wǎng)中傳遞,并在接收端恢復(fù)成所需格式。由于ATM技術(shù)簡(jiǎn)化了交換過(guò)程,去除了不必要的數(shù)據(jù)校驗(yàn),采用了易于處理的固定信元格式,所以ATM交換速率遠(yuǎn)高于傳統(tǒng)的數(shù)據(jù)網(wǎng)交換速率。
不同的傳輸方式有著自己不同的優(yōu)缺點(diǎn),見(jiàn)表1,可根據(jù)他們不同的特點(diǎn),作用于不同的網(wǎng)絡(luò)。
表1 骨干網(wǎng)傳輸方式對(duì)比
RPR是基于SDH發(fā)展的骨干網(wǎng)傳輸方式,其高帶寬利用率和快速保護(hù)機(jī)制很適合昌平線大量數(shù)據(jù)信息的傳輸。因此,昌平線采用了RPR的骨干網(wǎng)傳輸方式。
北京地鐵昌平線是連接城市中心區(qū)與昌平新城的一條南北向軌道交通快速客運(yùn)線路,北起十三陵景區(qū),南至城鐵13號(hào)線西二旗站,全長(zhǎng)31.24 km。計(jì)劃2012年12月底全線通車(chē)。
地鐵昌平線的骨干網(wǎng)絡(luò)采用的是RPR傳輸方式。其單個(gè)站的主干網(wǎng)結(jié)構(gòu)如圖1。
圖1 昌平線單個(gè)站網(wǎng)絡(luò)結(jié)構(gòu)
骨干網(wǎng)分為紅網(wǎng)和藍(lán)網(wǎng),其中藍(lán)網(wǎng)是紅網(wǎng)的冗余,確保網(wǎng)絡(luò)可以正常的工作,骨干網(wǎng)絡(luò)的主要功能是完成站與站之間的信息傳輸。骨干網(wǎng)交換機(jī)通過(guò)車(chē)站交換機(jī)獲取本站計(jì)算機(jī)聯(lián)鎖(CI)、區(qū)域控制器(ZC)、無(wú)線接入點(diǎn)(AP)的信息,車(chē)站接入交換機(jī)也采取備份,分別接入紅網(wǎng)和藍(lán)網(wǎng)。ZC和CI通過(guò)接入交換機(jī),進(jìn)行與AP之間信息的傳輸。北京地鐵昌平線骨干網(wǎng)絡(luò)的連接如圖2。
圖2 昌平線骨干網(wǎng)絡(luò)結(jié)構(gòu)
RPR設(shè)備主要提供北京地鐵昌平線全線骨干網(wǎng)的監(jiān)控以及對(duì)AP等設(shè)備的管理。還可以通過(guò)車(chē)站接入交換機(jī)對(duì)CI、ZC等設(shè)備進(jìn)行管理和監(jiān)視。
網(wǎng)管軟件基于C#平臺(tái),采用SNMP協(xié)議和輪詢實(shí)現(xiàn),數(shù)據(jù)傳輸使用UDP協(xié)議,采用socket實(shí)現(xiàn)數(shù)據(jù)的傳輸。
2.2.1 S NMP協(xié)議
SNMP是簡(jiǎn)單網(wǎng)管協(xié)議,它的目標(biāo)是管理互聯(lián)網(wǎng)上眾多廠家生產(chǎn)的軟硬件平臺(tái)。
SNMP的網(wǎng)絡(luò)管理模型包括以下關(guān)鍵元素:管理站、代理站、管理信息庫(kù)、網(wǎng)絡(luò)管理協(xié)議。管理站是網(wǎng)絡(luò)管理員與網(wǎng)管系統(tǒng)的接口。代理站對(duì)來(lái)自管理站的信息請(qǐng)求和動(dòng)作請(qǐng)求進(jìn)行應(yīng)答并隨機(jī)為管理站報(bào)告一些重要的意外事件。管理信息庫(kù)是對(duì)象的集合,又被稱為MIB。MIB作為設(shè)在代理者處的管理站訪問(wèn)點(diǎn)的集合,管理站通過(guò)讀取MIB中的對(duì)象值進(jìn)行網(wǎng)絡(luò)監(jiān)控。管理站與代理者之間通過(guò)網(wǎng)絡(luò)管理協(xié)議通信。
SNMP的基本功能是:取得、設(shè)置和接收代理發(fā)送的意外信息。取得是指基站發(fā)送請(qǐng)求,代理?yè)?jù)此回送相應(yīng)數(shù)據(jù);設(shè)置是基站設(shè)置管理對(duì)象的值;最后一項(xiàng)功能是指代理可以在基站未請(qǐng)求的狀態(tài)下,向基站報(bào)告發(fā)生的意外情況。
2.2.2 網(wǎng) 管軟件組包、收包的實(shí)現(xiàn)
SNMP的組包是通過(guò)先定義一個(gè)數(shù)組,然后再向數(shù)組中寫(xiě)數(shù)據(jù),最后再通過(guò)用戶數(shù)據(jù)報(bào)協(xié)議(UDP)方式將數(shù)據(jù)包發(fā)送給RPR設(shè)備。數(shù)組建立的步驟如圖3。
圖3 SNMP組包步驟
2.2.2.1 建立一個(gè)發(fā)送數(shù)組和一個(gè)接收數(shù)組
發(fā)送數(shù)組用于發(fā)送SNMP數(shù)據(jù)包,接收數(shù)組用于判斷發(fā)送數(shù)據(jù)是否發(fā)送成功,如果發(fā)送失敗,則將數(shù)組的首位設(shè)置為0xff。在以后的功能中,如果查詢到接收數(shù)組的首位為0xff,視為通信失敗,會(huì)彈出對(duì)話框提示用戶。
2.2.2.2 設(shè)置指針變量
設(shè)置一個(gè)指針變量,用于指定數(shù)據(jù)在數(shù)組中的位置,以便于數(shù)據(jù)的填寫(xiě)。
2.2.2.3 設(shè)置SNMP版本
(1)設(shè)置版本的說(shuō)明類(lèi)型,因?yàn)榘姹咎?hào)是整數(shù),所以說(shuō)明類(lèi)型設(shè)置為整型。版本號(hào)為1位數(shù)字,因此說(shuō)明長(zhǎng)度為1,設(shè)置的版本號(hào)為0,即SNMPV1。
(2)設(shè)置團(tuán)體名,由于發(fā)送數(shù)組是字符串型,因此需要將團(tuán)體名轉(zhuǎn)化為字符串格式,通過(guò)Encoding指令將其轉(zhuǎn)化成ASCII碼,以便傳輸。
(3)設(shè)置協(xié)議數(shù)據(jù)單元(PDU),根據(jù)不同的功能,將規(guī)定的數(shù)字寫(xiě)入對(duì)應(yīng)的字段,組成數(shù)組,然后填寫(xiě)請(qǐng)求ID,請(qǐng)求ID是機(jī)器檢測(cè)PDU指令到達(dá)先后的標(biāo)志。
(4)設(shè)置錯(cuò)誤類(lèi)型以及錯(cuò)誤索引,get-nextrequest以及get-request指令不需要變量,因此變量設(shè)置只需要留出這部分?jǐn)?shù)組的位置。對(duì)于setrequest指令,設(shè)置的值通過(guò)變量向設(shè)備發(fā)送,所以需要對(duì)這部分進(jìn)行特別的設(shè)置,要將變量類(lèi)型設(shè)置為要填寫(xiě)信息的類(lèi)型,并且將填寫(xiě)信息的長(zhǎng)度加在變量長(zhǎng)度中。這樣,設(shè)備就可以根據(jù)變量定義的信息,對(duì)設(shè)備信息進(jìn)行修改。
(5)設(shè)置MIB字段,填寫(xiě)對(duì)象標(biāo)識(shí)符(OID)字段。對(duì)于get-next以及get指令,設(shè)置完MIB字段,SNMP組包就完成了。對(duì)于set指令,還需要將改變值寫(xiě)入SNMP數(shù)組中,先寫(xiě)入類(lèi)型以及長(zhǎng)度,再將寫(xiě)入的內(nèi)容加在后面,字符串型數(shù)據(jù)還需要進(jìn)行數(shù)據(jù)類(lèi)型的轉(zhuǎn)化,將字符串轉(zhuǎn)化成ASCII碼。
SNMP的收包原理與組包原理基本相同,接收到的是get-response信息,它是get-next-request、get-request以及set-request信息的回應(yīng)信息,通過(guò)讀取這些信息,可以查詢?cè)O(shè)備返回的信息。
2.3.1 R PR環(huán)網(wǎng)管理和檢測(cè)
實(shí)時(shí)監(jiān)控主要是對(duì)RPR環(huán)網(wǎng)的性能進(jìn)行實(shí)時(shí)的監(jiān)測(cè),從而全面掌握網(wǎng)絡(luò)的動(dòng)態(tài),了解骨干網(wǎng)絡(luò)中各站以及各個(gè)接入交換機(jī)的工作狀態(tài)。這樣便于管理環(huán)網(wǎng)上的各個(gè)信息,對(duì)環(huán)網(wǎng)的故障也能第一時(shí)間發(fā)現(xiàn)并且修復(fù)。昌平線骨干網(wǎng)的實(shí)時(shí)監(jiān)控主要通過(guò)網(wǎng)管軟件實(shí)現(xiàn)。
實(shí)時(shí)監(jiān)控主要包括環(huán)網(wǎng)中光纖連接的監(jiān)控、網(wǎng)管軟件與骨干網(wǎng)、接入交換機(jī)之間的通信監(jiān)控以及骨干網(wǎng)與接入交換機(jī)之間通信的監(jiān)控。
RPR環(huán)網(wǎng)狀態(tài)查詢主要查詢環(huán)網(wǎng)中光纖連接狀態(tài)。通過(guò)查詢RPRPOS端口的開(kāi)啟與否,監(jiān)測(cè)環(huán)網(wǎng)光纖的狀態(tài)。如果RPRPOS端口處于關(guān)閉狀態(tài),說(shuō)明光纖接口未插好,或者是光纖已斷。RPR設(shè)備的返回值是整型的變量,返回值為1,說(shuō)明端口打開(kāi),如果返回值為2,說(shuō)明端口關(guān)閉。端口的關(guān)閉有2種可能:(1)光纖接口松動(dòng)。(2)光纖斷了。通過(guò)人性化的網(wǎng)管軟件界面顯示這部分的故障,用以提醒用戶可能存在的故障。當(dāng)出現(xiàn)故障時(shí),設(shè)備之間的連接線會(huì)由黑色變成紅色,從而起到警示用戶的作用,見(jiàn)圖4。
圖4 環(huán)網(wǎng)故障
2.3.2 網(wǎng)絡(luò)連接狀態(tài)
RPR與接入交換機(jī)之間連接的狀態(tài)是通過(guò)查詢接入交換機(jī)與RPR設(shè)備的連接端口狀態(tài)來(lái)檢測(cè),如果端口處于關(guān)閉狀態(tài),則說(shuō)明這部分的網(wǎng)線存在問(wèn)題。在網(wǎng)絡(luò)不通的情況下,RPR設(shè)備和接入交換機(jī)都會(huì)顯示紅叉以提醒用戶網(wǎng)絡(luò)通信故障。由于在發(fā)包1 s后未收到回包才會(huì)被判定通信失敗,因此這部分的時(shí)間會(huì)較長(zhǎng),同樣故障恢復(fù)的時(shí)間也會(huì)較長(zhǎng),見(jiàn)圖5。
圖5 通信故障
狀態(tài)查詢是實(shí)時(shí)的,因此需要不斷地觸發(fā)此狀態(tài),實(shí)現(xiàn)的方法就是使用時(shí)鐘,當(dāng)時(shí)鐘指針走動(dòng)的時(shí)候,觸發(fā)輪詢程序,實(shí)現(xiàn)對(duì)環(huán)網(wǎng)狀態(tài)的實(shí)時(shí)監(jiān)控。同時(shí)通過(guò)時(shí)鐘的判斷也可以看出程序是否在執(zhí)行,有沒(méi)有死機(jī)的現(xiàn)象。
網(wǎng)管軟件除了可以檢測(cè)環(huán)網(wǎng)的狀態(tài),還可以對(duì)連接在骨干網(wǎng)的設(shè)備進(jìn)行設(shè)置,包括AP、交換機(jī)等??梢栽O(shè)定AP的輸出功率,查詢AP的連接狀態(tài)以及采用的信道等,這些同樣是通過(guò)SNMP協(xié)議組包,使用UDP進(jìn)行查詢和對(duì)數(shù)據(jù)的更改。對(duì)于交換機(jī)的操作主要是查詢交換機(jī)端口流量,包括發(fā)送和接收流量,這樣可以方便地知道各個(gè)交換機(jī)的上下行數(shù)據(jù)量,避免網(wǎng)絡(luò)數(shù)據(jù)擁堵。
音頻、視頻業(yè)務(wù)承載的全I(xiàn)P化是今后城市軌道交通的發(fā)展方向,由于RPR對(duì)帶寬的高效利用以及雙環(huán)互為冗余的結(jié)構(gòu),使得它將在城市軌道交通骨干網(wǎng)建設(shè)中扮演重要的角色。通過(guò)本網(wǎng)管軟件,可以管理昌平線的骨干網(wǎng)絡(luò),減少骨干網(wǎng)的擁堵,查詢和更改連接在骨干網(wǎng)上的設(shè)備,減少了人員的工作量,從而提高工作效率和可靠性。
[1]陶智勇. 彈性分組環(huán) [M]. 北京:北京郵電大學(xué)出版社,2003.
[2]內(nèi)格爾. C#入門(mén)經(jīng)典[M]. 北京:北京清華大學(xué)出版社,2010.
[3]伍杰明. 彈性分組環(huán)統(tǒng)計(jì)復(fù)用技術(shù)[J]. 數(shù)字通信世界,2009(6).
[4]李 燕. RPR與SDH保護(hù)機(jī)制的對(duì)比分析[J]. 大眾科技,2005(7).
[5]夏 明,黃勤珍. IEEE802.17彈性分組環(huán)公平算法研究[J].通信技術(shù),2009(1).
[6]王兆佩,張 勇. RPR over SDH技術(shù)在組建廣域網(wǎng)中的應(yīng)用[J]. 電力系統(tǒng)通信,2007(3).
[7]陳光華. 彈性分組環(huán)技術(shù)與應(yīng)用研究[J]. 科技資訊,2007(5):37-38.
[8]梅曉冬,顏燁青. Visual C#網(wǎng)絡(luò)編程技術(shù)與實(shí)踐 [M]. 北京:清華大學(xué)出版社,2008.
[9]晏 力. 彈性分組環(huán)技術(shù)(RPR)[J]. 重慶工商大學(xué)學(xué)報(bào),2003(4).
[10]林啟英. 彈性分組環(huán)(RPR)網(wǎng)及組網(wǎng)應(yīng)用[J]. 中國(guó)科技信息,2009(12):131-132.