IMS基本架构

news2024/11/17 1:51:16
IP Multimedia Core Network Subsystem (IMS)商用已久,相对于CS domain的语音方案,IMS则是基于IETF定义的会话控制功能与多媒体传输功能通过IP-CAN实现的 全IP完整语音解决方案。
IMS能为无线和有线用户实现语音、视频、消息、数据等服务。便于运营商通过IMS向其用户提供多媒体服务,IMS也包含计费,鉴权,签约数据收发等功能。相比于企业级的语音方案,运营商级的语音网络要更过的考虑计费,移动性,Qos等等问题。
IMS是业务层面实现,不关心接入网,因而有线或WIFI、2/3/4/5G等都可以作为IP-CAN,进而有了VONR,VOLTE,VOWIFI....等为区分而有的名字,尽管名字不同,IMS架构都是那些内容。IMS在3GPP R5中引入,通过PS domain实现voice,video,text等多媒体业务,常见的就是通过EPC,5GC和4/5G接入网实现的系统。接下来就从3GPP角度看下基于SIP的IMS架构以及相关的一些网元功能。
单纯从IMS角度来看,各个网元、功能实体以及接口的结构如上图。包括用于session control的CSCF,用于用户数据管理的HSS/SLF,用于业务处理的AS/MRFC/MRFP,用于互通的BGCF、MGCF、IBCF、IMS-MGW以及用于计费等其他网元。这里就先从UE侧常用流程涉及的网元开始看起。

Proxy‑CSCF(P-CSCF)

Proxy-CSCF(P-CSCF)是IMS内的第一个接触点,也就是入口。P-CSCF 的行为类似于代理,即它负责接收UE或接入网发给IMS网络的请求并转给内部的IMS网元来处理。P-CSCF不会修改SIP INVITE消息中的Request URI。 P-CSCF 可以充当用户代理,即在异常情况下,它可以终止并独立生成 SIP transactions。
P-CSCF 执行的功能是:
(1)将从UE接收到的SIP注册请求转发到使用UE提供的归属域名确定的入口点。
(2)将从UE接收到的SIP消息转发到SIP服务器(例如,S-CSCF),其名称作为注册过程的结果,P-CSCF已接收到。
(3)当信息可从接入网络获得时,确保从UE接收到SIP服务器(例如S CSCF)的SIP消息包含关于UE当前使用的接入网络类型的正确或最新信息。 根据运营商策略,当信息可从接入网络获得时,P-CSCF可以在任何SIP消息(请求或响应)中插入UE当前使用的接入网络类型。
(4)基于运营商策略以及来自接入网络的用户位置信息和/或UE 时区的可用性,确保相关SIP消息包含有关用户位置信息和/或UE时区的正确或最新信息 由UE当前使用的接入网提供。
(5)将SIP请求或响应转发给UE。检测并处理紧急会话建立请求。
(6)生成 Charging Data Record。
(7)维护其自身与每个UE之间的安全关联(33.203)。
(8)执行 SIP 消息压缩/解压缩。
(9)承载资源授权和QoS管理。
(10)检测和处理发起或终止 IMS MPS 会话建立或会话修改请求。
(11)可支持 IMS 对话语音的寻呼策略差异。
(12)可以订阅PCC机制的接入网络类型变化的通知。
P-CSCF discovery在24.229中有根据场景进行区分,如上图示。
常见的P-CSCF discovery方式如上图,UE通过 PDN Connectivity Request/PDU session establishment req 过程中的 Protocol Configuration Options过程获得。
如果是在vowifi注册,则通过IKE over ePDG过程获得等。

Interrogating‑CSCF(I-CSCF)

为当前网络运营商的用户或当前位于该网络运营商的服务区域内的漫游用户提供所有连接的联系点就是I-CSCF 。
运营商网络内可能有多个I-CSCF。 I-CSCF会在不同的过程不同的功能。
在Registration过程中 I-CSCF会将 S-CSCF分配给执行 IP registration的用户(通过查询HSS,获取UE注册在哪个S-CSCF下来得到S-CSCF的地址)。
对于Session-related或session-unrelated flows:
(1)I-CSCF会将从另一个网络接收到的SIP请求路由到S-CSCF。
(2)在执行HSS 位置查询之前,将所有具有user=phone 参数格式的 SIP URI 的 Request-URI 中包含的E.164 地址转换为 Tel: URI 格式。 如果用户不存在且运营商有对应策略配置时,则 I-CSCF 可以调用传输功能的一部分,将 Tel: URI 格式的Request-URI中包含的 E.164 地址转换为可路由的 SIP URI 。
(3)从HSS获取S-CSCF的地址。
(4)将SIP请求或响应转发到由上述步骤确定的S-CSCF
基于本地配置,I-CSCF可以执行传输路由功能。 如果I-CSCF基于HSS查询确定会话的目的地不在 IMS 内,则它可以转发请求,或者可以向始发端点返回失败响应。
I-CSCF还会生成CDR。

Serving‑CSCF(S-CSCF)

S-CSCF为UE执行session control服务。 它会根据网络运营商支持服务的需要维护会话状态。 在运营商的网络内,不同的S-CSCF可以具有不同的功能。 
S-CSCF 在会话期间执行的功能是:
Registration:
(1)接受注册请求并通过位置服务器(例如 HSS)提供其信息。
(2)当注册请求包括正在注册的联系人的Instance ID并指示支持GRUU时,S-CSCF将向Public User Id和Instance ID的组合分配唯一的P-GRUU和新的且唯一的 T-GRUU。
(3)如果注册请求指示支持GRUU,则 S-CSCF 将返回分配给每个当前注册Instance ID 的GRUU set。
(4)S-CSCF应通知subscriber有关Registration更改的信息,包括分配给registered instance的GRUU set。
(5)在注册过程中,S-CSCF 应从HSS向P-CSCF和/或UE 提供Public User Id的策略信息(如果可用)。
Session-related and session-unrelated flows
(1)已注册端点会话的会话控制。在注册后被bar的PUI,S-CSCF会reject被bar PUI的IMS通信。
(2)可以充当代理服务器,即它接受请求并在内部为它们提供服务或转发它们。
(3)可以充当用户代理,即它可以终止并独立生成 SIP 事务。
(4)根据确定的服务用户,处理与服务平台的交互以支持服务
(5)向端点提供服务事件相关信息(例如音调/公告通知以及附加媒体资源的位置、计费通知)
(6) 对于始发端点(即originating始发用户/UE,或originating AS):当目标用户是不同网络运营商的客户时,S-CSCF会从数据库中根据目标名称(例如拨打的电话号码或 SIP URI)获取为目标用户提供服务的网络运营商的入口点地址,并向入口点转发SIP请求或响应;如果接收到GRUU作为联系人,S-CSCF要确保请求中的服务用户的PUI和封装在P-GRUU中或与T-GRUU关联的PUI属于相同的服务配置文件;当目的地用户的目的地名称(例如拨打的电话号码或 SIP URI)和发起用户是同一网络运营商的客户时,S-CSCF会将SIP 请求或响应转发到运营商网络内的I-CSCF;S-CSCF会根据运营商策略将SIP请求或响应转发到位于IMS外部的ISP域内的另一个SIP服务器;为将call路由到PSTN或CS domain,S-CSCF会将SIP请求或响应转发到 BGCF;确保始发端点订阅了determined IMS 通信服务;确保始发端点发送或接收的SIP请求或响应的内容(例如,Content-Type SIP 标头中包含的值、SDP 中包含的媒体行)与订阅了determined IMS 通信服务相匹配等等。
(7)对于目的地端点(即terminating用户/UE)S-CSCF的作用繁多,S-CSCF会将SIP请求或响应转发到 P-CSCF;如果用户要通过CS domain接收传入的会话,就要根据HSS和服务控制交互修改将SIP请求路由到CS domain;将SIP请求或响应转发到BGCF,以将呼叫路由到PSTN或CS domain;确保终止端点订阅了determined IMS通信服务;确保目标端点发送或接收的SIP请求或响应的内容(例如,Content-Type SIP 标头中包含的值、SDP 中包含的媒体行)与订阅的determined IMS通信服务相匹配;如果 SIP 请求包含目标端点特征的首选项,则S-CSCF就要执行指定的首选项和功能匹配。对于重定向session,根据运营商策略配置,S-CSCF会执行发起转移的转移订户的身份证明。
(8)对于根据运营商策略配置Request URI发起的请求包含E.164 number的SIP表示形式时:S-CSCF尝试将SIP URI中的E.164 address转换为全局可路由的 SIP URI。如果E.164 address转换失败,则可以将请求转发到BGCF以允许路由到PSTN,如果转换成功,则更新请求URI,并根据获取的SIP URI。当请求发送到另一个域时,如果需要,可以通过本地网络出口点 (IBCF) 路由它们,然后将请求转发到另一个域的入口点。 
基于本地配置,S-CSCF可以被配置为运营商网络内用于转接 IMS 场景的联络点,并且可以执行转接路由功能。S-CSCF还要生成CDR 。

Emergency‑CSCF(E-CSCF

1 从PCSCF或S-CSCF接收紧急会话建立请求。
2 如果 UE 没有credentials,则应根据当地法规的要求导出non-dialable callback number。
3 如果位置信息未包括在紧急请求中或者需要附加位置信息,则E-CSCF可以请求LRF检索位置信息。
4 如果需要,E-CSCF请求LRF验证位置信息(如果 UE 包含)。
5 确定或查询LRF以获取正确的路由information/PSAP 目的地。
6 将紧急会话建立请求路由到适当的目的地,包括匿名会话建立请求。
7 根据本地法规,E-CSCF可以将P断言的ID 或 UE 标识的内容发送到 LRF。
8 基于运营商策略,E-CSCF可以将紧急 IMS 呼叫路由到 ECS以进行进一步的呼叫处理。
9 为了支持SRVCC和/或DRVCC,E-CSCF将会话建立请求转发到服务IMS网络中的EATF以进行anchoring。
10 CDR 的生成。
11 对于NG-eCall并且如果未部署LRF/RDF,E-CSCF可以使用自动eCall或手动eCall的指示来辅助紧急会话建立请求的路由。
12 为了支持来自 ICS 增强的 MSC 服务器的紧急会话请求。 E-CSCF 遵循与处理来自 P-CSCF 的紧急会话请求所定义的相同过程。

HSS

如上图Home Subscriber Server(HSS)虽然不是IMS专有的,但是HSS是IMS用户签约的主要数据库,因而HSS是相当重要的部分。
(1移动管理:该功能支持用户CS doamin、PS domain和IMS的移动性。
(2) 呼叫和/或会话建立支持:HSS支持CS domain、PS domain和IMS中的呼叫和/或会话建立过程。 对于terminating traffic,它提供有关当前托管用户的呼叫和/或会话控制实体的信息。
(3)用户安全信息生成
(4)HSS 为 CS 和 PS domain以及IMS 生成用户认证、完整性和加密数据。 用户安全支持HSS通过存储生成的用于身份验证、完整性和加密的数据并将这些数据提供给CN中的适当实体来支持访问CS domain、PS domain和 IMS服务的身份验证过程,例如MSC/VLR、SGSN、MME,3GPP AAA Server或CSCF等。
(5)用户身份识别处理:HSS会为CS domain、PS  domian和 IMS提供用于确定用户身份的唯一标识符,例如CS domain的IMSI和MSISDN,PS domain的IMSI, MSISDNs and IP addresses以及IMS的private identity and public identities 。
(6) 访问授权:当 MSC/VLR、SGSN、MME、3GPP AAA 服务器或CSCF请求时,HSS通过检查是否允许用户漫游到该访问网络来授权用户进行移动接入。
(7)服务授权支持:HSS为MT呼叫/会话建立和服务调用提供基本授权。 此外,HSS要用与向用户提供的服务相关的相关信息来更新适当的服务实体,例如MSC/VLR、SGSN、MME、3GPP AAA服务器、CSCF等。
(8)服务提供支持
(9)HSS会提供对服务配置文件数据的访问以便在CS domain、PS domain及IMS内使用。 应用服务和 CAMEL 服务支持(用于 GERAN 和 UTRAN 接入)。
(10)GUP数据存储库:HSS支持IMS用户相关数据的存储,通过Rp参考点提供对这些数据的访问。

相关参考点

Gm参考点用于UE和IMS之间的通信,也就是UE和P-CSCF之间的接口,与注册和session控制相关, Gm参考点用的是 SIP协议,用于传输UE和IMS之间的SIB信令。
Mw参考点用于在注册和session control过程中CSCF之间的信令消息的发送,同样是基于SIP协议。例如在注册过程中,P-CSCF会使用Mw接口转发UE的registration信令给I-CSCF,之后I-CSCF再传送给S-CSCF;在 session control过程,会用于转发MO或MT侧在CSCF之间的信令。
Cx参考点用于CSCF和HSS之间的信息传输,采用 Diameter协议,主要用于S-CSCF的选择,用户安全参数的传输以及路由和鉴权相关信息的传输。
上图是IMS registration时相关网元间信令传输的简图。
接着看其他部分网元。

SLF

Subscription Locator Function(SLF)不会在single HSS出现或当AS已经设定好pre-defined HSS时也不需要SLF;这就意味着SLF主要是用于在多个HSS场景下选择某个HSS,例如在registration和session 建立期间I-CSCF和S-CSCF可以查询SLF以便获取HSS的信息;通过3GPP AAA server或者AS结合Sh接口查询获得包含所需订户特定数据的 HSS 。具体地CSCF可以通过Dx接口,AS可以通过Dh接口以及3GPP AAA server通过 Dw 接口对SLF进行访问。

AS

Application server(AS)即 SIP Application server、OSA Application server或 CAMEL IM-SSF,是主要用于voice业务的网元。通常位于用户的home 网络或第三方位置,用于提供增值 IP Multimedia (IM) 服务。如上图AS可以通过Sh和Si与HSS通信。
S-CSCF到AS接口可以为归属网络中的 AS 提供 CSCF 服务,同时也会向可信外部网络(例如第三方或受访网络)中的 AS 提供CSCF服务;I-CSCF到AS接口用于将发往AS托管的公共服务身份的SIP请求直接转发到该AS;AS 到 MRFC 的接口Mr′用于session控制而Cr用于media控制;AS会使用AS到MRB 接口 (Rc) 来请求将具有某些特性的MRF资源分配给正在进行的call。

SCC AS

Service Centralization and Continuity Application server(SCC AS)负责Terminating Access Domain Selection和SRVCC相关的一些控制等。

MRF

Media Resource Function(MRF) 包括MRFC和MRFP,负责对media resource进行控制和处理,实现音视频播放、会议、DTMF收号和音频录音等功能。例如MRFC用于控制MRFP中的media stream resources识别来自AS和S-CSCF的信息并相应地控制MRFP,还可要生成CDR;MRFP会提供由MRFC 控制的资源,处理音频转码等等功能。

BGCF

BGCF可以配置为运营商网络中用于传输IMS消息的联络点;运营商网络中可能有多个BGCF,可用于SIP消息的路由,IMS 到PSTN/CS网络的路由,根据配置选择合适的MGCF进行SIP 信令的转发以及生产CDR。

MGCF

MGCF负责控制与IMS-MGW 中媒体通道的连接控制有关的呼叫状态部分;根据incoming call的routing number进行号码分析确定路由;与CSCF、BGCF 和CS网络进行通信;完成ISUP/TCAP/SIP-I与IM subsystem call control协议的转换等。

IMS-MGW

IMS-MGW负责与MGCF进行资源控制,用来处理媒体转换、承载控制和对voice进行相应处理;还会将UMTS/GSM的 media进行编解码转换等功能。
还有很多其他网元和参考点,就不一一看了,本篇先到这里。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1363574.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【C++】深入了解构造函数之初始化列表

目录 一、再谈构造函数 1、引入 1)构造函数体赋值 2)不同成员变量赋值 2、初始化列表 一、再谈构造函数 1、引入 1)构造函数体赋值 在创建对象时,编译器通过调用构造函数,给对象中各个成员变量一个合适的初始值…

【小沐学C++】C++ 实现鼠标键盘钩子HOOK

文章目录 1、简介2、相关函数2.1 SetWindowsHookEx2.2 UnhookWindowsHookEx2.3 CallNextHookEx 3、相关结构体3.1 KBDLLHOOKSTRUCT3.2 MSLLHOOKSTRUCT 4、挂钩过程5、代码测试5.1 代码1 结语 1、简介 https://learn.microsoft.com/zh-cn/windows/win32/winmsg/about-hooks 挂…

Kali Linux——获取root权限

目录 一、设置root密码 【操作命令】 【操作实例】 二、临时获取root权限 【操作命令】 【操作实例】 三、提升用户到root 1、获取root权限 2、进入/etc/passwd 3、查看root账号ID 4、找到需要修改的用户 5、输入i,进入编辑模式 6、把用户的ID改成跟r…

专为Mac用户设计的思维导图软件MindNode 2023 for Mac助您激发创意!

在现代快节奏的生活中,我们经常需要整理思绪、规划项目、记录灵感。而思维导图作为一种高效的思维工具,能够帮助我们更好地整理和展现思维。现在,我们介绍一款强大而直观的思维导图软件——MindNode 2023 for Mac,助您拓展思维边界…

SqueezeNet:通过紧凑架构彻底改变深度学习

一、介绍 在深度学习领域,对效率和性能的追求往往会带来创新的架构。SqueezeNet 是神经网络设计的一项突破,体现了这种追求。本文深入研究了 SqueezeNet 的复杂性,探讨其独特的架构、设计背后的基本原理、应用及其对深度学习领域的影响。 在创…

第九节HarmonyOS 常用基础组件11-TextPicker

1、描述 滑动选择文本内容的组件。 2、接口 TextPicker(options?: {range: string[]|Resource, selected?: number, value?: string}) 3、参数 参数名称 参数类型 必填 描述 range string[]|Resource 是 选择器的数据。 selected number 否 设置默认选中项在…

2024.1.7周报

目录 摘要 ABSTRACT 一、文献阅读 1、题目 2、摘要 3、模型架构 4、文献解读 一、Introduction 二、创新点 三、实验过程 四、结论 二、深度学习知识 一、从Encoder-Decoder框架中理解为什么要有Attention机制 二、Attention思想 三、Seq2Seq Attention代码逐…

7-35 有理数均值 分数 20

每日一言 我们把世界看错,反说它欺骗了我们。 --飞鸟集 题目 本题要求编写程序,计算N个有理数的平均值。 输入格式: 输入第一行给出正整数N(≤100);第二行中按照a1/b1 a2/b2 …的格式给出N个分数形式的…

Python的核心知识点整理大全66(已完结撒花)

目录 D.3 忽略文件 .gitignore 注意 D.4 初始化仓库 D.5 检查状态 D.6 将文件加入到仓库中 D.7 执行提交 D.8 查看提交历史 D.9 第二次提交 hello_world.py D.10 撤销修改 hello_world.py 注意 D.11 检出以前的提交 往期快速传送门👆(在文…

openssl3.2 - 编译

文章目录 openssl3.2 - 编译概述OpenSSL源码下载编译目标如何编译前置环境 - perl前置环境 - VS前置环境 - NASM快速编译步骤编译 - Quick startInstall PerlInstall NASMUse Visual Studio Developer Command Prompt with administrative privilegesFrom the root of the Open…

Windows安装部署nginx

1、官网下载安装包: 官网地址:https://nginx.org/en/download.html 下载好后,解压即可: 在nginx的配置文件是conf目录下的nginx.conf,默认配置的nginx监听的端口为80,如果本地80端口已经被使用则修改成其…

分析抖音直播弹幕评论和礼物的websocket数据流信息,通过proto协议解析消息内容思路

现在定位到一个解析的大概位置: e.decode function(e, t) {e instanceof o || (e o.create(e));for (var n, i, s void 0 t ? e.len : e.pos t, u new r.webcast.im.MemberMessage(r.webcast. 通过请求找到发送请求的js代码位置,然后通过跟踪这…

ASP.NET Core中实现个人资料上传图片功能

当用户需要在ASP.NET Core中实现修改个人资料的功能时,其中一个常见的需求就是允许上传个人头像图片。下面将详细介绍如何在ASP.NET Core中实现修改个人资料上传图片的功能。 步骤一:控制器中添加一个HttpPost方法 首先,我们在控制器中添加…

基于JavaWeb+SSM+Vue基于微信小程序的消防隐患在线举报系统的设计与实现

基于JavaWebSSMVue基于微信小程序的消防隐患在线举报系统的设计与实现 源码获取入口KaiTi 报告Lun文目录前言主要技术系统设计功能截图订阅经典源码专栏Java项目精品实战案例《500套》 源码获取 源码获取入口 KaiTi 报告 1.1 题目背景 随着信息化飞速发展,互联网不…

【gRPC学习】使用go学习gRPC

个人博客:Sekyoro的博客小屋 个人网站:Proanimer的个人网站 RPC是远程调用,而google实现了grpc比较方便地实现了远程调用,gRPC是一个现代的开源远程过程调用(RPC)框架 概念介绍 在gRPC中,客户端应用程序可以直接调用另一台计算机上的服务器应用程序上的方法&#…

PyTorch 进阶指南,这个宝典太棒了

最新写了很多关于 Pytorch 的文章,主要针对刚刚接触 Pytorch 的同学,文章我给大家列出来了,喜欢可以从0开始学习: 小白学 PyTorch 系列:这一次,我准备了 20节 PyTorch 中文课程小白学 PyTorch 系列&#x…

【视频图像篇】模糊图像处理之运动模糊造成的车牌号码图像模糊还原

【视频图像篇】模糊图像处理之运动模糊造成的车牌号码图像模糊还原 处理车辆运动过程中造成车牌号码的视频图像模糊—【蘇小沐】 0、目录 1、实验环境 2、路径 3、测量工具:测量模糊角度及距离 4、运动模糊滤波器 5、结果展示 1、实验环境 系统环境Windows…

YOLOv5训练损失、精度、mAP绘图功能 | 支持多结果对比,多结果绘在一个图片(消融实验、科研必备)

一、本文介绍 本文给大家带来的是YOLOv5系列的绘图功能,我将向大家介绍YOLO系列的绘图功能。我们在进行实验时,经常需要比较多个结果,针对这一问题,我写了点代码来解决这个问题,它可以根据训练结果绘制损失(loss)和mAP(平均精度均值)的对比图。这个工具不仅支持多个文件…

P12 音视频复合流——TS流讲解

前言 从本章开始我们将要学习嵌入式音视频的学习了 ,使用的瑞芯微的开发板 🎬 个人主页:ChenPi 🐻推荐专栏1: 《C_ChenPi的博客-CSDN博客》✨✨✨ 🔥 推荐专栏2: 《Linux C应用编程(概念类)_C…

C# 程序员如何进行职业规划?

C# 程序员如何进行职业规划? 在开始前我有一些资料,是我根据网友给的问题精心整理了一份「C#的资料从专业入门到高级教程」, 点个关注在评论区回复“888”之后私信回复“888”,全部无偿共享给大家!!&…