论文部分内容阅读
随着电信业的迅猛发展,用户对各种业务的需求不断增长,原有的电信网络远远不能满足。以软交换为核心的下一代网络技术正是在这种背景下产生并发展起来的。
本文首先概述了NGN发展的现状,指出了在发展中存在的问题。接下来对NGN采用的常用协议进行了介绍和分析。如SIP、H.323、H.248、SIGTRAN和BICC等。然后对其中的SIP协议进行了深入的研究,并且和其他协议做了详细的比较,说明了它的优势。
本文的核心部分是基于ACE来实现SIP,H.323和SIP都是实现VoIP和多媒体应用的通信协议。目前,包括我国在内的许多国家都采用H.323作为IP电话网关之间的协议,整个IP电话系统只是把IP网络作为传输媒介,在用户的接入上还是采用电路交换系统,把IP电话网关作为电路交换网和IP网络的接口。但是,在下一代网络中,由于IP产品和IP网关在电话网中的大规模使用和集成,使得端到端都必须采用IP协议来实现纯IP的业务应用。SIP协议是用于创建、修改、终止与一个或多个参与者的会话的应用层控制协议,这些会话可以是IP电话、多媒体分发和多媒体会议。它借鉴了HTTP协议和SMTP协议,结构简单并具有可扩充性和可扩展性。此外,SIP提供良好的QoS支持,这对于NGN在IP网络上实现VoIP和多媒体通信来讲十分重要。由于SIP在全面满足NGN特性要求的应用上具有独特的优势,将成为下一代网络VoIP的重要解决方案。
在实现的过程中,所有的开发都基于ACE自适配通信环境平台 ACE是可以自由使用、独立于平台和开放源码的类库。ACE提供了一组丰富的可复用C++Wrapper Facade(包装外观)和框架组件,使开发者跨越多种平台完成高效实时的服务和应用,包括Win32、各种版本的UNIX和许多的实时操作系统。ACE框架提供了一系列的集成组件可以使开发者在不灵活的底层原始API和低效不可靠的高层中间件之间游刃有余。ACE还是一种面向对象的框架,在其中实现了许多用于通信软件的核心并发和分布式模式。
试验是在WINDOWS平台下,使用VC6.0作为开发环境。由于使用了标准的C++语言和ACE类库,完全实现了与操作系统的无关性。在软件框架的设计中,使用了面向对象语言的模板技术和继承特征,使得发送和接收SIP消息时能自动选择承载协议和信令描述协议。其中承载协议可以同时支持TCP、UDP和SCTP,信令描述协议可以支持SDP和ISUP。这样实现的类库可以使得调用者只关心SIP本身的消息,对于所有的底层实现都是透明的。最后通过模拟PC到PC之间的电话呼叫,证明了此协议栈可以用于IP电话。