SIP協(xié)議與多媒體會(huì)議系統(tǒng)_第1頁(yè)
SIP協(xié)議與多媒體會(huì)議系統(tǒng)_第2頁(yè)
SIP協(xié)議與多媒體會(huì)議系統(tǒng)_第3頁(yè)
SIP協(xié)議與多媒體會(huì)議系統(tǒng)_第4頁(yè)
SIP協(xié)議與多媒體會(huì)議系統(tǒng)_第5頁(yè)
已閱讀5頁(yè),還剩10頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、sip協(xié)議與多媒體會(huì)議系統(tǒng)摘要:sip協(xié)議是tetf提出的在ip網(wǎng)絡(luò)上進(jìn)行多媒體通信的應(yīng)用層控制協(xié)議, 主要目的是為了解決ip網(wǎng)中的信令控制,以及同softswitch的通信,從 而構(gòu)成下一代的增值業(yè)務(wù)平臺(tái),所以越來(lái)越得到業(yè)界的重視。本文通過(guò)sip 協(xié)議的背景、功能、網(wǎng)絡(luò)元素、實(shí)現(xiàn)機(jī)制、以及sip消息的組成等兒個(gè)方 面對(duì)sip協(xié)議做的概要性介紹,以及在多媒體會(huì)議屮是怎么采用sip協(xié)議 來(lái)實(shí)現(xiàn)的。關(guān)鍵字:sip (session initiationprotocol,起始會(huì)話協(xié)議);url (uniformresoure locator:統(tǒng)一資源定位器);user agent (用戶代理);pr

2、oxy server(代理服務(wù)器);redirect server (重定向服務(wù)器);register server(登記服務(wù)器);location server(位置服務(wù)器);h. 323協(xié)議;一.sip簡(jiǎn)介sip (session initiation protocol,起始會(huì)話協(xié)議)是 ietf 提出的在 1p網(wǎng)絡(luò)上進(jìn)行多媒休通信的應(yīng)用層控制(辦議,sip是一個(gè)客戶/服務(wù)器協(xié)議,可 用于建立,修改,終結(jié)多媒體會(huì)話和呼叫。sip協(xié)議釆用基于文木格式的客戶- 服務(wù)器方式,以文本的形式表示消息的語(yǔ)法、語(yǔ)義和編碼,客戶機(jī)發(fā)起請(qǐng)求,服 務(wù)器進(jìn)行響應(yīng)。可以承載ip地址、端口信息、媒體能力和編碼方式等

3、會(huì)話相關(guān) 的信息。sip獨(dú)立于低層協(xié)議一tcp或udp ,而采用自己的應(yīng)用層可靠性機(jī)制來(lái) 保證消息的可靠傳送。sip協(xié)議的詳細(xì)內(nèi)容可參見(jiàn)ietf rfc2543 (1999)。sip的特點(diǎn)是簡(jiǎn)單、便于擴(kuò)展和擴(kuò)充,而且重要的是sip概念與internet 的出發(fā)點(diǎn)一致,sip借鑒了許多已有的internet協(xié)議,因而是實(shí)現(xiàn)新的增值綜 合業(yè)務(wù)的理想手段。sip協(xié)議可以很好地配合web和email工作,其原因是:1) sip消息數(shù)據(jù)及格式與web消息數(shù)據(jù)是同樣類型的數(shù)據(jù)。2) sip采用url地址格 式來(lái)進(jìn)行消息路由和定位用戶,url可以嵌入web網(wǎng)頁(yè),可以利用任何其它類型 的uri,如web等。3

4、)采用dns選路技術(shù)進(jìn)行路由選擇。由于sip協(xié)議具有上述特點(diǎn),因此它能夠很容易地開(kāi)發(fā)與web結(jié)合的綜合 應(yīng)用,可以降低開(kāi)發(fā)成本并縮短開(kāi)發(fā)周期。由于ip網(wǎng)絡(luò)的發(fā)展,sip將變得愈來(lái)愈重要,將來(lái)人們可以用sip來(lái)構(gòu)筑 一個(gè)基本的框架,在這個(gè)框架上用簡(jiǎn)單且單一的invite-accept"消息結(jié)構(gòu)方 式來(lái)為pc終端、移動(dòng)終端和固定網(wǎng)終端用戶提供語(yǔ)咅、多媒體、電了商務(wù)的綜 合業(yè)務(wù)。目前對(duì)sip協(xié)議的更新是rfc2543bis,與原有版本兼容。同樣,ietf sip 工作組也制定了一個(gè)文檔,提出了一個(gè)方法可以將isup信令消息封製在sip的 消息體內(nèi),該方法參照了 sip for teleph

5、ony(s1p-t)草案。目前已有眾多的包扌舌 3c0m、lucent、level (3) communication、ericsson 在 內(nèi)的設(shè)備供應(yīng)商和運(yùn)營(yíng)商宣布支持sipo microsoft曾經(jīng)發(fā)布過(guò)基于ii. 323的 netmeeting客戶機(jī),而最近又宣布將在windows xp客戶機(jī)和服務(wù)器平臺(tái)上增 加sip功能,這將引起sip客戶機(jī)數(shù)量的迅速增加??谇跋嚓P(guān)設(shè)備供應(yīng)商和業(yè)務(wù)供應(yīng)商聯(lián)合成立了一個(gè)關(guān)于sip的論壇: www. sipforum, org,為stp的發(fā)展提供一個(gè)自曲討論、展現(xiàn)新思維的發(fā)展平臺(tái)。1.2 sip消息總體描述sip消息由一個(gè)起始行(start-line)、

6、一個(gè)或多個(gè)字段(field)組成 的消息頭、一個(gè)標(biāo)志消息頭結(jié)束的空行(crlf)以及作為可選項(xiàng)的消息體 (message body )組成,其中描述消息體(message body),的頭稱為實(shí)體頭 entity hcadcrosip定義的sip消息的一般格式為:sip-般消息二起始行*消息頭部(一個(gè)或者多個(gè)頭部)crlf (空行) 消息體s1p的消息機(jī)制采用了 client/server請(qǐng)求和響應(yīng)的應(yīng)答機(jī)制,消息有兩 種:客戶機(jī)到服務(wù)器的請(qǐng)求(request),服務(wù)器到客戶機(jī)的響應(yīng)(response)。在上述stp -般消息的格式中,啟始行分請(qǐng)求行(request-line)和狀態(tài) 行(st

7、atus-line)兩種,其中請(qǐng)求行是請(qǐng)求消息的啟始行,狀態(tài)行是響應(yīng)消息 的啟始行。在請(qǐng)求行中給出sip版本、調(diào)用的請(qǐng)求操作(方法)、被邀用戶的當(dāng) 前地址。在響應(yīng)行中給岀sip版本、狀態(tài)碼和相關(guān)的文字說(shuō)明。消息頭部分為4 類:通用頭部(general-header)請(qǐng)求頭部(request-header)響應(yīng)頭部 (response-header)和實(shí)體頭部(entity-header )四種。sip2. 0 版本共定義 了 36種頭部消字段??招斜硎鞠㈩^部字段的結(jié)束。消息體主要是sdp會(huì)話描 述,在響應(yīng)消息小述可能是原因和進(jìn)展指示文本。上而描述屮的符號(hào)“*”表示 該字段可有多個(gè)。sip消息

8、的語(yǔ)法基木上和http相同,頭部字段也和http基木相同。但是它 可以在udp上傳送。包括頭部字段在內(nèi)的udp數(shù)據(jù)包長(zhǎng)度不應(yīng)該超過(guò)路徑的最人 允許傳輸單元(mtu),如果mtu未知,則最大長(zhǎng)度可取為1500字節(jié)(以太網(wǎng)mtu 典型值)。下面進(jìn)一步說(shuō)明s1p請(qǐng)求消息格式和響應(yīng)消息格式。1.3 sip請(qǐng)求消息格式描述請(qǐng)求消息的格式如下:sip請(qǐng)求消息二請(qǐng)求起始行* (通用頭部 請(qǐng)求頭部 i實(shí)體頭部)crlf (空行)消息體請(qǐng)求起始彳亍(request-line)以方法(method)標(biāo)記開(kāi)始,后面是request-uri 和協(xié)議版本(sip-version),最后以m車鍵結(jié)束,各個(gè)元素間用空格鍵字

9、符間隔。request-line = method sp request-uri sp sip-version crlf其中sp符號(hào)代表空格。方法就是請(qǐng)求執(zhí)行的操作,stp用術(shù)語(yǔ)“method"來(lái)對(duì)方法部分作以描述, method標(biāo)識(shí)是區(qū)分大小寫(xiě)的。sip定義了以下幾種方法。邀請(qǐng)(invite)、證 實(shí)(ack)、選擇(options)、再見(jiàn)(bye)、取消(cancel)、登記(register) > 信息(info),所有方法必須大寫(xiě)。請(qǐng)求-uri (request-uri)是被邀請(qǐng)用戶的 當(dāng)前地址。sip版木號(hào)現(xiàn)設(shè)定為sip/2. oo方法描述:(1) inviteinv

10、ite方法用于邀請(qǐng)用戶或服務(wù)參加一個(gè)會(huì)話。在invite請(qǐng)求的消息體 中可對(duì)被叫方被邀請(qǐng)參加的會(huì)話作以描述,如主叫方能接收的媒體類型、發(fā)出的 媒體類型及其-些參數(shù);對(duì)invite請(qǐng)求的成功響應(yīng)必須在響應(yīng)的消息體屮說(shuō)明 被叫方愿意接收哪種媒體,或者說(shuō)明被叫方發(fā)出的媒體。服務(wù)器可以口動(dòng)地用200 (0k)響應(yīng)響應(yīng)會(huì)議邀請(qǐng)。(2) ackack請(qǐng)求用于客戶機(jī)向服務(wù)器證實(shí)它己經(jīng)收到了對(duì)invite請(qǐng)求的最終響 應(yīng)。ack只和invite請(qǐng)求一起使用。對(duì)2xx最終響應(yīng)的證實(shí)由客戶機(jī)用戶代理 發(fā)出,對(duì)其它最終響應(yīng)的證實(shí)由收到響應(yīng)的第一個(gè)代理或第一個(gè)客戶機(jī)用戶代理 發(fā)出。ack請(qǐng)求的to、from、call

11、-id, cseq字段的值由對(duì)應(yīng)的invite請(qǐng)求的 相應(yīng)字段的值復(fù)制而來(lái)。(3) options用于向服務(wù)器查詢其能力。如果服務(wù)器認(rèn)為它能與用戶聯(lián)系,則可用一個(gè) 能力集響應(yīng)options請(qǐng)求;對(duì)于代理和重定向服務(wù)器只要轉(zhuǎn)發(fā)此請(qǐng)求,不用顯 示其能力。options的from> to分別包含主被叫的地址信息,對(duì)options請(qǐng)求的響應(yīng) 中的from. to (可能加± tag參數(shù))、call-id字段的值由options請(qǐng)求中相應(yīng) 的字段值復(fù)制得到。(4) bye用戶代理客戶機(jī)用bye請(qǐng)求向服務(wù)器表明它想釋放呼叫。bye請(qǐng)求可以彖invite請(qǐng)求那樣被傳發(fā),可由主叫方發(fā)出也可由被

12、叫方發(fā) 岀。呼叫的一方在釋放(掛斷)呼叫前必須發(fā)出bye請(qǐng)求,收到bye請(qǐng)求的這 方必須停止發(fā)媒體流給發(fā)出bye請(qǐng)求的這方。(5) cancelcancel請(qǐng)求用于取消一個(gè)call-id, to, from和cscq (僅序列號(hào))字段 值相同的正在進(jìn)行的請(qǐng)求,但取消不了已經(jīng)完成的請(qǐng)求(如果服務(wù)器返回一個(gè)最 終狀態(tài)響應(yīng)則認(rèn)為請(qǐng)求己完成)ccancel請(qǐng)求中的call-id, to, cseq的數(shù)字部分及from字段和原請(qǐng)求的 對(duì)應(yīng)字段值相同,從而使cancel請(qǐng)求與它要取消的請(qǐng)求匹配。(6) registerregister方法用于客戶機(jī)向sip服務(wù)器注冊(cè)列在列在to字段屮的地址信 息。regi

13、ster請(qǐng)求消息頭屮各個(gè)字段的含義定義如下:to:含要?jiǎng)?chuàng)建或更新的注冊(cè)的地址記錄。from:含提出注冊(cè)的人的地址記錄。request-uri:注冊(cè)請(qǐng)求的目的地址,地址的域部分的值即為主管注冊(cè)者所 在的域,而主機(jī)部分必須為空。一般,request-uri屮的地址的域部分的值和 to中的地址的域部分的值相同。call-id:用于標(biāo)識(shí)特定客戶機(jī)的注冊(cè)請(qǐng)求。來(lái)門同個(gè)客戶機(jī)的注冊(cè)請(qǐng)求至 少在相同重啟周期內(nèi)call-id字段值應(yīng)該相同;用戶可用不同的call-1d值注 冊(cè)不同的地址,后面的注冊(cè)請(qǐng)求將替換前面的所有請(qǐng)求。cseq: call-id字段值相同的注冊(cè)請(qǐng)求的cseq字段值必須是遞增的,但次 序無(wú)關(guān)

14、系,服務(wù)器并不拒絕無(wú)序請(qǐng)求。contact:此字段是可選項(xiàng);用于把以后發(fā)送到to字段中的uri的非-注 冊(cè)請(qǐng)求轉(zhuǎn)到contact字段給出的位置那里。如果請(qǐng)求屮沒(méi)冇contact字段,那 么注冊(cè)保持不變。expires:表示注冊(cè)的截止期。(7) tnfoinfo方法是對(duì)sip協(xié)議的擴(kuò)展,用于傳遞會(huì)話中產(chǎn)生的與會(huì)話相關(guān)的控制 信息,如1sup和isdn信令消息,冇關(guān)此方法的使用述冇待標(biāo)準(zhǔn)化,詳細(xì)內(nèi)容參 見(jiàn) ietf rfc 2976o有關(guān)消息頭和消息頭各個(gè)字段的說(shuō)明在下面章節(jié)將進(jìn)一步描述。1.4 sip響應(yīng)消息格式描述響應(yīng)消息的格式如下:sip響應(yīng)消息二狀態(tài)起始行* (通用頭部 響應(yīng)頭部 i實(shí)體頭

15、部)crlf (空行) 消息體狀態(tài)行(status-line)以協(xié)議版本開(kāi)始,接下來(lái)是用數(shù)字表示的狀態(tài)碼 (status-code)及相關(guān)的文本說(shuō)明,最后以冋車鍵結(jié)束,各個(gè)元素間用空格字 符(sp)間隔,除了在最后的crlf序列屮,這一行別的地方不許使用回車或換 行字符。status-line 二 sip-version sp status-code sp reason-phrase crlf 其中sp符號(hào)代表空格。sip協(xié)議中用三位整數(shù)的狀態(tài)碼(status code)和原因值(reason code) 來(lái)表示對(duì)請(qǐng)求的作出的回答,狀態(tài)碼用于機(jī)器識(shí)別操作,原因短語(yǔ) (reason-phrase

16、)是對(duì)狀態(tài)碼的簡(jiǎn)單文字描述用于人工識(shí)別操作,便于便用者 理解。在stp/2. 0中狀態(tài)碼共分為6類,其中第一位數(shù)字指示響應(yīng)類別,后兩位 數(shù)字表示該類中的具體響應(yīng)。status-code = lxx (informational)2xx (success)3xx (redirection)4xx (client-error)5xx (server-error) 6xx (global-failure) extension-code(1) lxx:信息響應(yīng),即呼叫進(jìn)展響應(yīng)。表示請(qǐng)求已經(jīng)收到,繼續(xù)處理請(qǐng) 求。100:試呼中180:振鈴181:呼叫正在前轉(zhuǎn)182:排隊(duì)(2) 2xx:成功響應(yīng),表示行動(dòng)

17、已經(jīng)成功地收到,理解和并接受。200: 0k(3) 3xx:重定向響應(yīng),表示為完成呼叫請(qǐng)求還須采取進(jìn)一步的動(dòng)作。300:多重選擇301:永久遷移302:臨時(shí)遷移303:見(jiàn)其他305:使用代理380:替換服務(wù)(4) 4xx:客戶出錯(cuò),表示請(qǐng)求有語(yǔ)法錯(cuò)誤或不能被服務(wù)器執(zhí)行??蛻魴C(jī) 需修改請(qǐng)求,然后再重發(fā)請(qǐng)求。(5) 5xx:服務(wù)器出錯(cuò),表示服務(wù)器出錯(cuò)不能執(zhí)行合法請(qǐng)求。(6) 6xx:全局故障,表示任何服務(wù)器都不能執(zhí)行請(qǐng)求。 其中l(wèi)xx響應(yīng)為暫吋響應(yīng),其它響應(yīng)為最終響應(yīng)。stp響應(yīng)碼是口j擴(kuò)展的。不要求stp應(yīng)用程序理解所冇已經(jīng)注冊(cè)響應(yīng)碼的含 義,但是它必須理解所有響應(yīng)碼的類別。不能識(shí)別的響應(yīng)碼則作

18、為x00處理,此 時(shí),用戶代理應(yīng)向用戶顯示該響應(yīng)的消息體,該消息體一般含冇能解釋該異常狀 態(tài)的可讀信息。上面我們介紹了 sip協(xié)議的消息頭分為通用頭部、請(qǐng)求頭部、響應(yīng)頭部和 實(shí)體頭部四種、下面我們介紹一下stp協(xié)議的消息頭。1.5 sip消息頭格式描述sip協(xié)議的消息頭定義與http在語(yǔ)法規(guī)則和定義上很相似。每個(gè)頭字段都 遵循以下格式:首先是字段名(fieldname),字段名不分人小寫(xiě),后面是冒號(hào), 然后是字段值,字段值與冒號(hào)間可有多個(gè)前導(dǎo)空格(lws)。下面為sip消息頭格 式:message-header = field-name : field-value crlffield-name

19、 二 tokenfield-value = *( field-content | lws )(1) 通用消息頭 general-header 通用頭字段適用于請(qǐng)求消息和響應(yīng)消息,包含的字段有: general-header = accept| accept-encoding| accept-language call-id| contact| cseq date| encryption| expires from| organization|record-route| timestamp| to| user-agent| via其中,accept, accept-encoding, accep

20、t-language 字段用于客戶機(jī)在請(qǐng) 求消息中給出其可接受的響應(yīng)的媒體類型,編碼方式,以及描述語(yǔ)言;用于服務(wù) 器在415響應(yīng)屮表明其可理解的請(qǐng)求消息的媒體類型,編碼方式,以及描述語(yǔ)call-id:用于唯一標(biāo)識(shí)特定邀請(qǐng)或某個(gè)客戶機(jī)的注冊(cè)請(qǐng)求,一個(gè)多媒體會(huì) 議可產(chǎn)生多個(gè)call-1d不同的呼叫。contact:給出一個(gè)url,用戶可以與此url建立進(jìn)一步的通信。cseq:用于標(biāo)識(shí)服務(wù)器發(fā)出的不同請(qǐng)求,若call-id值相同,那么cseq值 必須各不相同。date:反映首次發(fā)出請(qǐng)求或響應(yīng)消息的時(shí)間,重發(fā)的消息與原先的消息有 相同的data字段值。encryption:表明內(nèi)容經(jīng)過(guò)了加密處理,這種

21、加密為端到端的加密。expire:給出消息內(nèi)容截止的日期和吋間。from:此字段給出請(qǐng)求的發(fā)起者,所有消息中都必須有。organization:給出發(fā)出請(qǐng)求或響應(yīng)消息的實(shí)體所屈的組織的名稱。record-route:給出一個(gè)全局可到達(dá)的request-urjl,用于標(biāo)識(shí)代理服務(wù)器。 time-stamp:給出客戶機(jī)向服務(wù)器發(fā)出請(qǐng)求的時(shí)間。to:此字段給出請(qǐng)求的口的收方,所有消息中都必須有。user-agent:含有與發(fā)起請(qǐng)求的用戶代理客戶機(jī)有關(guān)的信息。via:給出請(qǐng)求消息迄今為止經(jīng)過(guò)的路徑。(2) 實(shí)體消息頭 entity-header實(shí)體頭字段用于定義與消息體相關(guān)的信息,包含的字段有:ent

22、ity-header 二 contentencoding| contentlength| contenttypecontent-encoding:表明消息體上添加應(yīng)用的內(nèi)容編碼方式。content-length:表明消息體的大小。content-type:表明消息體的媒體類型。(3) 請(qǐng)求消息頭 request-header請(qǐng)求頭字段用于客戶機(jī)上傳附加信息到服務(wù)器,其屮包括有關(guān)請(qǐng)求和客戶 機(jī)本身的信息。包含的字段有:request-header = authorization| contact hide| max-forwards| priority| proxy-authorization|

23、 proxy-require| route| require response-key| subjectauthorization:用于用戶代理向服務(wù)器鑒定自身身份。hide:用于客戶機(jī)表明具希累向后面的代理服務(wù)器或用戶代理隱藏由via 字段構(gòu)成的路徑。max-forwards:表明請(qǐng)求消息允許被轉(zhuǎn)發(fā)的次數(shù)。priority:用于客戶機(jī)表明請(qǐng)求的緊急程度。priority-authorization:用于客戶機(jī)向要求身份認(rèn)證的代理服務(wù)器表明 自身身份。proxy-rcquirc:用于標(biāo)識(shí)出代理必須支持的代理墩感特征。route:決定請(qǐng)求消息的路由。require:用于客戶機(jī)告訴代理服務(wù)器為了正

24、確讓服務(wù)器處理請(qǐng)求,客戶機(jī) 希望服務(wù)器支持的選項(xiàng)。response-key:用于給出被叫方用戶代理加密響應(yīng)消息所采用的密鑰需滿 足的要求。subject:提供對(duì)呼叫的概述或表明呼叫的性質(zhì),可用于呼叫過(guò)濾。(4) 響應(yīng)消息頭 response-header響應(yīng)頭字段用于服務(wù)器向request-urt指定的地址傳送冇關(guān)響應(yīng)的附加信 息。包含的字段有:response-header = allow| proxy-authenticatel retry-after| server unsupported| warning| www-authenticateproxy-authenticate:必須為4

25、07響應(yīng)的一部分,字段屮的值給出適用于 request-urt的代理的認(rèn)證體制和參數(shù)。retry-after:可用于503響應(yīng)中,向發(fā)出請(qǐng)求的客戶機(jī)表明服務(wù)預(yù)計(jì)多久 以后可以啟用,用于404, 600, 603響應(yīng)屮表明被叫方何時(shí)再冇空。server:含用戶代理服務(wù)器處理請(qǐng)求所使用的軟件信息。unsupported:字段列出服務(wù)器不支持的特征。warning:用于傳遞與響應(yīng)狀態(tài)有關(guān)的附加信息。www-authenticate:含于401響應(yīng)中,扌旨出適用于request-uri的認(rèn)證體 制和參數(shù)。由于消息體的內(nèi)容由sdp協(xié)議定義,我們?cè)谶@里不作介紹。1.6 sip網(wǎng)絡(luò)框架描述sip協(xié)議采用的是

26、客戶/服務(wù)器(c/s)控制方式,呼叫控制請(qǐng)求發(fā)出方稱為 客戶,請(qǐng)求接收和處理方為服務(wù)器。s1p的網(wǎng)絡(luò)框架為下圖:sip網(wǎng)絡(luò)組成redirect serverregistrar serverlocatio nserver圖2. 1 sip網(wǎng)絡(luò)框架其組成包括:user agent -用戶代理proxy server -代理服務(wù)器redirect server 一重定向服務(wù)器register server -登記服務(wù)器location server -位置服務(wù)器下面我們根據(jù)上面講述s1p的知識(shí),舉一個(gè)例子來(lái)使大家更清楚的理解sip 協(xié)議。jlocationserver竺怛也竺 inv

27、ite ! | ! "02 moved temporarily"" 塔;con tact: :i: ack i !© invite hq 200 okel *a*® ack 圖2.1 一個(gè)sip呼叫例子卜血再給出一個(gè)具體invite消息:invite sip:schulzrinnecs.columbiaedu s1p/2.0from: christian zahl &

28、lt;sip:czcs. tu-betlin. de>to: henning schulzrinne <sip:schulzrinnecs. columbia. edu>via: stp/2. o/udp 131.215. 131. 131, stp/2. 0 foo. comcall-id: 3678134014cloud9. cs. tu-berlin. decontent-type: application/sdpcontentlength: 187cseq: 8348 invitesubject: new error codesv=0c=ln ip4 128. 59.

29、 16. 191m二audio 1848 rtp/avp 0其屮消息屮的各個(gè)字段及其含義我們?cè)谇懊嬉呀?jīng)一一介紹過(guò)了,消息最后三行的 內(nèi)容是用sdp協(xié)議定義的消息體的內(nèi)容。二、sip的多點(diǎn)會(huì)議擴(kuò)展sip擴(kuò)展方法及消息頭子項(xiàng):conf方法:主要更新會(huì)議屮參與者列表。當(dāng)一個(gè)用戶加入或離開(kāi)會(huì)議吋需要發(fā) 送此請(qǐng)求。此方法不應(yīng)該包含任何消息體。participant 子項(xiàng): participant :(name-addr | addr-spec) *(“;”participant-params)其中: name-addr | addr-spec:參與者的 uri participant-params:參與

30、者的狀態(tài),缺省值:active r active,參與者處于激活狀態(tài) 參與者狀態(tài)v invited,參與這正被邀請(qǐng)到會(huì)議屮 joining,參與者試圖加入到會(huì)議中chair,主席身份1. end system mixinguser auser buser cinvite binvite c with a'sdpa200 okackartp mediaa200 ok with c'sdpconfacka200 okartp mediaa說(shuō)明:a和b在通話過(guò)程中,a決定邀請(qǐng)c加入到會(huì)議中,b與c的信號(hào)號(hào) 和媒體信息在a處匯合。a對(duì)c發(fā)出邀請(qǐng)后,c有權(quán)利決定是否愿意加入到此會(huì) 議中。

31、由于在a向c發(fā)出的invite中帶有participant子項(xiàng),c能夠獲知此會(huì) 議中參與者的標(biāo)識(shí)。假設(shè)c接受了邀請(qǐng),向a回復(fù)200 0k響應(yīng)。a收到后向b 發(fā)送c0nf方法,用以通知b冇個(gè)新參與者c加入了會(huì)議,如果b不想與c對(duì)話, 那么b可以向a發(fā)送bye退出會(huì)議。a分別向b、c發(fā)出了兩個(gè)邀請(qǐng),這兩個(gè)call-id以及from. to 'p的tag是 不同的。2. dial-in conference server在撥入會(huì)議模式中,想要加入會(huì)議的用戶向會(huì)議服務(wù)器發(fā)送invite請(qǐng)求, 當(dāng)會(huì)議服務(wù)器允許用戶加入時(shí),向所有其它用戶發(fā)送conf消息告知當(dāng)前會(huì)議冇 個(gè)參與者要加入,在會(huì)議服務(wù)器

32、向此用戶回復(fù)200 0k的應(yīng)答消息中耍攜帶 participant子項(xiàng)告知此用戶當(dāng)前會(huì)議的用戶狀態(tài)列表。2. 1,初始化會(huì)議user auser buser cconference serverinvite200 okinviteainviteaackconf200 oka說(shuō)明:在撥入會(huì)議屮,要求加入到此會(huì)議屮的每個(gè)參與者都要知道該會(huì)議標(biāo) 識(shí)(sip url)。假設(shè)a、b、c三個(gè)參與者同吋向conference server發(fā)出invite邀請(qǐng),先 看conference server對(duì)a的反應(yīng)?;貜?fù)200 ok,在此應(yīng)答中帶有participant, a可獲知b、c用戶狀態(tài)joining,試

33、圖加入到會(huì)議中。同樣,b和c也會(huì)收到帶 有participant子項(xiàng)的200 0k應(yīng)答。當(dāng)conference server收到從各參與者發(fā) 來(lái)的ack,會(huì)議初始化過(guò)程完畢。向a、b、c分別發(fā)送conf,用意更新當(dāng)前會(huì)議 各參與者的狀態(tài)(joining->active)02.2,新用戶加入會(huì)議中a、b、c通過(guò)撥入會(huì)議服務(wù)器進(jìn)行會(huì)議,a想要d加入到會(huì)議中,需要用到 refer方法。refer方法:用于指示參與者(參與者用rcqucst-uri標(biāo)識(shí))加入到一會(huì)議中。 refer-to 子項(xiàng):refer-to: name-addr | addr-specname-addr | addr-spe

34、c:會(huì)議標(biāo)識(shí)。user auser buser cuser dconferenceserverreferinvite>200 ok*confconfconf200 ok200 ok200 oka歹200 okackconfconfconfconf說(shuō)明:a向d發(fā)送refer方法,如果d想要加入則向a發(fā)送200 ok,并且向 conference server發(fā)出invite邀請(qǐng)。(d從收到的refer屮的ref er-to子向獲 得會(huì)議服務(wù)器的url)。conference server檢驗(yàn)d的身份,若允許d加入,則分別向a、b、c發(fā)送 c07f方法,用以告知有個(gè)新用戶要加入。如果有參與者

35、不想和d交談可以發(fā)出 bye離開(kāi)會(huì)議。在收到了所有參與者對(duì)conf的答復(fù)后,conference server向d 回復(fù)200 ok, d發(fā)送ack。最后conference server再向會(huì)議屮的每個(gè)參與者發(fā) 送c0mf,用以更新各個(gè)參與者的狀態(tài)。如果會(huì)議屮的參與者沒(méi)有必要被通知新用戶的加入(joining狀態(tài)),那么 為了減少網(wǎng)絡(luò)中信號(hào)流量,第一個(gè)conf方法可以不用要。3. ad-hoc centralized conference兩方在通話,某一方?jīng)Q定加入第三方,首先,將兩方通話轉(zhuǎn)移到在 conference server上的兩方會(huì)議,然后第三方通過(guò)refer方法被邀請(qǐng)到此會(huì)議 中c與撥入會(huì)議大體相似,在refer方法中指明會(huì)議標(biāo)識(shí),新用戶加入后,用 conf方法通知會(huì)議屮的每一成員。4. dial-out conference server在

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論