徐 洪,聶 晶,謝海明,潘志宏,劉偉平
(暨南大學(xué) 電子工程系;光電信息與傳感技術(shù)廣東普通高校重點(diǎn)實(shí)驗(yàn)室,廣東 廣州 510632)
EoC(Ethernet over Coax)是以太網(wǎng)數(shù)據(jù)通過(guò)同軸電纜進(jìn)行傳輸?shù)募夹g(shù)統(tǒng)稱,具有簡(jiǎn)單、穩(wěn)定、安全及費(fèi)用低等優(yōu)點(diǎn)。EoC設(shè)備主要包括局端和終端,一個(gè)局端設(shè)備可支持多達(dá)64個(gè)終端設(shè)備接入。其中,局端設(shè)備分為同軸電纜寬帶接入終端和有線電視信號(hào)混合器,可為EoC網(wǎng)絡(luò)提供橋接及管理功能,以實(shí)現(xiàn)廣播電視的雙向服務(wù)[1-3]。由于EoC局端設(shè)備的關(guān)鍵作用以及設(shè)備增多引起的復(fù)雜管理,對(duì)EoC設(shè)備的網(wǎng)絡(luò)管理就顯得非常重要。
目前,國(guó)內(nèi)已有不少公司建成了EoC綜合網(wǎng)絡(luò)管理系統(tǒng),例如HKT8000網(wǎng)絡(luò)管理系統(tǒng),該系統(tǒng)主要是基于C/S結(jié)構(gòu),客戶需要安裝軟件管理客戶端才可使用,對(duì)應(yīng)用造成一定的不便。此外,目前還少有EoC配置管理系統(tǒng)方面的論文。
針對(duì)以上問(wèn)題,筆者完成了EoC設(shè)備配置管理系統(tǒng)的設(shè)計(jì)和實(shí)現(xiàn)。為了使系統(tǒng)管理和客戶操作簡(jiǎn)單、方便,系統(tǒng)采用B/S模式,也就是基于Web的設(shè)計(jì)方式;采用MVC的架構(gòu)設(shè)計(jì),使模型和視圖能夠單獨(dú)開(kāi)發(fā),可增加程序的可維護(hù)性和可擴(kuò)展性;根據(jù)功能模塊的需求,按照模塊化設(shè)計(jì),可以實(shí)現(xiàn)系統(tǒng)的模塊化管理,對(duì)以后系統(tǒng)的升級(jí)提供了方便。
配置管理是管理系統(tǒng)中最基本的功能之一,筆者對(duì)EoC設(shè)備相關(guān)的信息進(jìn)行配置、修改、保存,監(jiān)控并顯示當(dāng)前配置信息,同時(shí)根據(jù)具體情況改變配置參數(shù),修改系統(tǒng)參數(shù)并存儲(chǔ)到數(shù)據(jù)庫(kù)以及配置到設(shè)備中[4]。
EoC配置管理系統(tǒng)可對(duì)EoC系統(tǒng)內(nèi)的局端和終端設(shè)備進(jìn)行遠(yuǎn)程網(wǎng)絡(luò)監(jiān)控(RMON)。RMON的目標(biāo)是為了擴(kuò)展SNMP的MIB庫(kù)(管理信息庫(kù)),使SNMP更有效、更積極主動(dòng)地監(jiān)控遠(yuǎn)程設(shè)備。該系統(tǒng)可實(shí)現(xiàn)Master,Slave等設(shè)備的管理控制,其主要功能包括:實(shí)現(xiàn)網(wǎng)管系統(tǒng)信息的配置管理功能;實(shí)現(xiàn)系統(tǒng)管理后臺(tái)服務(wù),提供一個(gè)可擴(kuò)展的后臺(tái)服務(wù)的管理框架;實(shí)現(xiàn)系統(tǒng)管理平臺(tái)客戶端,向用戶提供一個(gè)美觀、易操作的可視化管理界面。
MVC(Model-View-Controller)模式把應(yīng)用程序分成控制器(Controller)、視圖(View)和模型(Model)3 個(gè)核心模塊[5]。根據(jù)該模型,EoC配置管理系統(tǒng)按照MVC架構(gòu)進(jìn)行設(shè)計(jì),其MVC架構(gòu)如圖1所示。
模型是應(yīng)用程序的主體部分,代表業(yè)務(wù)數(shù)據(jù)和業(yè)務(wù)邏輯,是整個(gè)系統(tǒng)的核心。模型層由3個(gè)部分組成:簡(jiǎn)單網(wǎng)管協(xié)議服務(wù)層、網(wǎng)絡(luò)管理處理層和網(wǎng)絡(luò)管理應(yīng)用層。簡(jiǎn)單網(wǎng)管協(xié)議服務(wù)層主要功能是通過(guò)SNMP協(xié)議與設(shè)備通信。網(wǎng)絡(luò)管理處理層是通過(guò)接收簡(jiǎn)單網(wǎng)絡(luò)協(xié)議服務(wù)層的數(shù)據(jù),并將數(shù)據(jù)傳輸?shù)骄W(wǎng)絡(luò)管理應(yīng)用層。網(wǎng)絡(luò)管理應(yīng)用層接收到數(shù)據(jù)后,根據(jù)不同的任務(wù),分配到不同的模塊進(jìn)行處理,并將處理結(jié)果交付給視圖層。
圖1 EoC配置管理系統(tǒng)的MVC架構(gòu)
視圖層是用戶看到并與之交互的界面,用戶可以通過(guò)視圖獲取系統(tǒng)的信息,并可以通過(guò)視圖對(duì)系統(tǒng)進(jìn)行操作。視圖層由HTML,JSP和Jquery 3種技術(shù)組成。
控制器是用來(lái)接受用戶的請(qǐng)求并調(diào)用模型去完成用戶的需求,還能調(diào)用視圖來(lái)顯示響應(yīng)結(jié)果。它主要處理視圖和模型之間的交互。從用戶視圖接收請(qǐng)求,分發(fā)請(qǐng)求到合適的模型或視圖上,控制器本身并不對(duì)數(shù)據(jù)進(jìn)行處理。控制器采用JSP和JavaBean技術(shù)。
EoC配置管理系統(tǒng)采用MVC的模式,一方面,模型和視圖能夠單獨(dú)開(kāi)發(fā),即業(yè)務(wù)邏輯和用戶表現(xiàn)的分離,增加了程序的可維護(hù)性和可擴(kuò)展性;另一方面,表現(xiàn)界面和控制邏輯分離,用戶可以在程序運(yùn)行時(shí)根據(jù)習(xí)慣或模型狀態(tài)來(lái)動(dòng)態(tài)選擇不同的界面?,F(xiàn)在一個(gè)應(yīng)用程序被訪問(wèn)的方式越來(lái)越多,MVC設(shè)計(jì)模式支持多個(gè)視圖共享一個(gè)模型。因此在MVC設(shè)計(jì)模式中開(kāi)發(fā)網(wǎng)管系統(tǒng)可以大量地重用代碼,提高了網(wǎng)管系統(tǒng)開(kāi)發(fā)的效率和質(zhì)量。
系統(tǒng)主要對(duì)組成EoC網(wǎng)絡(luò)的設(shè)備信息進(jìn)行顯示、刪除、修改等管理,包括系統(tǒng)信息的初始化和各種功能的配置等。根據(jù)功能模塊劃分為五大模塊,主要包括:系統(tǒng)管理、軟件管理、RF射頻管理、網(wǎng)絡(luò)管理、CNU管理,具體子配置模塊如圖2所示。
系統(tǒng)管理是EoC配置管理中最基本的部分,主要包括設(shè)備信息的顯示和儲(chǔ)存、網(wǎng)絡(luò)信息的顯示、配置和儲(chǔ)存以及系統(tǒng)設(shè)置等。軟件管理實(shí)現(xiàn)對(duì)ftp的參數(shù)設(shè)置,方便系統(tǒng)進(jìn)行升級(jí)的參數(shù)修改。RF射頻管理是對(duì)射頻的相關(guān)參數(shù)進(jìn)行讀取和顯示,并可對(duì)輸出電平進(jìn)行更改,但是會(huì)限制在一個(gè)有限范圍內(nèi)。網(wǎng)絡(luò)管理模塊顯示和配置VLAN信息、數(shù)據(jù)包限制等內(nèi)容。CNU管理模塊是EoC配置管理中最重要的部分,主要包括白名單管理、服務(wù)管理、端口管理、在線slave管理、圖譜信息管理。
圖2 EoC配置管理系統(tǒng)功能設(shè)計(jì)圖
現(xiàn)在的EoC設(shè)備大多以SNMP協(xié)議作為標(biāo)準(zhǔn)的協(xié)議,并有自己的私有MIB庫(kù)信息。SNMP(簡(jiǎn)單網(wǎng)絡(luò)管理協(xié)議)是一種基于TCP/IP的網(wǎng)絡(luò)管理協(xié)議,它使用UDP作為傳輸層協(xié)議,能管理支持代理進(jìn)程的網(wǎng)絡(luò)設(shè)備[6]。SNMP主要包括SMI(管理信息結(jié)構(gòu))、MIB(管理信息庫(kù))和SNMP協(xié)議。SMI給出了管理對(duì)象定義的一般框架。MIB是設(shè)備所維護(hù)的全部被管理對(duì)象的結(jié)構(gòu)集合。SNMP協(xié)議包括SNMP操作、SNMP信息的格式以及如何在應(yīng)用程序和設(shè)備間交換消息。本系統(tǒng)采用JAVA語(yǔ)言開(kāi)發(fā),因此采用了基于JAVA技術(shù)的SNMP協(xié)議,并且在原有SNMP2開(kāi)發(fā)包基礎(chǔ)上開(kāi)發(fā)了適合本系統(tǒng)運(yùn)行的特定SNMPJAVA包。
EoC配置管理系統(tǒng)實(shí)現(xiàn)對(duì)設(shè)備信息的顯示、配置、存儲(chǔ)等功能,從縱向功能上具體可以分為:初始化功能、保存信息到數(shù)據(jù)庫(kù)、讀取設(shè)備信息并保存到數(shù)據(jù)庫(kù)、配置數(shù)據(jù)到設(shè)備等功能。
EoC配置管理系統(tǒng)的初始化功能主要是指管理某一具體設(shè)備的時(shí)候?qū)υ撛O(shè)備的基本信息的顯示,主要分為兩種情況:一是數(shù)據(jù)庫(kù)中沒(méi)有存儲(chǔ)相應(yīng)的信息,此時(shí)系統(tǒng)將自動(dòng)采集信息并保存到數(shù)據(jù)庫(kù),同時(shí)顯示在管理界面;二是數(shù)據(jù)庫(kù)已經(jīng)存儲(chǔ)了相應(yīng)的信息,則系統(tǒng)將直接從數(shù)據(jù)庫(kù)中讀取參數(shù)信息并顯示在界面上。主要流程如圖3所示。初始化到數(shù)據(jù)庫(kù)的主要代碼是InitSystemDatasinit=(InitSystemDatas)factory.getBean("initSystemDatasBean");init.addOrUpdateDatas("WebRoot/WEB-INF/InitDatas.xml");//初始化包含設(shè)備信息數(shù)據(jù)的配置文件到數(shù)據(jù)庫(kù)中。
圖3 初始化功能流程圖
保存數(shù)據(jù)到數(shù)據(jù)庫(kù),按功能主要分為插入、刪除和更新等操作。以軟件管理中的參數(shù)設(shè)置為例,當(dāng)需要保存IP為192.168.2.1的參數(shù)信息到數(shù)據(jù)庫(kù)時(shí),此時(shí)數(shù)據(jù)庫(kù)中已經(jīng)存在該IP地址的信息,保存信息就是將數(shù)據(jù)表的需要修改的字段進(jìn)行修改,因此只需進(jìn)行更新操作。若要將增加的IP地址為192.168.2.2的設(shè)備參數(shù)信息保存到數(shù)據(jù)庫(kù)時(shí),是對(duì)數(shù)據(jù)庫(kù)信息進(jìn)行插入操作。同理,刪除已經(jīng)存在的設(shè)備信息,也就是對(duì)數(shù)據(jù)庫(kù)的數(shù)據(jù)進(jìn)行刪除操作。
該功能主要通過(guò)SNMP協(xié)議與設(shè)備進(jìn)行通信,讀取設(shè)備信息并保存到數(shù)據(jù)庫(kù)。具體為讀取時(shí)從數(shù)據(jù)庫(kù)讀取MIB節(jié)點(diǎn)信息,然后取出節(jié)點(diǎn)對(duì)應(yīng)的參數(shù)信息并儲(chǔ)存到數(shù)據(jù)庫(kù)中。以更新列表中的master索引參數(shù)為例,其部分代碼如下:
在EoC配置管理系統(tǒng)中,當(dāng)修改數(shù)據(jù)時(shí),為了使設(shè)備信息同步改變,需要將修改的信息寫入設(shè)備中,同時(shí)保存到數(shù)據(jù)庫(kù)中,達(dá)到設(shè)備信息與數(shù)據(jù)庫(kù)信息的同步。當(dāng)對(duì)設(shè)備節(jié)點(diǎn)值進(jìn)行修改時(shí),只需對(duì)數(shù)據(jù)庫(kù)進(jìn)行更新操作;當(dāng)需要增加新的設(shè)備節(jié)點(diǎn)或者刪除不需要的設(shè)備節(jié)點(diǎn)時(shí),則將對(duì)數(shù)據(jù)庫(kù)進(jìn)行相應(yīng)的增加信息或刪除信息的操作。
成功進(jìn)入EoC設(shè)備管理界面后,可以看到列表顯示已有設(shè)備的IP地址、MAC地址、區(qū)域代碼等內(nèi)容。如果需要增加新的設(shè)備,只需點(diǎn)擊添加新增EOC設(shè)備按鈕,即可配置新設(shè)備的IP地址、MAC地址等信息,同時(shí)這些信息將保存到數(shù)據(jù)庫(kù)中。
設(shè)備配置好后,即可進(jìn)入選定IP設(shè)備的配置管理界面了,這里可根據(jù)5個(gè)功能模塊查看相應(yīng)的設(shè)備信息以及更改配置,其中,軟件管理模塊的參數(shù)設(shè)置和在線slave管理模塊的配置界面分別如圖4和圖5所示。在參數(shù)設(shè)置列表中,修改參數(shù)信息,點(diǎn)擊修改即可將改變數(shù)據(jù)配置到設(shè)備中,并保存到數(shù)據(jù)庫(kù),同時(shí)在界面中實(shí)時(shí)顯示出來(lái),滿足數(shù)據(jù)庫(kù)信息與設(shè)備信息的同步。在線slave管理是對(duì)當(dāng)前在線的slave用戶的相應(yīng)信息如MAC地址、設(shè)備型號(hào)、端口數(shù)等內(nèi)容的顯示,如果設(shè)備有死機(jī)現(xiàn)象,則點(diǎn)擊重啟按鈕即可重啟相關(guān)slave設(shè)備。
圖4 參數(shù)設(shè)置配置界面
圖5 在線slave配置界面
通過(guò)測(cè)試,其他功能模塊也滿足相應(yīng)要求,實(shí)現(xiàn)了對(duì)EoC設(shè)備的配置管理功能。測(cè)試過(guò)程中,多個(gè)用戶同時(shí)登陸服務(wù)器,并進(jìn)行相應(yīng)的操作,連續(xù)運(yùn)行一段時(shí)間,系統(tǒng)仍正常工作。用不同瀏覽器訪問(wèn)也正常運(yùn)行。測(cè)試結(jié)果表明系統(tǒng)具有穩(wěn)定、實(shí)時(shí)、方便等特性。
隨著廣電雙向網(wǎng)絡(luò)改造的實(shí)施,EoC方案已逐漸引起更廣泛的關(guān)注。筆者設(shè)計(jì)的設(shè)備配置管理系統(tǒng)的方案基于B/S結(jié)構(gòu)和MVC框架,并利用JAVA語(yǔ)言、JSP技術(shù)和Jquery技術(shù)來(lái)實(shí)現(xiàn),完成了EoC配置管理系統(tǒng)的信息顯示、配置、修改等功能。與其他的網(wǎng)管配置子系統(tǒng)相比,本系統(tǒng)具有以下優(yōu)點(diǎn):1)采用JAVA語(yǔ)言和JSP技術(shù),具有跨平臺(tái)優(yōu)點(diǎn);2)基于B/S結(jié)構(gòu),系統(tǒng)運(yùn)行更簡(jiǎn)易,無(wú)需安裝,系統(tǒng)升級(jí)方便;3)采用Jquery技術(shù),快速實(shí)現(xiàn)簡(jiǎn)潔、易操作的界面。本系統(tǒng)的實(shí)時(shí)性、穩(wěn)定性和易操作等特性很好地滿足了EoC配置系統(tǒng)的維護(hù)和管理的需求,為EoC系統(tǒng)的穩(wěn)定和高效運(yùn)行提供了支持。
[1]JIANG M.下一代廣播網(wǎng)與EPON+EoC解決方案[J].中國(guó)數(shù)字電視,2009(9):57-58.
[2]曲寶春,戴中蔚,李保,等.“下一代廣播電視網(wǎng)絡(luò)NGB”與基帶EoC技術(shù)[J]. 有線電視技術(shù),2009(3):66-68.
[3]劉曉雪,章文輝.淺談下一代廣播電視網(wǎng)(NGB)[J].電視技術(shù),2009,33(S2):150-152.
[4]孫凱意.EPON網(wǎng)元管理系統(tǒng)配置管理子系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[D].武漢:華中科技大學(xué),2007.
[5]張宇,王映輝,張翔南.基于Spring的MVC框架設(shè)計(jì)與實(shí)現(xiàn)[J].計(jì)算機(jī)工程,2010,36(4):59-62.
[6]區(qū)海平,壽國(guó)礎(chǔ).基于MIB定義的SNMP分析系統(tǒng)及實(shí)現(xiàn)[J].計(jì)算機(jī)應(yīng)用,2009,29(1):38-41.