中國電信集團北京研究院 強磊
摘要:本文通過對個人多媒體終端的能力要求和SIP協議的介紹,以及個人多媒體終端上支持寬帶流媒體業務的實現結構和實現流程,闡述了如何通過SIP協議在個人多媒體終端上支持寬帶流媒體業務。
關鍵詞:SIP 個人多媒體終端 寬帶流媒體業務
一、引言
在個人多媒體終端上實現如視頻點播(VOD)、高清晰電視(HDTV)、遠程教學、遠程醫療等寬帶流媒體業務是一件非常吸引人的事情。基于SIP協議實現的個人多媒體終端,可以較好地與寬帶流媒體業務平臺連接以實現上述業務。
二、個人多媒體終端支持寬帶流媒體業務
用戶要使用寬帶流媒體的服務內容就必須使用終端設備來接收流媒體。目前,終端設備主要可分為兩大類:一類是PC個人電腦結合媒體播放軟件而成的軟終端;另一類是由專業硬件芯片制成的個人多媒體終端。前者以其功能強大、實現簡單而成為目前支持寬帶流媒體業務的主要終端設備。但隨著用戶需求的發展,更需要在傳統固定電話和移動電話上支持寬帶流媒體業務,以達到支持寬帶流媒體業務終端的可移動性、易操作性和目的專一性。然而,隨著芯片技術的發展,這種需求已逐漸被滿足,支持寬帶流媒體業務的終端通過智能電話的形式來實現,已經沒有太多的技術難點。因此,探討如何在個人多媒體終端上支持寬帶流媒體業務,就成為一個非常重要和有價值的課題。
支持寬帶流媒體業務的個人多媒體終端可以從以下幾個方面概括:
(1)它是一部功能強大的電話終端,能夠支持目前普通POTS電話終端或移動電話終端的基本業務他大部分的補充業務,例如振鈴、播放回鈴音、忙音、DTMF等信號音。
(2)為了支持寬帶流媒體,它必須具有編解碼功能,特別是解碼功能,才能對所接收的流媒體進行解碼,從而實時播放。由于要考慮到個人多媒體終端的性能一般都沒有PC機強大,因而為了保證解碼的速度,解碼功能一部分可以由專業的DSP(數字信號處理)芯片完成,例如可在個人多媒體終端中集成可以對MPEG4、MP3、REAL等的解碼芯片。除了這些專業解碼芯片外,個人多媒體終端為了支持基本的VOIP語音通話,還必須具備支持語音編碼(如G.711,G.729,G.723.1算法)的編碼與解碼硬件DSP芯片或軟件包。
(3)為了能夠緩存所要播放的媒體流,個人多媒體終端必須具備較大的存儲空間,一般來說,至少具有16M的內存空間。
(4)為了能夠運行個人多媒體終端內的各種協議棧和軟件包,終端必須具備功能比較強大的專業嵌入式CPU,并且為了有效統一地管理各種軟硬件資源,建議在個人多媒體終端內配備嵌入式操作系統。
(5)個人多媒體終端還需要具備相關的視、音頻播放裝置,例如彩色液晶屏等。
(6)為了能夠支持寬帶傳輸,個人多媒體終端還需要配備高速以太網接口,如100M或1000M的網口。
(7)為了支持流媒體的接收,個人多媒體終端還必須具備基本的TCP/IP協議棧,傳輸流媒體的實時傳輸協議,如RTP、RTCP、RTSP等。終端為了能夠與應用服務器進行協商,從而建立會話,還必須支持SIP、H.323或MGCP信令控制協議。除此之外,智能電話還有可能需要支持HTTP、RADIUS等相關協議。
具備上述要素的終端設備就可以基本支持寬帶流媒體業務。這種支持寬帶流媒體業務的終端可以向寬帶流媒體應用系統提出媒體播放請求,寬帶流媒體應用系統立即將所請求媒體實時傳輸到個人多媒體終端的播放緩沖區中,智能電話的解碼播放系統再將緩沖區中的媒體數據流解碼,然后在視、音頻播放裝置上播出。
三、用于個人多媒體終端的SIP協議
個人多媒體終端必須支持SIP、H.323或MGCP等信令控制協議。在這些協議中,SIP協議以其自身具備的諸多優點成為終端IP信令控制協議中的首選。本文所描述的支持寬帶流媒體業務的個人多媒體終端就將SIP作為其必備協議。
SIP(Session Initiation Protocol,會話發起協議)是由IETF提出的IP電話信令協議,其主要目的是為了解決IP網中的信令控制,從而構成新一代的通信平臺。在使用全IP技術的時代,利用SIP技術可以實現大量的新應用,寬帶流媒體業務就是這些新應用之一。
SIP協議用于控制互聯網或者其它網絡上的設備初始化、管理和終止的交互式會話進程,包括語音和整個IP網絡有關的內容。它能方便地實現多個用戶終端的多媒體會話的建立和終結,并能動態調整和修改會話屬性,如會話帶寬要求、傳輸的媒體類型(語音、視頻和數據等)、媒體的編解碼格式、對組播和單播的支持等。
SIP協議通俗地說是進行“連接”、“斷開連接”等各種控制的協議,安裝在與IP網相連的電話機和作為電話網和IP網絡中介的網關等機器上。從技術上看,SIP是與WWW自動檢索中使用的HTTP相似的協議,在不進行接收確認的UDP和進行接收確認的TCP協議中都可使用。SIP協議的處理采用了每臺設備都可進行協議處理的負載均衡體系。在設計上,SIP充分考慮了對其他協議的擴展適應性,它支持許多種地址描述和尋址,包括: 用戶名@主機地址、被叫號碼@PSTN網關地址和普通電話號碼的描述等。SIP主叫按照被叫地址可以識別出被叫是否連接在與某一網關相連的傳統電話網上,然后通過相連的網關發起被叫,并建立呼叫。
SIP協議借鑒了其他Internet標準和協議的設計思想,優點如下:
(1)它是基于文本的協議,而H.323采用基于ASN.1和壓縮編碼規則的二進制方法表示其消息。因此,SIP對以文本形式表示的消息在詞法和語法分析上就比較簡單。
(2)SIP會話請求過程和媒體協商過程等是一起進行的,呼叫建立時間短。在H.323中,呼叫建立過程和進行媒體參數等協商的信令控制過程是分開進行的,因此呼叫建立時間長。
(3)H.323為實現補充業務定義了專門的協議,如H.450.1、H.450.2和H.450.3等,而SIP只要充分利用已定義的頭域,必要時對頭域進行簡單擴展就能很方便地支持補充業務或智能業務。
(4)H.323進行集中、層次式控制,雖然集中控制便于管理(如便于計費和帶寬管理等),但當用于控制大型會議電話時,H.323中執行會議控制功能的多點控制單元很可能成為瓶頸。SIP類似于其他的Internet協議,在設計上就為分布式的呼叫模型服務,具有分布式的組播功能。
四、個人多媒體終端上寬帶流媒體實現結構
在個人多媒體終端上支持寬帶流媒體業務的實現結構。個人多媒體終端與寬帶流媒體應用系統之間有兩個接口,一個是通過SIP代理服務器與應用服務器之間實現IP信令交互,從而建立媒體流會話的SIP協議接口;另一個是在個人多媒體終端與寬帶流媒體應用系統中,緩沖區代理或媒體服務器之間建立的RTP媒體流傳輸接口。個人多媒體終端通過上述兩個IP信令控制與媒體流傳輸接口和寬帶流媒體應用系統交互,從而在終端上實現寬帶流媒體業務。
五、個人多媒體終端上流媒體業務實現流程
個人多媒體終端為實現寬帶流媒體業務與寬帶流媒體應用系統之間的詳細。它主要包括三個階段的交互:(1)HTTP鑒權與業務請求階段;(2)個人多媒體終端與服務器間媒體能力協商和會話建立交互階段;(3)RTSP控制/RTP傳輸階段。在這個流程中,為了強調智能電話終端與寬帶流媒體應用系統之間的交互,因而對寬帶流媒體應用系統內部各功能服務器之間的交互流程有所忽略。
(1)用戶通過寬帶流媒體應用系統中用戶管理模塊所包含的門戶網站,來瀏覽流媒體內容目錄Web頁面,從而選定某個應用,然后用戶輸入認證的用戶名、密碼通過HTTP或其它協議提交給應用服務器。
(2)用戶管理模塊將上述認證信息交給認證授權模塊進行認證。
(3)用戶管理模塊將認證/授權的結果以HTTP或其它協議的形式返回給用戶,同時更新用戶數據庫。
(4)如果用戶通過了認證,則證明他是合法用戶,從而進行用戶授權。用戶輸入用戶名、密碼后通過HTTP或其它協議提交給用戶管理模塊。
(5)用戶管理模塊將這些信息傳送給認證授權模塊進行授權驗證,如果用戶通過授權,用戶管理模塊則會為他分配一個有時效性的臨時用戶ID,用戶管理模塊會將該用戶ID通知給應用服務器。
(6)用戶管理模塊通過HTTP或其它協議將該授權結果返回給個人多媒體終端。如果授權成功,在這個結果中還包括用戶即將與之交互的應用服務器URL地址和有時效性的臨時用戶ID。
(7)如果上述兩步HTTP認證與授權都通過后,則進入SIP協議雙方能力協商和會話建立階段。個人多媒體終端根據得到的應用服務器URL地址向應用服務器發出INVITE請求,在INVITE請求中用SDP協議描述了智能電話終端用于建立RTP連接的資源信息,例如地址信息、支持的視音頻類型、采樣率等。同時,該INVITE請求中的Authorization頭域中包含了經過加密的臨時用戶ID,它被應用服務器用來驗證該用戶的真實性。
(8)應用服務器向個人多媒體終端發送100 TRYING響應;表示由終端發送來的INVITE請求正在應用系統內部處理。
(9)寬帶流媒體應用系統對INVITE請求進行一系列的處理。這些處理包括:內容分發管理器根據應用服務器的要求,并結合訪問用戶的地址信息,選擇特定緩沖區代理作為本內容緩沖的站點,并將本內容分發到該緩沖區代理中。內容分發管理器把所選擇的緩沖區代理的地址及用于建立RTP連接的端口資源信息發給應用服務器。
(10)應用服務器根據所選擇的緩沖區代理的地址及用于建立RTP連接的端口資源能力信息組裝200 OK響應發送給個人多媒體終端。
(11)智能電話終端發送ACK確認消息。
(12)應用服務器接收到ACK確認消息后,通知所選擇的緩沖區代理按照與終端協商好的能力要求準備資源,等待與個人多媒體終端建立RTSP控制連接和RTP傳輸連接,同時通知記費服務器開始記費。
(13)RTSP控制與RTP傳輸階段。
(14)智能電話終端發送BYE請求以停止流媒體服務,終止會話。在此之前,需要斷開RTSP連接。
(15)應用服務器向終端發送BYE請求的200 OK響應消息,表示確認停止服務。在詞法和語法分析上就比較簡單。