openair-cn-cups

2023-05-16

Github: openair-cn-cups

openair-cn-cups descriptions

openair-cn-cups是在openair-cn的基础上将spgw控制面与用户面分离,实现从LTE EPC向5G Core的演进。CUPS就是控制面与用户面分离的意思。架构分离

代码目录结构解析

整体代码结构

openair-cn-cups
(1) gtpv1u: 实现的GTPU协议层内容
(2) gtpv2c: 实现的GTPC协议层内容
(3) itti: 消息中间件ITTI库
(4) oai_spgwc: 分离后spgw控制面功能(main()),将是5G SMF中的一部分功能
(5) oai_spgwu: 分离后spgw用户面功能(main()),将是5G UPF中的一部分功能
(6) pfcp: 实现pfcp协议层内容
(7) pgwc: 实现pgw控制面功能部分
(8) sgwc: 实现sgw控制面功能部分
(9) spgwu: spgw用户面功能部分
(10) udp: UDP服务器功能实现

sgwc文件解析

sgwc
(1) sgwc_app.*: 实现的sgw-c应用层功能
(2) sgwc_config.*: 实现的是sgwc应用中配置文件管理的类
(3) sgwc_eps_bearer_context.*: sgwc中eps bearer context的管理类实现
(4) sgwc_pdn_connection.cpp: sgwc中pdn connection的管理类实现
(5) sgwc_procedure.*: 实现sgwc中具备的消息流程
(6) sgwc_s11.*: 实现sgwc中s11接口协议栈
(7) sgwc_s5s8.*: 实现sgwc中s5s8接口协议栈

代码理解方式

根据实际的系统流程消息定位代码执行位置。比如spgw的功能就是创建管理会话功能,所以以MME通过s11接口发送CREATE SESSION REQUEST消息为例讲解如何理解代码。
For Example:
因为消息源来自MME,所以第一步就是SGW-C从s11(协议栈为gtpv2c/udp)接收数据,从sgw-c角度来看就是udp接收数据buffer,从gtpv2c层解析IE数据并触发sgw-c相关callback。在文件代码中位置为 openair-cn-cups/src/sgwc/sgwc_s11.cpp(这个cpp/hpp文件就是实现的s11接口协议栈),其中有个函数sgw_s11::handle_receive_create_session_request就是处理从gtpv2c接口协议栈中接收到的CREATE SESSION REQUEST消息并处理。找到消息源之后就可以根据代码流程往后理解分析。

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

openair-cn-cups 的相关文章

  • 深度学习求解微分方程系列五:PINN求解Navier-Stokes方程正逆问题

    下面我将介绍内嵌物理知识神经网络 xff08 PINN xff09 求解微分方程 首先介绍PINN基本方法 xff0c 并基于Pytorch的PINN求解框架实现求解含时间项的二维Navier Stokes方程 内嵌物理知识神经网络 xff
  • Keras解读:使用Model()类构建网络模型的底层原理

    目录 一 前言 xff1a 二 topology py脚本简述 三 继承了Layer类的子类一般要实现 xff08 重写 xff09 以下methods xff1a 四 Node layer tensor在网络构建过程中的关系 建议结合源码
  • 【Paraview教程】第一章安装与基础介绍

    1 Paraview介绍 1 1基本介绍 ParaView是一个开源的 xff0c 跨平台的数据处理和可视化程序 ParaView用户可以迅速的建立起可视化环境利用定量或者是定性的手段去分析数据 利用它的批量处理能力可以在三维空间内在工具栏
  • 一种基于物理信息极限学习机的PDE求解方法

    作者 PINN山里娃 xff0c 作者主页 研究方向 物理信息驱动深度学习 不确定性 人工智能 偏微分方程 极限学习机 该作者聚焦深度学习模型与物理信息结合前沿研究 xff0c 提供了一系列AI for science研究进展报告及代码实现
  • js文件分片上传,断点续传

    前言 文件上传是一个老生常谈的话题了 xff0c 在文件相对比较小的情况下 xff0c 可以直接把文件转化为字节流上传到服务器 xff0c 但在文件比较大的情况下 xff0c 用普通的方式进行上传 xff0c 这可不是一个好的办法 xff0
  • JavaScript 大文件分片上传处理

    一 功能性需求与非功能性需求 要求操作便利 xff0c 一次选择多个文件和文件夹进行上传 xff1b 支持PC端全平台操作系统 xff0c Windows Linux Mac 支持文件和文件夹的批量下载 xff0c 断点续传 刷新页面后继续
  • JS实现浏览器端大文件分片上传

    IE的自带下载功能中没有断点续传功能 xff0c 要实现断点续传功能 xff0c 需要用到HTTP协议中鲜为人知的几个响应头和请求头 一 两个必要响应头Accept Ranges ETag 客户端每次提交下载请求时 xff0c 服务端都要添
  • Lua识别Jwt令牌业务

    文章目录 业务场景业务实现lua resty jwt安装令牌识别令牌测试 业务场景 如果想使用Lua识别用户令牌 xff0c 我们需要引入lua resty jwt模块 xff0c 是用于 ngx lua 和 LuaJIT 的 Lua 实现
  • WebSocket从入门到实战

    文章目录 WebSocketWebSocket 介绍WebSocket APIWebSocket 对象WebSocket属性WebSocket事件 xff1a WebSocket方法 xff1a WebSocket 实例客户端服务端代码链接
  • Error:java: 无效的源发行版: 13

    文章目录 问题原因解决 之前是英文的报错 xff0c 也是一样 xff0c 再发一遍 问题 原因 出现这个错误的原因主要是因为 JDK 版本问题 xff0c 有两个原因 xff0c 一个是编译器版本不匹配 xff0c 一个是当前项目 JDK
  • springboot项目中的bootstrap.yml配置不生效(没有自动提示)

    文章目录 问题原因及解决原因1 xff1a 原因2 xff1a 问题 xff08 1 xff09 新创建一个 springboot项目 xff0c 添加了 bootstrap yml 文件 xff0c 发现文件并没有如预期变成绿色叶子 xf
  • 人工智能——分类器性能指标之ROC曲线、AUC值

    文章目录 ROC曲线ROC曲线概念ROC曲线坐标系ROC曲线重要概念案例 xff1a 画ROC曲线 AUC值为什么使用Roc和Auc评价分类器 二分类模型预测的结果是否足够好 xff0c ROC和AUC是重要指标 ROC曲线 ROC曲线概念

随机推荐

  • Ubuntu18.04美化桌面(主题、图标)

    首先 xff0c 安装主题配置工具Tweaks xff0c 命令如下 xff1a sudo apt get install gnome tweak tool 之后在软件菜单中找到Tweaks图标 xff0c 打开该软件 xff0c 界面如下
  • Redis 事务支持回滚吗?

    文章目录 Redis 事务支持回滚吗 xff1f 官方解释DISCARD 命令取消事务 Redis 事务支持回滚吗 xff1f 首选 xff0c Redis 事务不支持回滚 MySQL 在执行事务时 xff0c 会提供回滚机制 xff0c
  • Docker 安装 mysql 8.0.29

    文章目录 安装拉取镜像启动容器 配置 xff08 可跳过 xff0c 建议弄上 xff09 使用启动控制台登录navicat远程登录 删除 安装 拉取镜像 span class token function docker span pull
  • SpringBoot 启动打印 Banner:佛祖保佑,永无BUG!

    最近新学了一招 打印完了 xff0c 一点bug不出 xff0c 果然 xff0c 程序的尽头是玄学 教程 在Resources目录下新建 banner txt 输入内容如下 span class token comment ooOoo s
  • 一文就懂AQS!

    文章目录 AQS介绍AQS概念AQS模式分类AQS核心思想 AQS源码结构CLH同步队列state同步状态独占式同步状态获取与释放流程图总结 xff1a 共享式同步状态获取与释放 看了很多帖子 xff0c 原理说啥的都有 xff0c 算了还
  • 手把手教你构建源码级组件——Java互斥不可重入锁

    文章目录 构造同步组件的步骤1 定义内部类Syn2 继承同步器 xff0c 重写指定方法3 调用同步器方法 互斥不可重入锁实现代码实现测试Demo运行结果结果分析 构造同步组件的步骤 之前的学习中我们学习了AQS的原理 xff0c 其中有许
  • 手把手教你构建源码级组件——Java指定共享线程数目的共享锁

    文章目录 构造同步组件的步骤1 定义内部类Syn2 继承同步器 xff0c 重写指定方法3 调用同步器方法 指定共享线程数目的共享锁实现代码实现测试Demo运行结果结果分析 构造同步组件的步骤 之前的学习中我们学习了AQS的原理 xff0c
  • Anaconda下载及安装保姆级教程(详细图文)

    文章目录 先导知识Anaconda 下载Anaconda 安装Anaconda 配置环境变量测试配置 Anaconda 其他操作安装第三方包卸载第三方包查看环境包信息导入导出环境其他命令 先导知识 Anaconda指的是一个开源的Pytho
  • 解决微信支付申请扫描提示“操作超时,请重新扫码确认问题”

    文章目录 问题原因解决 问题 在申请微信支付账号的时候 xff0c 按照微信网站的提示 操作超时 xff0c 请重新扫码确认 原因 因为浏览器的原因 xff0c 浏览器不兼容 xff0c 醉了 xff0c 这个年代了还有这个兼容的问题 解决
  • npm ERR! cb.apply is not a function npm ERR! A complete log of this run can be found in: npm ERR!

    问题 原因 npm版本过旧 解决 windows下cmd安装指令 xff1a cnpm span class token function install span g span class token function npm span
  • 深度学习从入门到出门(1)——概念与发展概况

    文章目录 深度学习 xff1a 从概念到实践深度学习的起源深度学习的应用场景图像识别自然语言处理推荐系统视频游戏 深度学习的核心思想模型数据优化算法 深度学习的实践方法结论 深度学习 xff1a 从概念到实践 在过去几年里 xff0c 深度
  • ubuntu: su root 报错 su: Authentication failure

    问题 xff1a 输入 sudo su进入root系统 xff0c 输入密码后提示 su Authentication failure 解决方法 xff1a 输入 xff1a sudo passwd root 设置密码 之后重新 sudo
  • 树莓派4b引脚图

  • Ubuntu16.04下安装openssh-server 依赖问题

    1 安装时报依赖错误 因为Ubuntu 自带openssh client xff0c 自带的client和要安装的openssh server 所依赖的client版本不一致导致的 先卸载openssh client 然后在安装即可 sud
  • 《智能控制技术》学习笔记-1.绪论,智能控制定义、分类、发展及应用场景

    一 引言 先修内容 xff1a 经典控制理论 现代控制理论 MATLAB 引入 xff1a 智能理论是新兴学科 xff0c 随着数字计算机和人工智能发展而来 xff0c 发展得益于许多学科 xff1a 人工智能 认知科学 现代自适应控制 最
  • 【STM32】基础篇 ST-Link下载器接线方式和SWD,JTAG协议简介

    在开发STM32等基于arm内核的单片机时 xff0c 选择一款载调试器必不可少 市面上有各式各样的下载调试器可供我们选择 xff0c 常用的下载器包括J Link xff0c ST Link xff0c J Link0B xff0c CM
  • 【Linux学习】正点原子裸机篇 C语言LED实验实现

    上一篇使用汇编语言编写LED等驱动实验 xff0c 在实际工作中较少使用汇编编写嵌入式驱动 xff0c 毕竟汇编过于底层 xff0c 难度较大 绝大部分情况下都是使用C语言编写主体程序 xff0c 只是开始部分使用汇编来初始化C语言环境 x
  • Nginx

    1 基本介绍 Nginx是由俄罗斯的设计师开发的 Nginx不像Apache那样 xff0c 不论功能是否常用 xff0c 统统都给你 自带了 xff0c 虽然功能 很强大 xff0c 但是也很消耗性能 xff0c 而Nginx只是自带了常
  • linux运维经典面试题总结

    1 Linux常见的日志文件都有哪些 xff0c 各自的用途 xff1f 日志轮询配置文件在哪里 xff1f 欢迎界面配置文件在哪里 xff1f 答 xff1a var log messages 内核及公共消息日志 var log cron
  • openair-cn-cups

    Github openair cn cups openair cn cups descriptions openair cn cups是在openair cn的基础上将spgw控制面与用户面分离 xff0c 实现从LTE EPC向5G Co