付承彪
(曲靖師范學院 計算機科學與工程學院,云南 曲靖 655011)
隨著現代通信網絡的飛速發展,基于IP承載技術的NGN(Next Generation Network,下一代網絡)已被廣泛認為是實現三網合一的最適合技術。
NGN網絡是一個由若干協議所組成的龐大網絡[1],各個網元設備之間采用標準的協議進行通信,從而構成一個完整而龐大的協議體系。它的信令協議不但可以滿足新型網絡的要求,而且還可以兼容原有的PSTN網絡。比如信令傳輸適配協議(SIGTRAN協議:M2UA、M3UA、SUA),媒體網關控制協議[2](MGCP、H.248/Megaco 協議),對等協議(BICC、SIP協議)等。因此對于NGN網絡中數據是非常龐大和復雜的。
我們從網絡中獲取了NGN網絡的數據,是最基本的數據,為分析整個網絡的運行情況,我們必須對其進行相應的處理[3]。我們采取的處理方法是:先把統計接口提供上來的數據存儲,然后再根據統計類型進行相應統計分析,并把結果存儲,最后通過界面呈現。

圖1 數據處理流程圖
為了提高效率,在開發過程中,采用映射map結構,根據網關、軟交換地址進行統計分析,之后將數據存于map。然后統計視圖根據需要直接從map取數據,從而完成統計分析的呈現功能。為了實現對數據的進一步統計分析。
map是由關鍵字(Key)及其對應的元素值(Value)所組成的元素單元(Element)的表單式集合。其內部采用的就是一種非常高效的平衡檢索二叉樹:紅黑樹。紅黑樹的統計性能要好于一般的平衡二叉樹,所以被STL選擇作為了關聯容器的內部結構[4-5]。它可以在O(logn)時間內做查找,插入和刪除,這里的n是樹中元素的數目。通常,對于map而言,使用給定的Key,可以迅速地從單元集合中檢索到相應的元素。因此,在需要對大量數據進行查找操作而查找的性能又占據重要地位的場合,map無疑是一種較理想的容器。比如,在MFC中,使用map來實現句柄映射,以及其他的一些內部數據結構。同時,MFC也提供了公共map類。使用這個公共map類,MFC程序員可以輕易地高效地根據自身的需求實現程序中自定義的映射。
由于map采用的是紅黑樹結構,所以首先需要給其定義一個key值,用于傳入需要比較的關鍵字。然后還需定義相關的比較方法,把數據傳進去。基本的設計流程如圖1所示。
在設計中,把這部分統計分析的數據處理過程專門封裝在一個類里面處理,實現了數據與顯示的分離,在設計中通過返回map的形式,實現向統計視圖提供數據。這個類的基本函數接口如下所示:

在統計分析數據的具體處理中,我們把協議分析模塊傳上來的數據根據統計類型(網關、軟交換等)統計存于map,最終根據界面顯示的需要,以map的形式把數據返回。
本文首先概述NGN網絡中的數據,然后對數據處理流程進行了研究,選擇了一種基于map的設計方法。本文所闡述的NGN網絡中大容量數據的處理,在現網中的應用有一定的現實意義。
[1]沈樂,鮑可進.基于H.248協議的SIP網絡資源分配策略[J].計算機工程與設計,2011,32(11):3646-3649 轉 3831.
[2]付承彪,蔡昌許,陶燕林.H.248協議在 NGN 網絡中的應用分析[J].曲靖師范學院,2013,32(06):48-51.
[3]林瑞云.盤點 NGN 五大協議[J].中國電信業,2004,06.
[4]田安紅,付承彪,李麗.基于Socket的網絡通信過程的研究[J].曲靖師范學院,2013,32(06):45-47.
[5]代孝東,陳文星.基于SIP和H.248協議的混合軟交換技術的研究[J].計算機科學,2011,38(10A):336-337 轉 352.