首頁(yè)>>>技術(shù)>>>VoIP

新一代多媒體通信協(xié)議SIP及其實(shí)現

2008/07/29

一、引言

  會(huì )話(huà)啟動(dòng)協(xié)議SIP(Session Initiation Protocol)是由IETF(Internet Engineering Task Force)組織于1999年提出的多媒體通信框架的應用層信令協(xié)議,是在諸如SMTP(簡(jiǎn)單郵件傳送協(xié)議)和HTTP(超文本傳送協(xié)議)基礎之上建立起來(lái)的,尤其適用于Internet中的實(shí)時(shí)通信應用,其設計理念和協(xié)議結構完全符合NGN的特性和要求,成為未來(lái)多媒體通信系統的主流發(fā)展方向。

  SIP用來(lái)生成,修改和終結一個(gè)或多個(gè)參與者之間的會(huì )話(huà)。這些會(huì )話(huà)包括因特網(wǎng)多媒體會(huì )議,因特網(wǎng)(或任何IP網(wǎng)絡(luò ))電話(huà)呼叫和多媒體發(fā)布。會(huì )話(huà)中的成員能夠通過(guò)多播或單播聯(lián)系的網(wǎng)絡(luò )來(lái)通信。

  目前,SIP已廣泛地應用在VoIP系統中,是VoIP系統的主要協(xié)議,實(shí)現VoIP的協(xié)議除了SIP以外主要還有H.323和媒體網(wǎng)關(guān)控制協(xié)議MGCP。MGCP能將眾多的IP電話(huà)網(wǎng)關(guān)連接成一個(gè)具備互操作性的整體,特別適用于配置大型應用系統,然而對于小型應用系統來(lái)說(shuō)過(guò)于復雜。H.323是針對電路交換網(wǎng)的,協(xié)議相對復雜,采用H.323的VoIP服務(wù)對終端設備的要求較高。SIP則簡(jiǎn)單易行并且很容易與其他服務(wù)集成,優(yōu)勢明顯。

  SIP協(xié)議用于發(fā)起會(huì )話(huà),可以用來(lái)建立、修改以及終結多個(gè)參與者參加的多媒體會(huì )話(huà)進(jìn)程。參與會(huì )話(huà)的成員可以通過(guò)組播方式、單播連網(wǎng)或者兩者結合的形式進(jìn)行通信。為提供多媒體業(yè)務(wù),還需要結合不同的標準和協(xié)議,如需要RTP確保媒體傳輸,RSVP確保語(yǔ)音質(zhì)量,RADIUS鑒權用戶(hù)等。

  論文研究SIP基本架構及實(shí)現機制,基于開(kāi)放源代碼的VOCAL系統,分析實(shí)現基于 宋體簡(jiǎn)介、圖名、表名及內容、參考文獻均為小五號字,正文中除標題SIP語(yǔ)音通信的方法,從而深入探討SIP實(shí)現結構。

二、SIP協(xié)議架構與實(shí)現機制

  SIP的核心思想是邀請新成員加入一個(gè)已經(jīng)存在的會(huì )話(huà)或創(chuàng )建一個(gè)新的會(huì )話(huà),各成員之間可以通過(guò)組播(multicast)、單播(unicast)或兩者結合的方式進(jìn)行交互。

  1.SIP的基本功能及特點(diǎn)

  SIP支持會(huì )話(huà)描述,它允許參與者在一組兼容媒體類(lèi)型上達成一致,同時(shí)通過(guò)代理和重定向請求到用戶(hù)當前位置來(lái)支持用戶(hù)移動(dòng)性。SIP不與任何特定的會(huì )議控制協(xié)議捆綁。SIP提供以下功能:   SIP既可以用于建立各種會(huì )話(huà),也可以用來(lái)傳送即時(shí)消息和文件。能夠靈活、方便地提供業(yè)務(wù),具有多方面優(yōu)點(diǎn)。

  協(xié)議可擴展性:SIP協(xié)議具有強大的擴充機制。SIP協(xié)議的擴展性主要體現在其消息的擴展上,SIP消息的三個(gè)基本部分:消息類(lèi)型、消息頭、消息體,都可以被不斷擴充。SIP消息基于文本方式,使得各種擴充工作都變得十分簡(jiǎn)潔。

  開(kāi)放的業(yè)務(wù)生成環(huán)境:SIP網(wǎng)絡(luò )的業(yè)務(wù)提供主要由Proxy Server完成,生成一個(gè)業(yè)務(wù)就是設計一個(gè)業(yè)務(wù)邏輯從而對一個(gè)特定的消息流進(jìn)行控制,或對消息請求做出相應的響應。

  支持移動(dòng)性:SIP的動(dòng)態(tài)注冊機制,使用戶(hù)端移動(dòng)變得十分方便。

  2.SIP協(xié)議的分層結構

  SIP是一個(gè)分層結構協(xié)議,它的行為根據一組平等獨立的處理階段來(lái)描述,每一階段之間只是松耦合。

  SIP的最底層是語(yǔ)法和編碼。它的編碼使用增強Backus-Nayr形式語(yǔ)法(BNF)來(lái)規定。

  第二層是傳輸層,定義了網(wǎng)絡(luò )上客戶(hù)機與服務(wù)器發(fā)送請求和接收響應的方式,所有的SIP元素包含傳輸層。

  第三層是事務(wù)層。事務(wù)是SIP的基本元素。事務(wù)層具有客戶(hù)機組成部分(稱(chēng)為客戶(hù)機事務(wù))和服務(wù)器組成部分(稱(chēng)為服務(wù)器事務(wù)),一個(gè)事務(wù)由客戶(hù)機事務(wù)發(fā)送給服務(wù)器事務(wù)的請求(使用傳輸層),以及服務(wù)器事務(wù)發(fā)送對應該請求的響應組成。

  事務(wù)層之上的層為事務(wù)用戶(hù)(TU)。當一個(gè)TU希望發(fā)送請求時(shí),生成一個(gè)客戶(hù)機事務(wù)實(shí)例并向它傳遞請求和IP地址、端口和用來(lái)發(fā)送請求的傳輸機制。

  3.SIP協(xié)議的消息機制

  SIP采用C/S結構,通過(guò)消息機制來(lái)建立會(huì )話(huà)。SIP消息包括請求消息和響應消息,二者具有相同的消息格式。

  SIP消息是UAC和UAS之間通信的基本信息單元,采用的是基于UTF-8的文本編碼格式,語(yǔ)法信息以擴展Backus-Naur形式(EBNF)描述,消息格式遵循RFC2822。

  SIP消息的通用格式是:

  Generic-message = start-line
  *message-header
  CRLF
  [message-body]
  start-line: SIP消息起始行。
  *message-header:多個(gè)頭域。
  CRLF:空行,表示消息頭域的結束
  message-body:消息體部分。

  SIP消息有兩種:客戶(hù)機到服務(wù)器的請求(Request), 服務(wù)器到客戶(hù)機的響應(Response) .

  4.SIP系統得功能實(shí)體及工作流程

  SIP系統采用CS模式,利用消息機制建立并管理會(huì )話(huà)。按邏輯功能,SIP系統可分為四大功能實(shí)體:SIP用戶(hù)代理、SIP代理服務(wù)器、SIP重定向服務(wù)器和SIP注冊服務(wù)器,它們共同構成了SIP系統的基本模型。

  SIP用戶(hù)代理(SIP UA):又稱(chēng)為SIP終端,是SIP系統中的最終用戶(hù),在RFC3261中將它們定義為一個(gè)應用。根據它們在會(huì )話(huà)中扮演的角色的不同,又可分為用戶(hù)代理客戶(hù)機(UAC)和用戶(hù)代理服務(wù)器(UAS)兩種。其中前者用于發(fā)起呼叫請求,后者用于當接到SIP請求時(shí)聯(lián)系用戶(hù),并代表用戶(hù)返回響應。

  SIP代理服務(wù)器(SIP Proxy Server):是一個(gè)中間元素,它既是一個(gè)客戶(hù)機又是一個(gè)服務(wù)器,能夠代理前面的用戶(hù)向下一跳服務(wù)器發(fā)出呼叫請求。SIP代理服務(wù)器除了路由能力外,也可以集成防火墻、radius(AAA)等功能。

  SIP重定向服務(wù)器(SIP Redirect Server):是一個(gè)規劃SIP呼叫路徑的服務(wù)器,在獲得了下一跳的地址后,立刻告訴前面的用戶(hù),讓該用戶(hù)直接向下一跳地址發(fā)出請求而自己則退出對這個(gè)呼叫的控制。

  SIP注冊服務(wù)器(SIP Register Server):用來(lái)完成對UAS的登錄,在SIP系統的網(wǎng)元中,所有UAS都要在某個(gè)登錄服務(wù)器中登錄,以便UAC通過(guò)服務(wù)器能找到它們。注冊服務(wù)并不做請求的身份認證的判定。在SIP中授權和認證可以通過(guò)建立在基于請求/應答的模式上的上下文相關(guān)的請求來(lái)實(shí)現,也可以使用更底層的方式來(lái)實(shí)現。

  用戶(hù)Alice使用安裝了支持語(yǔ)音和視頻功能的客戶(hù)程序的PC,用戶(hù)Bob使用SIP電話(huà)。兩者都已經(jīng)向本域內的SIP代理服務(wù)器注冊了他們的狀態(tài)和IP地址。用戶(hù)A發(fā)起呼叫;代理服務(wù)器收到A的請求后向注冊服務(wù)器查詢(xún)B的位置信息;向B發(fā)出代理呼叫;B通知代理服務(wù)器接受A的邀請并已作好接受數據的準備;代理服務(wù)器通知A后SIP會(huì )話(huà)建立完畢。當Bob要結束會(huì )話(huà)時(shí),直接向Alice發(fā)送結束請求,在A(yíng)lice確認這個(gè)請求以后會(huì )話(huà)結束。

三、用VOCAL系統實(shí)現基于SIP的語(yǔ)音通信

  VOCAL(Vovida Open Communication Application Library)是一個(gè)開(kāi)源代碼通信軟件,以IP網(wǎng)為核心,在Linux或Solaris操作系統上運行。提供VoIP電話(huà)服務(wù),支持基于SIP的通信設備。

  1.VOCAL通信系統的組成

  一個(gè)完整的VOCAL通信系統應包含以下幾個(gè)部分:   Marshal server:是外部設備和VOCAL系統連接的唯一接口。提供了SIP協(xié)議中的SIP代理服務(wù)器和注冊服務(wù)器的邏輯功能。作用是SIP消息翻譯,用戶(hù)鑒定和保障安全性,計費等。

  重定向服務(wù)器:重定向服務(wù)器是SIP協(xié)議中重定向、注冊、定位服務(wù)器的組合實(shí)現,存儲用戶(hù)的聯(lián)系和特征數據。

  呼叫詳述記錄服務(wù)器:從Marshal server接受呼叫數據,并把這些數據轉化為第三方計費系統能夠識別的格式。

  特征服務(wù)器:是SIP代理服務(wù)器的另外一種實(shí)現方式。

  Provisioning Server:存儲系統所有用戶(hù)和服務(wù)器模塊的數據記錄,并把這些信息通過(guò)預定通報模塊發(fā)送到整個(gè)系統中去。

  2.VOCAL系統的安裝與測試

  VOCAL系統在Linux或Solaris操作系統下運行,本文運行在Red Hat 9.0之下,安裝與測試過(guò)程中解決的主要問(wèn)題包括:

  (1)操作系統中必須要有X window系統,gcc編譯器。

  (2)主機名稱(chēng)和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)境。如果沒(méi)有要自行下載支持Linux的j2re包來(lái)安裝。

  VOCAL是由http://vovida.org提供的,http://vovida.org 提供兩種VOCAl安裝方式,一種是源碼安裝,一種是rpm安裝。在測試過(guò)程中要進(jìn)行兩點(diǎn)之間的語(yǔ)音通信,要在兩臺機器上安裝VOCAL,其中一臺選擇用源碼安裝整個(gè)系統做服務(wù)器和一個(gè)客戶(hù)端,另外一臺用rpm安裝一個(gè)客戶(hù)端:sipset。

  服務(wù)器端集成了完整的VOCAL系統,可以通過(guò)web方式登錄服務(wù)器,并建立用戶(hù)。建立兩個(gè)用戶(hù)1000和1001以備測試。

  在兩臺機器上分別啟動(dòng)sipset,sipset提供了一個(gè)簡(jiǎn)單的圖形界面,用戶(hù)可以實(shí)現登錄、呼叫、掛機等操作,兩個(gè)終端先分別以用戶(hù)1000和1001登錄。讓1000用戶(hù)呼叫1001。當呼叫發(fā)出以后1001端就會(huì )顯示有一個(gè)呼叫進(jìn)入,1001端選擇接聽(tīng),就建立了基于SIP的語(yǔ)音會(huì )話(huà)。

四、結論

  論文詳細介紹了(SIP)的實(shí)現機制、消息結構、功能實(shí)體以及呼叫建立流程,結合VOCAL系統,介紹了如何在IP網(wǎng)絡(luò )中實(shí)現基于SIP協(xié)議的語(yǔ)音通信。要實(shí)現在IP網(wǎng)中基于SIP的視頻通信以及多方參與的多媒體會(huì )議系統等,還需要使用會(huì )話(huà)初始協(xié)議的一些擴展功能,媒體協(xié)商、會(huì )話(huà)過(guò)程控制等。

ZDnet (www.zdnet.com.cn)



相關(guān)鏈接:
分析師:統一通信將融入商務(wù)流程中 2008-07-23
智能通信實(shí)現酒店個(gè)性化 2008-07-22
SIP,正逢其時(shí)! 2008-07-21
IP-PBX給中小企業(yè)帶來(lái)了什么?--客服篇 2008-07-14
基于互聯(lián)網(wǎng)的話(huà)音網(wǎng)融合應用研究 2008-07-14

分類(lèi)信息:        
亚洲精品网站在线观看不卡无广告,国产a不卡片精品免费观看,欧美亚洲一区二区三区在线,国产一区二区三区日韩 灵璧县| 台东县| 淮安市| 邹城市| 云南省| 万安县| 邹平县| 崇明县| 那坡县| 汤原县| 柏乡县| 平顶山市| 连城县| 商南县| 木里| 密山市| 阳谷县| 英德市| 资阳市| 麻栗坡县| 揭东县| 章丘市| 奉贤区| 察雅县| 萍乡市| 盘锦市| 太白县| 乃东县| 林口县| 阳山县| 山丹县| 长沙县| 锡林郭勒盟| 安岳县| 瓦房店市| 普宁市| 秀山| 衡山县| 文山县| 兴城市| 苍山县| http://444 http://444 http://444 http://444 http://444 http://444