新型异构通信系统中基于数据驱动的会话管理机制
2017-09-15郑庆霄李伟岸李欢
郑庆霄++李伟岸+++李欢
摘 要:基于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