新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 基于SNMP的網絡監控系統研究與設計

        基于SNMP的網絡監控系統研究與設計

        作者: 時間:2013-04-07 來源:網絡 收藏

        4 系統實現

        4.1 環狀權值分布

        拓撲圖的排序算法被叫“環狀權值分布”,主要是因為引入了設備在中 “權重”的概念。由于布局的主要目的是讓主要設備能夠分布且合理定位在屏幕上,所以拓撲布局的算法首先是找出那些“權重”最高的設備,并依此排序進行設備定位。算法主要的步驟有:

        (1)設備按“權重”排序。系統主要面向的是路由及交換設備,所以對拓撲圖最為敏感的信息就是“路由”信息。如果一個設備核心的路由數量高于其他的設備,則該設備就是所謂的“核心設備”。

        (2)最高權重優先定位。步驟(1)已經確定了最為核心的設備以及按“權值”排序后的設備分組。最為核心的設備是第一組,它們將以屏幕正中央為圓心,均勻分布在某個半徑的圓圈上。半徑的確定取決于要定位的設備數量,數量越多半徑值越大。當這些設備定位結束時,也就確定了此設備在屏幕中心點的角度(∠θ),此角度將作為下個步驟定位的依據。

        (3)“衛星”設備布局。與核心設備相聯接的設備都歸類為該核心設備的衛星設備, “衛星”設備的具體分布算法如下:

        假定有n個核心設備,那么每個核心設備的衛星設備只可以分布在360/n的扇形范圍內,如圖3所示。

        圖3中有3個核心設備,被分為A、B、C三個扇形區域,以R2為例,它的3個衛星設備就分布在B區域,且在B扇形內根據∠θ均勻分布,半徑會以衛星設備的數量作相應的修正。

        (4)繪制鏈路連線。核心設備區域的連線允許交錯,因為這部分的連線幾乎不太可能做到不交叉。由于分布是環的,所以連線即便有交錯,問題也不會很嚴重。衛星設備的連線主要是對上一個設備的,這種情況下可以直連,如果衛星設備之間有連線,則可對衛星設備的布局會做一些小調整,盡量不出現連線的過度交叉。

        此時如果發現x設備與z設備間有連線,就會根據屏幕上的空間對x或z的位置做一些小的調整,以讓x與z的連線分布得更為合理。

        4.2 MIB模塊的實現

        為命名方便,簡單管理協議的簡稱為SNMS。根據MIB的命名方式,在1.3.6.1.4.1節點下自定義了一個名為Tute(888)的節點,在該節點下定義SNMS(1)節點。

        定義了MIB中的對象標識符以后,就需要對軟件只能夠涉及到的、需要管理的對象進行劃分,在此,將SNMS這個系統分為system、user和file三部分,分別定義為system(1)、user(2)和file(3),如圖4所示。

        4.3 Trap模塊的實現

        為了使軟件在設備出現事件時能得到通知,在這個背景下就意味著需要一種能夠接收Trap的機制。設備在自己所能夠支持的事件范圍內,通過定義不同含義的Trap報文,按照設備自身所配置的接收對象將Trap發送出去。

        4.3.1 統一偵聽Trap版本

        協議不同的版本對應著不同的Trap格式。然而對SNMS自身來說,這些Trap的版本并沒有什么意義,軟件所需要的僅僅是必要的標識和對應標識的意義。所以需要一種機制將這些版本的Trap進行統一。

        軟件采用的方式是使用中間層來代理。使用TrapMonitor來偵聽所有版本的Trap,通過不同的處理最終觸

        發TrapComing事件,并將處理之后生成的TrapInfoEventArgs傳入,供訂閱者使用。

        4.3.2 Trap信息翻譯

        Trap包含的信息成百上千,若都由軟件來解析其信息將是一件非常耗時且龐大的工程。況且由于自身的可擴展性,軟件無法預測其后出現的新Trap定義,所以考慮這樣一種機制:對Trap進行建模,將其核心抽象為一種可擴展可配置的模式。

        這種機制使得軟件可以輕松適應不同的場景,而且部署起來也很方便。軟件自身也集成了Trap信息的配置功能,可以避免手動接觸XML文件。

        4.3.3 Trap過濾

        如何過濾出有用的Trap信息非常關鍵,這是由系統的“管理”性質決定的。系統決定采用一種類似于網絡ACL的做法,提出了白名單和黑名單的過濾模式。類似于Trap信息翻譯,系統也采用了XML的做法,將過濾規則保存在更加靈活部署的XML文件中。這里白名單是指所有Trap到達后只顯示名單中規則匹配的Trap;黑名單是指所有Trap到達后不顯示規則匹配的Trap。

        5 測試及部署

        最終的測試環境選用了最為常用的網絡設備——中型路由式數據交換網絡。環境使用5臺Cisco 7200路由器與7臺Cisco 3640交換機搭建,并配置了相關的路由協議,最后開啟SNMP功能和Trap功能。

        系統對“中型路由式數據交換網絡”環境進行拓撲發現,測試效果如圖5所示。

        圖6是在一個真實網絡環境中進行系統測試得到的網絡拓撲。

        作為基于SNMP的上層應用軟件系統,軟件除了實現核心的拓撲發現機制與拓撲布局外,還不斷地完善軟件框架,使其能適應不同的上層開發。軟件理想的演進路線是做成一個基于SNMP的基礎框架,在此框架之上可以不斷地擴充應用。由于SNMP協議本身的成熟性,這種需求的框架有著很大的潛力。


        上一頁 1 2 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 洪湖市| 岢岚县| 德兴市| 湘西| 宜丰县| 织金县| 佛冈县| 灵璧县| 陕西省| 英超| 禹州市| 秦安县| 巴马| 磐安县| 修水县| 长泰县| 中牟县| 嘉善县| 临沭县| 重庆市| 山丹县| 沙坪坝区| 中江县| 渑池县| 桃园县| 三江| 象州县| 鄢陵县| 天津市| 扶绥县| 安新县| 肇庆市| 和静县| 宣恩县| 房山区| 西丰县| 西华县| 青川县| 洛扎县| 库车县| 华宁县|