蜜果私塾:SIP協(xié)議學(xué)習(xí)
版權(quán)所有,轉(zhuǎn)載請注明出處:http://www.tkk7.com/amigoxie/archive/2009/07/15/286793.html
1. 相關(guān)規(guī)范
RFC3261:基本的會話初始協(xié)議,見http://www.ietf.org/rfc/rfc3261.txt;
RFC3264:定義了SDP的提供應(yīng)答模式,見http://www.ietf.org/rfc/rfc3264.txt;
RFC3725:3PCC全稱Third Party Call Control,是指由第三方來實現(xiàn)的主被叫通話。SIP的3PCC流程定義于RFC3725中。見http://www.ietf.org/rfc/rfc3725.txt
2. 相關(guān)概念
2.1 SIP簡介
SIP是應(yīng)用層控制協(xié)議,可以創(chuàng)建,修改,以及中止一個或多個參與者的對話。在INTERNET上有很多這樣的應(yīng)用,我們需要建立和管理一個對話,這個對話是用來在一組參與者的連接上來進(jìn)行數(shù)據(jù)交換。因為一些參與者實際的行為,操作變得復(fù)雜了。比如用戶可能在終端移動;他們可能有多個地址;也可能在用多種媒體形式進(jìn)行交流-有時還是同步的。一組協(xié)議被用來傳送不同形式的實時多媒體對話數(shù)據(jù),比如語音數(shù)據(jù),視頻數(shù)據(jù),文件消息等等。SIP和其他協(xié)議一起工作,使INTERNET終端找到另一個終端,然后用他們所取得一致的特性進(jìn)行交流。
2.2 offer/answer機(jī)制
定義與RFC3264,利用該機(jī)制兩個實體可以使用SDP對他們之間的多媒體會話達(dá)成一致。在該模式中,一個參加者向另一個參加者提供它期望建立的會話的描述,另一個參加者應(yīng)答它期望建立的對話。
提供應(yīng)答模式是SIP必須使用的基本機(jī)制。
2.3 3PCC
3PCC全稱Third Party Call Control,是指由第三方來實現(xiàn)的主被叫通話。
在常見的業(yè)務(wù)流程中,應(yīng)用服務(wù)器作為第三方,需要根據(jù)業(yè)務(wù)流程控制主叫、被叫、媒體服務(wù)器之間的對話的建立和切斷。所以應(yīng)用服務(wù)器上的信令流程都以3pcc為基礎(chǔ)。
RFC3725中定義了四種基本的3pcc流程,在后面將詳細(xì)描述,3PCC的目標(biāo)是讓要建立會話的兩個網(wǎng)元進(jìn)行完整的offer/answer協(xié)商。
3. offer/answer
3.1 原則
1) 在一次提供應(yīng)答完成之前,不能進(jìn)行新的提供應(yīng)答協(xié)商;
2) 提供者在沒有收到應(yīng)答的時候,不能發(fā)送新的提供;
3) 應(yīng)答者在沒有發(fā)送應(yīng)答的時候,也不能發(fā)送新的提供
3.2 流程
根據(jù)3.1中的原則,可知如下流程都是正確的:
流程1:

流程2:

如下的流程在offer還沒有得到響應(yīng)者應(yīng)答的時候發(fā)送了新的offer,因此是錯誤流程:

如下的流程發(fā)送者在offer還沒有得到響應(yīng)應(yīng)答的時候,由響應(yīng)者發(fā)送了新的offer,因此也是錯誤流程:

4. 3PCC
4.1 3PCC基本流程1
在RFC3725中定義的流程1如下所示:

該流程是比較常用的流程,用于A、B雙方在收到INVITE后都能立刻回送200OK的場景。當(dāng)B不能立刻回送200 OK的情況(可能耗時很多秒),A需要多次進(jìn)行重發(fā),此時使用那個這種流程不合適。
4.2 3PCC基本流程2
在RFC3725中定義的流程2如下所示:

流程2從單邊來說雖然遵守了offer/answer,但總體上并沒有完全按照offer/answer實現(xiàn),因為第(8)中帶出來的sdp2并沒有再次發(fā)送給B,有可能會造成單通的情況,不推薦使用。
4.3 3PCC基本流程3
在RFC3725中定義的流程3如下所示:

流程3是最為通用的流程,對于初始發(fā)起呼叫來說比較合適,不要求A、B立刻回200OK響應(yīng),也不會因此單通的情況。
4.4 3PCC基本流程4
在RFC3725中定義的流程4如下所示:

流程4和流程3差不多,對于初始發(fā)起呼叫來說比較合適,也不要求A、B立刻回200OK響應(yīng)。由于大多數(shù)終端都不支持no media的sdp,所以流程3更通用一些.
posted on 2009-07-15 10:56
阿蜜果 閱讀(1835)
評論(1) 編輯 收藏 所屬分類:
協(xié)議