



下載本文檔
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、基于SNMP統一網管框架設計和實現摘要:本文在分析目前網絡管理現狀的前提下,采用面向對象技術,設計并實現了一個統一網管系統,并分析了系統的組成結構、功能特點及部分技術實現。最后分析了其不足,對網管系統的發展方向做了探討。 關鍵詞:電信管理網 簡單網絡管理協議 網管系統 1 網絡管理的發展與現狀伴隨Internet時代的到來,網絡技術的迅猛發展,越來越多的企業、政府、學校、個人等都融入互聯網當中,網絡已經與人們的學習、工作及生活密不可分。而作為整個互聯網的基礎,電信網穩定、高效、準確的運行就顯得極為重要。要做到這一點,除了要依靠網絡設備本身和網絡架構的可靠性之外,還必須依靠一套有效的網絡管理手段
2、來監測和管理整個網絡,而傳統的單層網絡管理模式已經無法適應現代網絡管理的需求。為了有效合理地管理現代網絡,國際電信聯盟電信標準化部門(ITU-T)于1988年,參考OSI系統管理框架提出了具有標準協議、接口和體系結構的管理網絡-電信管理網(Telecommunication Management Net,TMN),作為管理現代電信網的基礎。考慮將提供業務的電信網及其管理功能進行分離,使管理功能從電信網中獨立出來單獨組成一個網,即TMN。TMN制定了一系列的標準和管理功能,包括被管網元和網絡管理系統之間的接口均被標準化了。只要被管網元和網絡管理系統之間遵循TMN標準,完成一定的管理功能,就能夠實
3、現不同廠商的不同設備以及不同網絡管理系統之間的互連互通操作。TMN體系結構按照不同的管理需求將整個電信網管理功能從低到高分作5層:網元層(NEL)、網元管理層(EML)、網絡管理層(NML)、業務管理層(SML)、事務管理層(BML)。 目前,由于實際技術水平和應用條件的限制,網絡管理主要集中在網元管理層和網絡管理層,真正業務級的管理還只停留在理論研究階段。網元管理層直接管理物理網絡,是整個管理系統的基礎。對電信網絡運營商來說,隨著通信業務量需求的成倍增長,網絡規模的日益膨脹,網元設備的種類和數量不斷增加,各個網元都有自己的管理系統,這給網絡的管理維護帶來了很多困難。為了提高網絡管理的效率,很
4、有必要對各網元進行集中管理,實現在一個統一的平臺上管理各種設備。為了適應網絡管理系統可擴展性的要求,我們將設計模式的思想融入網絡管理框架設計中, 保證該框架具有良好的靈活性和可擴展性。 2 網絡管理協議 當前最典型的網絡管理協議有基于OSI七層模型的公共管理信息協議(CMIP)和基于TCP/IP的簡單網絡管理協議(SNMP)。OSI/CMIP系統管理模型是目前理論上最完備的網絡管理模型,是其他網絡管理模型的基本參考。但由于該模型比較復雜,實現代價高,因此并沒有得到廣泛的應用。相反,當初只是為了管理TCP/IP網絡的SNMP卻得到了迅速的發展和廣泛應用。SNMP網絡管理模型的突出特點是簡單、易于
5、實現,因而得到了廠商的支持。特別是在Internet上的成功應用,使得它的重要性越來越突出,已經成為事實上的工業標準。 SNMP 主要包括SMI (管理信息結構) 、MIB (管理信息庫)和SNMP協議幾部分。SMI 給出了管理對象定義的一般框架。MIB是設備所維護的全部被管理對象的結構集合。SNMP協議包括SNMP操作、SNMP信息的格式以及如何在應用程序和設備間交換消息。SNMP采用代理/ 管理站模型進行網絡管理。 3 基于SNMP的統一網管框架設計 3.1 總體結構設計 統一網管平臺提供一個高分布性,高擴展性的架構來保證應用的開發者可以用不同的方法來布置他們的網元管理系統。從橫向分層的角
6、度來看,平臺可以分為支撐層(Support Layer)、框架層(Framework Layer)和應用層(Application Layer)。 統一網管平臺從軟件結構上講仍是C/S結構,包括網管服務器和網管終端兩大部分,通過網管服務器的級聯構成多級網管,實現多級網管的無縫集成。其中框架層和支撐層位于服務器端,應用層位于客戶端。 結構示意圖 hspace=12 src=/neteaseivp/resource/paper/doc/2005781120788011832/image002.gif width=397 align=center u3:shapes=_x0000_s1027 3.2
7、 支撐層的設計 支撐層作為系統支撐平臺為應用提供系統級的服務,包括消息服務、數據庫訪問和SNMP接口。支撐層是整個統一網管平臺的基礎。 3.2.1 消息服務 消息服務為系統中所有模塊的交互提供支持,實現消息的路由轉發,根據消息類型,轉發到相應的處理模塊。消息的格式如下所示: 版本號消息頭消息數據 消息頭的定義如下: typedef struct msg void *mlink; /指向結構的指針,形成消息鏈表 PID sender_pid; /發送進程標識 PID receiver_pid; /接收進程標識 BYTE msg_type; /消息類型(2或3,表示同步或異步進程消息) WORD
8、event_type; /事件類型 WORD msg_length; /消息長度,不包括頭 MSG_HEAD; 我們的系統使用的是非阻塞的異步消息機制,系統維護一個消息隊列,這個消息隊列用來存放系統各個模塊產生的消息。程序中有一小段程序代碼,叫做消息循環,用來從隊列中取出消息,并且將它們發送給相應的消息處理程序。代碼片斷如下: while (GetNmMessage (&msg, NULL, 0, 0) TranslateNmMessage (&msg); DispatchNmMessage (&msg); 3.2.2 數據庫訪問 數據庫訪問模塊提供所有訪問數據庫的接口調用,并維護數據庫連接池
9、,其他模塊只需向其申請數據庫連接即可。 3.2.3 SNMP接口 網管系統與網元的交互是基于SNMP協議的,在SNMP協議棧的實現中,我們采用了被廣泛使用的CMU(Carnegie Mellon University)開發的開放源代碼CMU-SNMP軟件包,該軟件包對SNMPv2c做了很好的實現。但是對于上層的開發人員來說,調用起來不是很方便。例如,一次SNMP操作,就要先后調用以下這些函數: char * winsock_startup(void); void snmp_synch_setup(struct snmp_session *Session); struct snmp_sessio
10、n *snmp_open(struct snmp_session *session); struct snmp_pdu *snmp_pdu_create(int command); int snmp_synch_response(struct snmp_session *Session,struct snmp_pdu *PDU,struct snmp_pdu *ResponsePDUP); int snmp_close(struct snmp_session *session); 為了方便業務開發人員,我們對該協議棧進行了簡單封裝。將CMU格式的SNMP消息結構轉換為本網管平臺內部使用的數據結
11、構,并提供一系列便于使用的SNMP原子命令接口和其它輔助功能接口,為其上層應用和Trap監聽進程提供統一的支持。 通常,通過SNMP協議向SNMP代理發送請求,是通過使用MIB中定義的對象標識符(OID)來標識的。OID是用句點隔開的一組整數,使用起來很不方便,我們可以通過MIB樹中葉子的名稱來訪問和設置MIB樹中的數據,而不是通過枯燥的數字,方便開發人員進行開發。 以RFC1213定義的MIB-中的.ernet.mgmt.mib-2.system.sysName為例,其定義如下: sysName OBJECT-TYPE SYNTAX DisplayString
12、(SIZE (0.255) MAX-ACCESS read-write STATUS current DESCRIPTION An administratively-assigned name for this managed node. By convention, this is the nodes fully-qualified domain name. If the name is unknown, the value is the zero-length string. := system 5 如果我們要查詢系統的名稱,我們在發送GetRequest命令時需要使用.2.
13、去向SNMP代理檢索它,這一長串的OID字符串在程序中的可讀性很差。我們采取的措施是建立一個Hash表,在SNMP模塊初始化的時候先對程序所使用的MIB進行分析,對sysName這個字符串進行Hash操作,將sysName、OID和DisplayString保存在Hash表中。在向上層應用提供的SNMP API中只需要對sysName.0進行操作,就能查詢到sysName的值,而不是通過枯燥的數字,方便開發人員進行開發。MakeHash函數如下所示: ULONG MakeHash(char* str, ULONG len) ULONG n; n = 0; #define HASH
14、C n = *str+ + 65587 * n if (len 0) int loop; loop = (len + 8 - 1) 3; switch (len & (8 - 1) case 0: do HASHC; case 7: HASHC; case 6: HASHC; case 5: HASHC; case 4: HASHC; case 3: HASHC; case 2: HASHC; case 1: HASHC; while (-loop); return n; 另外,由于我們使用的CMU的SNMP協議棧是非線程安全的,而我們的上層應用是基于多線程的,因此,我們在對其進行封裝的過程中
15、一個重要的任務就是使其線程安全,目前我們采取的方法是采用事件機制,每個SNMP原子命令執行前,都調用系統的同步機制函數等待一個事件對象mm_hSnmpEvent的觸發。 3.3 框架層和應用層 針對網管系統這個特定的應用領域,我們抽取出一些公共的軟件框架,這些程序框架統稱為框架層。所有具體的管理應用都應該基于這個框架層提供的全部或者部分框架來開發。在具體的應用中,我們通過框架導出的API進行二次開發,如圖1所示。框架層分為公共服務功能、公共應用功能、工作站功能和網元中介功能四個部分。公共服務功能提供網管系統所公有的,和具體網元無關的服務功能,如安全、日志等。和網元相關的管理功能,如告警、性能、
16、配置等,抽取其中的公共部分稱為公共應用功能。工作站功能實現客戶端GUI的展現功能,并提供圖形控件。網元中介功能實現網管系統和網元之間的接口轉換和適配功能。 應用層就是在平臺框架層的基礎上,提供具體的管理應用功能,如配置管理、性能管理、故障管理、安全管理等。這些功能都是可以拆卸的,應用在使用統一網絡管理平臺的時候,可以根據自己的具體需要來選擇需要裝載那些管理功能。 4 結束語 本文介紹了針對網元層的基于SNMP的網絡管理框架,該框架是在Windows平臺上利用Visual C+開發出來的,實現了在一個統一平臺上對各種網元進行管理,具有良好的靈活性和可擴展性。通過對各網元進行集中管理,極大地提高了
17、網絡管理的效率。但是本系統依賴于Windows平臺,在移植性上尚存諸多不足。目前,Java平臺在移植性上做得比較成功,但是對于電信級的網管平臺來說,其性能并不能滿足要求,與此同時,CORBA應用日益成熟,C+領域高性能的分布式網絡框架ACE的異軍突起,為我們提供了跨平臺的最好選擇。我們可以用Java開發客戶端GUI,用ACE框架來實現服務器端的網管功能,用CORBA實現客戶端與服務器端的通信,從而真正實現高性能,可移植的網絡管理框架。 參考文獻 1 Mani Subramanian. 網絡管理原理與實踐(影印版). 北京:高等教育出版社,2001 2 郭軍. 網絡管理M. 北京:北京郵電大學出版社,2001 3 賢道,安常青. 網絡管理協議及應用開發M. 北京:清華大學出版社,1998 4 Douglas Mauro ,Kevin Schmidt. Essential SNMPM .OReilly&Associates ,2001 5 RFC1157. A Simple Network Management ProtocolS Design and Implementation of the Uniform Network Management Syste
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年年會主題策劃方案范本
- 黑龍江大慶歷年中考作文題(2008-2024)
- 尿毒癥培訓課件
- 2022年湖北省通信管理局考試真題
- 2025年玻璃自動切割線項目可行性研究報告
- 2025年環形氣閥項目可行性研究報告
- 2025年豬苓多糖注射液項目可行性研究報告
- 2025年牛筋塑料桶項目可行性研究報告
- 長江藝術工程職業學院《線性代數及概率統計》2023-2024學年第二學期期末試卷
- 肇慶醫學高等專科學校《旅行社運營管理》2023-2024學年第二學期期末試卷
- 華能霞浦核電限公司2025年上半年應屆畢業生招聘易考易錯模擬試題(共500題)試卷后附參考答案
- 醫院保安服務投標方案(技術方案)
- 2025-2030中國保健品行業市場發展分析及投資前景預測研究報告
- 經皮球囊擴張椎體后凸成形術(PKP)及病例分享
- 中國慢性腰背痛診療指南(2025 版)解讀課件
- 眼科學重點總結-臨床醫學
- 監獄改擴建項目可行性研究報告-送審稿
- 神經重癥氣管切開患者氣道功能康復與管理專家共識
- 無菌技術的護理課件
- 糖尿病科普教育的社交媒體推廣-洞察分析
- 自動噴水滅火系統的工作原理和應用
評論
0/150
提交評論