摘要:抽象了網管系統中的主要管理元素,在此基礎上給出了一種基于管理設備骨干樹的分布式網絡管理系統的實現。臨時選舉的主席根據骨干樹對管理域進行自動劃分,并由管理設備骨干樹上的多管理設備使用簡單的路由機制協同工作,完成大型網絡管理幾大功能域的需求,如分布式拓撲發現、多管理設備間多性能任務調度和故障通報等。
關鍵詞:分布式系統;網絡管理; 任務調度
中圖法分類號:TP393.02文獻標識碼:A
文章編號:1001-3695(2007)01-0309-04
集中式網絡管理系統體系結構不能滿足大型網絡中實現故障、配置、計費、性能及安全管理(Fault, Configuration, Account, Performance, Security, FCAPS)等網絡管理五大功能域的需求,將原有單管理者模式改為多管理者協同工作的分布式或層次式計算模式,從而在大型網絡中實現FCAPS是分布式網絡管理的目標。分布式網絡管理體系結構的不斷改進,必須更多地借助于現有的成熟分布式算法。而
網絡中相關性流量大部分均集中在小范圍區域內,所以分布式網絡管理系統將網絡劃分成多管理域,由一臺或多臺管理設備構成可并行計算的集群,使其充分保證了一個域內的管理計算能力和性能擴展需求。而不同域內的管理設備,在日趨龐大的網絡中形成了一個類P2P的骨干結構,通過協作完成對大型網絡甚至是Internet的監控和管理功能。
本文介紹了網絡環境下各主要管理元素的基本概念,給出了分布式管理體系結構中實現主要幾個網絡管理功能域的基本算法,及算法的數據基礎,如P2P形態管理設備的骨干樹路由表等,以及組織這些數據時對同步、選舉等的考慮,并分別給出了算法性能的分析比較和進一步的研究方向。
1基本概念
1.1管理域
假設設備D為設備編號和設備屬性集的二元組,使用
設備集合和鏈路集合組成被管理網絡N使用
1.2管理任務
管理任務MT是一系列指令的序列,是完成某項網絡管理功能的算法實現,指令的粒度可以為服務級、函數級或程序語言實現中單行的代碼。其形式有偽代碼、文本、形式化描述或高級語言等。
1.3管理進程和管理設備
假設管理消息集合為M_SET,E_SET是一組包含消息傳遞和申請資源的過程的事件集合,則服務S(MT,M_SET, E_SET)表示基于M_SET和E_SET的集合完成管理任務MT的過程,服務的集合稱為管理進程MP。管理進程、設備和鏈路如圖1所示。
如果在某D上可定制管理一定規模MN的進程,則稱其為管理設備MD。MD需要可自由操縱的內存區,管理進程可以以Mobile Agent等進程方式直接在其上運行,路由器、交換機可編程性較差,不適合作為MD。管理進程在網絡中搜索鄰居MP,從而獲得鄰居MD的路由,除了鄰居MD集合,管理進程還維護著MN的邏輯視圖。
圖1管理進程、管理設備和鏈路
1.4管理知識
管理進程維護的MN邏輯視圖,管理任務以及其他管理進程位置等網絡管理中有用的信息,統稱為管理知識。
2分布式網絡管理系統對管理功能域的實現
多個MP協作完成分布式管理任務的前提是建立整網范圍內MD骨干樹,在此基礎之上完成分布式的配置管理、性能管理及故障管理等。
2.1配置管理—分布式拓撲發現
拓撲結構發現任務MT_CONF_DISCO是配置管理的核心任務,是多管理進程協作發現MD骨干樹,并使用三層和二層連接關系[1]發現整網拓撲結構的算法,分為如下兩種情況:
(1)情況1
①在支持SNMP的網絡中,選定默認網關作為入口路由器,加入待探測列表中,探測列表首部路由設備獲取其路由表,把路由表中下一跳路由器加到探測列表尾端,直連的子網則進入步驟②探測。
②使用ICMP探測主機和二層交換設備列表,通過IP欺騙使所有二層設備FDB加入所有其他二層設備的連接MAC地址,通過間接和直接連接關系計算交換設備間 [1]、交換設備與主機間、交換設備與路由器端口間的鏈路。如果該子網中存在MD,進入步驟③,否則繼續步驟①。
③把MD加入鄰居MD集合,保存到該MD路徑上所有路由器間的鏈路集合
④選舉主席,由主席調用MD骨干樹算法建立所有MD的路由,并使用管理域劃分算法獲得截斷(第3節將詳細討論)。使用截斷剪裁原來已探測和未探測的三層設備集合。
(2)情況2
①在支持SNMP不完全的網絡中,所有MD必須已知,且在目標種子集合中,使用TRACEROUTE方式探測所有目標種子集合中設備;
②建立MD骨干樹,調用管理域劃分算法,獲取管理域截斷約束;
③使用情況1中步驟①、步驟②繼續擴散,盡量完成各管理域的探測。
上述算法是一種深度優先的搜索方法。在超大型網絡中存在耗時過長的問題[2],當MD搜索到其他MD時應該中止探測。為確保所有MD連通,在MD數目小于預期數時需要繼續探測,或通過手動添加MD到MD的路徑。當在超大型網絡中無法知道MD數目時,也可通過探測跳數限制管理域的無限擴散問題。
2.2性能管理—分布式性能數據采集
性能管理任務MT_PERF_MONITOR基于拓撲發現結果監測管理域中某臺設備的性能狀態,如在支持SNMP的網絡中,對單臺設備的性能管理任務可由管理協議、管理OID、基于OID性能指標計算公式的一個三元組
2.3故障管理
集中式故障管理使得所有故障事件匯報的目標均指向管理者,一旦網絡中出現大量的異常事件,在管理者的接收入口很容易造成擁堵甚至丟棄。在分布式網絡管理中,往往由MD來接收管理域內的實時故障告警,而全網故障信息的搜集可以由MD將壓縮的故障信息上報主席,使用Mobile Agent機制使得主席可以調用故障搜集管理服務,該服務派遣的Mobile Agent實體將以前序方式遍歷MD骨干樹,稱為一次環游。下文給出另一種按照故障發生概率的MD骨干樹環游方法。
3管理進程的協調
與自由的P2P節點間通信不一樣,管理任務的發起可以是任意一個MD,但控制需由主席來完成,任務的事務原子性和執行同步必須得到保證。下面討論各管理進程完成分布式算法的協作問題。
3.1骨干樹上的MD路由構造
每個MD都必須查找截斷設備以確定管理域邊界,并最終構造到其他MD的路由。獲得MD骨干樹知識即構造MD路由表的過程簡述如下:
(1)假設初始情況為網絡中已經有n個MD,為集合{MDi,i=1,…,n},每個MD已有的MD路由表中路由選項
(2)當一個新的MD加入時,它在使用拓撲搜索算法探測網絡拓撲結構時,查詢網絡設備是否為已存在的MD,如果查詢到一臺MD,則獲取該MD(稱為接口MD)所有路由選項,并把新路由選項<新加入MD,接口MD>發給所有其他MD。
(3)新加入MD發起一次MD路由更新。更新過程為各MD使用TRACEROUTE方式獲得路由表中其他MD的實際路徑
圖2根據截斷劃分管理域
按照跳數半數加1的準則能保證所有的三層設備都被劃分入某個管理域,但可能出現圖3中管理域視圖重合的情況,此時由主席對其中一個MD管理域進行剪裁。
(6)如果所有MD構成一棵樹,可采取下述截斷方式直接避免管理域間的重合,MD樹中節點度數最大為n,對任一度數為n的節點,如果該節點的一邊連向的子圖中存在MD,則在該節點的余邊中截斷所有滿足下列條件的邊,即該邊連向的子圖中也存在MD,對截斷后的所有子圖遞歸使用上述準則截斷,如果某個子圖只剩下一個或者多個顯式指定管理同一管理域的MD(如圖2中MD4.1和MD4.2)則中止遞歸。
(7)主席根據截斷連接的兩個管理域的相鄰關系重新計算MD路由項,與截斷條件一起發給MD,MD刷新路由表,骨干樹建立和管理域的劃分過程結束。
定理:上述算法按照步驟(5)中的截斷肯定保證所有管理域的并集覆蓋整網。
證明:①如果該設備在骨干樹上,則根據跳數準則很明顯應屬于某個管理域;②如果該設備不在骨干樹上,假設它未被任何管理域覆蓋,其必與骨干樹上的某兩個管理點的探測路徑形成交叉,如果該設備到交叉點沒有截斷,必然能從交叉點設備繼續探測直到未被覆蓋的設備;而截斷只能出現在管理點與管理點之間,該未被覆蓋設備在交叉點的另一端必然有管理點,假如有管理點,必然和交叉點延一端的任意一個管理點之間形成探測路徑,即該設備在骨干樹上,與前提條件矛盾!
3.2主席選舉, 任務的事務性和容錯性
MD骨干樹建立初采取IP最大方法確定臨時主席,也可使用如欺負算法[3]等。MD獨立管理每個管理任務的事務ID,通過設置Checkpoint保存事務發生前的狀態,如果事務被中斷,所有MD進行回滾;當不同的服務對資源的競爭產生死鎖時,采取的中止進程方法也會產生回退。主席維持一定的任期,以心跳方式通告MD自己存活,如果某MD在一段時間內沒有接收到心跳,有權重新發起選舉。當主席在通告存活時檢測到某個MD死亡,重新調用骨干樹生成服務,此時自治域可能出現調整或接管。
3.3服務化控制協議
所有的通信原語和任務均轉換成服務形式,可以屏蔽設計和解析控制協議的弊端,同時每個服務作為一個事務以維持原子性。以ICE[4]作為服務通信的中間件,使用ICEPACK作為一個域內服務注冊、查詢的命名服務器,MD相當于命名服務器,因此搜索MD相當于搜索該命名服務器注冊表。
4比較
在北京航空航天大學軟件開發環境國家重點實驗室內搭建了如下支持SNMP的實驗網絡。該拓撲結構如圖4所示。
從表1看到,MD不但發現服務中需進行ICEPACK注冊表搜索,比一般拓撲發現方法ICMP和SNMP請求返回超時長,所以速度略慢,而且發現時間受路由表影響較大,如獲取R6路由選項順序為
表1根據網絡中MD數目的先驗知識拓撲搜索的結果
5進一步研究方向
MD骨干樹使用比較簡單的MD路由表,解決管理站間的通信問題,并使用一定的截斷準則比較均勻地自動劃分管理域。基于管理站骨干樹的在實際大型網絡中的應用表明,并行的拓撲搜索效率比集中式提高很多,抽象了多管理站多性能任務的調度問題,管理站獲取管理任務的概率優先則適用于故障環游機制。如何在更大規模網絡中,提高MD骨干樹的組建效率,并在MD失效后的重構,從而使分布式網絡管理更魯棒和更高效協同工作是進一步研究的方向。
參考文獻:
[1]Breibart Y, et al. Topology. Discovery in Heterogeneous IP Networks[C]. Tel Avivl Israel:Proceeding of INFOCOM 2000,2000.
[2]Clarke I, Sandberg O, Wiley B, et al. Freenet: A Distributed Anony ̄mous Information Storage and Retrieval System[C]. Workshop on Design Issues in Anonymity and Unobservability,2000.2531.
[3]Andrew S Tanenbaum. Distributed Operating Systems[M]. USA: PrenticeHall, Englewood Cliffs, NJ 07632,1995.
[4]ICE Reference Manual[EB/OL]. http://www.zeroc.com/download/Ice/2.1/Ice2.1.2.pdf,2005.
作者簡介:
沈明達(1981),男,浙江紹興人,碩士研究生,主要研究方向為網絡管理、網絡性能分析;
郎昕培(1976),男,浙江桐廬人,博士研究生,主要研究方向為網絡管理、無線網絡技術;
沈曾偉(1980),男,浙江湖州人,碩士研究生,主要研究方向為網絡管理、拓撲搜索技術。
注:本文中所涉及到的圖表、注解、公式等內容請以PDF格式閱讀原文