海康sip服务器地址_完整SIP/SDP媒体协商概论SDP基础使用要求
3
SDP使用方式
一般情況下,應用場景都至少是在兩方或者多方參與者之間進行。多方語音或者視頻應用場景中,系統需要對話型的多媒體應用來傳輸會話描述。為了會話創建,會話描述允許參與者同意它們之間的一系列兼容性能力的協商。為了客戶端和服務器端之間的媒體傳輸,多媒體流要求一系列的恰當的媒體協商來保證客戶端和服務器端的傳輸。在所有的用戶創建中,SDP用來傳輸通信參與方之間的會話信息來支持它們之間的媒體能力協商。因此,SDP主要可以使用在以下五個方面的應用中:- SIP中的會話,前面我們已經提到,SIP是一種基于應用層的協議,它可以創建會話,修改會話和結束會話。典型的應用如SIP呼叫,網絡會議和媒體分發等。SIP消息用來創建會話并且傳輸會話描述。會話描述來支持參與方之間的能力協商。通常情況下,會話描述由SDP通過格式化處理而產生。當使用SIP協議時,RFC3264規定了offer/answer模式,它是一種有限的架構可以支持使用SDP進行協商。
- WebRTC的會話,和SIP一樣,WebRTC也是一種應用層協議,其目的是通過網絡在瀏覽器用戶之間為實時通信交互中語音,視頻和數據應用程序協議。WebRTC信息傳遞SDP消息來實現對會議會話的創建修改管理,以便基于瀏覽器的終端之間可以協商一系列的能力支持。例如,WebRTC使用SDP offer/answer模式來協商其會話能力支持。
流媒體,Real Time Streaming Protocol (RTSP),RFC2326規定了具體的細節,它也是一種應用層協議,使用數據屬性對數據傳輸進行控制。控制功能可以是對視頻的播放或者暫停等。RTSP提供了一種擴展架構對已控制的實時數據,例如語音視頻實現按需傳遞。RTSP客戶端和服務器端通過部分SDP語法使用對媒體傳輸能力參數進行協商。
Email和www應用,這是另外一種傳輸手段來傳輸會話描述。其媒體類型使用的是“application/sdp”, 通過此方式可以在參與方之間自動發起一個應用。
多播會話聲明,為了協助多播多媒體會議通知和其他多播會話和并且為了和所需要的會議參與方進行相關會話創建消息的通信,可能需要一個分布式會話目錄。這樣的會話目錄實例,例如SAP通知方可以周期性地對已知的多播組發送此會話的描述,其他會話目錄收到通知,這些會話目錄可能是潛在遠端參與者,它們可以此會話描述在此會話中啟動必要的應用工具。SAP通知方本身也不知道接收方是否存在丟失,它也不會提供其他UDP/IP的可靠性保證手段。其中,SAP(Session Announcement Protocol,RFC2974)是使用了類似會話目錄部署方式的協議,對這樣的會話通知,SDP提供了一種推薦會話描述格式。關于SAP中對會話的管理可以查閱RFC2974-4/5章節,筆者這里不再贅述。
4
SDP要求和建議
前面筆者已經多次介紹SDP的作用和目的,這里我們再次簡單強調一下。SDP的目的是在多媒體會話中傳輸多媒體流,支持會話描述的接收參與到會話中。在實際應用場景中,不同場景有對多媒體和會話有不同的要求。媒體流的呈現方式可以是多對多的形式,會話有時也根據業務要求,有時不會繼續呈現活動狀態。目前來看,網絡中的基于多播會話的形式和其他會議形式有一點不同,任何接收會話數據方可以加入到會話中(除非會話流量加密)。在這種場景中,SDP有兩個基本的目的,SDP是一種已存在會話的通信手段,它同時也是一種對參與方傳輸有效信息開啟和參與會話的手段。在單播環境中,SDP的目的可能和后一種方式接近。因此,一般來說,SDP會話描述需要包括幾個方面的內容:
會話名稱和目的
會話活動時間
構成會話的媒體
- 獲取媒體所需要的必要參數(地址,端口,格式)
- 支持會話所需帶寬
- 此會話負責人聯系方式
以上信息是SDP會話描述的基本要求,SDP會話描述需要的具體類別消息內容包括:
媒體和傳輸信息,此部分信息包括媒體類型(語音,視頻,數據),傳輸協議(RTP/UDP/IP,H323或者),傳輸協議中需要考慮多播組地址,單播組地址和NAT等規范,媒體格式(H.263 視頻,MPEG 視頻)。
會話有效性信息:會話具有一定的時間有效性,它可以在規定邊界范圍內活動或者停止。它包括一個在會話時間內的任意列表,包括啟動和停止時間,每個會話邊界的重復次數類似信息,例如“每星期二早晨十點做一個小時檢測”。會話時間有效性具有全局持續性的特點,和本地設置不相關。
私有會話: SDP中可以支持私有會話和公共會話。私有會話是通過加密方式來處理,公共會話則無需加密。SDP自己本身沒有對兩種會話加以區別。在私有會話分發前對會話描述進行加密則可。如果是私有廣播的話,需要對廣播增加私有密鑰。關于SDP加密機制的處理,讀者可查閱RFC2974和RFC3261。
- 更多會話其他信息:SDP 會話描述應該傳遞更多足夠的信息全部參與方是否加入會話中。SDP也可以包括一個URL來獲得更多會話信息支持。
- 歸類:當很多會話描述通過SAP或者其他機制分發出去時,應該支持一個過濾會話設置,接收方可以針對自己感興趣的會話接收響應,過濾掉不感興趣的會話。因此,通過劃分類別來加以區分。SDP支持了一個類別定義機制,可以支持對某些會話做類別處理,SDP通過"a=cat:"屬性定義類別。?
- 國際化支持,SDP推薦使用UTF-8解碼(RFC3629規范)使用ISO 10646字符串來實現多語言解碼支持。但是,為了保持會話描述格式的緊湊,有時SDP也支持其他的字符串規范,例如,ISO 8859-1。注意,國際化支持僅支持SDP中的自由文本格式域值(例如,會話名稱,背景信息),不支持整個SDP。
接下來的章節,筆者將繼續討論SDP基礎的第三部分,關于細節規范的總體介紹。
參考鏈接:https://www.rfc-editor.org/rfc/rfc2974
關注微信公眾號:asterisk-cn,獲得有價值的Asterisk行業分享Asterisk freepbx FreeSBC技術文檔: www.freepbx.org.cn融合通信/IPPBX商業解決方案:www.hiastar.com如何使用FreeSBC,qq技術分享群:334023047, www.freesbc.cn總結
以上是生活随笔為你收集整理的海康sip服务器地址_完整SIP/SDP媒体协商概论SDP基础使用要求的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: LwIP应用开发笔记之二:LwIP无操作
- 下一篇: 在Amazon FreeRTOS V10