国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于插件技術(shù)的綜合網(wǎng)管系統(tǒng)通用網(wǎng)元代理的分析與設(shè)計(jì)*

2012-03-26 08:52王萌朱曉民李煒
關(guān)鍵詞:網(wǎng)元網(wǎng)管插件

王萌,朱曉民,李煒

(1 北京郵電大學(xué)網(wǎng)絡(luò)與交換技術(shù)國(guó)家重點(diǎn)實(shí)驗(yàn)室,北京 100876;2 東信北郵信息技術(shù)有限公司,北京 100191)

移動(dòng)智能網(wǎng)是一種在移動(dòng)網(wǎng)中快速、有效、經(jīng)濟(jì)、方便的提供新業(yè)務(wù)的網(wǎng)絡(luò)體系結(jié)構(gòu)[1]。隨著移動(dòng)智能網(wǎng)的發(fā)展成熟,部署在網(wǎng)絡(luò)上的業(yè)務(wù)系統(tǒng)不斷出現(xiàn),軟件和主機(jī)的數(shù)量也在相應(yīng)的增多,網(wǎng)絡(luò)和業(yè)務(wù)資源的管理問(wèn)題也越來(lái)越突出[2]。綜合網(wǎng)管系統(tǒng)可以通過(guò)一個(gè)控制操作臺(tái)實(shí)現(xiàn)對(duì)互聯(lián)的多個(gè)業(yè)務(wù)網(wǎng)絡(luò)的管理,能夠提供對(duì)多專業(yè)多廠家多個(gè)業(yè)務(wù)子網(wǎng)的透視、對(duì)所管業(yè)務(wù)的了解及對(duì)故障定位和故障排除的支持。

隨著智能網(wǎng)業(yè)務(wù)的拓展[3],原有的業(yè)務(wù)系統(tǒng)需要進(jìn)行修改或者升級(jí),可能會(huì)增加或者修改網(wǎng)管監(jiān)控?cái)?shù)據(jù),其自身的業(yè)務(wù)數(shù)據(jù)如KPI(關(guān)鍵績(jī)效指標(biāo))等也可能會(huì)發(fā)生變化,而目前只能通過(guò)更新各個(gè)業(yè)務(wù)系統(tǒng)的網(wǎng)管代理來(lái)進(jìn)行適應(yīng),導(dǎo)致現(xiàn)網(wǎng)維護(hù)的成本較高,業(yè)務(wù)系統(tǒng)網(wǎng)管代理開(kāi)發(fā)者的開(kāi)發(fā)負(fù)擔(dān)和現(xiàn)網(wǎng)工程客服人員的升級(jí)維護(hù)負(fù)擔(dān)較重,因此如何設(shè)計(jì)一種通用可擴(kuò)展的網(wǎng)元代理,在業(yè)務(wù)系統(tǒng)功能變動(dòng)或者擴(kuò)展時(shí),不需要對(duì)代理進(jìn)行重新開(kāi)發(fā),以最小的代價(jià)適應(yīng)智能網(wǎng)業(yè)務(wù)的發(fā)展,是一個(gè)亟需解決的問(wèn)題。

插件式架構(gòu)的應(yīng)用系統(tǒng)具有良好的擴(kuò)充性、可定制性和易維護(hù)性,本文即在論述插件設(shè)計(jì)思想的基礎(chǔ)上提出了一種基于插件技術(shù)實(shí)現(xiàn)通用網(wǎng)元代理的設(shè)計(jì)思路。

1 基于插件的軟件設(shè)計(jì)思想

插件是一種遵循統(tǒng)一的預(yù)定義應(yīng)用接口規(guī)范編寫(xiě)出來(lái)的程序,主框架程序(宿主程序)在運(yùn)行時(shí)通過(guò)接口規(guī)范對(duì)插件進(jìn)行調(diào)用,以擴(kuò)展應(yīng)用程序的功能[4]。插件結(jié)構(gòu)有助于應(yīng)用程序功能的擴(kuò)充和維護(hù),許多著名的軟件都運(yùn)用了這一技術(shù),例如火狐瀏覽器、微信、Eclipse、Adobe Photoshop等。

1.1 基于插件的軟件開(kāi)發(fā)框架

基于插件開(kāi)發(fā)的軟件可分為插件和宿主程序兩部分,兩者之間可以互相通信,宿主程序通過(guò)增刪或者修改插件來(lái)擴(kuò)充或者變更整個(gè)軟件的功能。插件與調(diào)用它的宿主程序之間的結(jié)構(gòu)關(guān)系如圖1所示。

圖1 插件和宿主程序UML關(guān)系圖

可以看到宿主程序和插件之間需要事先約定好兩種接口,其一是宿主程序接口,由宿主程序?qū)崿F(xiàn),插件調(diào)用這些接口獲取宿主程序內(nèi)部的各種資源和數(shù)據(jù),宿主程序接口為插件提供了定制宿主程序所需的全部接口;其二從插件的角度,為了使宿主程序能夠裝載并成功調(diào)用,插件也必須遵循宿主程序提供的插件接口,它為宿主程序提供了裝載和調(diào)度插件所需要的全部方法[5]。

1.2 插件技術(shù)的優(yōu)勢(shì)

基于插件的軟件開(kāi)發(fā)框架能夠有效的減少系統(tǒng)各模塊之間的耦合;同時(shí)軟件新增加功能時(shí)不需要修改現(xiàn)有代碼,只需新開(kāi)發(fā)插件進(jìn)行安裝即可,增強(qiáng)了軟件的可擴(kuò)展性;另外由于具體的功能由插件來(lái)實(shí)現(xiàn),也降低了系統(tǒng)的整體復(fù)雜度。

2 基于插件的通用網(wǎng)元代理分析與設(shè)計(jì)

2.1 通用網(wǎng)元代理總體架構(gòu)

通用網(wǎng)元代理作為綜合網(wǎng)管系統(tǒng)的重要組成部分,它運(yùn)行于所有的被管理主機(jī),其主要功能在于收集被管理主機(jī)的各種配置和運(yùn)行數(shù)據(jù)。根據(jù)插件式架構(gòu)設(shè)計(jì)思想,可以將通用網(wǎng)元代理劃分為代理接口、插件管理、插件調(diào)度和插件庫(kù)4大部分(如圖2所示)。

代理接口模塊實(shí)現(xiàn)與綜合網(wǎng)管系統(tǒng)控制中心的通信、消息轉(zhuǎn)發(fā)等功能;插件管理模塊實(shí)現(xiàn)系統(tǒng)對(duì)插件的管理功能,包括插件的新增、刪除、驗(yàn)證、已安裝插件信息查詢、插件運(yùn)行狀態(tài)查詢等功能;插件調(diào)度模塊實(shí)現(xiàn)了插件自動(dòng)安裝升級(jí)、網(wǎng)管數(shù)據(jù)采集等通用網(wǎng)元代理的核心功能。

圖2 基于插件的通用網(wǎng)元代理結(jié)構(gòu)

2.2 插件及接口設(shè)計(jì)

通用網(wǎng)元代理接收綜合網(wǎng)管系統(tǒng)的命令調(diào)用相應(yīng)插件獲取網(wǎng)管數(shù)據(jù),因此不需要宿主程序提供接口,只需設(shè)計(jì)插件接口規(guī)范即可。因?yàn)槊總€(gè)插件都單獨(dú)實(shí)現(xiàn)獲取某種網(wǎng)管數(shù)據(jù)的功能,所以這里將插件設(shè)計(jì)為單獨(dú)的可執(zhí)行程序,而宿主程序通過(guò)調(diào)用這些單獨(dú)的可執(zhí)行程序來(lái)實(shí)現(xiàn)具體的功能。

插件接口要提供宿主程序調(diào)用插件所需的所有方法,包括幫助信息、版本信息、測(cè)試信息、參數(shù)配置信息、能力信息,所有為通用網(wǎng)元代理開(kāi)發(fā)的插件都需要實(shí)現(xiàn)這些接口,根據(jù)插件的設(shè)計(jì),插件接口需要通過(guò)傳遞給插件的參數(shù)來(lái)實(shí)現(xiàn),分別對(duì)應(yīng)插件-help、-version、-test、-paraminfo、-dataindex參數(shù)。其中參數(shù)信息即實(shí)現(xiàn)插件的功能所需要的必須的參數(shù),供插件調(diào)用的時(shí)候使用;能力信息即插件實(shí)現(xiàn)功能的描述,將插件獲取的數(shù)據(jù)細(xì)化為數(shù)據(jù)指標(biāo),例如CPU占用率,內(nèi)存剩余容量等,所有插件返回信息均使用XML格式化,例如插件返回版本信息如圖 3所示。

圖3 插件返回版本信息示例

根據(jù)具體需求,插件可以使用shell等腳本語(yǔ)言或者C/C++等高級(jí)語(yǔ)言編寫(xiě),只需要符合上面所述的接口規(guī)范即可。

2.3 插件庫(kù)設(shè)計(jì)

由于插件需要從綜合網(wǎng)管系統(tǒng)安裝到通用網(wǎng)元代理,因此需要在代理本地維護(hù)一個(gè)插件庫(kù),建立目錄分別存儲(chǔ)不同形式或狀態(tài)的插件,如表1所示。

表1 插件庫(kù)設(shè)計(jì)

2.4 插件管理設(shè)計(jì)

支持插件功能的應(yīng)用程序都需要對(duì)已安裝的插件進(jìn)行管理。通用網(wǎng)元代理可以在一個(gè)配置文件中為每個(gè)已安裝的插件維護(hù)一條記錄,保存該插件的編號(hào)、版本、位置、狀態(tài)、更新時(shí)間等信息,進(jìn)而利用這些信息實(shí)現(xiàn)插件的安裝、驗(yàn)證、卸載等管理功能。

根據(jù)實(shí)際情況,插件在通用網(wǎng)元代理側(cè)的狀態(tài)可劃分為5種:初始、安裝失敗、安裝成功、驗(yàn)證失敗、有效。插件首次安裝狀態(tài)為初始,之后狀態(tài)通過(guò)安裝、卸載、驗(yàn)證3種操作進(jìn)行遷移。插件狀態(tài)之間的轉(zhuǎn)換關(guān)系如圖4所示,其中實(shí)線為安裝操作,虛線為卸載操作,點(diǎn)劃線為驗(yàn)證操作。

當(dāng)且僅當(dāng)插件處于有效狀態(tài)時(shí),才能被通用網(wǎng)元代理調(diào)度使用。

圖4 插件狀態(tài)轉(zhuǎn)換關(guān)系

2.5 插件調(diào)度設(shè)計(jì)

插件調(diào)度模塊需要根據(jù)綜合網(wǎng)管系統(tǒng)的指令執(zhí)行相應(yīng)的插件實(shí)現(xiàn)數(shù)據(jù)采集功能,通用網(wǎng)元代理側(cè)啟動(dòng)單獨(dú)的進(jìn)程負(fù)責(zé)插件調(diào)度。由于綜合網(wǎng)管系統(tǒng)的數(shù)據(jù)獲取指令可能存在并發(fā),因此插件調(diào)度進(jìn)程需要支持同時(shí)維護(hù)多個(gè)調(diào)度任務(wù),每一個(gè)調(diào)度任務(wù)都是一個(gè)狀態(tài)遷移過(guò)程(如圖 5所示),包括4種狀態(tài):修復(fù)(插件未準(zhǔn)備好,修復(fù)插件),就緒(插件就緒,等待調(diào)度)、運(yùn)行(插件運(yùn)行)、結(jié)束(插件執(zhí)行結(jié)束)。

圖5 插件調(diào)度狀態(tài)遷移圖

當(dāng)插件狀態(tài)非有效、插件不存在或者當(dāng)前安裝插件版本與接收的調(diào)度命令要求的不一致時(shí),調(diào)度任務(wù)進(jìn)入修復(fù)狀態(tài),此時(shí)通用網(wǎng)元代理從綜合網(wǎng)管系統(tǒng)下載最新插件代碼進(jìn)行安裝驗(yàn)證,插件狀態(tài)變?yōu)橛行Ш螅{(diào)度任務(wù)才能進(jìn)入就緒狀態(tài)等待調(diào)度,從而實(shí)現(xiàn)了插件自動(dòng)修復(fù)和自動(dòng)升級(jí)的功能。

由于數(shù)據(jù)采集可能存在單次和定期兩種情況,因此插件調(diào)度任務(wù)也需要支持兩種模式:?jiǎn)未握{(diào)度和周期調(diào)度。當(dāng)處于周期調(diào)度模式時(shí),調(diào)度任務(wù)進(jìn)入結(jié)束狀態(tài)后會(huì)再次遷移到就緒狀態(tài)等待下次調(diào)度。

3 結(jié)語(yǔ)

本文提出的基于插件的通用網(wǎng)元代理的設(shè)計(jì)思路在功能與技術(shù)上都突破了傳統(tǒng)的思維,為綜合網(wǎng)管系統(tǒng)提供了智能化、可擴(kuò)展、易維護(hù)的網(wǎng)管數(shù)據(jù)采集服務(wù),業(yè)務(wù)功能的變更或者業(yè)務(wù)系統(tǒng)的擴(kuò)展只需要修改相應(yīng)的插件即可完成兼容,降低了業(yè)務(wù)側(cè)網(wǎng)管功能開(kāi)發(fā)人員的負(fù)擔(dān)以及網(wǎng)絡(luò)維護(hù)成本。本文提到的插件結(jié)構(gòu)需要在綜合網(wǎng)管系統(tǒng)控制中心提供對(duì)所有系統(tǒng)支持插件的管理功能,還需要進(jìn)一步的研究。

[1]廖建新,王晶,郭力等.移動(dòng)智能網(wǎng)[M].北京:北京郵電大學(xué)出版社,2000(11):1-10.

[2]呂獻(xiàn)美,王晶.移動(dòng)智能網(wǎng)自動(dòng)例檢系統(tǒng)的分析與設(shè)計(jì)[J].電信技術(shù),2009(8):108-110.

[3]呂新榮,廖建新,朱曉民,武家春.無(wú)差別移動(dòng)性管理網(wǎng)絡(luò)[J].通信學(xué)報(bào),2007,28(7):1-7.

[4]李延春.軟件插件技術(shù)的原理與實(shí)現(xiàn)[J].計(jì)算機(jī)系統(tǒng)應(yīng)用,2003(7):24-26.

[5]陳方明,陳奇.基于插件思想的可重用軟件設(shè)計(jì)與實(shí)現(xiàn)[J],計(jì)算機(jī)工程與設(shè)計(jì),2005(1):172-176.

猜你喜歡
網(wǎng)元網(wǎng)管插件
自編插件完善App Inventor與樂(lè)高機(jī)器人通信
一種全網(wǎng)時(shí)鐘同步管理方法
給水網(wǎng)管的優(yōu)化布置研究
基于jQUerY的自定義插件開(kāi)發(fā)
MapWindowGIS插件機(jī)制及應(yīng)用
“五制配套”加強(qiáng)網(wǎng)管
基于Revit MEP的插件制作探討
Java EE平臺(tái)在綜合網(wǎng)元管理系統(tǒng)中的應(yīng)用研究
網(wǎng)管支撐系統(tǒng)運(yùn)行質(zhì)量管控的研究與實(shí)現(xiàn)
S1字節(jié)和SDH網(wǎng)絡(luò)時(shí)鐘保護(hù)倒換原理