一种主叫侧发生会话切换的处理方法和as的制作方法

文档序号:7653569阅读:171来源:国知局
专利名称:一种主叫侧发生会话切换的处理方法和as的制作方法
技术领域
本发明涉及通信领域的会话切换技术,尤其涉及一种主叫侧发生会话切换的处理方法和AS。
背景技术
随着移动通信技术的发展和核心网的演进,核心网的控制面和媒体面分离;语音会话在建立过程中,既要建立起信令路径,也要建立起媒体路径。在信令消息中,主叫和被叫用户之间进行资源协商,就本次会话中使用的媒体组合以及各类媒体使用的编码方案达成一致;在此过程中使用了会话描述协议(SDP, Session Description Protocol)的提议/应答(offer/answer)机制。另外,由于媒体路径的建立往往比信令路径的建立花费的时间长,因此现有技术提出了资源预留机制,即当被叫和主叫侧的资源预留都已经成功后,会话 才进入振铃状态。根据语音连续性的要求,当主叫用户的位置发生变化时、或者从一个网络进入另外一个网络时、或者当移动控制网元改变时,会话应当能够保持连续,即会话可以进行切换。在主叫和被叫侧资源预留协商过程中可能发生会话切换。目前,给出一种会话切换的移动网络结构,由呼叫会话控制功能实体(CSCF,Call Session Control Function)、源媒体网关、移动交换中心(MSC, Mobile SwitchingCenter)/移动交换中心服务器(MSC Server)、目标媒体网关和第三方会话控制网元(即应用服务器(AS, Application Server))等实体共同组成的移动通信网,如图I所示,给出一种会话切换的移动网络示意图,其中,主叫UE A,主动发起会话呼叫的用户设备(UE,User Equipment),要求与被叫UEB建立会话;被叫UE B,会话呼叫的目标用户设备,接收来自主叫UE A的会话呼叫;源媒体网关,是与CSCF对应的媒体网关,根据CSCF的指示,预留媒体资源,建立主叫和被叫之间的媒体路径,源媒体网关可以是网关GPRS支持节点(GGSN,Gateway GPRSSupport Node)、服务网关(S-GW, Serving GateWay)、分组数据网网关(P-GW)、策略控制和计费功能实体(PCC, Policy Control and Charging)等;CSCF,负责控制层中的业务触发和控制,呼叫会话控制功能分为代理呼叫会话控制功能(P-CSCF,Proxy-CSCF)、查询呼叫会话控制功能(I-CSCF, Interrogating-CSCF)和服务呼叫会话控制功能(S-CSCF,Serving-CSCF)这三种类型,负责向AS发送或接收会话请求,可以与对应的媒体网关交互建立媒体路径;MSC/MSC Server,完成呼叫转换服务和呼叫控制、媒体网关接入控制、移动性管理、资源分配、路由等功能;目标媒体网关,为目标会话提供资源的媒体网关,预留媒体资源,建立主叫和被叫之间的新的媒体路径,目标媒体网关可以是MGW等等;AS,作为B2BUA,完成会话建立,会话切换等过程的业务层网元。
图2中给出了现有技术中一个需要资源预留的会话建立过程。主叫和被叫之间的会话通过会话初始协议(SIP, Session Initiation Protocol)和SDP信令来协商,当确认主叫和被叫的资源预留都已经成功后,才开始振铃。双方UE在SDP offer/answer的协商过程中交换预置条件,该预置条件指示如下I、主叫侧的资源预留成功后,主叫需要向被叫发送资源预留完成的确认信息,在本例中即发送一个SIP UPDATE请求,携带资源预留完成的确认信息;2、被叫在收到来自对端的SIP UPDATE请求,而且自身也成功完成资源预留之后,才开始振铃。需要资源预留的会话建立及媒体协商过程包括以下步骤步骤201,主叫UE A向被叫UE B发送建立会话请求,其中携带SDP offer信息,并且在请求消息中标明支持预置条件。比如UE A向UE B发送SIPINVITE消息,且在SIP、INVITE消息头域中添加Require precondition (预置条件),在消息体携带的SDP信息中携带主叫UE A本端的资源情况,以及希望协商后两端UE的资源情况,比如是a = curr:qos local none (表示目前本端还没有实现任何与服务质量QoS有关的预置条件)a = curr:qos remote none (表示目前远端还没有实现任何与QoS有关的预置条件)a = des: qos mandatory local sendrecv (表不本端要求的 QoS 预置条件)a = des:qos none remote sendrecv(表不远端要求的 QoS 预置条件)步骤202,被叫UE B向主叫UE A发送临时响应,比如发送183会话进行中消息,其中携带SDP answer信息,消息中的资源预留信息比如是a = curr: qos local nonea = curr: qos remote nonea = des:qos mandatory local sendrecva = des:qos mandatory remote sendrecva = conf:qos remote sendrecv其中,“a = conf:qos remote sendrecv”表示主叫UE在建立起资源预留后,应发送确认信息,如发送UPDATE消息,携带资源预留完成的确认信息。步骤203, UE A 向 UE B 发送临时确认(PRACK, Provisional Acknowledge)请求,表示已经收到步骤202的消息。步骤204,UE B向UE A发送响应消息,如2000K。步骤205,主叫UE A预留了所需的资源,向UE B发送SIP UPDATE请求,其中在SDPoffer信息中携带资源预留完成的确认信息,其资源预留信息比如是a = curr:qos local sendrecv(表示当前本端状态为可收发、即本端资源预留完成)a = curr: qos remote nonea = des:qos mandatory local sendrecva = des:qos mandatory remote sendrecv步骤206,UE B向UE A发送响应消息(如2000K),其中携带SDP answer信息,其资源预留信息比如是a = curr:qos local sendrecv(表示当前本端状态为可收发、即本端资源预留完成)a = curr:qos remote sendrecv(表示当前远端状态为可收发、即远端资源预留完成)a = des:qos mandatory local sendrecva = des:qos mandatory remote sendrecv步骤207,当被叫的资源预留完成后,UE B向UE A发送振铃消息,其中不再包含SDP信息,比如发送SIP 180。步骤208,UE B摘机,向UEA发送会话请求的最终响应消息,比如2000K。 步骤209,UE A向UE B发送ACK消息,开始会话。在主叫侧和被叫侧资源预留协商过程中,但还没有振铃的情况下,如果发生会话切换(即如图2中,在步骤204之后、步骤207之前发生会话切换),其媒体资源怎样协商和预留,现有技术还无法提供相应的解决方案。例如在会话切换前,UE A通过AS与被叫UE B进行媒体协商,准备建立会话;会话切换过程中,UE A由分组交换(PS, Packet Switching)域切换到电路交换(CS, CircuitSwitching)域,媒体路径从源媒体网关切换到目标媒体网关,媒体资源信息需要协商更新。然而,在切换过程中会出现UE A的源媒体的SDP offer信息和UE A的目标媒体的SDPoffer信息都到达AS,但AS还没有收到与上述两个SDP offer信息相对应的SDP answer信息的情况,在这种情况下,会与现有的SDP offer/answer模型不相符,从而会导致切换失败。

发明内容
有鉴于此,本发明的主要目的在于提供一种主叫侧发生会话切换的处理方法和AS,以实现振铃前主叫侧发生会话切换情况下的媒体资源协商和预留,保证振铃前的会话切换成功。为达到上述目的,本发明的技术方案是这样实现的本发明提供了一种主叫侧发生会话切换的处理方法,该方法包括在需要资源预留的会话建立过程中,应用服务器(AS)获知媒体资源协商和预留的情况,并在收到会话切换请求时,判断是否收到主叫侧的资源预留完成的确认信息,且根据判断的结果来执行会话切换过程。所述主叫侧的会话切换发生在主叫侧和被叫侧的资源协商过程中,且被叫侧发送振铃请求之前。所述判断是否收到主叫侧的资源预留完成的确认信息,且根据判断的结果来决定何时执行会话切换过程,具体为如果没有收到所述确认信息,则所述AS不等待所述确认信息,执行会话切换过程;如果已收到所述确认信息,但未收到确认信息的响应消息,则所述AS等待所述响应消息,并在收到所述响应消息后执行会话切换过程;
如果已收到所述确认信息,以及所述确认信息的响应消息,则所述AS执行会话切换过程。该方法进一步包括在所述AS没有收到主叫侧的资源预留完成的确认信息的情况下,执行会话切换过程后,如果所述AS收到所述主叫侧的资源预留完成的确认信息,则不向被叫侧转发所述资源预留完成的确认信息,而构造错误响应回复给所述主叫侧。该方法进一步包括在执行会话切换过程中,所述AS收到被叫侧的振铃请求;此时,如果主叫侧的目标会话还没有建立,则所述AS向主叫侧的源会话转发所述振铃请求,保存所述振铃请求,并在所述主叫侧的目标会话建立后向所述目标会话转发所述振铃请求; 如果主叫侧的目标会话已建立,则所述AS保存所述振铃请求,并向所述目标会话转发所述振铃请求。本发明还提供了一种AS,包括信息处理模块,用于在需要资源预留的会话建立过程中,获知媒体资源协商和预留的情况,并在收到会话切换请求时,判断是否收到主叫侧的资源预留完成的确认信息;会话切换模块,用于根据判断的结果来执行会话切换过程。所述主叫侧的会话切换发生在主叫侧和被叫侧的资源协商过程中,且被叫侧发送振铃请求之前。所述会话切换模块进一步用于,在所述信息处理模块没有收到所述确认信息时,所述会话切换模块不等待所述确认信息,执行会话切换过程;在所述信息处理模块已收到所述确认信息,但未收到确认信息的响应消息时,所述会话切换模块等待所述响应消息,并在收到所述响应消息后执行会话切换过程;在所述信息处理模块已收到所述确认信息,以及所述确认信息的响应消息时,所述会话切换模块执行会话切换过程。在所述信息处理模块没有收到主叫侧的资源预留完成的确认信息的情况下,所述会话切换模块执行会话切换过程后,如果所述信息处理模块收到主叫侧的资源预留完成的确认信息,则所述会话切换模块不向被叫侧转发所述资源预留完成的确认信息,而构造错误响应回复给所述主叫侧。在所述会话切换模块执行会话切换过程中,所述信息处理模块收到被叫侧的振铃请求;此时,如果主叫侧的目标会话还没有建立,则所述会话切换模块向主叫侧的源会话转发所述振铃请求,保存所述振铃请求,并在所述主叫侧的目标会话建立后向所述目标会话转发所述振铃请求;如果主叫侧的目标会话已建立,则所述会话切换模块保存所述振铃请求,并向所述目标会话转发所述振铃请求。本发明所提供的一种主叫侧发生会话切换的处理方法和AS,实现了振铃前主叫才发生会话切换情况下的媒体资源协商和预留,保证了振铃前的会话切换成功。


图I为现有技术中会话切换的移动网络结构示意图;图2为现有技术中需要资源预留的会话建立及媒体协商的流程图;图3为本发明实施例一中振铃前被叫发生会话切换时媒体协商的流程图;图4为本发明实施例二中振铃前被叫发生会话切换时媒体协商的流程图;图5为本发明实施例三中振铃前被叫发生会话切换时媒体协商的流程图;图6为本发明实施例四中振铃前被叫发生会话切换时媒体协商的流程图;图7为本发明实施例五中振铃前被叫发生会话切换时媒体协商的流程图。
具体实施例方式下面结合附图和具体实施例对本发明的技术方案进一步详细阐述。为实现振铃前主叫发生切换情况下的媒体资源协商和预留,保证振铃前的切换成功,本发明所提供的一种会话切换的方法,主要包括在需要资源预留的会话建立过程中,AS获知媒体资源协商和预留的情况,并在收到会话切换请求时,判断是否收到主叫侧的资源预留完成的确认信息,且根据判断的结果来决定何时执行会话切换过程。 需要说明的是,所述主叫侧的会话切换发生在主叫侧和被叫侧的资源协商过程中,且被叫侧发送振铃请求之前。另外,在收到会话切换请求时,如果没有收到该确认信息,则AS不等待该确认信息,执行会话切换过程;在收到会话切换请求时,如果已收到该确认信息,但未收到确认信息的响应消息,则AS等待该响应消息,并在收到该响应消息后执行会话切换过程;在收到会话切换请求时,如果已收到该确认信息,以及该确认信息的响应消息,则AS执行会话切换过程。进一步的,在AS没有收到主叫侧的资源预留完成的确认信息的情况下,执行会话切换过程后,如果AS收到主叫侧的资源预留完成的确认信息,则不向被叫侧转发该资源预留完成的确认信息,而构造错误响应回复给主叫侧。进一步的,在执行会话切换过程中,AS收到被叫侧的振铃请求;此时,如果主叫侧的目标会话还没有建立,则AS向主叫侧的源会话转发振铃请求,保存振铃请求,并在主叫侧的目标会话建立后向目标会话转发振铃请求;如果主叫侧的目标会话已建立,则AS保存振铃请求,并向目标会话转发振铃请求。还需要说明的是,本发明所述的会话切换包括在PS域与CS域之间的会话切换,也包括在PS域内的会话切换。下面对主叫侧的UE A和被叫侧的UE B的资源预留协商过程中,但还没有振铃的情况下,主叫侧的UE A发生会话切换时,本发明会话切换的方法进行详细说明。图3是本发明的实施例一的流程图。本实施例给出一种主叫UE在PS域的资源预留完成的确认信息到达之前,主叫侧的会话切换请求消息先到达AS的情形下,媒体资源的协商方法和会话切换过程。具体过程描述如下步骤301,UE A在PS域上向CSCF发起会话请求,请求建立到UE B的会话,在消息中指示支持资源预留机制,在消息体中携带SDP offer信息。比如UE A发送SIP INVITE消息到CSCF,消息头中携带Required precondition ;消息体中携带SDP offer信息,其中资源预留信息比如是a = curr: qos local nonea = curr:qos remote nonea = des:qos mandatory local sendrecva = des:qos none remote sendrecv
步骤302,CSCF收到会话请求消息后,向AS发送建立会话请求,其中携带SDPoffer信息。步骤303,AS收到建立会话请求后,作为背对背的用户代理(B2BUA,Back-to-BackUser Agent),向UE B转发建立会话请求,其中携带SDP offer信息。步骤304,UE B回复会话处理中响应消息,说明会话正在处理中,其中携带SDPanswer信息,在消息中指示需要主叫侧在资源预留完成后发送资源预留完成的确认信息。比如UE B发送SIP 183响应,其中携带SDP answer信息,其中资源预留信息比如是a = curr: qos local nonea = curr: qos remote nonea = des:qos mandatory local sendrecva = des:qos mandatory remote sendrecva = conf:qos remote sendrecv其中,“a = conf:qos remote sendrecv”表示主叫UE在建立起资源预留后,应发送资源预留完成的确认信息。步骤305,AS收到会话处理中响应消息后,作为B2BUA向CSCF转发响应消息,其中携带SDP answer信息。步骤306,CSCF转发会话处理中响应消息给UE A,其中携带SDP answer信息。CSCF可以与源会话的媒体网关进行消息交互,开始预留媒体资源。步骤307,UE A收到会话处理的响应消息后,发送一个请求消息给UE B,确认响应消息已经被收到。此消息先后经过CSCF和AS,然后到达UE B。UEB返回一个响应消息给UE A0比如UE A发送PRACK消息给UE B,UE B返回一个2000K响应。步骤308,网络根据UE A的测量报告,发起会话切换,为UE A服务的目标控制网元是MSC/MSC Server0这个过程是现有技术,在此不赘述。步骤309,MSC/MSC Server向CSCF发送会话切换请求,其中携带新的SDP offer"[目息,其中资源彳目息比如是a = curr:qos local sendrecva = curr: qos remote none步骤310,CSCF将会话切换请求转发给AS,其中携带新的SDP offer信息。步骤311,AS收到会话切换请求后,找到当前UE A正在进行的一个会话进行切换操作,在该实施例中,即通过步骤301 302及步骤305 306建立的会话。由于此时UEA (PS域上)和UE B之间的precondition过程并没有完成,双方的资源都还不是可用状态。在步骤301 306的过程中,AS可以理解SDP提议和SDP应答信息,从中获知当主叫侧资源预留完成后,主叫UE A会发送一个更新请求(UPDATE)消息,携带资源预留完成的确认信息,以此告知对方其资源预留已经完成。在此例中,SCC AS尚未收到UE A发来的资源预留完成的确认信息,那么AS不等待该确认信息,先执行切换过程。如果后续收到UE A发来的该确认信息,则按照步骤314 317来处理。步骤312,AS开始执行会话切换过程,进行远端更新,向UE B发送更新消息,在消息体中携带SDP offer信息。此消息中携带的SDP offer信息可以是来自步骤310中携带的新的SDP offer信息。此消息的另一个功能是作为资源预留完成的确认信息。步骤313,UE B返回响应消息。
步骤314 317在实际流程中可能发生,也可能不发生。步骤314,UE A完成资源预留后,在PS域上向CSCF发送更新消息,其中在SDPoffer信息中携带资源预留完成的确认信息。比如UEA发送UPDATE消息,携带资源预留完成的确认彳目息,比如是a = curr:qos local sendrecva = curr: qos remote nonea = des:qos mandatory local sendrecva = des:qos mandatory remote sendrecv步骤315,CSCF向AS转发更新消息,携带资源预留完成的确认信息。步骤316,收到更新消息后,AS判断出该消息来自于UE A的源会话,此时正在进行会话切换。而且在收到的UPDATE消息中,理由参数不是487,即不是"handovercancelled"(切换取消),那么此消息是源会话上携带资源预留完成的确认信息的更新消息。AS不向UE B转发该消息,而是构造响应消息,向CSCF发送响应消息。比如发送一个SIP 4XX的错误响应,说明此会话正处于切换状态。步骤317,CSCF将响应消息转发给UEA。步骤318,UE B发送振铃消息。UE B可以在发送完远端更新的响应消息之后、SP步骤313之后的任一时间内发送此振铃消息。收到振铃请求时,如果AS到MSC/MSC Server之间的会话,即目标会话还没有建立,则AS向UEA的PS域上,即源会话转发此振铃请求,并且保存此振铃请求,当目标会话建立后向MSC/MSC Server发送振铃消息,即本例中的步骤326 ;收到振铃请求时,如果目标会话已经建立,那么AS保存此振铃请求,在步骤326中向MSC/MSC Server发送振铃消息。步骤319, AS向CSCF发送会话处理中的响应消息,其中携带SDP answer信息,比如AS发送SIP 183响应消息,在消息体中携带SDP answer信息。步骤320,CSCF将会话处理中的响应消息转发给MSC/MSC Server。步骤321,确认会话处理中的响应消息已经收到,与步骤307的过程类似。步骤322、MSC/MSC Server向CSCF发送消息,其中携带会话状态,该消息也称为通知消息。比如:发送INFO消息或NOTIFY消息或MESSAGE消息,携带会话状态是processing。步骤323,CSCF将通知消息转发给AS。
步骤324,AS向CSCF发送响应消息。步骤325,CSCF将响应消息转发给MSC/MSC Server。步骤326,AS如果收到了步骤318的振铃消息,则向CSCF发送振铃消息,比如发送SIP 180 消息。步骤327,CSCF将振铃消息转发给MSC/MSC Server。步骤328,MSC/MSC Server收到IP承载上的振铃消息后,转化为CS承载上的振铃消息,发送给UE A0比如发送alerting消息。步骤329,继续后续操作,接通会话、进行通话至会话结束;或者拒绝会话。图4是本发明的实施例二的流程图。本实施例给出一种主叫UE在PS域的资源预留完成的确认信息到达之后,主叫侧的会话切换请求消息才到达AS的情形下,媒体资源的协商策略和会话切换过程。具体过程描述如下步骤401 407,同实施例一中的步骤301 307。步骤408,UE A完成资源预留后,向CSCF发送更新消息,其中在SDP offer信息携带资源预留完成的确认信息。比如UE A发送UPDATE消息,携带资源预留完成的确认信息。步骤409, CSCF向AS转发更新消息,携带资源预留完成的确认信息。步骤410,AS作为B2BUA向UE B发送更新消息,其中携带资源预留完成的确认信
肩、O步骤411,网络根据UE A的测量报告,发起会话切换,为UE A服务的目标控制网元为MSC/MSC Server0这个过程是现有技术,在此不赘述。步骤412,MSC/MSC Server向CSCF发送会话切换请求,其中携带新的SDP offerf目息。其中资源彳目息比如是a = curr:qos local sendrecva = curr:qos remote none。步骤413,CSCF向AS转发会话切换请求,其中携带新的SDP offer信息。
步骤414,AS收到会话切换请求后,找到当前UE A正在进行的一个会话进行切换操作,在该实施例中,即通过步骤401 402及步骤405 406建立的会话。在步骤401 406的过程中,AS可以理解SDP提议和SDP应答信息,从中获知当主叫侧资源预留完成后,主叫UE A会发送一个更新请求(UPDATE)消息,携带资源预留完成的确认信息,以此告知对方其资源预留已经完成。在此例中,AS判断出已经收到源会话上资源预留完成的确认信息,但是未收到UEB发来的响应消息,因此AS等待此响应消息。步骤415, UE B向AS发送更新请求的响应消息,其中携带SDP answer信息。步骤416, AS向CSCF发送更新请求的响应消息,其中携带SDP answer信息。步骤417, CSCF向UE A发送更新请求的响应消息,其中携带SDP answer信息。在实际实现中此步骤可能不会到达UEA。步骤418,UE B发送振铃消息。在本实施例中此振铃消息可以在发送完远端更新的响应消息之后、即步骤415之后的任一时间内发送。收到振铃请求时,如果AS到MSC/MSC Server之间的会话、即目标会话还没有建 立,则AS向UEA的PS域上、即源会话转发此振铃请求,并且保存此振铃请求,当目标会话建立后向MSC/MSC Server发送振铃消息,即本例中的步骤426 ;
收到振铃请求时,如果目标会话已经建立,那么AS保存此振铃请求,在步骤428中向MSC/MSC Server发送振铃消息。步骤419,AS开始执行会话切换过程,进行远端更新,向UE B发送更新消息,其中携带新的SDP offer信息。步骤420, UE B向AS发送更新消息的响应消息,携带新的SDP answer信息。步骤421 427,同实施例一中所述的步骤319 325。步骤428,AS如果收到了步骤418的振铃消息,则向CSCF发送振铃消息,比如发送SIP 180 消息。步骤429,CSCF将振铃消息转发给MSC/MSC Server。步骤430,MSC/MSC Server收到IP承载上的振铃消息后,转化为CS承载上的振铃消息,发送给UE A0比如发送alerting消息。。步骤431,继续后续操作,接通会话、进行通话至会话结束;或者拒绝会话。图5是本发明的实施例三的流程图。本实施例给出一种主叫UE在PS域的资源预留完成的确认信息及其响应消息到达之后,主叫侧的会话切换请求消息才到达AS的情形下,SDP的协商策略和会话切换过程。具体过程描述如下步骤501 507,同实施例一中的步骤301 307。步骤508 510,同实施例二中的步骤408 410。步骤511, UE B发送更新请求的响应消息,其中携带SDP answer信息。步骤512, AS向CSCF发送更新请求的响应消息,其中携带SDP answer信息。步骤513, CSCF向UE A转发更新请求的响应消息,其中携带SDP answer信息。步骤514,网络根据UE A的测量报告,发起会话切换,为UE A服务的目标控制网元是MSC/MSC Server0这个过程是现有技术,在此不赘述。。步骤515,MSC/MSC Server向CSCF发送会话切换请求,其中携带新的SDP offer信息。步骤516,CSCF将会话切换请求转发给AS。步骤517,AS收到会话切换请求后,找到当前UE A正在进行的一个会话进行切换操作,在该实施例中,即通过步骤501 502及步骤505 506建立的会话。在步骤501 506的过程中,AS可以理解SDP提议和SDP应答信息,从中获知当主叫侧资源预留完成后,主叫UE A会发送一个更新请求(UPDATE)消息,携带资源预留完成的确认信息,以此告知对方其资源预留已经完成。在此例中,AS判断出已经收到源会话上资源预留完成的确认信息,并且收到了该确认信息的响应消息,因此AS进行切换过程。步骤518 531,同实施例二中的步骤418 431。图6是本发明的实施例四的流程图。本实施例给出一种主叫UE的资源预留完成的确认信息到达之前,主叫侧的会话切换请求消息先到达AS的情形下,媒体资源的协商方法和会话切换过程。在本实施例中UE A侧的会话从CS域切换到PS域,且MSC/MSC Server支持资源预留机制。具体过程描述如下步骤601,UE A在CS域上向MSC/MSC Server发起建立会话请求,请求建立到UEB的会话。比如UE A发送SETUP消息。步骤602,MSC/MSC Server收到CS承载的建立会话请求消息后,转化为IP承载的建立会话请求,发给CSCF,请求建立到UE B的会话,在消息头域中指示支持资源预留机制,在消息体中携带SDP信息。比如MSC/MSC Server发送SIP INVITE消息,消息头中携带Required precondition ;消息体中携带SDP信息,其中资源预留信息比如是a = curr: qos local nonea = curr: qos remote nonea = des:qos mandatory local sendrecva = des:qos none remote sendrecv步骤603,CSCF收到建立会话请求消息后,向AS发送建立会话请求,其中携带SDPoffer信息。
步骤604,AS收到建立会话请求后,作为B2BUA,向UE B转发建立会话请求,其中携带SDP offer信息。步骤605,UE B回复会话处理中响应消息,说明会话正在处理中,其中携带SDPanswer信息,在消息中指示需要主叫侧在资源预留完成后发送资源预留完成的确认信息。比如UE B发送SIP 183响应,其中携带SDP answer信息,其中资源预留信息比如是a = curr: qos local nonea = curr: qos remote nonea = des:qos mandatory local sendrecva = des:qos mandatory remote sendrecva = conf:qos remote sendrecv其中,“a = conf:qos remote sendrecv”表示主叫UE在建立起资源预留后,应发送资源预留完成的确认信息。步骤606,AS收到响应消息后,作为B2BUA向CSCF发送会话处理中响应消息,其中携带SDP answer信息。步骤607,CSCF转发会话处理中响应消息给MSC/MSC Server,其中携带SDPanswer 信息。步骤608,MSC/MSC Server收到会话处理中响应消息后,向UE A发送CS承载的响应消息,比如发送call processing消息。步骤609,MSC/MSC Server发送一个请求消息给UE B,确认步骤607的响应消息已经被收到。此消息先后经过CSCF和AS,然后到达UE B。UE B返回一个响应消息给MSC/MSC Server。比如MSC/MSC Server 发送 PRACK 消息给 UE B,UE B 返回一个 2000K 响应。步骤610,网络根据UEA的测量报告,发起会话切换,UEA的会话从CS域切换到PS域。这个过程是现有技术,在此不赘述。步骤611,UE A在PS域上向CSCF发送会话切换请求,其中携带新的SDPoffer信息。比如发送SIP INVITE消息,其中资源信息比如是a = curr:qos local sendrecva = curr: qos remote none步骤612,CSCF将会话切换请求转发给AS,其中携带新的SDP offer信息。步骤613,AS收到会话切换请求后,找到当前UE A正在进行的一个会话进行切换操作,在该实施例中,即UE A通过MSC/MSC Server建立的会话。由于此时UE A的会话(通过MSC/MSC Server建立的)和UE B之间的precondition过程并没有完成,双方的资源都还不是可用状态。在步骤601 608的过程中,AS可以理解SDP提议和SDP应答信息,从中获知当主叫侧资源预留完成后,主叫侧MSC/MSC Server会发送一个更新请求(UPDATE)消息,携带资源预留完成的确认信息,以此告知对方其资源预留已经完成。在此例中,AS尚未收到MSC/MSC Server发来的资源预留完成的确认信息,那么AS不等待该确认信息,先执行切换过程。如果后续收到MSC/MSC Server发来的确认信息,则按照步骤616 619来处理。步骤614,AS开始执行会话切换过程,进行远端更新,向UE B发送更新消息,在消息体中携带SDP offer信息。此消息中携带的SD P offer信息可以来自步骤612中携带的新的SDP offer信息。此消息的另一个功能是作为资源预留完成的确认信息。步骤615,UE B返回响应消息。步骤616 619在实际流程中可能发生,也可能不发生。步骤616,MSC/MSC Server完成资源预留后,向CSCF发送更新消息,其中携带SDPoffer信息,确认资源预留已经完成。比如MSC/MSC Server发送UPDATE消息,携带预留完成的媒体资源信息。其中资源预留信息比如是a = curr:qos local sendrecva = curr: qos remote nonea = des:qos mandatory local sendrecva = des:qos mandatory remote sendrecv步骤617,CSCF向AS转发更新消息。步骤618,收到更新消息后,AS判断出该消息来自于源会话,此时正在进行会话切换。而且在收到的更新消息中,理由参数不是487、即不是"handover cancelled"(切换取消),那么此消息是源会话上携带资源预留完成的确认信息的更新消息。AS不向UE B转发该消息,而是构造响应消息,向CSCF发送响应消息。比如-AS发送一个SIP 4XX的错误响应,说明此会话正处于切换状态。步骤619,CSCF将响应消息转发给MSC/MSC Server。步骤620,UE B发送振铃消息。UE B可以在发送完远端更新的响应消息之后、SP步骤615之后的任一时间内发送此消息。收到振铃请求时,如果AS到UE A在PS域之间的会话、S卩目标会话还没有建立,则AS向UE A的CS域转发此振铃请求,并且保存此振铃请求,当目标会话建立后向UE A的PS域上发送振铃消息,即本例中的步骤628 ;收到振铃请求时,如果目标会话已经建立,那么AS保存此振铃请求,在步骤628中向UE A的PS域上发送振铃消息。步骤621, AS向CSCF发送会话处理中响应消息,其中携带新的SDP answer信息。比如-.AS发送SIP 183响应消息,在消息体中携带新的SDP answer信息。步骤622,CSCF将会话处理中响应消息转发给UE A。步骤623,确认会话处理中响应消息已经收到,与步骤609的过程类似。步骤624 627在实际实现中可能发生,也可能不发生。如果目标会话的建立过程中需要资源预留,那么需要执行步骤624 627 ;如果目标会话的建立过程不需要资源预留,那么不需要执行步骤624 627。步骤624,UE A在PS域上向CSCF发送更新消息,其中在SDP信息中携带资源预留完成的确认信息。比如UE A发送UPDATE消息,其中携带资源预留完成的确认信息。步骤625,CSCF将更新消息转发给AS。步骤626,AS向CSCF发送响应消息。步骤627,CSCF将响应消息转发给UEA。步骤628,AS如果收到了步骤620的振铃消息,则向CSCF发送振铃消息,比如发送SIP 180 消息。 步骤629,CSCF将振铃消息转发给UEA。步骤630,继续后续操作,接通会话、进行通话至会话结束;或者拒绝会话。图7是本发明的实施例五的流程图。本实施例给出一种主叫UE的资源预留完成的确认信息到达之前,主叫侧的会话切换请求消息先到达AS的情形下,媒体资源的协商方法和会话切换过程。在此实施例中主叫UE A支持PS到PS的切换。具体过程描述如下步骤701,UEA在PSl域上向CSCF发起建立会话请求,请求建立到UE B的会话。比如:UE A发送SIP INVITE消息,消息头中携带Required precondition ;消息体中携带SDP信息,其中资源预留信息比如是a = curr: qos local nonea = curr: qos remote nonea = des:qos mandatory local sendrecva = des:qos none remote sendrecv步骤702,CSCF收到建立会话请求消息后,向AS发送建立会话请求,其中携带SDPoffer信息。步骤703,AS收到建立会话请求后,作为B2BUA,向UE B发送建立会话请求。步骤704,UE B回复会话处理中响应消息,说明会话正在处理中,其中携带SDPanswer信息,在消息中指示需要主叫侧在资源预留完成后发送确认信息。比如UE B发送SIP 183响应,其中携带SDP answer信息,其中资源预留信息比如是a = curr: qos local nonea = curr: qos remote nonea = des:qos mandatory local sendrecva = des:qos mandatory remote sendrecva = conf:qos remote sendrecv其中,“a = conf:qos remote sendrecv”表示主叫UE在建立起资源预留后,应发送确认信息。步骤705,AS收到会话处理中响应消息后,作为B2BUA向CSCF转发响应消息,其中携带SDP answer信息。步骤706,CSCF转发会话处理中响应消息给UE A,携带SDP answer信息。步骤707,UE A发送一个请求消息给UE B,确认会话处理中响应消息已经被收到。此消息先后经过CSCF和AS,然后到达UE B。UE B返回一个响应消息给UE A。比如UE A发送PRACK消息给UE B,UE B返回一个2000K响应。
步骤708,网络根据UE A的测量报告,发起会话切换。步骤709,UE A在PS2域上向CSCF发送会话切换请求,其中携带新的SDP offer信息。比如发送SIP INVITE消息,其中资源信息比如是a = curr:qos local sendrecva = curr: qos remote none步骤710,CSCF将会话切换请求转发给AS,其中携带新的SDP offer信息。步骤711,AS收到会话切换请求后,找到当前UE A正在进行的一个会话进行切换操作,在该实施例中,即UE A在PSl域上建立的会话。由于此时UEA的会话(PSl域上)和UE B之间的precondition过程并没有完成,双方的资源都还不是可用状态。在步骤701 706的过程中,AS可以理解SDP提议和SDP应答信息,从中获知当主叫侧资源预留完成后, 主叫侧UE A(PS1域上)会发送一个更新请求(UPDATE)消息,携带资源预留完成的确认信息,以此告知对方其资源预留已经完成。在此例中,AS尚未收到UE A发来的资源预留完成的确认信息,那么AS不等待主叫侧的该确认信息,先执行切换过程。如果后续收到UEA在PSl域上发来的确认信息,按照步骤714 717来处理。步骤712,AS开始会话切换过程,进行远端更新,向UE B发送更新消息,在消息体中携带SDP offer信息。此消息中携带的SDP offer信息可以是来自步骤710中携带的新的SDP offer信息。此消息的另一个功能是作为资源预留完成的确认信息。步骤713,UE B返回响应消息。步骤714 717在实际流程中可能发生,也可能不发生。如果UE A在PSl域上资源预留没有完成,则步骤714 717不会发生。如果UE A在PSl域上资源预留完成,UE A可以根据本地策略或网络通知或用户操作,决定执行步骤714 717,或者不执行步骤714 717。步骤714,UE A在PSl域上完成资源预留后,向CSCF发送更新消息,其中在SDPoffer信息携带资源预留完成的确认信息。比如发送UPDATE消息,携带资源预留完成的确认信息。其中资源预留信息比如是a = curr:qos local sendrecva = curr: qos remote nonea = des:qos mandatory local sendrecva = des:qos mandatory remote sendrecv步骤715,CSCF向AS转发更新消息,携带资源预留完成的确认信息。步骤716、收到更新消息后,AS判断出该消息来自于源会话,此时正在进行会话切换。而且在收到的更新消息中,理由参数不是487、即不是"handover cancelled"(切换取消),那么此消息是源会话上资源预留完成的确认信息。AS不向UE B转发该更新消息,而是构造响应消息,向CSCF发送响应消息。比如发送一个SIP 4XX的错误响应,说明此会话正处于切换状态。步骤717,CSCF将响应消息转发给UEA。步骤718,UE B发送振铃消息。UE B可以在发送完远端更新的响应消息之后、SP步骤713之后的任一时间内发送此消息。收到振铃请求时,如果AS到UE A在PS2域之间的会话、S卩目标会话还没有建立,则AS向UE A的PSl域转发此振铃请求,并且保存此振铃请求,当目标会话建立后向UEA的PS2域上发送振铃消息,即本实施例中的步骤726 ;收到振铃请求时,如果目标会话已经建立,那么AS保存此振铃请求,在步骤726中向UE A的PS2域上发送振铃消息。步骤719 728,同实施例四中步骤621 630。对应上述主叫侧发生会话切换的处理方法,本发明还提供了一种应用服务器,包括信息处理模块和会话切换模块。其中,信息处理模块,用于在需要资源预留的会话建立过程中,获知媒体资源协商和预留的情况,并在收到会话切换请求时,判断是否收到主叫侧的资源预留完成的确认信息。会话切换模块,用于根据判断的结果来决定何时执行会话切换过程。需要说明的是,主叫侧的会话切换发生在主叫侧和被叫侧的资源协商过程中,且被叫侧发送振铃请求之前。
·
会话切换模块进一步用于,在信息处理模块没有收到该确认信息时,会话切换模块不等待该确认信息,执行会话切换过程;在信息处理模块已收到该确认信息,但未收到确认信息的响应消息时,会话切换模块等待该响应消息,并在收到该响应消息后执行会话切换过程;在信息处理模块已收到该确认信息,以及确认信息的响应消息时,会话切换模块执行会话切换过程。另外,在信息处理模块没有收到主叫侧的资源预留完成的确认信息的情况下,会话切换模块执行会话切换过程后,如果信息处理模块收到主叫侧的资源预留完成的确认信息,则会话切换模块不向被叫侧转发该资源预留完成的确认信息,而构造错误响应回复给主叫侧。进一步的,在会话切换模块执行会话切换过程中,信息处理模块收到被叫侧的振铃请求;此时,如果主叫侧的目标会话还没有建立,则会话切换模块向主叫侧的源会话转发该振铃请求,保存该振铃请求,并在主叫侧的目标会话建立后向目标会话转发该振铃请求;如果主叫侧的目标会话已建立,则会话切换模块保存该振铃请求,并向目标会话转发该振铃请求。以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。
权利要求
1.一种主叫侧发生会话切换的处理方法,其特征在于,该方法包括 在需要资源预留的会话建立过程中,应用服务器(AS)获知媒体资源协商和预留的情况,并在收到会话切换请求时,判断是否收到主叫侧的资源预留完成的确认信息,且根据判断的结果来执行会话切换过程。
2.根据权利要求I所述主叫侧发生会话切换的处理方法,其特征在于,所述主叫侧的会话切换发生在主叫侧和被叫侧的资源协商过程中,且被叫侧发送振铃请求之前。
3.根据权利要求I所述主叫侧发生会话切换的处理方法,其特征在于,所述判断是否收到主叫侧的资源预留完成的确认信息,且根据判断的结果来决定何时执行会话切换过程,具体为 如果没有收到所述确认信息,则所述AS不等待所述确认信息,执行会话切换过程; 如果已收到所述确认信息,但未收到确认信息的响应消息,则所述AS等待所述响应消息,并在收到所述响应消息后执行会话切换过程; 如果已收到所述确认信息,以及所述确认信息的响应消息,则所述AS执行会话切换过程。
4.根据权利要求1、2或3所述主叫侧发生会话切换的处理方法,其特征在于,该方法进一步包括 在所述AS没有收到主叫侧的资源预留完成的确认信息的情况下,执行会话切换过程后,如果所述AS收到所述主叫侧的资源预留完成的确认信息,则不向被叫侧转发所述资源预留完成的确认信息,而构造错误响应回复给所述主叫侧。
5.根据权利要求1、2或3所述主叫侧发生会话切换的处理方法,其特征在于,该方法进一步包括 在执行会话切换过程中,所述AS收到被叫侧的振铃请求; 此时,如果主叫侧的目标会话还没有建立,则所述AS向主叫侧的源会话转发所述振铃请求,保存所述振铃请求,并在所述主叫侧的目标会话建立后向所述目标会话转发所述振铃请求; 如果主叫侧的目标会话已建立,则所述AS保存所述振铃请求,并向所述目标会话转发所述振铃请求。
6.—种AS,其特征在于,包括 信息处理模块,用于在需要资源预留的会话建立过程中,获知媒体资源协商和预留的情况,并在收到会话切换请求时,判断是否收到主叫侧的资源预留完成的确认信息; 会话切换模块,用于根据判断的结果来执行会话切换过程。
7.根据权利要求6所述AS,其特征在于,所述主叫侧的会话切换发生在主叫侧和被叫侧的资源协商过程中,且被叫侧发送振铃请求之前。
8.根据权利要求6所述AS,其特征在于,所述会话切换模块进一步用于, 在所述信息处理模块没有收到所述确认信息时,所述会话切换模块不等待所述确认信息,执行会话切换过程; 在所述信息处理模块已收到所述确认信息,但未收到确认信息的响应消息时,所述会话切换模块等待所述响应消息,并在收到所述响应消息后执行会话切换过程;在所述信息处理模块已收到所述确认信息,以及所述确认信息的响应消息时,所述会话切换模块执行会话切换过程。
9.根据权利要求6、7或8所述AS,其特征在于,在所述信息处理模块没有收到主叫侧的资源预留完成的确认信息的情况下,所述会话切换模块执行会话切换过程后,如果所述信息处理模块收到主叫侧的资源预留完成的确认信息,则所述会话切换模块不向被叫侧转发所述资源预留完成的确认信息,而构造错误响应回复给所述主叫侧。
10.根据权利要求6、7或8所述AS,其特征在于,在所述会话切换模块执行会话切换过程中,所述信息处理模块收到被叫侧的振铃请求; 此时,如果主叫侧的目标会话还没有建立,则所述会话切换模块向主叫侧的源会话转发所述振铃请求,保存所述振铃请求,并在所述主叫侧的目标会话建立后向所述目标会话转发所述振铃请求; 如果主叫侧的目标会话已建立,则所述会话切换模块保存所述振铃请求,并向所述目标会话转发所述振铃请求。
全文摘要
本发明公开了一种主叫侧发生会话切换的处理方法和应用服务器(AS),方法包括在需要资源预留的会话建立过程中,应用服务器(AS)获知媒体资源协商和预留的情况,并在收到会话切换请求时,判断是否收到主叫侧的资源预留完成的确认信息,且根据判断的结果来执行会话切换过程。通过本发明,实现了振铃前主叫侧发生会话切换情况下的媒体资源协商和预留,保证了振铃前的会话切换成功。
文档编号H04W88/14GK102761915SQ20111011047
公开日2012年10月31日 申请日期2011年4月29日 优先权日2011年4月29日
发明者徐绍华, 李世涛 申请人:中兴通讯股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1