基于H.323和SIP協(xié)議的視頻會(huì)議網(wǎng)關(guān)設(shè)計(jì)
張新 鄭建彬 2006/11/16
摘要:隨著VOIP技術(shù)的不斷發(fā)展和成熟,視頻會(huì)議系統(tǒng)已成為計(jì)算機(jī)通信技術(shù)的重要方面。圖1 視頻會(huì)議網(wǎng)關(guān)的組網(wǎng)圖
3.1信令消息映射
信令消息映射和轉(zhuǎn)換是視頻會(huì)議網(wǎng)關(guān)的關(guān)鍵技術(shù)之一。消息映射一般包括兩個(gè)方面:一是消息編碼的轉(zhuǎn)換,如二進(jìn)制編碼方式和文本方式的轉(zhuǎn)換;二是消息中語義規(guī)則的映射,如在SIP方的終端發(fā)出INVITE請求消息到網(wǎng)關(guān)后,則網(wǎng)關(guān)在H.323方產(chǎn)生呼叫建立(Setup)或者接入請求(ARQ)消息。H.323協(xié)議族包括呼叫建立、呼叫控制、媒體通道控制等許多分散的協(xié)議和處理過程來完成多媒體的通信。而在SIP協(xié)議中并沒有進(jìn)行嚴(yán)格的分類處理。所以在消息的映射和轉(zhuǎn)換過程中,可能存在一個(gè)SIP信令消息對應(yīng)著在H.323方的幾個(gè)信令消息過程。表2展現(xiàn)了H.323協(xié)議和SIP協(xié)議在實(shí)現(xiàn)視頻會(huì)議的建立、邀請和加入過程中信令消息的映射和轉(zhuǎn)換。
3.2媒體能力協(xié)商
在H.323協(xié)議中采用H.245協(xié)議來完成媒體能力的協(xié)商過程。在會(huì)議中,多點(diǎn)控制器(MC)通過匯總由各個(gè)終端提交的媒體能力信息,并從中選擇最為通用的媒體類型作為這個(gè)會(huì)議中每個(gè)成員通信的媒體能力集。在SIP中則采用會(huì)話描述協(xié)議(SDP,它是SIP消息體的一部分)來實(shí)現(xiàn)媒體能力的協(xié)商過程。因此,如果是H.323客戶終端發(fā)起會(huì)議,視頻會(huì)議網(wǎng)關(guān)必須依據(jù)在H.245消息中包含的客戶終端的媒體能力信息,并由會(huì)議網(wǎng)關(guān)內(nèi)部的多點(diǎn)控制器(MC)來決定會(huì)議的媒體類型,再將這些媒體能力信息封裝到SDP消息中,發(fā)給SIP客戶終端。如果是SIP客戶終端先發(fā)出邀請時(shí),會(huì)議網(wǎng)關(guān)使用SDP消息中包含有關(guān)客戶終端能力的信息來決定會(huì)議的媒體能力類型。
3.3視頻會(huì)議的管理和控制
在視頻會(huì)議網(wǎng)關(guān)中集成了協(xié)議轉(zhuǎn)換器和視頻會(huì)議控制器和管理器的功能,在H.323客戶終端發(fā)起一個(gè)會(huì)議請求之前,必須注冊到網(wǎng)關(guān)守衛(wèi)。發(fā)起請求時(shí),H.323客戶終端先將消息發(fā)送給網(wǎng)守,再由網(wǎng)守將消息轉(zhuǎn)發(fā)到會(huì)議網(wǎng)關(guān),最后通過視頻會(huì)議網(wǎng)關(guān)的會(huì)議控制和管理器來統(tǒng)一處理客戶終端發(fā)出的會(huì)議請求,并且決定接受或是拒絕一個(gè)客戶終端的請求,也決定了整個(gè)會(huì)議的媒體類型等信息。在SIP方,SIP客戶終端先要注冊到服務(wù)器上。當(dāng)客戶終端發(fā)出請求的時(shí)候,先將消息發(fā)送到服務(wù)器,在由服務(wù)器轉(zhuǎn)發(fā)到會(huì)議網(wǎng)關(guān)。在會(huì)議網(wǎng)關(guān)的內(nèi)部,先將收到的消息通過信令消息映射原則,轉(zhuǎn)換成對應(yīng)的符合H.323規(guī)則的信令機(jī)制,然后送入會(huì)議控制和管理器進(jìn)行集中的處理。
3.4視頻會(huì)議流程簡介
為了更好的說明視頻會(huì)議網(wǎng)關(guān)在跨協(xié)議會(huì)議系統(tǒng)中的作用和工作流程,我們以一個(gè)由H.323客戶終端發(fā)起的會(huì)議請求為例來描述視頻會(huì)議網(wǎng)關(guān)對兩種協(xié)議信令消息的處理過程(如圖2所示)。
圖2 H.323客戶端邀請SIP用戶代理的流程
4 視頻會(huì)議網(wǎng)關(guān)的實(shí)現(xiàn)
視頻會(huì)議網(wǎng)關(guān)的內(nèi)部主要由SIP協(xié)議處理模塊、協(xié)議轉(zhuǎn)換模塊、視頻會(huì)議控制和管理模塊以及H.323協(xié)議處理模塊組成。
SIP協(xié)議處理模塊是視頻會(huì)議網(wǎng)關(guān)用于監(jiān)聽SIP實(shí)體(SIP用戶代理、SIP服務(wù)器等)發(fā)送的信令消息。在將這些信令消息進(jìn)行必要的處理后就送到協(xié)議轉(zhuǎn)換模塊中進(jìn)行協(xié)議轉(zhuǎn)換。
協(xié)議轉(zhuǎn)換模塊是視頻會(huì)議網(wǎng)關(guān)實(shí)現(xiàn)中比較關(guān)鍵的部分,在實(shí)現(xiàn)過程中需要按照兩種協(xié)議之間的信令消息映射表進(jìn)行逐一的翻譯和轉(zhuǎn)換。當(dāng)然對于那些在一種協(xié)議中有而在另一種協(xié)議中不支持的信令消息應(yīng)采用適當(dāng)?shù)暮雎院推帘未胧⒒厮湾e(cuò)誤報(bào)告消息。轉(zhuǎn)換后的信令消息被送到各自協(xié)議的處理模塊中進(jìn)行進(jìn)一步的處理,也可送入視頻會(huì)議控制和管理模塊來完成對會(huì)議極其會(huì)議成員的組織、管理和控制。
視頻會(huì)議控制和管理模塊是視頻會(huì)議網(wǎng)關(guān)的核心部分。視頻會(huì)議控制和管理模塊既要對會(huì)議成員發(fā)來的信令消息進(jìn)行處理,又要對視頻媒體流進(jìn)行處理。在這部分的實(shí)現(xiàn)中要充分考慮兩種協(xié)議在視頻會(huì)議功能上的不同特性,加以適當(dāng)?shù)膮^(qū)別對待,以減少在信令翻譯和識(shí)別上的工作量。同時(shí)在對視頻流的處理上采用RTP/RTCP協(xié)議,先將各個(gè)客戶終端的媒體流匯聚在一起,在進(jìn)行完復(fù)合之后再分別傳送到每個(gè)客戶終端那里。
H.323協(xié)議處理模塊是用于監(jiān)聽來自H.323協(xié)議方的信令消息。然后將信令消息送入視頻會(huì)議控制和管理模塊或者協(xié)議轉(zhuǎn)換模塊進(jìn)行下一步的處理。在實(shí)現(xiàn)上需要H.323協(xié)議棧的底層支持。
我們在RedHatLinux9.0操作系統(tǒng)下,采用C/C++語言實(shí)現(xiàn)。其中我們還利用了OpenMCU(開源的H.323會(huì)議服務(wù)器)中對視頻會(huì)議管理和控制的一些實(shí)現(xiàn)技術(shù)。
5 總結(jié)
本文對支持多協(xié)議的視頻會(huì)議網(wǎng)關(guān)的設(shè)計(jì)和實(shí)現(xiàn)作了簡單的介紹。從中我們發(fā)現(xiàn)視頻會(huì)議網(wǎng)關(guān)對協(xié)議的轉(zhuǎn)換還只能實(shí)現(xiàn)一些簡單的信令消息的翻譯,沒有較好的容錯(cuò)和忽略機(jī)制。當(dāng)然,要設(shè)計(jì)和實(shí)現(xiàn)功能更加完善和高效的視頻會(huì)議網(wǎng)關(guān)還需要在加強(qiáng)對會(huì)議管理和會(huì)議控制功能等方面作進(jìn)一步的研究和開發(fā)工作。
[參考文 獻(xiàn)]
[1]JosefGlasmann,Wolfgang Kellerer, Harald Müller. “Service Architectures
In H.323 And SIP: A Comparison” .
FourthQuarter2003,Volume 5, No.2.
[2]ITU-TRecommendationH.323 v4.
[3]RFC3261. SIP: Session Initiation Protocol, June 2002.
[4]李建芳.H.323和SIP在IP電話網(wǎng)絡(luò)中的互通.中國數(shù)據(jù)通信 2003.3. (尹阜琪編輯)
北京威速科技有限公司總裁楊丹專訪 2006-11-06 |
視頻會(huì)議凸現(xiàn)行業(yè)特征 2006-11-03 |
通信發(fā)展新亮點(diǎn)——高清晰視頻通訊應(yīng)用技術(shù) 2006-10-30 |
視頻會(huì)議系統(tǒng)會(huì)場設(shè)計(jì)實(shí)戰(zhàn) 2006-10-27 |
統(tǒng)一通信進(jìn)軍中小企業(yè)市場前路漫漫 2006-10-27 |