本發(fā)明涉及IMS(IP Multimedia Subsystem,網(wǎng)絡(luò)協(xié)議多媒體子系統(tǒng))領(lǐng)域,特別涉及一種資源預(yù)留機(jī)制實(shí)現(xiàn)方法和裝置。
背景技術(shù):
IMS網(wǎng)絡(luò)規(guī)定了資源預(yù)留機(jī)制,以避免VOLTE(Voice over LTE,基于LTE的語(yǔ)音)業(yè)務(wù)由于無(wú)線網(wǎng)絡(luò)資源準(zhǔn)備時(shí)間長(zhǎng),而可能導(dǎo)致的假接通、假應(yīng)答現(xiàn)象。
對(duì)于非VOLTE終端,特別是固定接入的IMS用戶,不支持資源預(yù)留機(jī)制。
現(xiàn)有協(xié)議規(guī)定,是否啟用資源預(yù)留特性應(yīng)由被叫方?jīng)Q定。同時(shí),不支持資源預(yù)留的終端與支持資源預(yù)留的終端之間的呼叫不啟用資源預(yù)留機(jī)制。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明所要解決的一個(gè)技術(shù)問(wèn)題是:如何實(shí)現(xiàn)了不支持資源預(yù)留的終端與支持資源預(yù)留的終端之間的資源預(yù)留機(jī)制。
根據(jù)本發(fā)明實(shí)施例的一個(gè)方面,提供了一種資源預(yù)留機(jī)制實(shí)現(xiàn)方法,包括:應(yīng)用服務(wù)器接收來(lái)自主叫方的INVITE消息;應(yīng)用服務(wù)器根據(jù)INVITE消息判斷主叫方是否支持資源預(yù)留;若主叫方不支持資源預(yù)留,則應(yīng)用服務(wù)器修改INVITE消息使得修改后的INVITE消息包含支持資源預(yù)留字段;應(yīng)用服務(wù)器將修改后的INVITE消息轉(zhuǎn)發(fā)至被叫方;應(yīng)服務(wù)器根據(jù)接收的來(lái)自被叫方的應(yīng)答消息確定被叫方啟用資源預(yù)留;應(yīng)用服務(wù)器與被叫方完成資源預(yù)留協(xié)商。
在一個(gè)實(shí)施例中,若主叫方支持資源預(yù)留,應(yīng)用服務(wù)器對(duì)INVITE 消息進(jìn)行透?jìng)魈幚怼?/p>
在一個(gè)實(shí)施例中,若應(yīng)服務(wù)器根據(jù)接收的來(lái)自被叫方的應(yīng)答消息確定被叫方未啟用資源預(yù)留,則應(yīng)用服務(wù)器對(duì)應(yīng)答消息進(jìn)行透?jìng)魈幚怼?/p>
在一個(gè)實(shí)施例中,應(yīng)用服務(wù)器根據(jù)INVITE消息判斷主叫方是否支持資源預(yù)留包括:應(yīng)用服務(wù)器根據(jù)INVITE消息的Supported域是否包含precondition字段來(lái)判斷主叫方是否支持資源預(yù)留;應(yīng)用服務(wù)器修改INVITE消息使得修改后的INVITE消息包含支持資源預(yù)留字段包括:應(yīng)用服務(wù)器在INVITE消息的Supported域插入precondition字段,并在會(huì)話描述協(xié)議中針對(duì)服務(wù)質(zhì)量描述進(jìn)行補(bǔ)充。
根據(jù)本發(fā)明實(shí)施例的另一個(gè)方面,提供了一種資源預(yù)留機(jī)制實(shí)現(xiàn)應(yīng)用服務(wù)器,包括:消息接收模塊,用于接收來(lái)自主叫方的INVITE消息;消息判斷模塊,用于根據(jù)INVITE消息判斷主叫方是否支持資源預(yù)留,如果主叫方不支持資源預(yù)留,則將INVITE消息發(fā)送給消息修改模塊;消息修改模塊,用于接收INVITE消息,修改INVITE消息使得修改后的INVITE消息包含支持資源預(yù)留字段,將修改后的INVITE消息發(fā)送給消息轉(zhuǎn)發(fā)模塊;消息轉(zhuǎn)發(fā)模塊,用于接收INVITE消息,將接收的INVITE消息轉(zhuǎn)發(fā)至被叫方;資源預(yù)留確定模塊,用于接收來(lái)自被叫方的應(yīng)答消息,根據(jù)接收的來(lái)自被叫方的應(yīng)答消息確定被叫方啟用資源預(yù)留,發(fā)送資源預(yù)留協(xié)商指令;資源預(yù)留協(xié)商模塊,用于接收來(lái)自資源預(yù)留確定模塊的資源預(yù)留協(xié)商指令,與被叫方完成資源預(yù)留協(xié)商。
在一個(gè)實(shí)施例中,消息判斷模塊還用于若主叫方支持資源預(yù)留,將INVITE消息發(fā)送給消息轉(zhuǎn)發(fā)模塊進(jìn)行透?jìng)魈幚怼?/p>
在一個(gè)實(shí)施例中,若資源預(yù)留確定模塊根據(jù)接收的來(lái)自被叫方的應(yīng)答消息確定被叫方未啟用資源預(yù)留,則消息轉(zhuǎn)發(fā)模塊對(duì)應(yīng)答消息進(jìn)行透?jìng)魈幚怼?/p>
在一個(gè)實(shí)施例中,消息判斷模塊根據(jù)INVITE消息的Supported域是否包含precondition字段來(lái)判斷主叫方是否支持資源預(yù)留;消息修改模塊在INVITE消息的Supported域插入precondition字段,并 在會(huì)話描述協(xié)議中針對(duì)服務(wù)質(zhì)量描述進(jìn)行補(bǔ)充。
根據(jù)本發(fā)明實(shí)施例的又一個(gè)方面,提供了一種資源預(yù)留機(jī)制實(shí)現(xiàn)系統(tǒng),包括上述的應(yīng)用服務(wù)器、代理呼叫會(huì)話控制功能模塊和服務(wù)呼叫會(huì)話控制功能模塊。
本發(fā)明至少具有以下優(yōu)點(diǎn):
優(yōu)化了資源預(yù)留機(jī)制,確保當(dāng)不支持的終端呼叫支持的終端時(shí),被叫支持的終端仍能啟用資源預(yù)留機(jī)制。
通過(guò)以下參照附圖對(duì)本發(fā)明的示例性實(shí)施例的詳細(xì)描述,本發(fā)明的其它特征及其優(yōu)點(diǎn)將會(huì)變得清楚。
附圖說(shuō)明
為了更清楚地說(shuō)明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見(jiàn)地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)性的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
圖1示出本發(fā)明資源預(yù)留機(jī)制實(shí)現(xiàn)方法的一個(gè)實(shí)施例的流程示意圖。
圖2示出本發(fā)明資源預(yù)留機(jī)制實(shí)現(xiàn)方法的一個(gè)實(shí)施例的消息發(fā)送流程圖。
圖3示出本發(fā)明資源預(yù)留機(jī)制實(shí)現(xiàn)方法的另一個(gè)實(shí)施例的流程示意圖。
圖4示出本發(fā)明資源預(yù)留機(jī)制實(shí)現(xiàn)應(yīng)用服務(wù)器的一個(gè)實(shí)施例的結(jié)構(gòu)示意圖。
圖5示出本發(fā)明資源預(yù)留機(jī)制實(shí)現(xiàn)系統(tǒng)的一個(gè)實(shí)施例的結(jié)構(gòu)示意圖。
具體實(shí)施方式
下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案 進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例。以下對(duì)至少一個(gè)示例性實(shí)施例的描述實(shí)際上僅僅是說(shuō)明性的,決不作為對(duì)本發(fā)明及其應(yīng)用或使用的任何限制。基于本發(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒(méi)有作出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
下面結(jié)合圖1描述本發(fā)明一個(gè)實(shí)施例的資源預(yù)留機(jī)制實(shí)現(xiàn)方法。
圖1示出本發(fā)明資源預(yù)留機(jī)制實(shí)現(xiàn)方法的一個(gè)實(shí)施例的流程示意圖。如圖1所示,多媒體電話應(yīng)用服務(wù)器新增被叫業(yè)務(wù)邏輯,對(duì)VOLTE終端加載該業(yè)務(wù)邏輯之后,該實(shí)施例的方法包括:
步驟S102,應(yīng)用服務(wù)器接收來(lái)自主叫方的INVITE消息。
步驟S104,應(yīng)用服務(wù)器根據(jù)INVITE消息判斷主叫方是否支持資源預(yù)留。
若主叫方不支持資源預(yù)留,則執(zhí)行步驟S106,應(yīng)用服務(wù)器修改INVITE消息使得修改后的INVITE消息包含支持資源預(yù)留字段。
步驟S108,應(yīng)用服務(wù)器將修改后的INVITE消息轉(zhuǎn)發(fā)至被叫方。
步驟S110,應(yīng)用服務(wù)器接收來(lái)自被叫方的應(yīng)答消息。
步驟S112,應(yīng)用服務(wù)器根據(jù)接收的來(lái)自被叫方的應(yīng)答消息判斷被叫方是否啟用資源預(yù)留。
若被叫方啟用資源預(yù)留,則執(zhí)行步驟S114,應(yīng)用服務(wù)器與被叫方完成資源預(yù)留協(xié)商。
上述方法通過(guò)應(yīng)用服務(wù)器對(duì)主叫方發(fā)送的INVITE消息的判斷、修改和轉(zhuǎn)發(fā),使得被叫方接收到攜帶資源預(yù)留信息的INVITE消息,從而優(yōu)化了資源預(yù)留機(jī)制,確保當(dāng)不支持的終端呼叫支持的終端時(shí),被叫支持的終端仍能啟用資源預(yù)留機(jī)制。
下面結(jié)合圖2描述本發(fā)明資源預(yù)留機(jī)制實(shí)現(xiàn)方法的一個(gè)實(shí)施例的消息交互過(guò)程。
圖2示出本發(fā)明資源預(yù)留機(jī)制實(shí)現(xiàn)方法的一個(gè)實(shí)施例的消息交互流程圖。如圖2所示,主叫方將INVITE消息發(fā)送至應(yīng)用服務(wù)器AS。例如,應(yīng)用服務(wù)器接收到的INVITE消息為:
INVITEsip:ue_b@ims.com SIP/2.0
Supported:precondition,100rel
Content-Type:application/sdp
應(yīng)用服務(wù)器可以根據(jù)接收到的INVITE消息的Supported域中是否包含precondition字段來(lái)判斷主叫方是否支持資源預(yù)留。如果INVITE消息的Supported域中包含precondition字段,代表主叫方支持資源預(yù)留。如果INVITE消息的Supported域中不包含precondition字段,代表主叫方不支持資源預(yù)留,此時(shí),應(yīng)用服務(wù)器可以在INVITE消息的Supported域插入precondition字段。
在本實(shí)施例中,應(yīng)用服務(wù)器AS根據(jù)接收到的INVITE消息的Supported域中包含precondition字段,判斷主叫方支持資源預(yù)留之后,還需要在會(huì)話描述協(xié)議中針對(duì)服務(wù)質(zhì)量描述進(jìn)行如下補(bǔ)充。
v=0
o=a00008646 6672 IN IP4 1.1.1.1
s=SIPCall
c=INIP4 1.1.1.1
t=00
m=audio10054 RTP/AVP 80
a=rtpmap:8PCMA/8000
a=rtpmap:0PCMU/8000
a=curr:qoslocal none
a=curr:qosremote none
a=des:qosmandatory local sendrecv
a=des:qosnone remote sendrecv
其中,服務(wù)質(zhì)量描述a=curr:qos local none和a=curr:qos remote none表示目前的主叫方和被叫方都沒(méi)有任何資源預(yù)留。a=des:qos mandatory local sendrecv表示主叫用戶要求在發(fā)送和接收兩個(gè)方向都要提供資源預(yù)留,并且不能成功預(yù)留資源,會(huì)話將不會(huì)建立。a=des:qosnone remote sendrecv表示要示被叫用戶也需要提供雙向的資源預(yù)留,但還不確定被叫用戶是否真的需要進(jìn)行預(yù)留。
應(yīng)用服務(wù)器AS將修改后的INVITE消息作為第一個(gè)SDP(Session Description Protocal,會(huì)話描述協(xié)議)請(qǐng)求轉(zhuǎn)發(fā)至被叫方,由應(yīng)用服務(wù)器AS提供所有支持編碼。被叫方收到INVITE消息后返回183消息作為第一個(gè)SDP應(yīng)答,由被叫方提供所有支持編碼,并在183消息中包含的服務(wù)質(zhì)量描述進(jìn)行如下補(bǔ)充:
a=curr:qos local none
a=curr:qos remote none
a=des:qos mandatory local sendrecv
a=des:qos mandatory remote sendrecv
a=conf:qos remote sendrecv
然后,應(yīng)用服務(wù)器AS根據(jù)接收到的183消息中存在服務(wù)質(zhì)量描述,判斷被叫方啟用資源預(yù)留,若被叫方啟用資源預(yù)留,則繼續(xù)發(fā)送PRACK消息作為第二個(gè)SDP請(qǐng)求,由AS針對(duì)每種媒體確定一種編碼。被叫方接收到PRACK信息后,返回200消息作為第二個(gè)SDP應(yīng)答。此后,應(yīng)用服務(wù)器AS和被叫方完成資源預(yù)留操作。AS確認(rèn)本地資源保留成功后向被叫方發(fā)送UPDATE消息作為第三個(gè)SDP請(qǐng)求,被叫方收到第三個(gè)SDP請(qǐng)求后返回200消息作為第三個(gè)SDP應(yīng)答。三次“握手”操作完成后,應(yīng)用服務(wù)器完成了資源預(yù)留的協(xié)商,被叫方向應(yīng)用服務(wù)器AS發(fā)送180振鈴消息,應(yīng)用服務(wù)器AS將180 振鈴消息轉(zhuǎn)發(fā)至主叫方。
下面結(jié)合圖3描述本發(fā)明一個(gè)實(shí)施例的資源預(yù)留機(jī)制實(shí)現(xiàn)方法。
圖3示出本發(fā)明資源預(yù)留機(jī)制實(shí)現(xiàn)方法的一個(gè)實(shí)施例的流程示意圖。如圖3所示,在前述實(shí)施例的基礎(chǔ)上,該實(shí)施例的方法包括:
若主叫方支持資源預(yù)留,則執(zhí)行步驟S107,應(yīng)用服務(wù)器對(duì)INVITE消息進(jìn)行透?jìng)魈幚怼?/p>
若被叫方不啟用資源預(yù)留,則執(zhí)行步驟S115,應(yīng)用服務(wù)器對(duì)應(yīng)答消息進(jìn)行透?jìng)魈幚怼?/p>
下面結(jié)合圖4描述本發(fā)明一個(gè)實(shí)施例的資源預(yù)留機(jī)制實(shí)現(xiàn)應(yīng)用服務(wù)器。
圖4示出本發(fā)明資源預(yù)留機(jī)制實(shí)現(xiàn)應(yīng)用服務(wù)器的一個(gè)實(shí)施例的結(jié)構(gòu)示意圖。如圖4所示,該實(shí)施例的資源預(yù)留機(jī)制實(shí)現(xiàn)應(yīng)用服務(wù)器40包括:
消息接收模塊402,用于接收來(lái)自主叫方的INVITE消息;
消息判斷模塊404,用于根據(jù)INVITE消息判斷主叫方是否支持資源預(yù)留。如果主叫方不支持資源預(yù)留,則將INVITE消息發(fā)送給消息修改模塊406。
消息修改模塊406,用于接收INVITE消息,修改INVITE消息使得修改后的INVITE消息包含支持資源預(yù)留字段,將修改后的INVITE消息發(fā)送給消息轉(zhuǎn)發(fā)模塊408。
消息轉(zhuǎn)發(fā)模塊408,用于接收INVITE消息,將接收的INVITE消息轉(zhuǎn)發(fā)至被叫方。
資源預(yù)留確定模塊410,用于接收來(lái)自被叫方的應(yīng)答消息,根據(jù)接收的來(lái)自被叫方的應(yīng)答消息確定被叫方啟用資源預(yù)留,發(fā)送資源預(yù)留協(xié)商指令。
資源預(yù)留協(xié)商模塊412,用于接收來(lái)自資源預(yù)留確定模塊的資源預(yù)留協(xié)商指令,與被叫方完成資源預(yù)留協(xié)商。
在一個(gè)實(shí)施例中,消息判斷模塊404還用于若主叫方支持資源預(yù)留,將INVITE消息發(fā)送給消息轉(zhuǎn)發(fā)模塊進(jìn)行透?jìng)魈幚怼?/p>
在一個(gè)實(shí)施例中,若資源預(yù)留確定模塊410根據(jù)接收的來(lái)自被叫方的應(yīng)答消息確定被叫方未啟用資源預(yù)留,則消息轉(zhuǎn)發(fā)模塊408對(duì)應(yīng)答消息進(jìn)行透?jìng)魈幚怼?/p>
在一個(gè)實(shí)施例中,消息判斷模塊404根據(jù)INVITE消息的Supported域是否包含precondition字段來(lái)判斷主叫方是否支持資源預(yù)留;消息修改模塊在INVITE消息的Supported域插入precondition字段,并在會(huì)話描述協(xié)議中針對(duì)服務(wù)質(zhì)量描述進(jìn)行補(bǔ)充。
下面結(jié)合圖5描述本發(fā)明一個(gè)實(shí)施例的資源預(yù)留機(jī)制實(shí)現(xiàn)系統(tǒng)。
圖5示出本發(fā)明資源預(yù)留機(jī)制實(shí)現(xiàn)系統(tǒng)的一個(gè)實(shí)施例的結(jié)構(gòu)示意圖。如圖5所示,該實(shí)施例的資源預(yù)留機(jī)制實(shí)現(xiàn)系統(tǒng)50包括上述的應(yīng)用服務(wù)器40、代理呼叫會(huì)話控制功能P-CSCF模塊502、服務(wù)呼叫會(huì)話控制功能S-CSCF模塊504。
本領(lǐng)域普通技術(shù)人員可以理解實(shí)現(xiàn)上述實(shí)施例的全部或部分步驟可以通過(guò)硬件來(lái)完成,也可以通過(guò)程序來(lái)指令相關(guān)的硬件完成,所述的程序可以存儲(chǔ)于一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)中,上述提到的存儲(chǔ)介質(zhì)可以是只讀存儲(chǔ)器,磁盤(pán)或光盤(pán)等。
以上所述僅為本發(fā)明的較佳實(shí)施例,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。