首页 理论教育IMS网络通信流程解析

IMS网络通信流程解析

【摘要】:IMS网络内的私有用户标识应保证唯一性。下面介绍IMS中用户注册的典型通信流程。IMS用户在完成接入网的认证鉴权并建立了接入网的IP信令连接后,可以发起应用层的注册。图7.15IMS用户初始注册示意图①UE向拜访网络的P-CSCF发送REGISTER 消息,携带了公有用户标识、私有用户标识、用户归属网络的域名及IP地址信息。S-CSCF 发送200响应消息给I-CSCF,包含注册用户归属网络信息。IMS网络将P-CSCF和S-CSCF分离,简单地解决了终端的漫游问题,支持了用户的移动性。

1.用户注册

一个IMS用户具有两种用户标识,私有用户标识(Private User Identities)和公有用户标识(Public User Identities)。每个IMS用户至少有一个私有用户标识,存在于终端的UICC(通用集成电路卡)中,由归属地网络分配,用于用户接入IMS网络的注册、鉴权、认证和计费,但不用于呼叫的寻址和路由。IMS网络内的私有用户标识应保证唯一性。同时,每个IMS用户至少有一个公有用户标识,是用户在IMS网络中通信的标识,用于SIP消息的路由。私有用户标识对应于用户终端中的智能卡,一个用户可以有M 个终端智能卡,因此可以有M 个用户私有标识。每个私有用户标识又可以对应N 个公有用户标识(即一机多号)。一个公有用户标识也可以与多个私有用户标识关联(类似一号通)。

下面介绍IMS中用户注册的典型通信流程。IMS用户在完成接入网的认证鉴权并建立了接入网的IP信令连接后,可以发起应用层的注册。注册过程完成公有用户标识和当前地址的绑定,使用户可以使用IMS服务。注册是实现用户移动性和发现的基础,也是IMS其他功能正常执行的前提,包括初始注册、重注册和注销。

在初始注册过程中,IMS网络会为用户分配一个S-CSCF。S-CSCF和用户共同完成用户和网络之间的双向认证,在用户和P-CSCF之间建立相应的安全联盟,之后将用户签约业务信息下载到所分配的S-CSCF。S-CSCF记录用户接入的P-CSCF,为后续会话和其他SIP事务请求发现和定位用户。在注册过程中,P-CSCF和用户之间的SIP压缩功能也得到初始化,在服务器和用户之间传递隐式注册的公有用户标识。在成功进行初始注册之后,用户通过周期性的注册更新,可以保持其注册处于激活状态。在注册定时器超时前,用户可以通过SIP的注销过程注销其状态。下面以某个处于漫游状态的IMS用户进行初始注册为例进行介绍,具体通信流程见图7.15。假设用户已经完成PDF 上下文建立、P-CSCF 发现过程,Cx接口采用Diameter协议,其他接口采用SIP协议。

图7.15中的初始注册流程具体如下所述。

图7.15 IMS用户初始注册示意图

①UE向拜访网络的P-CSCF发送REGISTER 消息,携带了公有用户标识、私有用户标识、用户归属网络的域名及IP地址信息。

②根据消息中的归属网络域名,P-CSCF确定用户处于漫游状态,于是向DNS查询用户归属网络的I-CSCF地址,然后P-CSCF将注册消息发送给相应的I-CSCF。在此,REGISTER消息增加了P-CSCF地址/域名和所在网络的标识消息。

③I-CSCF向HSS发送Cx查询请求,要求得到为UE 提供服务的S-CSCF。Cx查询请求中包含了公有用户标识、私有用户标识和P-CSCF 所在网络的标识。HSS返回S-CSCF 的名称和能力集,I-CSCF选择一个合适的S-CSCF。

④I-CSCF向S-CSCF转发REGISTER 消息。

⑤收到REGISTER 消息后,S-CSCF执行用户的认证和授权。S-CSCF向HSS请求认证矢量,包括网络认证令牌AUTN、期望从UE 得到的应答值XRES、会话加密密钥CK 等。SCSCF在HSS返回的认证矢量集中选择一个认证矢量,并指示HSS本S-CSCF将为注册用户服务。

⑥S-CSCF向I-CSCF发送401未授权消息。

⑦I-CSCF向P-CSCF转发401未授权消息。

⑧P-CSCF向UE转发401未授权消息。

⑨UE验证该消息,并计算响应值RES,放在REGISTER 消息中发送给P-CSCF。

⑩P-CSCF向I-CSCF转发REGISTER 消息。

⑪I-CSCF向HSS发送Cx查询,HSS根据记录信息,返回S-CSCF地址。

⑫I-CSCF向S-CSCF发送REGITER 消息。

⑬S-CSCF比较RES值和期望从UE得到的应答值XRES。如果匹配,则用户通过验证。S-CSCF通知HSS用户注册成功,并要求HSS下发该用户的签约数据。

⑭S-CSCF发送200响应消息给I-CSCF,消息包含了注册用户归属网络的联系信息。

⑮I-CSCF向P-CSCF转发200响应消息,并删除与本次注册有关的信息。

⑯P-CSCF保存注册用户归属网络的联系信息,并将200响应消息转发给UE。用户初始注册流程结束。

在成功完成初始注册后,用户通过周期性的注册更新,可以保持其注册处于激活状态。这就是用户的重注册过程,如图7.16所示。

图7.16 IMS用户重注册示意图

图7.16中的重注册流程具体如下所述。

①UE检测到注册即将超时,向初始注册时的P-CSCF 发送一个新的REGISTER 消息,携带公有用户标识、私有用户标识、用户归属网络域名和UE的IP地址。

②收到UE的注册请求后,由于不能使用缓存中上次注册使用的I-CSCF 地址,P-CSCF根据消息中归属网络域名,向DNS查询用户归属网络的I-CSCF地址,并将REGISTER 消息发送给响应I-CSCF。

③I-CSCF向HSS发送Cx查询,查询用户注册状态。HSS根据记录信息,返回当前为注册用户服务的S-CSCF地址。

④I-CSCF向S-CSCF转发REGISTER 消息。

⑤S-CSCF收到有安全保护的REGISTER 消息后,不需要再向用户发送鉴权请求,只是更新该用户的注册定时器。S-CSCF 发送200响应消息给I-CSCF,包含注册用户归属网络信息。

⑥I-CSCF向P-CSCF转发200响应消息,并删除与本次注册有关的信息。

⑦P-CSCF保持注册用户归属网络的联系信息,并将200响应消息转发给UE。用户的重注册流程结束。

2.IMS网内通信

用户在完成注册后,就可以使用IMS网络提供的服务了。IMS网络将P-CSCF和S-CSCF分离,简单地解决了终端的漫游问题,支持了用户的移动性。对于漫游用户而言,拜访网络提供IP连接和IMS接入点(P-CSCF),归属网络提供IMS会话和业务控制功能。也就是说,漫游用户必须先注册到归属网络的S-CSCF。用户所有的发起业务都由拜访网络的P-CSCF 根据注册时获得的信息路由到用户的归属网络,由归属网络的S-CSCF 将业务映射到本地或第三方的业务平台。对于用户的终结业务,通过归属网络的I-CSCF 可以定位到用户注册的S-CSCF,S-CSCF将请求转发给P-CSCF,再转发给漫游用户。下面以两个用户都处于漫游状态为例,介绍IMS的典型通信流程。假设主叫和被叫用户的S-CSCF 属于不同运营商,且归属网络对拜访网络不使用拓扑隐藏处理,结束通话时主叫用户先挂机。图7.17描述了此次通信的主要信令流程。

图7.17中的用户通信流程具体如下所述。

图7.17 IMS典型通信流程示意图

①UE1向拜访网络的P-CSCF1发送SIP INVITE 请求,INVITE 请求消息的SDP中包含初始媒体信息。

②P-CSCF1将INVITE消息转发给S-CSCF1。

③S-CSCF1验证用户业务属性,进行SDP鉴权,并为该用户发起一个呼叫逻辑。

④S-CSCF1进行被叫号码分析,确定被叫归属网络的I-CSCF。

⑤I-CSCF向HSS查询,获得被叫S-CSCF2的地址。

⑥I-CSCF向S-CSCF2转发INVITE消息。

⑦S-CSCF2验证被叫用户的业务属性,进行SDP鉴权,并触发该用户业务逻辑。

⑧S-CSCF2将INVITE消息转发给P-CSCF2。

⑨P-CSCF2转发INVITE消息给UE2。

⑩UE2选择UE1支持的媒体格式子集,生成183响应消息给P-CSCF2,其中的SDP携带被叫用户媒体信息。

⑪P-CSCF2授权本次会话需要的QoS资源。

⑫~⑮UE2回送183经P-CSCF2,S-CSCF2,I-CSCF,S-CSCF1转发至P-CSCF1。

⑯P-CSCF1授权本次会话所需的QoS资源。

⑰P-CSCF1向UE1转发183应答消息。

⑱UE1收到183应答后决定媒体信息,并通过PRACK 确认。

⑲UE1为本次会话进行资源预留。

⑳~㉓PRACK 消息经P-CSCF1,S-CSCF1,S-CSCF2,P-CSCF2转发至UE2。

㉔UE2对PRACK 消息产生的200响应发送至P-CSCF2。

㉕UE2进行资源预留。

㉖~㉙UE2对PRACK 消息的200响应经P-CSCF2,S-CSCF2,S-CSCF1,P-CSCF1转发至UE1。

㉚~㉞UE1 在资源预留完成后,发送UPDATE 请求说明资源预留成果,该请求经P-CSCF1,S-CSCF1,S-CSCF2,P-CSCF2转发至UE2。

㉟~㊴UE2 对 UPDATE 请求的200 响应经P-CSCF2,S-CSCF2,S-CSCF1,P-CSCF1转发至UE1。

㊵~㊺UE2 接受该次会话,产生180 响应消息,经P-CSCF2,S-CSCF2,S-CSCF1,P-CSCF1转发至UE1。

㊻当被叫用户接听,UE2发送200响应消息给P-CSCF2。

㊼P-CSCF2收到对INVITE消息的200响应后,批准QoS资源可用。

㊽~[51]UE2对INVITE 消息的200响应经P-CSCF2,S-CSCF2,I-CSCF,S-CSCF1转发至P-CSCF1。

[52]P-CSCF1收到对INVITE消息的200响应后,批准QoS资源可用。

[53]P-CSCF1将200响应转发给UE1。

[54]~[58]UE1发送ACK 请求,经P-CSCF1,S-CSCF1,S-CSCF2,P-CSCF2 转发至UE2。此时,UE1与UE2之间的媒体通道建立,双方可以传送媒体流。

[59]当此次通信结束,主叫用户UE1发送BYE消息给P-CSCF1,并释放为UE1接收消息路径预留的IP网络资源。

[60]P-CSCF1删除为UE1本次会话预留的资源,确认本次会话相关的IP承载被释放。

[61]~[63]BYE请求经P-CSCF1,S-CSCF1,S-CSCF2转发至P-CSCF2。

[64]P-CSCF2删除为UE2本次会话预留的资源,确认本次会话相关的IP承载被释放。

[65]P-CSCF2转发BYE消息给UE2。

[66]UE2确认释放为其接收消息路径预留的IP网络资源。同时UE2发送BYE的200消息给P-CSCF2。

[67]~[70]BYE 的200 响应消息经P-CSCF2,S-CSCF2,S-CSCF1,P-CSCF1 转发至UE1。本次呼叫的释放完成。

3.IMS与PSTN 网络的互通

为了实现固定网络和移动网络的融合,IMS系统的设计考虑到了多方面的需求。IMS和PSTN 网络之间的互通如图7.18所示。当处于IMS网络中的主叫用户发起会话请求后,SCSCF会根据被叫用户地址判断会话是在IMS网络中进行还是需要连接到PSTN 网络中,然后根据结果再执行相应的信令流程。

图7.18 IMS与PSTN 网络的互通流程示意图

下面给出一个IMS和PSTN 网络互通的具体实例。假设主叫用户处于归属网络内,处理会话的S-CSCF、完成互通功能的BGCF 所在网络与互通网络为同一运营商网络。通话结束后被叫用户先挂机。具体呼叫处理流程见图7.19所示。用户通信流程具体如下所述。

图7.19 IMS与PSTN 互通的典型通信流程示意图

①IMS用户UE向归属网络P-CSCF发送INVITE请求,其中SDP包含初始媒体信息。

②P-CSCF将INVITE消息转发给S-CSCF。

③S-CSCF验证用户的业务属性,进行SDP鉴权,并触发用户主叫业务。

④S-CSCF进行被叫号码分析,将INVITE消息转发给BGCF。

⑤BGCF根据本地策略选择一个可以与PSTN 互通的网络,并将INVITE消息转发给互通网络中的一个MGCF。

⑥MGCF发起H.248交换过程,选择一个呼出信道,并选择MGW 媒体能力。

⑦MGCF选择呼叫发起端支持的媒体流子集,回送183响应消息给BGCF,其中的SDP携带被叫用户媒体信息。

⑧~⑨MGCF回送的183响应消息经S-CSCF转发至P-CSCF。

⑩P-CSCF授权本次会话需要的QoS资源。

⑪P-CSCF向UE转发183应答消息。

⑫UE决定会话的媒体信息,并发PRACK 消息。

⑬UE进行资源预留。

⑭~⑯PRACK 消息经P-CSCF,S-CSCF,BGCF转发至MGCF。

⑰MGCF利用H.248消息指示MGW 修改终端的媒体特性,并为本次会话预留资源。

⑱MGCF对PRACK 消息产生200响应,并将响应消息发给BGCF。

⑲MGW 进行资源预留。

⑳~㉒GCF对PRACK 消息产生的200响应经BGCF,S-CSCF,P-CSCF转发至UE。

㉓~㉖UE在资源预留完成后发生UPDATE 请求,经P-CSCF,S-CSCF,BGCF 转发至MGCF。

㉗MGCF收到UPDATE 请求后,向PSTN 交换局发送ISUP初始地址消息IAM,包含主被叫号码。

㉘~㉛MGCF对UPDATE请求生成200响应,指示MGCF资源预留成果。200响应经BGCF,S-CSCF,P-CSCF转发至UE。

㉜PSTN 交换局收齐被叫号码,并发现被叫空闲,向被叫振铃,并回送ISUP地址全消息(ACM)。

㉝~㊱MGCF 收到PSTN 侧送来的ACM 消息,发送180 响应,经BGCF,S-CSCF,P-CSCF转发至UE。

㊲当被叫用户接听,PSTN 交换局回送ISUP被叫应答消息(ANM)。

㊳MGCF通过H.248消息,指示MGW 将媒体通道的属性改为双向。

㊴~㊶MGCF产生对INVITE消息的200响应,经BGCF,S-CSCF转发至P-CSCF。

㊷P-CSCF收到200响应后,批准QoS资源。

㊸P-CSCF将200响应转发给UE。

㊹~㊼UE发送ACK 请求,经P-CSCF,S-CSCF,BGCF 转发至MGCF。主被叫之间的媒体通道建立,双方可以传送媒体流。

㊽PSTN 交换局发现用户挂机,向MGCF发送ISUP释放消息(REL)。

㊾MGCF回送ISUP释放完成消息(RLC),PSTN 侧的话路释放完成。

㊿MGCF通过H.248消息,指示MGW 释放本次会话相关的资源,并发送RELEASE消息,确认本次会话相关的IP承载被释放。

[51]~[53]MGCF生成BYE请求,经BGCF,S-CSCF转发至P-CSCF。

[54]P-CSCF删除为UE本次会话预留的资源,并确认本次会话相关IP承载被释放。

[44]P-CSCF转发BYE消息给UE。

[56]~[59]UE发起承载的PDP上下文释放消息,释放为接收消息路径预留的IP网络资源。UE对BYE的200 响应消息经P-CSCF,S-CSCF,BGCF 转发至MGCF。本次呼叫的释放完成。