VOCAL(Vovida Open Communication Application Library)是一個開源代碼通信軟件,以IP網(wǎng)為核心,在Linux或Solaris操作系統(tǒng)上運行。提供VoIP電話服務,支持基于SIP的通信設備。
1.VOCAL通信系統(tǒng)的組成
一個完整的VOCAL通信系統(tǒng)應包含以下幾個部分:
● VOCAL系統(tǒng)電話軟件,是整個系統(tǒng)的核心,包含多種服務器。
● GUI:圖形用戶接口。
● IP電話:VOCAL支持多種電話設備,包括SIP電話和SIP用戶代理應用軟件。
● 網(wǎng)關:不僅提供網(wǎng)絡之間的接口,還能起到基于SIP網(wǎng)絡和其他類型網(wǎng)絡之間消息翻譯器的功能。VOCAL包含兩種網(wǎng)關:住宅網(wǎng)關和中繼網(wǎng)關。
Marshal server:是外部設備和VOCAL系統(tǒng)連接的唯一接口。提供了SIP協(xié)議中的SIP代理服務器和注冊服務器的邏輯功能。作用是SIP消息翻譯,用戶鑒定和保障安全性,計費等。
重定向服務器:重定向服務器是SIP協(xié)議中重定向、注冊、定位服務器的組合實現(xiàn),存儲用戶的聯(lián)系和特征數(shù)據(jù)。
呼叫詳述記錄服務器:從Marshal server接受呼叫數(shù)據(jù),并把這些數(shù)據(jù)轉化為第三方計費系統(tǒng)能夠識別的格式。
特征服務器:是SIP代理服務器的另外一種實現(xiàn)方式。
Provisioning Server:存儲系統(tǒng)所有用戶和服務器模塊的數(shù)據(jù)記錄,并把這些信息通過預定通報模塊發(fā)送到整個系統(tǒng)中去。
2.VOCAL系統(tǒng)的安裝與測試
VOCAL系統(tǒng)在Linux或Solaris操作系統(tǒng)下運行,本文運行在Red Hat 9.0之下,安裝與測試過程中解決的主要問題包括:
(1)操作系統(tǒng)中必須要有X window系統(tǒng),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環(huán)境。如果沒有要自行下載支持Linux的j2re包來安裝。
VOCAL是由http://vovida.org提供的,http://vovida.org 提供兩種VOCAl安裝方式,一種是源碼安裝,一種是rpm安裝。在測試過程中要進行兩點之間的語音通信,要在兩臺機器上安裝VOCAL,其中一臺選擇用源碼安裝整個系統(tǒng)做服務器和一個客戶端,另外一臺用rpm安裝一個客戶端:sipset。
服務器端集成了完整的VOCAL系統(tǒng),可以通過web方式登錄服務器,并建立用戶。建立兩個用戶1000和1001以備測試。
在兩臺機器上分別啟動sipset,sipset提供了一個簡單的圖形界面,用戶可以實現(xiàn)登錄、呼叫、掛機等操作,兩個終端先分別以用戶1000和1001登錄。讓1000用戶呼叫1001。當呼叫發(fā)出以后1001端就會顯示有一個呼叫進入,1001端選擇接聽,就建立了基于SIP的語音會話。
結論
論文詳細介紹了(SIP)的實現(xiàn)機制、消息結構、功能實體以及呼叫建立流程,結合VOCAL系統(tǒng),介紹了如何在IP網(wǎng)絡中實現(xiàn)基于SIP協(xié)議的語音通信。要實現(xiàn)在IP網(wǎng)中基于SIP的視頻通信以及多方參與的多媒體會議系統(tǒng)等,還需要使用會話初始協(xié)議的一些擴展功能,媒體協(xié)商、會話過程控制等。
北京郵電大學信息工程學院 李志 撰