IMS包含两个流程,注册流程和呼叫流程,这里先介绍注册流程,在注册之前,需要引入一些相关的概念。
一.相关概念
1.IMS 用户标识体系:IMPI 与 IMPU
IMS(IP Multimedia Subsystem)包含两个核心基础流程:注册流程与呼叫流程。通过这两个流程的协同运作,实现用户身份认证、网络接入及多媒体通信功能。以下详细阐述注册流程及其相关概念。
1.1 私有标识(IMPI)
(1) 与物理终端一一对应,作为终端设备与网络之间进行双向认证的唯一凭证。
(2) 用于验证用户身份合法性,确保通信安全,不直接对外公开。
1.2 公有标识(IMPU)
(1) 对应实体号码,是用户对外通信时可路由寻址的公开标识,类似于电话号码或互联网地址。
(2) 支持用户通过多种终端设备(如手机、固定电话)接入网络,并实现不同终端间的通信路由。
1.3 标识映射关系
IMPU 与 IMPI 之间存在多对多关系,即:
(1) 一机多号:一个物理终端(对应一个 IMPI)可绑定多个 IMPU(如同一手机支持多个电话号码)。
(2) 一号多机:一个 IMPU(如主号码)可关联多个 IMPI(如家庭宽带、手机等不同终端共享同一号码)。
2. 标识的 URI 格式规范
IMPU、IMPI 及归属网络域名称均以SIP URI(Session Initiation Protocol Uniform Resource Identifier)或TEL URI形式呈现,具体格式要求如下:
2.1 SIP URI 格式
遵循 “用户名 @域名” 结构,与电子邮件格式一致。
IMPU = "sip:+862588510122@js.ctcims.cn"
其中,+862588510122
为用户标识,js.ctcims.cn
为归属网络域名。
2.2 TEL URI 格式
以电话号码为核心标识,适用于传统电信网与 IP 网的互通场景。
示例:
IMPU = "tel:+8618885101224"
直接以电话号码+8618885101224
作为用户寻址标识。
3.归属域和漫游域
3.1 归属域(Home Domain)
定义:指用户签约数据所属的运营商网络域,即用户办理业务时的签约运营商网络。
核心特征:
(1) 存储用户的签约信息(如用户标识 IMPI/IMPU、业务权限、认证密钥等)
(2) 负责对用户进行身份认证、授权及计费管理,是用户在 IMS 网络中的 “归属地”
(3) 作为用户通信的基础网络,提供默认的服务路由与资源分配
3.2 漫游域(Roaming Domain)
定义:当用户通过归属域以外的其他运营商网络接入IMS时,该外部运营商网络称为漫游域。
核心特征:
(1) 用户在漫游域内使用网络服务时,需通过漫游协议与归属域交互完成认证和业务授权。
(2) 漫游域为用户提供临时接入服务,其网络资源与归属域协同工作,确保用户通信连续性。
(3) 漫游场景分为国内漫游与国际漫
3.3 相对性原则
归属域与漫游域的划分是相对运营商而言的,如图1.1所示:
(1) 对用户而言,其签约的运营商网络始终为归属域,其他运营商网络均为漫游域。
(2) 对运营商而言,若用户签约于本网络,则为本网络的归属用户;若用户通过其他网络接入本网络服务,则本网络对该用户而言为漫游域。
示例:
用户 A 签约于运营商 X(归属域为 X),当用户 A 在运营商 Y 的网络覆盖范围内接入时,运营商 Y 的网络即为漫游域。
运营商 X 与运营商 Y 之间通过漫游协议完成用户认证、业务路由及费用结算。
游,均需依赖归属域与漫游域之间的互联互通协议(如 SIP 中继、运营商间接口协议等)。
图1.1 归属域与漫游域区别
二. 注册流程概念
在 IMS(IP Multimedia Subsystem)网络中,注册(Registration)是用户终端接入网络并建立通信能力的基础环节,其核心目标如下:
1. 建立通信标识与网络地址的映射
用户通过 IMPU(SIP URI 或 TEL URI)进行通信,而注册流程的本质是在 IMS 网络中建立用户公有标识(IMPU)与当前终端 IP 地址的对应关系。
示例:用户 IMPU 为 “sip:user@home.com”,注册时网络记录其当前 IP 为“192.168.1.100”,后续通信请求可通过该 IP 寻址终端。
作用:确保网络能够基于用户标识(如号码)准确路由信令和媒体流至目标终端。
2. 获取用户位置与业务能力信息
注册过程中,终端需向网络上报当前位置信息(如归属域或漫游域的网络标识)及支持的业务能力(如高清语音、视频通话等)。
网络通过这些信息:
为用户分配适配的服务资源(如带宽、编解码协议)
在漫游场景中协调归属域与漫游域的路由策略
3. 保障网络安全的鉴权与认证
注册流程通过IMPI(私有标识)与网络的双向认证机制,确保只有合法用户可接入网络。
具体机制:
(1)终端使用 IMPI 携带认证密钥(如 AKA 协议)向归属域发起认证请求
(2)归属域验证通过后,为用户颁发临时会话密钥,用于后续通信加密。
意义:防止非法终端仿冒用户身份,避免信令欺诈和数据泄露。
4.鉴权
鉴权,即认证,是识别某实体或用户的身份,并确保该实体或用户为合法用户身份的方法。
归属网络通过用户初始注册过程对用户进行鉴权。
(1) 当用户终端发起初始注册时,S-CSCF根据REGISTER消息中携带的头域以及用户在 HSS上开户时选择的鉴权方式对终端进行鉴权。
(2) 目前彩固用户使用HTTP Digest鉴权方式,也即使用用户名和密码进行鉴权。
注册过程的鉴权与认证保证了网络的安全性。
三. 业务签约
业务签约数据(Service Profile)是业务和用户相关数据的一个集合,如图3.1所示
(1)可选项目包括计费地址设置、闭锁设置、注册权限设置、漫游权限设置、签约媒体ID、 初始过滤准则iFC(Initial Filter Criteria)等。
(2)其中的iFC将指示SCSCF进行业务的触发(仅用于触发AS,具体业务由AS实现)
(3)开户时在HSS中配置并储存,注册成功后下发到SCSCF。
图3.1 业务签约数据
四. 隐式注册、第三方注册
4.1 隐式注册(IRS-Implicit Registration Set)
(1) 当一个IMPI关联多个IMPU,且多个IMPU处于相同的隐式注册集中时,允许通过其中的一个IMPU的一次IMS注册完成隐式注册集中其他所有IMPU的注册,这被称为隐式注册。
(2) 在S-CSCF进行呼叫控制时需要用到缺省IMPU,HSS向S-CSCF下发用户签约数据时,会将IRS中的缺省IMPU发给S-CSCF。
4.2 第三方注册 (Third-Party Resgister)
如果用户已签约IMS业务,则用户成功注册后,S-CSCF要检查所下载的初始过滤准则iFC,并触发去往为用户服务的AS的路由,通知AS用户已经注册并且可到达。
五.注册流程
5.1 P-CSCF的发现过程
为了和IMS网络通信,UE必须知道P-CSCF的至少一个IP地址,UE查找P-CSCF IP地址的过程为CSCF发现过程。具体过程是这样子的:
(1)UE → BAC:接入请求(含 BAC 地址配置)
(2) BAC → DNS:请求解析 P-CSCF 域名(pcscf1.ims.example.com)
(3)DNS → BAC:返回 P-CSCF IP(如 10.0.1.5)
(4)UE → P-CSCF:发送 SIP REGISTER 请求(携带 IMPI/T-IMPU)
通过以上流程,UE 最终获取 P-CSCF 的 IP 地址,完成 IMS 注册的第一步网络节点发现。
5.2 S-CSCF的分配
当一个用户注册到网络中要接入IMS业务时,I-CSCF就分配一个S-CSCF给UE。
I-CSCF与HSS通过Cx接口进行通讯,从而得到选择S-CSCF时所需要的信息:
(1)当HSS返回一个S-CSCF的名字时,I-CSCF使用HSS返回的S-CSCF的名字去查找S-CSCF的IP地址
(2)当HSS返回一个S-CSCF的能力集时,I-CSCF根据接收到的每个S-CSCF的能力集进行某种选择算法,选择一个合适的S-CSCF.
5.3 注册信令流程
(1)UE首先读取USIM卡信息获取IMSI,再从IMSI推导出IMPI和T-IMPU,向IMS拜访网络入口P-CSCF发送REGISTER消息请求注册。REGISTER消息样例如下,关键头如下所示”
-
Request-URI:标明注册目标(如 IMS 网络地址),类似 “我要去 XX 窗口办理业务”。
-
From/To:填写临时号码(T-IMPU),表明 “我是 XXX,要注册自己”。
-
Contact:留下 IP 地址、注册时长(如 24 小时)和支持的业务(如 VoLTE),类似 “我的联系方式是 XXX,能办这些事”。
-
Authorization:提供私有标识(IMPI,类似身份证号)和密码验证,证明 “我是合法用户”。
-
Via:记录消息经过的节点(如 P-CSCF),确保回复能原路返回,类似 “快递物流轨迹”。
REGISTER sip:ims.mnc020.mcc460.3gppnetwork.org SIP/2.0
To: <sip:460200755002189@ims.mnc020.mcc460.3gppnetwork.org>
From: <sip:460200755002189@ims.mnc020.mcc460.3gppnetwork.org>;tag=Z7dcbdF
Contact: <sip:460200755002189@50.53.51.2:5060>;expires=3600;+g.3gpp.icsi-ref="urn%3Aurn-7%3A3gpp-service.ims.icsi.mmtel";+g.3gpp.smsip;+sip.instance="<urn:gsma:imei:35745704-383256-8>"
P-Access-Network-Info: 3GPP-E-UTRAN-TDD;utran-cell-id-3gpp="4602000000000200"
Supported: path
Allow: INVITE,ACK,BYE,CANCEL,REGISTER,INFO,PRACK,SUBSCRIBE,NOTIFY,MESSAGE,REFER,PUBLISH
Authorization: Digest username="460200755002189@ims.mnc020.mcc460.3gppnetwork.org",realm="ims.mnc020.mcc460.3gppnetwork.org",uri="sip:ims.mnc020.mcc460.3gppnetwork.org",nonce="",response=""
Call-ID: Y6dcbdFAK@50.53.51.2
CSeq: 1 REGISTER
Max-Forwards: 70
User-Agent: RCS-client/OMA1.0 HW-VxW/V1.0
Via: SIP/2.0/UDP 50.53.51.2:5060;branch=z9hG4bKW8dcbd2vnaYvnQfaaqep;rport
Content-Length: 0
(2)P-CSCF根据Request-URI头域中域名查询DNS服务器,获得归属域网络入口I-CSCF网元地址,向I-CSCF转发REGISTER消息。转发消息前的处理:
1. 向 Via 头域添加自身地址
操作:插入地址信息 192.221.66.1:13801
作用:记录消息流经的节点路径,确保网络返回的响应消息能按原路回传至 UE,类似 “快递物流追踪记录”。
2. 插入 Path 头域
操作:填入地址 sip:term@192.221.66.1:13801;...(含 IP、端口等参数)
作用:为后续会话(如呼叫)提供 P-CSCF 的固定路由地址,方便被叫方的 S-CSCF 找到当前 P-CSCF,确保通信链路正确建立。
3. 填充 P-Visited-Network-ID 头域
操作:从本地配置(ADD PCSCF)获取 “本地网络标识” 参数并填入
作用:向用户的归属网络报告当前所在的 “拜访网络”(漫游域或接入域)信息,用于归属网络识别用户位置并适配服务(如漫游计费、路由策略)。
4. 插入 P-Charging-Vector 头域
操作:添加计费标识 icid-value="pcscf06.193.152.20140804063708"
作用:传递计费相关信息(如计费点标识、时间戳)至网络计费系统,确保用户业务使用量可准确计量和扣费。
5. 设置 Require 头域
操作:标明后续网元需支持的处理要求(如特定协议扩展)
作用:强制要求下游节点(如 I-CSCF、S-CSCF)支持指定功能,保障消息处理的兼容性和业务逻辑的正确执行。
(3) I-CSCF收到REGISTER消息后,做如下处理:
1.从Via头域获取P-CSCF的地址或主机名,并检查P-CSCF的地址或主机名是否在信任域或本地域(通过ADD TDMI命令中的“可信任域名”参数配置):
查询到:允许注册
未查询到:返回错误码403,拒绝注册请求
2.根据本地IHSS表,选择优先级最高的HSS,再查寻IHSS表获取HSS网元的IP,向融合HLR/HSS发送UAR消息,请求获取S-CSCF的地址或者能力集。消息中携带的关键信元如下所示
publicIdentity:即用户的公共身份标识符,T-IMPU;
userName:即用户的私有身份标识符,IMPI;
visitedNetworkIdentifier:拜访网络域名;
(4) 融合HLR/HSS收到UAR消息,根据本地数据库中的用户开户信息,判断用户已开户,则向I-CSCF发送UAA消息,返回S-CSCF的地址或者能力集。
当UAA消息中携带Server-Name时,表示携带的为S-CSCF的地址。
当UAA消息中携带Server-Capabilities时,表示携带的为S-CSCF的能力集。
(5) I-CSCF根据融合HLR/HSS返回的S-CSCF地址,向S-CSCF转发REGISTER消息。S-CSCF向融合HLR/HSS发送MAR消息,请求获取认证向量AV(Authorization Vector)。并且通知融合HLR/HSS当前S-CSCF为该用户服务,保证401鉴权挑战消息之后的REGISTER消息能够到达同一个SCSCF。
(6)融合HLR/HSS向S-CSCF返回MAA响应,包括鉴权五元组XRES(Expected Response)、RAND(Random Challenge)、AUTN(Authentication Token)、IK(Integrity Key)和CK(Cipher Key)。关键信元如下所示:
sipNumberAuthItems:确切鉴权向量的组数;
sipItemNumber:标识SIP-Auth-Data-Item AVP在鉴权组中的排列顺序;
sipAuthenticationScheme:此AVP表示SIP消息认证方案,即鉴权方式;
sipAuthenticate:由五元组中的RAND与AUTN生成;
sipAuthorization:由五元组中的XRES生成;
confidentialityKey:五元组中的CK信息;
integrityKey:五元组中的IK信息;
(7) S-CSCF根据RAND和AUTN生成nonce,并将nonce同IK,CK,以及鉴权算法放到WWW-Authenticate头域中,随401响应返回给P-CSCF。同时,S-CSCF保存参数XRES,以备后续对用户的鉴权响应进行验证。
(8) P-CSCF从消息中取出IK和CK并保存,将消息中剩余的鉴权元素RAND和AUTN继续向UE转发。
(9) UE收到401响应后,根据本地ISIM(IMS Subscriber Identity Module)中保存的共享密钥对AUTN进行认证,认证通过则表明401消息来源于用户真实的归属网络。再基于共享密钥和RAND计算出RES(Response),重新构造REGISTER消息,携带RES,按照初始REGISTER消息的路径发给P-CSCF
(10) P-CSCF按照初始REGISTER消息的路径发送后续REGISTER给I-CSCF。
(11) I-CSCF收到REGISTER消息后,做如下处理:
I-CSCF从Via头域获取P-CSCF的地址或主机名,并检查P-CSCF的地址或主机名是否在信任域或本地域(通过ADD TDMI命令中的“可信任域名”参数配置)。
查询到记录:表明用户当前的拜访网络可信任,I-CSCF允许用户进行注册,继续进行后续处理。
未查询到记录:表明用户当前的拜访网络不可信任,I-CSCF会返回错误码403,提示“Request From Untrusted Domain”,拒绝用户的注册请求。
根据本地IHSS表(通过ADD IHSS配置)中的“优先级”参数设置,选择优先级最高的HSS;再查询IHSSL表(通过ADD IHSSL配置)获取HSS网元的IP地址,向融合HLR/HSS发送UAR消息,请求获取S-CSCF的地址或者能力集。
(12) S-CSCF向UE侧反馈200响应,表明初始注册成功。
(13) S-CSCF根据从融合HLR/HSS处下载的用户签约信息,判断其中有针对REGISTER请求的iFC(initial Filter Criteria)数据,S-CSCF根据iFC中ATS地址,向ATS发送第三方注册请求。如果用户签约信息中包含多条针对REGISTER请求的iFC数据,S-CSCF会根据优先级从高到低依次发送给iFC中的ATS地址。