老猿学5G扫盲贴:中国移动网络侧CHF的功能分解说明
☞ ░ 老猿Python博文目录░
一、引言
在《老猿学5G扫盲贴:中国移动网络侧CHF主要功能及计费处理的主要过程》介绍了中国移动CHF的总体功能,同时说明了CHF网元主要由AGF、CDF、CGF三部分组成,支持在线计费、离线计费和融合计费三种场景。

下面具体介绍一下AGF、CDF、CGF三部分的功能。
二、AGF的功能
AGF接收SMF Nchf接口消息,进行消息的路由转发,主要功能包括:
- 配置SUPI/GPSI段数据
- 从Nchf接口消息中解析SUPI/GPSI;
- 根据SUPI/GPSI获取归属省OCS接口地址信息;
- 将Nchf消息转发给归属省OCS。
三、CDF功能
CDF通过CHF内部接口接收计费事件,从而产生相应的CDR。主要功能包括:
- 处理计费事件中计费数据,生成CDR;
- 对正常计费的话单、BOSS系统异常后的未计费话单、SMF发送的回放话(在CHF故障时SMF缓存的话单)单单独生成和保存;
- CDF一条计费消息生成一个CDR;
- 单个的计费事件可以生成一个CDR,即:事件和CDR的关系是1:1的关系;
- 可以多个事件生成一个CDR,即:事件和CDR的关系是N:1的关系,但最终在实施时采用的是1:1的对应关系;
- 每个计费事件只存在于一个CDR,即:事件和CDR之间不存在1:N的关系(N>1);
- 在计费事件的接收和CDR的生成过程之间,没有同步的要求。但是,CDF必须能够接收处理计费事件并近乎实时地来生成CDR;
- 用于生成一个CDR的所有计费事件都必须是从同一个网络实体中采集的,即:在CDF的计费事件中不存在网络实体或者网络实体类型的交叉关联。
四、CGF功能
CGF接收CDF产生的CDR,对CDR进行处理,并输出CDR话单文件供计费系统使用主要功能包括:
- 从CDF接收CDR
- CDR预处理功能:包括对接收的消息进行校验和错误处理、接收后的存储
- CDR的过滤与分拣
- 根据一定的过滤机制(例如:CDR类型,CDR参数,生成CDR的CDF地址等)将CDR存储在不同的文件中。
- CDR文件的管理
- CGF能够进行文件的建立,文件的打开关闭,文件删除等操作。
- 输出CDR话单文件供计费系统使用。
五、计费场景处理过程
- 离线计费:对于离线计费场景,CHF根据从SMF接收到的Nchf消息中的CC标示识别是离线计费场景,发送Nchf响应消息给SMF,同时根据计费请求消息生成CDR并输出话单文件到指定目录,供BOSS系统采集进行后续计费处理。CHF可配置是否将离线计费消息转发给归属省OCS。
- 在线计费:对于在线计费场景,CHF从SMF接收到的融合计费的Nchf消息后,根据CC标示识别是在线计费场景,解析出消息中的SUPI/GPSI,根据SUPI/GPSI段获取归属省OCS接口地址,然后将Nchf消息发给归属省BOSS系统中的OCS处理,回送Nchf响应消息给SMF,并同时由CDF生成CDR。在BOSS异常情况下:由CHF生成BOSS系统异常后的未计费CDR,按照系统配置授权配额,返回响应给SMF。CHF将BOSS系统异常后的计费信息单独输出CDR文件,供BOSS系统进行计费处理。
- 融合计费场景:对于融合计费场景,CHF从SMF接收到的融合计费的Nchf消息后,解析出消息中的SUPI/GPSI,根据SUPI/GPSI段获取归属省OCS接口地址,然后将Nchf消息转发给归属地BOSS,回送Nchf响应消息给SMF,并同时由CDF生成CDR。在BOSS异常情况下:对于在线计费,由CHF生成BOSS系统异常后的未计费CDR,按照系统配置授权配额,返回响应给SMF;对于离线计费,则由CHF生成BOSS系统异常后的未计费CDR。CHF将BOSS系统异常后的计费信息单独生成话单文件,供BOSS系统进行计费处理。
五、CHF功能小结
CHF是5G融合计费的关键功能体,它支持在线计费、离线计费和融合计费三种场景,负责在SMF和OCF之间转发Nchf消息(在中移动的核心网设备建设集中到大区后,本大区SMF只对接本大区的CHF,CHF对接所有省的BOSS,对于本大区接入用户,本大区CHF负责根据路由转发规则将本大区SMF产生的计费消息路由转发到归属省的BOSS)、收集smf上报的计费信息生成cdr,并对CDR进行合并生成话单文件。无论是在线计费消息、离线计费消息、以及OCF故障,CHF都会生成对应的话单,并在CHF出现故障恢复后,接收smf缓存的cdr。
跟老猿学Python、学5G!
☞ ░ 老猿Python博文目录░
老猿学5G扫盲贴:中国移动网络侧CHF的功能分解说明的更多相关文章
- 老猿学5G扫盲贴:中国移动网络侧CHF主要功能及计费处理的主要过程
专栏:Python基础教程目录 专栏:使用PyQt开发图形界面Python应用 专栏:PyQt+moviepy音视频剪辑实战 专栏:PyQt入门学习 老猿Python博文目录 老猿学5G博文目录 一. ...
- 老猿学5G扫盲贴:中国移动的5G计费架构解读
专栏:Python基础教程目录 专栏:使用PyQt开发图形界面Python应用 专栏:PyQt入门学习 老猿Python博文目录 老猿学5G博文目录 一.引言 在<老猿学5G扫盲贴:3GPP中的 ...
- 老猿学5G扫盲贴:PDU协议数据单元、PDU连接业务和PDU会话的功能详解
专栏:Python基础教程目录 专栏:使用PyQt开发图形界面Python应用 专栏:PyQt入门学习 老猿Python博文目录 老猿学5G博文目录 一.PDU 关于PDU在百度百科是这样定义的:协议 ...
- 老猿学5G扫盲贴:3GPP规范中与计费相关的主要规范文档列表及下载链接
专栏:Python基础教程目录 专栏:使用PyQt开发图形界面Python应用 专栏:PyQt入门学习 老猿Python博文目录 老猿学5G博文目录 在<老猿学5G扫盲贴:3GPP规范中部分与计 ...
- 老猿学5G扫盲贴:中移动的5G计费架构中Nchf'服务化接口以及CHF中的AGF
专栏:Python基础教程目录 专栏:使用PyQt开发图形界面Python应用 专栏:PyQt入门学习 老猿Python博文目录 老猿学5G博文目录 一.关于Nchf' 在中移动企标中出现了在3GPP ...
- 老猿学5G扫盲贴:中国移动5G融合计费漫游计费架构和路由方案
专栏:Python基础教程目录 专栏:使用PyQt开发图形界面Python应用 专栏:PyQt+moviepy音视频剪辑实战 专栏:PyQt入门学习 老猿Python博文目录 老猿学5G博文目录 一. ...
- 老猿学5G扫盲贴:3GPP中的5G计费架构
专栏:Python基础教程目录 专栏:使用PyQt开发图形界面Python应用 专栏:PyQt入门学习 老猿Python博文目录 老猿学5G博文目录 一.计费逻辑架构和信息流 在32240子系列文档内 ...
- 老猿学5G扫盲贴:与用户和终端相关的名词UE、SUPI、GPSI、PEI
专栏:Python基础教程目录 专栏:使用PyQt开发图形界面Python应用 专栏:PyQt+moviepy音视频剪辑实战 专栏:PyQt入门学习 老猿Python博文目录 老猿学5G博文目录 和4 ...
- 老猿学5G扫盲贴:R15/R16中计费架构和计费原则涉及的规范文档
专栏:Python基础教程目录 专栏:使用PyQt开发图形界面Python应用 专栏:PyQt入门学习 老猿Python博文目录 老猿学5G博文目录 一.概述 在R16的32.240文档对应规范为3G ...
随机推荐
- 带货直播源码开发采用MySQL有什么优越性
MySQL是世界上最流行的开源关系数据库,带货直播源码使用MySQL,可实现分钟级别的数据库部署和弹性扩展,不仅经济实惠,而且稳定可靠,易于运维.云数据库 MySQL 提供备份恢复.监控.容灾.快速扩 ...
- Java实现酒店客房管理系统
这篇文章主要为大家详细介绍了Java实现酒店客房管理系统,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 本文实例为大家分享了Java实现酒店客房管理系统的具体代码,供大家参考,具体内容如下 Log ...
- 使用配置文件方式记录Python程序日志
开发者可以通过三种方式配置日志记录: 调用配置方法的Python代码显式创建记录器.处理程序和格式化程序. 创建日志配置文件并使用fileConfig() 函数读取. 创建配置信息字典并将其传递给di ...
- python之路 《六》函数
---恢复内容开始--- 为什么要有函数? 当你的老板要你写一个程序 1 def 函数0(): 2 # 如果cpu占用率>90 3 # 发送邮件 4 # 发出警报 5 6 def 函数1(): ...
- Git 分支相关
创建分支 git branch dev 切换分支 git checkout dev (dev换成-可切换为上一个使用的分支) 以上两个可合并为 git checkout -b dev 将新分支推送到远 ...
- Django 配置 Mysql
先安装mysqlclient pip install mysqlclient sttings中的 DATABASES = { 'default': { 'ENGINE': 'django.db.bac ...
- 分布式 task_master / task_worker
17:08:0317:08:04 在Thread(线程)和Process(进程)中,应当优选Process,因为Process更稳定,而且,Process可以分布到多台机器上,而Thread最多只能分 ...
- jdk1.7中hashmap扩容时不会产生死循环
在扩容时 transfer( ) 方法中 newTable 新数组 局部变量 table 旧数组 全局变量 当第一个链表进行while循环时 执行到 e.next = newTable[i]; 时 n ...
- 深入学习synchronized
synchronized 并发编程中的三个问题: 可见性(Visibility) 是指一个线程对共享变量进行修改,另一个先立即得到修改后的最新值. 代码演示: public class Test01V ...
- 新鲜出炉!阿里巴巴,京东,美团面经汇总,已拿offer!
最近在后台收到了很多小伙伴的私信,说自己最近想好好准备一下,在不久后的秋招跳个槽往大厂冲击一下,想要我给大家整理出一份大厂面试题好用来做好准备.之前公司有点事比较忙就没回私信.最近好一点了我也是立马联 ...

