基于SIP协议的语音网关开发设计
引 言
1 关于SIP协议
目前基于VOIP的基本通信协议有三种:H.323协议、SIP协议和MGCP协议。下面就H.323协议和SIP协议进行比较介绍。
H.323是由国际电联提出来的。它企图把IP电话当作是众所周知的传统电话,只是传输方式由电路交换变成了分组交换,就如同模拟传输变成数字传输、同轴电缆传输变成了光纤传输。
目前,包括我国在内的许多国家都采用了H.323作为IP电话网关之间的协议,整个IP电话系统只是把IP网络作为传输媒介,在用户的接入上还是采用电路交换系统,把IP电话网关作为电路交换网和IP网络的接口。同时,大多数电信运营商也已经将H.323作为建立新一代视讯会议系统的首选,将传统的基于电路H.320视讯会议应用转移到基于IP的H.323系统中来。从应用的规模上说,在现实的电信运营中,H.323已经成为VOIP和多媒体通信协议的事实主导。
SIP称为会话发起协议(Session Initiation Protocol)。SIP是Internet工程任务组(IETF)提出的建议中的一项协议,其目的是为了替代H.323的部分协议,主要是考虑到在下一代网络(NGN)中,由于IP产品和IP网关将在网络中得到大规模使用和集成,使得端到端都可以采用IP以实现纯IP的业务应用;而基于纯IP的SIP借鉴了HTTP和SMTP,结构简单并具有可扩充性和可扩展性。此外,SIP还提供良好的QoS支持。对于NGN在IP网络上实现VOIP和多媒体通信来讲,SIP在全面满足NGN特性要求的应用上具有独特的优势,必将成为下一代网络VOIP的重要解决方案。
目前,市场上支持SIP的产品(特别是终端)也越来越多,出现了基于SIP的呼叫中心、视讯会议等多种企业级应用解决方案。因此,可以说SIP将成为下一代网络协议的主力军。
SIP是一个应用层的信令控制协议,用于创建、修改和终止一个或多个参与者的会话。这些会话可以是Internet多媒体会议、IP电话或多媒体分发(例如语音信箱)。会话的参与者可以通过组播(multicast)、网状单播(unicast)或两者的混合体进行通信。更为详细的SIP介绍,可参考相关的网站和书籍,如SIP FORUM等。
2 SIP协议栈的开发
为了实现设备互通、网络互连等目的,需要开发相应的基于应用层的SIP协议栈。目前,开源(开放源代码)的SIP协议栈中比较常用的有Vocal、OSIP两类。它们都是比较成熟和可商业化的SIP协议栈,特点如表1所列。
本设计采用Libosip2进行程序开发。它是一种GNU OSIP库,OSIP封装较好,只要写点回调函数就可以完成功能操作了;比较简单,是C语言编写的,可读性较好; 缺点是BUG较多,需调试时注意改进。
表1Vocal、OSIP特性比较 3 语音网关的硬件设计 |
- SIP协议在VoIP中的应用(07-10)
- NGN业务的特点、技术及提供方式(11-02)
- 下一代网络(NGN)中协议的应用(09-21)
- 多域视频联网监控解决方案(08-05)
- 企业VPN与VoIP融合解决方案(04-26)
- 有线通信转向统一承载 Tbit/s时代开启(01-10)