老猿学5G:融合计费的Nchf和Nchf‘服务化接口消息Nchf_ConvergedCharging_Create、Update、Release和Notify

2023-11-01

☞ ░ 老猿Python博文目录

一、引言

在《老猿学5G扫盲贴:中国移动的5G计费架构解读》介绍了5G融合计费的服务化接口包括:

  • CHF提供给CTF使用的Nchf接口
  • OCF提供给CHF使用的Nchf’接口
    这两个接口消息的内容都相同,只是服务端和客户端不同,Nchf’这个接口在3GPP规范中是没有的,是为了适应中移动的部署结构新增的,其目的是为了CHF将SMF发送的计费消息转发给OCF。因此二者的消息内容是相同的。

二、Nchf和Nchf’服务化接口消息内容

Nchf和Nchf’服务化接口消息包括如下四个:

  1. Nchf_ConvergedCharging_Create
  2. Nchf_ConvergedCharging_Update
  3. Nchf_ConvergedCharging_Release
  4. Nchf_ConvergedCharging_Notify

这四个消息的作用如下:
在这里插入图片描述

三、计费消息的路由处理

3.1、总体原则

本大区SMF只对接本大区的CHF,CHF对接所有省的BOSS,对于本大区接入用户,本大区CHF负责根据路由转发规则将本大区SMF产生的计费消息路由转发到归属省的BOSS。

3.2、计费消息的路由关键信息

计费消息包括两类,会话类消息和通知类消息,会话类消息包括Nchf_ConvergedCharging_Create、Nchf_ConvergedCharging_Update和Nchf_ConvergedCharging_Release三个,分别用于创建、变更和释放计费会话。通知类消息只有Nchf_ConvergedCharging_Notify一个,用于SMF通知BOSS该会话SMF的地址以及BOSS通知SMF对会话进行强制终止或对用户重授权。

3.2.1、会话类消息

CHF对于SMF发送的会话类消息根据计费请求消息中的SUPI/GPSI路由选择到归属省的BOSS。路由关键信息包括:用户信息相关的SUPI/GPSI、BOSS(OCS) IP地址(包含IPV4和IPV6)、BOSS(OCS)端口。

CHF上对于SMF发送的会话类消息的路由转发规则从本地配置或从NRF获取。CHF收到BOSS的响应消息后,按原路径转发给对应SMF。

CHF上支持会话类计费消息路由转发规则可配置。配置关键信息包括:BOSS(OCS)信息和SUPI/GPSI与BOSS(OCS)之间的映射关系。

3.2.2、Notify消息的路由转发

CHF收到SMF发送的会话类请求消息后,将CHF的IP:Port信息附加到{ notifyUri }字段前进行二次封装,并按路由原则转发计费消息给BOSS;

BOSS解析并保存接收到的会话类请求消息中CHF的IP:PORT信息,作为后续发送Notify消息的目的地址,BOSS在向CHF发送Notify请求消息时,完整回填之前收到的{ notifyUri };

CHF接收到BOSS发送的Notify请求消息后,剥离{ notifyUri }中CHF的IP:PORT信息后,按用户真实的{ notifyUri }选择SMF并转发Notify请求消息,同时记录请求消息的源IP:Port。
CHF收到SMF发送的Notify响应消息后,按原路径转发给对应的BOSS。

四、小结

本文介绍了计费消息Nchf_ConvergedCharging_Create、Nchf_ConvergedCharging_Update和Nchf_ConvergedCharging_Release、 Nchf_ConvergedCharging_Notify的内容以及路由处理,在5G融合计费中,这4个消息就是计费处理的全部消息接口,笔者认为其中的通知类消息一般情况下无需使用,用处其实不是很大。

跟老猿学Python、学5G!

☞ ░ 老猿Python博文目录

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

老猿学5G:融合计费的Nchf和Nchf‘服务化接口消息Nchf_ConvergedCharging_Create、Update、Release和Notify 的相关文章

随机推荐

  • js逆向实战案例集目录

    一 js逆向基础篇 js逆向之字体加密 js逆向webpack篇 某电商网站 拼xx js逆向基础篇 某房地产网站 登录 js逆向基础篇 某音乐网站 xx音乐 js逆向之猿人学 反混淆刷题平台第一题 手把手教学 js逆向验证码篇之某程 智能
  • react 创建sass router mobx项目

    尽量不要再vscode中安装依赖推荐使用gitbash 创建项目第一步 基本搭建 git 在创建之前 需要有一个git 仓库 我们之后要把项目搭建到git 中 node版本 查看node 版本 node v v14 15 3 为了保证同步
  • CUDA Vector Add Test 2048x1024

    1 include cuda runtime h CUDAVectorAdd cu 2 include device launch parameters h 3 include IML PrecisionTimer h 4 5 includ
  • 【笔记】Git及Github使用

    目录 Git概述及安装 Git常用命令 设置用户签名 姓名和邮箱地址 gitconfig 初始化本地库 查看本地库状态 本地文件添加到暂存区 提交本地库 形成历史版本 修改文件 历史版本信息 版本穿梭 回溯历史版本 查看当前本地库中所有文件
  • canvas清空画布方法

    1 最简单的方法 由于canvas每当高度或宽度被重设时 画布内容就会被清空 因此可以用以下方法清空 function clearCanvas span style font family none span var c document
  • mysql 存储引擎 原理_【MySQL—原理】体系结构和存储引擎

    在数据库领域中有两个词很容易混淆 这就是 数据库 database 和 实例 instance 作为常见的数据库术语 这两个词的定义如下 数据库 物理操作系统文件或其他形式文件类型的集合 实例 数据库管理程序 MySQL数据库由后台线程以及
  • 【狂神】MySQL - 连表查询 Join On 详解

    1 连表查询详解 市面上有 7 种连表查询 总共归为三大类 左查询 LEFT JOIN 以左表为基准 右查询 RIGHT JOIN 以右表为基准 交叉查询 INNER JOIN 查询两表都有的数据 操作 描述 inner join 如果表中
  • ajax嵌套的场景有哪些,ajax嵌套

    一 ajax嵌套ajax 传说中的嵌套金字塔 以及这种方式只能串联发起ajax请求 function getDataFun ajax url equip rank type GET dataType jsonp success functi
  • Qt之键盘事件无法响应问题

    Qt之键盘事件无法响应问题 概述 代码 over 文末一句话 概述 新公司的加班第一天 在调试公司项目代码时发现个小问题 鼠标 键盘事件都已写好 但是键盘事件无效无法进入断点 接来下去查文档并没有查到相关说明 翻阅百度翻到如下代码 并进行测
  • 配置文件文档

    Tranquilpeak Version 0 5 3 BETA Author Thibaud Lepr tre I STRONGLY recommend you to use a CDN to speed up loading of pag
  • Linux驱动入门(6.1)LED驱动---设备树

    前言 1 在韦东山Linux驱动入门实验班 5 LED驱动 驱动分层和分离 平台总线模型我们已经讲解了如何将驱动程序和硬件程序进行剥离 但是大佬们感觉这样还不行 他们认为要专门弄一个结构存储硬件信息 而不是用c文件存储 于是 大佬们就发明了
  • 数据结构-后序中序

    PTA 后序中序遍历给出先序结果 根据要求给定一棵二叉树的后序遍历和中序遍历结果 输出该树的先序遍历结果 输入格式 positive integer N lt 30 表示树中节点的个数 随之而来的是两行遍历序列 分别对应后序遍历和中序遍历结
  • 手把手教你ubuntu下移植MJPG-streamer

    一 嵌入式视频图像开源库 在嵌入式系统中 常用的视频图像处理开源系统有 luvcview cheese motion mjpg streamer或者ffmpeg 其中 luvcview 基于V4L2 SDL的程序 支持拍照录像 参数调节 代
  • Linux centos 卸载 ceph

    在CentOS上卸载Ceph的操作步骤 1 停止Ceph集群 首先 你需要停止Ceph集群中的所有服务 在每个节点上运行以下命令来停止所有服务 systemctl stop ceph target 2 卸载Ceph软件包 在每个节点上 使用
  • 在1-100中随机生成10个数字并进行排序

    1 生成10以内的数字 可以参考rand 10 2 生成1 10之间的数字 可以参考rand 10 1 3 特定的 要生成a b之间的数字 可以参考rand b a 1 a include
  • CSharp: QuestPDF create pdf file in donet core 6

  • UE4 分屏显示

    比较简单 直接附上蓝图 注意 启动模式选择独立游戏进程启动这样能够在两个屏幕上满屏显示 在UE4 版本上可以实现 不清楚在UE5上实现不了在两个屏幕上满屏显示 有疑惑或者想法这欢迎沟通交流 还要注意设置项目里面的屏幕设置 下面附上简单的分屏
  • js如何实现数组去重的常用方法

    聚沙成塔 每天进步一点点 专栏简介 使用 Set ES6 使用 filter 和 indexOf 使用 reduce 使用对象属性 使用 includes 方法 ES6 写在最后 专栏简介 前端入门之旅 探索Web开发的奇妙世界 记得点击上
  • 有人知道乐高机器人和乐高少儿编程区别吗

    乐高机器人和乐高少儿编程区别 现在很多的家长对于孩子的学习可以说是非常的用心 就拿现在很多的家长在给孩子选择少儿编程的学习课程的时候 可以说是非常的用心 就想要给孩子选择一个对于孩子有好处的课程 但是很多的家长对于乐高机器人和少儿编程的了解
  • 老猿学5G:融合计费的Nchf和Nchf‘服务化接口消息Nchf_ConvergedCharging_Create、Update、Release和Notify

    老猿Python博文目录 一 引言 在 老猿学5G扫盲贴 中国移动的5G计费架构解读 介绍了5G融合计费的服务化接口包括 CHF提供给CTF使用的Nchf接口 OCF提供给CHF使用的Nchf 接口 这两个接口消息的内容都相同 只是服务端和