鄭慶霄++李偉岸+++李歡
摘 要:基于IP集成的無線多接入系統體現了傳統的移動通信網絡、新興的多接入技術和開放的IP技術相結合的網絡發展趨勢,是下一代移動互聯網的發展方向。支持異構通信網絡間不同協議的互聯互通是其中的重中之重,其中很重要的一部分就是整個通信會話在異構網絡間的管理。但是目前的協議沒有從軟件設計的角度出發提供一種具有通用性的會話管理機制。本文引入了一套完整會話管理機制來進行語音和數據的管理,將以前的控制流驅動的數據信息管理變為數據驅動的數據信息管理,很好的支持現有的異構通信網絡會話管理協議。
關鍵詞:異構通信系統;數據驅動;會話管理;引用計數;垃圾回收
中圖分類號:TP392 文獻標識碼:A
0.前言
新型的無線接入技術層出不窮。由不同的標準化組織制定的無線接入技術,通常在覆蓋范圍,接入速率、容量、移動性和業務特性等方面有著很大差異,其適用的場 景各有側重,彼此之間很難相互替代。因而異種無線接入技術共存和融合的發展,必將成為未來移動通信系統的重要特征。
對這種網絡的展望如圖1所示。下一代移動互聯網為用戶提供在任何地點隨時隨地的網絡接入服務。
從3G版本的發展可以看到,數據傳輸IP化的趨勢正在逐漸從3G的核心承載網向接入網推進,顯著標志就是3GPP中對IP-RAN的定義。同時,3GPP和3GPP2提出了全IP的體系結構,隨著IMS體系的引入和完善,3G分組域將逐步提供電信級的多媒體服務,傳統的電路域業務也會逐漸向分組域轉移。
本文引入一套完整的數據信息會話管理方案來對系統中所有的語音和數據進行統一管理。并且該方案能被應用于其他的異構通信網絡間的會話管理架構設計中。該數據信息會話管理方案將傳統的控制流驅動的數據信息管理變為數據驅動的數據信息管理,可以被應用到現有的各種異構通信網絡間的會話管理中去。
1.會話管理機制設計思路
會話是語音和數據的容器,無論是從IP端或是從無線鏈路端收到一個新的語音呼叫或者數據短信,都會在基站系統上新建一個會話。下面將會詳細介紹會話管理機制的設計。
它的核心思想主要包含了3個方面:會話狀態同步機制(使用了發布訂閱設計模式),會話的引用計數器,會話的垃圾回收機制。
會話狀態同步機制:會話會被多個軟件模塊使用,例如流控模塊、收發模塊、呼叫管理模塊等。在每個模塊都可能會進行會話的操作以及會話的刪除,必須引入一個統一的會話狀態同步機制,否則將會導致會話狀態不同步的錯誤。
會話的引用計數器:為了保證在刪除某一個會話時所有該會話的使用者都解除了對該會話的使用,我們對每一個會話引入了一個引用計數器。當某一個會話的引用計數被減到0時,就可以銷毀該會話了。
會話的垃圾回收機制:由于每一個會話的釋放都是一個隨機的事件,在通信系統當中,我們應該盡可能地避免這樣的隨機事件對系統性能帶來抖動,將會話刪除的動作統一到系統空閑時間進行。
我們設計的會話管理機制采用了基于數據驅動的設計方法,將語音和數據作為會話進行統一的管理,避免了每個模塊單獨對語音和數據進行分散處理,解決了多模塊處理語音和數據的同步和統一管理問題。
2.會話管理機制設計實現
2.1 會話的創建
為了跟蹤會話的使用情況,我們需要統計有哪些模塊使用了一個會話,所有使用了會話的模塊將會注冊一個會話結束的事件,每一個會話都會有一個引用計數來表明有多少個模塊使用了該會話。
2.2 引用計數
引用計數常被用作一種垃圾回收算法,每一個擁有引用計數的對象都會有一個引用計數來表明使用它的對象有多少。如果一個會話的引用計數變成0時,說明系統中再沒有其他模塊來使用它,我們將會把它放入一個垃圾回收隊列中。
2.3 訂閱發布設計模式
每一個接收到會話建立事件的模塊都會對引用計數加1,同時該模塊會注冊一個會話結束的事件。當一個會話結束時,該會話所在的模塊不僅僅需要對該會話的引用計數減1,還需要發布一個會話結束的事件給所有會話結束事件的訂閱者。
圖2是一個典型的訂閱發布模式示意圖,訂閱者1和訂閱者2訂閱了主題A,訂閱者2和訂閱者3訂閱了主題B,當發布者發布一個主題A時,只有訂閱者1和2會收到該主題A的事件,同理,當發布者發布了一個主題B時,也只有訂閱者2和3會收到該主題B的事件。
通過使用訂閱發布者的設計模式,我們能保證當一個會話結束時,該會話結束事件將會被所有的會話結束訂閱者所收到。
2.4 會話結束與垃圾回收
在通話過程當中會話可能會在任意模塊被結束,垃圾回收者會把系統當中不再被使用到的會話對象釋放掉,首先是避免了程序設計人員來在每個模塊進行會話對象的釋放,其次在實時系統當中減少了抖動,由一個低優先級任務在系統空閑時輪詢垃圾回收隊列,對需要處理的無用會話進行統一刪除。
結論
在使用了新的會話管理機制以后,解決了以前多模塊會話狀態不同步問題。通過對新的會話管理機制的測試和分析,我們證明了該會話管理機制可以被很好地用于處理以下的情況:當我們需要在多個模塊之間進行數據共享,所有的軟件模塊都擁有該數據的對等權利時,如何進行共享數據管理的情況。
該會話管理機制可被廣泛應用于異構通信系統的會話管理設計當中,作為會話的管理,同樣,也可以用于一些類似的可以引入會話概念的系統設計中,會對我們的整個內存管理、系統性能管理、垃圾回收等帶來極大的好處。甚至我們還可以基于該會話管理機制對異構網絡間的通信協議進行優化,使其更好地滿足未來面向對象的軟件設計趨勢。
參考文獻
[1] “Wei Fu and Carl Hauser, “A Real-Time Garbage Collection Framework for Embedded Systems”. ACM SCOPES ‘05, 2005”. Portal.acm.org. Retrieved 9 July 2010.
[2]Gero Muehl, Distributed Event-Based Systems[M]. Ludger Fiege, and Peter R. Pietzuch, Springer-Verlag, Germany.2007
[3]Wilson, Paul R. Uniprocessor Garbage Collection Techniques[C]. Proceedings of the International Workshop on Memory Management. London, UK: Springer-Verlag. Retrieved 5 December 2009. pp. 1–42. ISBN 3-540-55940-X. Section 2.1.endprint