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

SIP協(xié)議架構(gòu)與實現(xiàn)機制
來源:投影時代 更新日期:2008-07-29 作者:李志
內(nèi)容導航:  分頁瀏覽 | 全文瀏覽

SIP協(xié)議架構(gòu)與實現(xiàn)機制

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

1.SIP的基本功能及特點

    SIP支持會話描述,它允許參與者在一組兼容媒體類型上達成一致,同時通過代理和重定向請求到用戶當前位置來支持用戶移動性。SIP不與任何特定的會議控制協(xié)議捆綁。SIP提供以下功能:

● 名字翻譯和用戶定位:無論被呼叫方在哪里都確保呼叫達到被叫方。執(zhí)行任何描述信息到定位信息的映射。

● 特征協(xié)商:它允許與呼叫有關(guān)的組(這可以是多方呼叫)在支持的特征上達成一致。例如是否支持視頻等多種需要協(xié)商的特征。

● 呼叫參與者管理:呼叫中參與者能夠引入其它用戶,加入呼叫或取消到其它用戶的連接。

● 呼叫特征改變:用戶應該能夠改變呼叫過程中的呼叫特征。

SIP既可以用于建立各種會話,也可以用來傳送即時消息和文件。能夠靈活、方便地提供業(yè)務,具有多方面優(yōu)點。

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

● 開放的業(yè)務生成環(huán)境:SIP網(wǎng)絡(luò)的業(yè)務提供主要由Proxy Server完成,生成一個業(yè)務就是設(shè)計一個業(yè)務邏輯從而對一個特定的消息流進行控制,或?qū)ο⒄埱笞龀鱿鄳捻憫?/P>

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

2.SIP協(xié)議的分層結(jié)構(gòu)

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

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

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

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

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

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

    SIP采用C/S結(jié)構(gòu),通過消息機制來建立會話。SIP消息包括請求消息和響應消息,二者具有相同的消息格式。

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

SIP消息的通用格式是:

Generic-message = start-line

*message-header

CRLF

[message-body]

start-line: SIP消息起始行。

*message-header:多個頭域。

CRLF:空行,表示消息頭域的結(jié)束

message-body:消息體部分。

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

4. SIP系統(tǒng)得功能實體及工作流程

    SIP系統(tǒng)采用C\S模式,利用消息機制建立并管理會話。按邏輯功能,SIP系統(tǒng)可分為四大功能實體:SIP用戶代理、SIP代理服務器、SIP重定向服務器和SIP注冊服務器,它們共同構(gòu)成了SIP系統(tǒng)的基本模型。

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

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

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

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

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

 標簽:
本文導航
  • 第2頁:SIP協(xié)議架構(gòu)與實現(xiàn)機制
推薦視頻會議廠商
廣告聯(lián)系:010-82755684 | 010-82755685 手機版:m.pjtime.com官方微博:weibo.com/pjtime官方微信:pjtime
Copyright (C) 2007 by PjTime.com,投影時代網(wǎng) 版權(quán)所有 關(guān)于投影時代 | 聯(lián)系我們 | 歡迎來稿 | 網(wǎng)站地圖
返回首頁 網(wǎng)友評論 返回頂部 建議反饋
快速評論
驗證碼: 看不清?點一下
發(fā)表評論