<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 手機與無(wú)線(xiàn)通信 > 設計應用 > 基于H.323和SIP協(xié)議的視頻會(huì )議網(wǎng)關(guān)設計

基于H.323和SIP協(xié)議的視頻會(huì )議網(wǎng)關(guān)設計

——
作者:張新,鄭建彬 時(shí)間:2006-05-25 來(lái)源:電子產(chǎn)品世界 收藏
(武漢理工大學(xué)信息工程學(xué)院,湖北 武漢430070) 

摘要  隨著(zhù)VOIP技術(shù)的不斷發(fā)展和成熟,視頻會(huì )議系統已成為計算機通信技術(shù)的重要方面。本文針對支持多協(xié)議的視頻會(huì )議系統的設計和實(shí)現,分析了目前在可視通信領(lǐng)域的兩大主流協(xié)議H.323和SIP的特點(diǎn)和差異,給出了解決H.323和SIP之間的協(xié)議轉換的網(wǎng)關(guān)設計方案。 
關(guān)鍵詞 H.323;SIP;MC;視頻會(huì )議網(wǎng)關(guān);協(xié)議轉換
 
1  引言
隨著(zhù)寬帶的不斷發(fā)展和普及,人們對視頻的需求也越來(lái)越大。在視頻領(lǐng)域起主導地位的兩大協(xié)議包括:由ITU-U(International Telecommunications Union – Telecommunication Standardization Sector,國際電信聯(lián)盟電信標準部)推薦的H.323協(xié)議和由IETF(Internet Engineering Task Force,  因特網(wǎng)工程任務(wù)組)推薦的SIP協(xié)議(Session Initiation Protocol, 會(huì )話(huà)發(fā)起協(xié)議),由于這兩個(gè)協(xié)議產(chǎn)生的時(shí)代背景、現有的發(fā)展狀況和協(xié)議本身的特點(diǎn)等諸多不同的特性,決定了它們將會(huì )在視頻領(lǐng)域中長(cháng)期的并存,形成相互競爭,相互補充的格局。

因此,在可視通訊當中一項重要的工作就是要解決H.323和SIP之間的協(xié)議轉換,即采用這兩種協(xié)議的可視終端和設備的互連互通的問(wèn)題。而視頻會(huì )議系統是可視通訊中的重要應用,在設計視頻會(huì )議系統時(shí),采用網(wǎng)關(guān)設計實(shí)現不同之間的集成。H.323協(xié)議族中采用多點(diǎn)控制單元(MCU)來(lái)控制和管理會(huì )議系統,它由多點(diǎn)控制器(MC)和多點(diǎn)處理器(MP)組成,并運用集中、分散和混合三種不同的方法來(lái)實(shí)現會(huì )議的多點(diǎn)控制和管理。而在SIP協(xié)議中,則通過(guò)會(huì )話(huà)通告協(xié)議(SAP)和會(huì )話(huà)描述協(xié)議(SDP)來(lái)建立多方會(huì )議。兩者在機制上存在一定的差別,所以要實(shí)現互通就需要視頻會(huì )議網(wǎng)關(guān)的支持。

2  H.323協(xié)議和SIP協(xié)議的特性分析

2.1  H.323協(xié)議
H.323協(xié)議的主體已日漸穩定,并且它的基本框架已被廣泛的采用,它定義了四種基本功能單元:用戶(hù)終端、網(wǎng)關(guān)(Gateway)、網(wǎng)守(Gatekeeper)和多點(diǎn)控制單元(MCU)。用戶(hù)終端能和其它的H.323實(shí)體進(jìn)行實(shí)時(shí)的、雙向的語(yǔ)音和視頻通信,它能夠實(shí)現以下的功能:
(1) 信令和控制:支持H.245協(xié)議,能夠實(shí)現通道建立和能力協(xié)商;支持Q.931協(xié)議,能夠實(shí)現呼叫信令通道;支持RAS協(xié)議,能夠實(shí)現與網(wǎng)守的通信; 
(2) 實(shí)時(shí)通信:支持RTP/RTCP協(xié)議;
(3) 編解碼:支持各種主流音頻和視頻的編解碼功能。
網(wǎng)關(guān)提供了一種電路交換(SCN)和包交換網(wǎng)絡(luò )的連接途徑,它在不同的網(wǎng)絡(luò )上完成呼叫的建立和控制功能。
網(wǎng)守向H.323終端提供呼叫控制服務(wù),完成以下的功能:地址翻譯,許可接入會(huì )議的控制和管理,帶寬控制和管理,呼出管理,域管理等。

多點(diǎn)控制單元(MCU)完成會(huì )議的控制和管理功能,它由多點(diǎn)控制器(MC)和多點(diǎn)處理器(MP)組成。多點(diǎn)控制器提供多點(diǎn)會(huì )議的控制功能,在多點(diǎn)會(huì )議中,多點(diǎn)控制器和每個(gè)H.323終端建立一條H.245控制連接來(lái)協(xié)商媒體通信類(lèi)型;多點(diǎn)處理器則提供媒體切換和混合功能。H.323支持集中和分散的多點(diǎn)控制和管理工作方式。在集中工作方式中,多點(diǎn)處理器(MP)和會(huì )議中的每個(gè)H.323終端建立媒體通道,把接收到的音頻流和視頻流進(jìn)行統一的處理,然后再送回到各個(gè)終端。而在分散工作方式中,每個(gè)終端都要支持多點(diǎn)處理的功能,并能夠實(shí)現媒體流的多點(diǎn)傳送。

2.2  SIP協(xié)議
SIP作為多媒體通信的應用層控制(信令)協(xié)議,它能夠建立、改變和終止多媒體會(huì )話(huà)。在SIP協(xié)議中有兩個(gè)主要的組成部分:用戶(hù)代理(UA)和網(wǎng)絡(luò )服務(wù)器。用戶(hù)代理(UA)又分為發(fā)起SIP請求的用戶(hù)代理客戶(hù)機(UAC)和響應這種請求的用戶(hù)代理服務(wù)器(UAS)。網(wǎng)絡(luò )服務(wù)器又分為:重定向服務(wù)器、代理服務(wù)器、注冊服務(wù)器。

通常的SIP操作涉及到一個(gè)SIP用戶(hù)代理客戶(hù)機(UAC)發(fā)起一個(gè)請求,一個(gè)SIP代理服務(wù)器作為終端用戶(hù)的位置發(fā)現代理并且一個(gè)用戶(hù)代理服務(wù)器(UAS)接受這個(gè)呼叫。一個(gè)成功的SIP邀請包括兩個(gè)請求信息:INVITE信息和ACK信息。

重定向服務(wù)器通過(guò)回送包含被叫者位置的SIP-URL(SIP Uniform Resource Locations,SIP統一資源定位,如:sip:user@host.domain)來(lái)處理INVITE信息。代理服務(wù)器則完成SIP請求和響應的應用層路由。注冊服務(wù)器用于記錄用戶(hù)的SIP-URL地址信息和其對應的IP地址信息。

3  視頻會(huì )議網(wǎng)關(guān)的設計
作為視頻會(huì )議網(wǎng)關(guān),它需要同時(shí)支持H.323和SIP兩種協(xié)議。在H.323協(xié)議一方,它充當著(zhù)多點(diǎn)控制器(MC)的作用;而在SIP協(xié)議一方,它發(fā)揮著(zhù)會(huì )議服務(wù)器的職能。在視頻會(huì )議網(wǎng)關(guān)的內部完成了一種信令消息到另一種信令消息的翻譯和轉換,并對等的完成兩者之間在功能上的映射。但是,在H.323協(xié)議和SIP協(xié)議當中,一些功能只在一種協(xié)議中被提供,而在另一種協(xié)議中則不能支持;在一種協(xié)議中的一個(gè)處理過(guò)程可能會(huì )映射到另一種協(xié)議的幾個(gè)處理過(guò)程,這些都是視頻網(wǎng)關(guān)需要解決的問(wèn)題。下面就視頻會(huì )議網(wǎng)關(guān)設計中的幾個(gè)關(guān)鍵技術(shù)問(wèn)題進(jìn)行介紹。 


 圖1  視頻會(huì )議網(wǎng)關(guān)的組網(wǎng)圖

3.1  信令消息映射
信令消息映射和轉換是視頻會(huì )議網(wǎng)關(guān)的關(guān)鍵技術(shù)之一。消息映射一般包括兩個(gè)方面:一是消息編碼的轉換,如二進(jìn)制編碼方式和文本方式的轉換;二是消息中語(yǔ)義規則的映射,如在SIP方的終端發(fā)出INVITE請求消息到網(wǎng)關(guān)后,則網(wǎng)關(guān)在H.323方產(chǎn)生呼叫建立(Setup)或者接入請求(ARQ)消息。H.323協(xié)議族包括呼叫建立、呼叫控制、媒體通道控制等許多分散的協(xié)議和處理過(guò)程來(lái)完成多媒體的通信。而在SIP協(xié)議中并沒(méi)有進(jìn)行嚴格的分類(lèi)處理。所以在消息的映射和轉換過(guò)程中,可能存在一個(gè)SIP信令消息對應著(zhù)在H.323方的幾個(gè)信令消息過(guò)程。表2展現了H.323協(xié)議和SIP協(xié)議在實(shí)現視頻會(huì )議的建立、邀請和加入過(guò)程中信令消息的映射和轉換。

3.2  媒體能力協(xié)商

在H.323協(xié)議中采用H.245協(xié)議來(lái)完成媒體能力的協(xié)商過(guò)程。在會(huì )議中,多點(diǎn)控制器(MC)通過(guò)匯總由各個(gè)終端提交的媒體能力信息,并從中選擇最為通用的媒體類(lèi)型作為這個(gè)會(huì )議中每個(gè)成員通信的媒體能力集。在SIP中則采用會(huì )話(huà)描述協(xié)議(SDP,它是SIP消息體的一部分)來(lái)實(shí)現媒體能力的協(xié)商過(guò)程。因此,如果是H.323客戶(hù)終端發(fā)起會(huì )議,視頻會(huì )議網(wǎng)關(guān)必須依據在H.245消息中包含的客戶(hù)終端的媒體能力信息,并由會(huì )議網(wǎng)關(guān)內部的多點(diǎn)控制器(MC)來(lái)決定會(huì )議的媒體類(lèi)型,再將這些媒體能力信息封裝到SDP消息中,發(fā)給SIP客戶(hù)終端。如果是SIP客戶(hù)終端先發(fā)出邀請時(shí),會(huì )議網(wǎng)關(guān)使用SDP消息中包含有關(guān)客戶(hù)終端能力的信息來(lái)決定會(huì )議的媒體能力類(lèi)型。

3.3  視頻會(huì )議的管理和控制
在視頻會(huì )議網(wǎng)關(guān)中集成了協(xié)議轉換器和視頻會(huì )議控制器和管理器的功能,在H.323客戶(hù)終端發(fā)起一個(gè)會(huì )議請求之前,必須注冊到網(wǎng)關(guān)守衛。發(fā)起請求時(shí),H.323客戶(hù)終端先將消息發(fā)送給網(wǎng)守,再由網(wǎng)守將消息轉發(fā)到會(huì )議網(wǎng)關(guān),最后通過(guò)視頻會(huì )議網(wǎng)關(guān)的會(huì )議控制和管理器來(lái)統一處理客戶(hù)終端發(fā)出的會(huì )議請求,并且決定接受或是拒絕一個(gè)客戶(hù)終端的請求,也決定了整個(gè)會(huì )議的媒體類(lèi)型等信息。在SIP方,SIP客戶(hù)終端先要注冊到服務(wù)器上。當客戶(hù)終端發(fā)出請求的時(shí)候,先將消息發(fā)送到服務(wù)器,在由服務(wù)器轉發(fā)到會(huì )議網(wǎng)關(guān)。在會(huì )議網(wǎng)關(guān)的內部,先將收到的消息通過(guò)信令消息映射原則,轉換成對應的符合H.323規則的信令機制,然后送入會(huì )議控制和管理器進(jìn)行集中的處理。

3.4    視頻會(huì )議流程簡(jiǎn)介
為了更好的說(shuō)明視頻會(huì )議網(wǎng)關(guān)在跨協(xié)議會(huì )議系統中的作用和工作流程,我們以一個(gè)由H.323客戶(hù)終端發(fā)起的會(huì )議請求為例來(lái)描述視頻會(huì )議網(wǎng)關(guān)對兩種協(xié)議信令消息的處理過(guò)程(如圖2所示)。


圖2  H.323客戶(hù)端邀請SIP用戶(hù)代理的流程

4 視頻會(huì )議網(wǎng)關(guān)的實(shí)現
視頻會(huì )議網(wǎng)關(guān)的內部主要由SIP協(xié)議處理模塊、協(xié)議轉換模塊、視頻會(huì )議控制和管理模塊以及H.323協(xié)議處理模塊組成。

SIP協(xié)議處理模塊是視頻會(huì )議網(wǎng)關(guān)用于監聽(tīng)SIP實(shí)體(SIP用戶(hù)代理、SIP服務(wù)器等)發(fā)送的信令消息。在將這些信令消息進(jìn)行必要的處理后就送到協(xié)議轉換模塊中進(jìn)行協(xié)議轉換。

協(xié)議轉換模塊是視頻會(huì )議網(wǎng)關(guān)實(shí)現中比較關(guān)鍵的部分,在實(shí)現過(guò)程中需要按照兩種協(xié)議之間的信令消息映射表進(jìn)行逐一的翻譯和轉換。當然對于那些在一種協(xié)議中有而在另一種協(xié)議中不支持的信令消息應采用適當的忽略和屏蔽措施,并回送錯誤報告消息。轉換后的信令消息被送到各自協(xié)議的處理模塊中進(jìn)行進(jìn)一步的處理,也可送入視頻會(huì )議控制和管理模塊來(lái)完成對會(huì )議極其會(huì )議成員的組織、管理和控制。

視頻會(huì )議控制和管理模塊是視頻會(huì )議網(wǎng)關(guān)的核心部分。視頻會(huì )議控制和管理模塊既要對會(huì )議成員發(fā)來(lái)的信令消息進(jìn)行處理,又要對視頻媒體流進(jìn)行處理。在這部分的實(shí)現中要充分考慮兩種協(xié)議在視頻會(huì )議功能上的不同特性,加以適當的區別對待,以減少在信令翻譯和識別上的工作量。同時(shí)在對視頻流的處理上采用RTP/RTCP協(xié)議,先將各個(gè)客戶(hù)終端的媒體流匯聚在一起,在進(jìn)行完復合之后再分別傳送到每個(gè)客戶(hù)終端那里。

H.323 協(xié)議處理模塊是用于監聽(tīng)來(lái)自H.323協(xié)議方的信令消息。然后將信令消息送入視頻會(huì )議控制和管理模塊或者協(xié)議轉換模塊進(jìn)行下一步的處理。在實(shí)現上需要H.323協(xié)議棧的底層支持。

我們在Red Hat Linux9.0操作系統下,采用C/C++語(yǔ)言實(shí)現。其中我們還利用了OpenMCU(開(kāi)源的H.323會(huì )議服務(wù)器)中對視頻會(huì )議管理和控制的一些實(shí)現技術(shù)。

5  總結
    本文對支持多協(xié)議的視頻會(huì )議網(wǎng)關(guān)的設計和實(shí)現作了簡(jiǎn)單的介紹。從中我們發(fā)現視頻會(huì )議網(wǎng)關(guān)對協(xié)議的轉換還只能實(shí)現一些簡(jiǎn)單的信令消息的翻譯,沒(méi)有較好的容錯和忽略機制。當然,要設計和實(shí)現功能更加完善和高效的視頻會(huì )議網(wǎng)關(guān)還需要在加強對會(huì )議管理和會(huì )議控制功能等方面作進(jìn)一步的研究和開(kāi)發(fā)工作。

[ 參 考 文 獻 ]
 [1]  Josef Glasmann, Wolfgang Kellerer, Harald M

c++相關(guān)文章:c++教程




評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>