UE-----> P-CSCF:

  1. UE-----> P-CSCF:## UE-----> P-CSCF

UE首先读取USIM卡信息获取IMSI,再从IMSI推导出IMPI和T-IMPU,向IMS拜访网络入口P-CSCF发送REGISTER消息请求注册。
Via:用以保存请求历经的路径,使响应能根据请求的路径返回。
Request-URI:请求行的组成部分,用于标明请求的目的方。即“sip:ims.mnc020.mcc460.3gppnetwork.org”。
From/To:注册用户的公共身份标识T-IMPU。
Contact:Contact头域会携带注册用户的联系地址,注册时长。同时会携带一些标签表明自己支持业务的能力。本例中:

50.53.51.2:5060:用于标识注册用户的IP地址和端口号。

expires:标识用户注册时长,0为注销,非0为注册。

+g.3gpp.icsi-ref=“urn%3Aurn-7%3A3gpp-service.ims.icsi.mmtel”:支持MMTel语音。

+g.3gpp.smsip:支持IP短消息。

2.P-CSCF ------- I-CSCF、S-CSCF :

P-CSCF根据Request-URI头域中域名查询DNS服务器,获得归属域网络入口I-CSCF网元地址,向I-CSCF转发REGISTER消息。

Android IMS 注册状态 获取 ims用户注册基本流程_eclipse


Via:P-CSCF将自己的地址信息“192.221.66.1:13801”添加到Via头域中,用于响应消息路由

Path:P-CSCF在REGISTER消息中插入该消息头,将自己的地址“<*sip:term@192.221.66.1:13801;transport=udp;lr;ssn;hwnos;TYPE=V4;IP=50.53.51.2;PORT=5060;Dpt=8e62_86;TRC=740-ffffffff;srti=s2_1>”放入其中,用于会话过程中 被叫S-CSCF寻找P-CSCF使用

P-Visited-Network-ID:P-CSCF查询本地PCSCF表中的“本地网络标识”参数(通过ADD PCSCF配置),填入该头域中,用于向注册用户的归属网络标识用户当前的拜访网络信息。

P-Charging-Vector:P-CSCF在REGISTER消息中插入该消息头,将计费标识“icid-value=“pcscf06.193.152.20140804063708””放入其中,以完成网络上计费点信息的传送。

Require:需要后续网元支持处理的头域。

I-CSCF收到REGISTER消息后,做如下处理:

I-CSCF从Via头域获取P-CSCF的地址或主机名,并检查P-CSCF的地址或主机名是否在信任域或本地域(通过ADD TDMI命令中的“可信任域名”参数配置)。

查询到记录:表明用户当前的拜访网络可信任,I-CSCF允许用户进行注册,继续进行后续处理。

未查询到记录:表明用户当前的拜访网络不可信任,I-CSCF会返回错误码403,提示“Request From Untrusted Domain”,拒绝用户的注册请求。

选择优先级最高的HSS;再查询IHSSL表(通过ADD IHSSL配置)获取HSS网元的IP地址,向融合HLR/HSS发送UAR消息,请求获取S-CSCF的地址或者能力集。
UAR消息在Cx接口中使用时,由I-CSCF发送至HSS,用于用户的接入授权请求;在Dx接口中使用时,由I-CSCF发送至SLF,用于请求选择HSS
Session-Id:“表示该消息所属会话的ID,用于唯一标识一路会话,不同会话的会话ID不能重复。
当UAA消息中携带Server-Name时,表示携带的为S-CSCF的地址。

当UAA消息中携带Server-Capabilities时,表示携带的为S-CSCF的能力集。


Android IMS 注册状态 获取 ims用户注册基本流程_IP_02

I-CSCF根据融合HLR/HSS返回的S-CSCF地址,向S-CSCF转发REGISTER消息。
MAR:消息由命令码303和设置命令标志“R”表示,用于请求认证、授权信息。