VOCAL(Vovida Open Communication Application Library)是一个开源代码通信软件,以IP网为核心,在Linux或Solaris操作系统上运行。提供VoIP电话服务,支持基于SIP的通信设备。
1.VOCAL通信系统的组成
一个完整的VOCAL通信系统应包含以下几个部分:
● VOCAL系统电话软件,是整个系统的核心,包含多种服务器。
● GUI:图形用户接口。
● IP电话:VOCAL支持多种电话设备,包括SIP电话和SIP用户代理应用软件。
● 网关:不仅提供网络之间的接口,还能起到基于SIP网络和其他类型网络之间消息翻译器的功能。VOCAL包含两种网关:住宅网关和中继网关。
Marshal server:是外部设备和VOCAL系统连接的唯一接口。提供了SIP协议中的SIP代理服务器和注册服务器的逻辑功能。作用是SIP消息翻译,用户鉴定和保障安全性,计费等。
重定向服务器:重定向服务器是SIP协议中重定向、注册、定位服务器的组合实现,存储用户的联系和特征数据。
呼叫详述记录服务器:从Marshal server接受呼叫数据,并把这些数据转化为第三方计费系统能够识别的格式。
特征服务器:是SIP代理服务器的另外一种实现方式。
Provisioning Server:存储系统所有用户和服务器模块的数据记录,并把这些信息通过预定通报模块发送到整个系统中去。
2.VOCAL系统的安装与测试
VOCAL系统在Linux或Solaris操作系统下运行,本文运行在Red Hat 9.0之下,安装与测试过程中解决的主要问题包括:
(1)操作系统中必须要有X window系统,gcc编译器。
(2)主机名称和IP地址必须设定,不可以为127.0.0.1可以先检查/etc/hosts文件,如果只有127.0.0.1一行,需要自行加入本机IP 及主机名,例如:
127.0.0.1 localhost.localdomain localhost
xxx.xxx.xxx.xxx our_hostname
(3)vocal server 必须要有java环境。如果没有要自行下载支持Linux的j2re包来安装。
VOCAL是由http://vovida.org提供的,http://vovida.org 提供两种VOCAl安装方式,一种是源码安装,一种是rpm安装。在测试过程中要进行两点之间的语音通信,要在两台机器上安装VOCAL,其中一台选择用源码安装整个系统做服务器和一个客户端,另外一台用rpm安装一个客户端:sipset。
服务器端集成了完整的VOCAL系统,可以通过web方式登录服务器,并建立用户。建立两个用户1000和1001以备测试。
在两台机器上分别启动sipset,sipset提供了一个简单的图形界面,用户可以实现登录、呼叫、挂机等操作,两个终端先分别以用户1000和1001登录。让1000用户呼叫1001。当呼叫发出以后1001端就会显示有一个呼叫进入,1001端选择接听,就建立了基于SIP的语音会话。
结论
论文详细介绍了(SIP)的实现机制、消息结构、功能实体以及呼叫建立流程,结合VOCAL系统,介绍了如何在IP网络中实现基于SIP协议的语音通信。要实现在IP网中基于SIP的视频通信以及多方参与的多媒体会议系统等,还需要使用会话初始协议的一些扩展功能,媒体协商、会话过程控制等。
北京邮电大学信息工程学院 李志 撰