【3GPP】【核心网】【5G】5G核心网协议解析(三)(超详细)

5G协议

NAS协议消息:UE 与 AMF 之间

UE通过5G NAS协议与AMF建立起安全的信令连接,进行用户数据传输和网络服务请求等操作

消息格式:NAS-PDU

+---------+----------------+

| Header | NAS Message(s) |

+---------+----------------+

Header字段包含NAS-PDU的长度、安全标识、协议版本等信息。

NAS消息:NAS消息是NAS-PDU中的组成部分,用于传输特定的控制信令。不同类型的NAS消息用于执行不同的功能,如移动性管理、接入控制、鉴权和安全等。NAS消息的格式可以根据具体的功能和消息类型而有所不同,但通常包含以下字段:消息类型:标识NAS消息的类型,如移动性管理消息、接入控制消息、鉴权消息等。

消息体:包含具体的控制信令信息,如鉴权请求、移动性管理命令等。

5G NAS消息是指5G移动通信网络中的非接入层(NAS)消息,主要用于5G UE(User Equipment)与5G核心网之间的信令交互。NAS消息包括控制平面消息和用户平面消息两种类型。

控制平面消息主要用于UE的接入、认证和安全管理等控制面功能,如Attach  Request、Identity Request、Security Mode Command等。用户平面消息主要用于用户数据的传输,如PDUsession Establishment Request、PDUsession Establishment Accept等。

NAS消息在5G网络中的传输采用不同的协议和信令流程,例如在5G的控制平面中,NAS消息的传输通常采用NGAP协议和E1接口,而在用户平面中,NAS消息的传输通常采用GTP-U协议和UPF(User Plane Function)接口。

总之,5G NAS消息是5G网络中的重要信令,能够实现UE的接入和安全管理、用户数据的传输和QoS控制等功能,是5G网络中的关键组成部分

NAS协议:

在5G网络中,UE需要通过5G NAS协议与AMF建立起安全的信令连接,进行用户数据传输和网络服务请求等操作。

控制平面消息字段Security Header Type:安全头类型,用于标识NAS消息是否需要进行安全保护。

Protocol Discriminator:协议识别,用于标识NAS消息类型,如Attach Request、Identity Request等。

Message Type:消息类型,用于进一步指定NAS消息类型。

Spare Half Octet:备用半个八位,保留字段。

NAS Message Container:NAS消息容器,包含NAS消息的具体内容。

Optional IEs:可选信息元素,用于携带附加的参数或者数据,如扩展的鉴别和授权信息等。用户平面消息字段GTP-U Header:GTP-U头,包含消息类型、消息长度和T-PDU序号等信息。

GTP-U Message Payload:GTP-U消息负载,即用户数据或者用户平面信令。

以上是5G NAS协议报文的主要字段,不同类型的NAS消息字段可能会有所不同。

NGAP协议消息:AMF 与 SMF 之间

 

NGAP 提供了在 NG-RAN 和 AMF 之间的信令服务,NGAP 服务分为两类:

Non UE-associated services: 非 UE 相关服务,在 NG-RAN 和 AMF 间 NG 接口实例

  1. 接口管理流程

  2. 配置传递流程

  3. 警报消息传送流程

UE-associated services: UE 相关服务,为 UE 提供信令和连接

  1. PDU 会话管理流程,PDU 会话相关资源管理

  2. UE 上下文管理流程,包括 UE 上下文建立,修改,释放

  3. UE 移动性管理流程,切换,路径变更请求

  4. 寻呼流程,寻呼 UE

  5. NAS 消息传送流程,传递上下行 5G-NAS 消息

 协议识别

对SCTP协议,在解析传输层协议时,根据对应的协议标识字段进行解析,然后再进入到NGAP协议的解析过程当中。

SCTP协议识别标识:

ipv4协议头中协议字段 为 132 ,ipv6协议头中 Next header 标识为 132

SCTP协议格式:

前面的蓝色部分的12个字节是SCTP包的包头,其中前面的两个字节是源端口号,接着的两个字节是目标端口号,然后4个字节是验证标记,最后的4个直接是校验位,总共12个字节。

header后面就是data chunks,也就是数据块,每个chunk都包含一个类型位,flags位和长度位,后面跟着的是chunk的具体数据。

NGAP协议识别:

SCTP报文中data chunk消息体中,payload protocol indentifier字段标识为 60

NGAP协议解析

将AMF和RAN的字段解析到应用会话结构中保存,其他信息保存到packet结构。当解析到AMF和RAN连接认证的消息后,RAN 和 AMF这两个通信双方的具体信息就会到保存到创建的会话中,RAN和AMF的其他类型的消息进行交互时候,每次都会显示他们两个的具体信息。

NGAP 按流程功能分类,可以分为以下:

接口管理过程:

1.1 NG Setup

用来交换 NG-RAN 节点和 AMF 在 NG-C 接口上正确互操作所需的应用程序数据,该程序应是 TNL 关联开始运行后触发的第一个 NGAP 程序。

1.1.1 NG SETUP REQUEST

2. NAS消息传输过程 Transport of NAS Messages Procedures

2.1 Initial UE Message

由 NG-RAN -> AMF 的 INITIAL UE MESSAGE

UE上下文管理过程 (UE Context Management Procedures)

3.1 Initial Context Setup

在需要时在 NG-RAN 节点上建立必要的整体初始 UE 上下文,包括 PDU 会话上下文,安全密钥,移动性限制列表,UE 无线电能力和 UE 安全能力等。

3.1.1 INITIAL CONTEXT SETUP REQUEST

AMF --> NG-RAN

3.1.1 INITIAL CONTEXT SETUP RESPONSE

3.2 UE Context Release Request (NG-RAN node initiated)

控制与 UE 相关的逻辑 NG 连接的 NG-RAN 节点,通过向受影响的 AMF 发送 UE CONTEXT RELEASE REQUEST 消息来启动该过程。

3.3 UE Context Release (AMF initiated)

PDU会话管理过程:

4.1 PDU Session Resource Setup

  1. 寻呼过程:

  2. UE移动性管理过程:

  3. UE无线能力管理过程:

  4. 位置报告过程

PFCP协议:SMF 与 UFP 之间

PFCP 消息用在 CP Function 和 UP Function 之间的 N4 接口,用于控制面与用户面的交互

PFCP 消息包含 PFCP 消息头,根据消息的类型可能包含后续的 IE

节点相关的 PFCP 消息头

 对于节点相关的消息,PFCP 消息头不包含 SEID 字段,但是会包含 the Sequence Number 字段,最后是 spare

会话相关的 PFCP 消息头

 

会话相关的消息的 PFCP 消息头必包含 SEID 设置为1,消息头长度为16,MP可能为0或1,MP为1时,最后一个字节的高4位为优先级。

如果 MP 设置为 1,第 16字节的 5-8 位指示了消息优先级

当 S=1,字节 5-12 代表了 SEID 字段

功能介绍:

控制平面功能元素(如SMF)通过建立、修改或删除PFCP会话来控制用户平面功能元素(如UPF)的报文处理和转发。

PFCP协议控制用户面数据包的转发。它是5G网络中控制面和用户面之间的协议之一,用于在不同网络节点之间传输用户面数据包的转发规则。PFCP协议的主要作用包括:

  1. 控制面和用户面之间的通信:PFCP协议在5G核心网中用于控制面和用户面之间的通信,允许核心网控制平面中的元素来配置和控制用户面中的元素。

  2. 用户面数据包的转发:PFCP协议用于控制用户面数据包的转发,包括定义数据包转发的规则和策略。

  3. 用户面会话管理:PFCP协议还支持用户面会话管理,允许核心网控制面中的元素来管理用户面中的会话状态和流量

PFCP协议的结构包括消息类型、消息头、消息体和TLV(Type-Length-Value)三个部分。其中,消息类型定义了消息的类型,消息头包含了消息的一些元数据信息,消息体则包含了具体的消息内容,TLV则用于传输消息体中的参数信息。

需要注意的是,PFCP协议是在GTP-U(GPRS Tunneling Protocol-User Plane)协议的基础上进行扩展和改进而来的,用于支持更高效和更灵活的用户面数据包转发和控制。

PFCP协议用于控制用户面数据包的转发,包括定义数据包转发的规则和策略。其消息交互过程一般分为如下几个步骤:

  1. 建立会话:在用户面数据流需要进行转发时,控制面中的元素需要向用户面中的元素发起会话建立请求。此时,控制面元素向用户面元素发送一个Session Establishment Request消息,该消息中包含了一些必要的参数信息,如Session ID等。

  2. 确认会话:当用户面元素收到Session Establishment Request消息后,会根据消息中包含的参数信息来确认会话是否可以建立。如果可以建立,则用户面元素向控制面元素发送一个Session Establishment Response消息,该消息中包含了一些必要的参数信息,如Session ID等。

  3. 配置规则:会话建立完成后,控制面元素可以向用户面元素发送PFCP消息来配置用户面数据流的转发规则。此时,控制面元素向用户面元素发送一个PFCP规则配置请求消息,该消息中包含了一些必要的参数信息,如规则ID、规则优先级、匹配规则等。

  4. 确认规则:当用户面元素收到PFCP规则配置请求消息后,会根据消息中包含的参数信息来确认规则是否可以配置。如果可以配置,则用户面元素向控制面元素发送一个PFCP规则配置响应消息,该消息中包含了一些必要的参数信息,如规则ID、结果状态等。

  5. 更新规则:在用户面数据流需要进行转发时,控制面元素可以向用户面元素发送PFCP消息来更新用户面数据流的转发规则。此时,控制面元素向用户面元素发送一个PFCP规则更新请求消息,该消息中包含了一些必要的参数信息,如规则ID、新的匹配规则等。

  6. 确认更新:当用户面元素收到PFCP规则更新请求消息后,会根据消息中包含的参数信息来确认更新是否可以进行。如果可以进行,则用户面元素向控制面元素发送一个PFCP规则更新响应消息,该消息中包含了一些必要的参数信息,如规则ID、结果状态等。

PFCP关联:

在 UP 功能上建立 PFCP 会话之前,应在 CP 功能和 UP 功能之间建立 PFCP 关联。一个 CP 功能和 UP 功能将由唯一的 Node ID 标识,Node ID 将被设置位 FQDN 或者 IP 地址

PFCP Association Setup Request 消息

和 UP 建立 PFCP 连接

     - 提供 node 相关参数

     - 提供 UP 功能特性

     - 使用 Heartbeat 程序检查 UP 的响应

     - 可能建立 PFCP 会话

     - 如果 UP 已经指示优雅的关闭,避免尝试建立新的 PFCP 会话

PFCP Association Setup Request body 参数

- Node ID,发送方以为的标识符

- Recovery Time Stamp,当 CP 或 CP 已经启动的时间戳

- UP Function Features,指示 UP 功能支持的特性(UP 发送)

- CP Function Features,指示 CP 功能支持的特性(CP 发送)

- User Plane IP Resource Information,包含 IPv4 / IPv6,还有 TEID,用来在 UP 分配 GTP-U F-TEID(UP 发送)

PFCP Association Setup Respense 消息

当和 CP 建立 PFCP 关联

- 更新 CP 支持的特性

- 更新 CP load/overload 控制信息功能

- 可能更新 UP IP 可用资源给 CP

- 接收从 CP 发来的 PFCP 会话相关信息

- 使用 Heartbeat 程序检查 CP 的响应

- 当失败或不再服务区,指示 CP 优雅的关闭

交互流程:

AMF                                                                                              UPF

-----------------PFCP Association Setup Request----------------------->

-----------------PFCP Association Setup Response----------------->

-----------------PFCP Association Establishmeng Request-------->

-----------------PFCP Association Establishmeng Response-------->

-----------------PFCP Association Modification Request------------->

-----------------PFCP Association Modification Response----------->

GTPv2协议

GTP 可以提供移动性的功能。使用 GTP,网络的终端能够在网络中移动位置,各个端点集之间可以建立多个隧道,从而根据业务不同可以提供不同的 Qos,可以隐藏 IP,安全性更高。

- Version, 用来决定 GTP 协议的版本,该版本应该设置为 1

- Protocol Type(PT),这一位用作为协议标识符在 GTP(PT为1)还是 GTP'(PT为0)。GTP' 在 3GPP TS 32.295 中定义,并且它的头部的含义和 GTP 一样的

- Extension Header flag (E),这一位指示 Next Extension Header 域是否有意义。当设置为 0 时,Next Extension Header 不存在,如果存在也不被解释。当设置为 1 时,Next Extension Header 域要被解释

- Sequence number flag (S),这一位指示 Sequence number 域是否有意义。当设置为 0 时,Sequence number 要么不存在,如果村在也不被解释。当这设置为 1 时,Sequence number 域要被解释

- N-PDU Number flag (PN),指示 N-PDU Number 是否有意义。当设置为 0,N-PDU Number 不存在,或者存在不被解释,当设置 1,N-PDU Number 将被解释

- Message Type,定义了 GTP 的消息类型,包括 GTP-C 和 GTP-U

- Length,指示了 payload 的长度,以字节为单位

- Tunnel Endpoint Identifier (TEID),该字段明确标识接收 GTP-U 协议实体中的隧道终结点,GTP 隧道的接收端在本地分配发送方必须使用的 TEID 值。指示了 T-PDU 属于哪个隧道。

信令消息

路径管理

Echo Request Msg:用来探测 GTP Path 和对端节点是否正常。发送间隔由 N3 计数器控制,建议值为 5 次。T3 为等待响应的时间,建议不低于 60 秒。若 T3 * N3 超时,则认为 GTP Path 失效。

Echo Response Msg:对 Echo Request 的响应。

Supported Extension Headers Notification:声明自己所支持的 GTP 扩展包头。

图片

隧道管理

Error Indication:当收到一个 G-PDU 但找不到对应的 EPS Bearer/PDU Session,并且 TEID 不是全是 0,则要给对端发 Error Indication。主要用途防止 DOS 攻击。

End Marker:用于表明该 GTP-U 隧道已收到最后一个 G-PDU,该隧道将不再接收后续的用户数据。如果来了,也被直接丢弃。

图片

HTTP2协议

HTTP/2消息是一个或者两个HEADERS帧(用于承载HTTP头)、零个或多个DATA帧(用于承载与资源有关的实际内容)和一个可选的终结HEADERS帧(承载HTTP尾部)的组合。

图片

图片

5G核心网络传输层统一采用HTTP/2协议,应用层携带不同的服务消息

用户面与控制面分离介绍:

  1. 控制面和用户面的分离,应当允许在不同的频率发送,例如控制面(C 面)在覆盖好的较低的频 段发送,而用户面(U 面)在较高的频率高速发送。

  2. 灵活性和可扩展性:控制面和用户面的分离使得网络的控制和数据传输可以独立进行,这样可以更好地实现网络功能的灵活性和可扩展性。通过将控制面与用户面分开,可以根据网络需求对两者进行独立的扩容或升级,而不会相互影响。

  3. 低延迟和高吞吐量:用户面处理的是大量的用户数据流量,对于实时性和高吞吐量的要求较高。将用户面与控制面分离可以专注于优化用户数据的传输,减少控制信令对用户数据传输的干扰,从而提供更低的延迟和更高的吞吐量。

  4. 网络切片支持:5G网络提供了网络切片(Network Slicing)的能力,可以根据不同的服务需求,将网络资源划分为多个逻辑上独立的网络实例。控制面和用户面的分离使得可以为每个网络切片分别配置和优化控制和数据传输的策略,实现不同切片之间的隔离和灵活管理。

  5. 网络安全性:控制面和用户面的分离可以提高网络的安全性。控制面负责处理身份验证、鉴权和授权等安全功能,而用户面则专注于传输用户数据。这种分离可以减少攻击者对控制面的直接访问,并降低网络安全威胁的风险。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

毕业之前准备材料

文章目录 说明第一波截止时间待办事情(共计2)1、读书报告审核(吴海梅老师审核)2、课程学分审核(吴海梅老师审核,曹主216办公室) 第二波外审截止时间待办事情(王移花老师审核&#xf…

Linux下du命令和df命令的使用

du命令作用是估计文件系统的磁盘已使用量,常用于查看文件或目录所占磁盘容量。df命令是统计磁盘使用情况,可以用来查看磁盘已被使用多少空间和还剩余多少空间。du命令语法du [选项] [文件或目录名称]参数:-a:--all, 列…

第七篇:人工智能与机器学习技术VS量测(Measurement)- 我为什么要翻译介绍美国人工智能科技巨头IAB公司 - 它是如何赋能数字化营销生态的?

IAB平台,使命和功能 IAB成立于1996年,总部位于纽约市。 作为美国的人工智能科技巨头社会媒体和营销专业平台公司,互动广告局(IAB- the Interactive Advertising Bureau)自1996年成立以来,先后为700多家媒…

(每日持续更新)信息系统项目管理(第四版)(高级项目管理)考试重点整理 第13章 项目资源管理(四)

项目建议与立项申请、初步可行性研究、详细可行性研究、评估与决策是项目投资前使其的四个阶段。在实际工作中,初步可行性研究和详细可行性研究可以依据项目的规模和繁简程度合二为一,但详细可行性研究是不可缺少的。升级改造项目制作初步和详细研究&…

电脑提示“由于仅部分匹配或匹配不明确,因此无法迁移设备”怎么办?

“由于仅部分匹配或匹配不明确,因此无法迁移设备”错误可能会在将较旧的系统更新到较新的系统版本或者安装了双系统之后出现,此外,驱动程序不兼容、系统文件损坏、计算机接口故障、系统不支持出现错误的外接设备等也可能导致该错误出现。了解…

【Selenium】UI自动化|元素定位常见问题

1、报错NoSuchElementException——定位不到元素 分析的可能原因: 页面还没有加载出来,就对页面上的元素进行的操作 元素在iframe中,先要理解下frame的实质,frame中实际上是嵌入了另一个页面,而webdriver每次只能在一…

Cocos Creator 3.8.x 制作模糊效果(比如游戏弹窗需要的模糊效果)

接着上一个讨论的话题,关于3.8.x的后效,今天来分享自定义后效来制作模糊效果,并将他应用到弹窗中做背景,话不多说开整。 一:最终效果 首先咱们来看官网自定义后效怎么搞的,从它的实例开始:自定义后效 二:定义PostProcessSettings给节点提供资源(通过编辑器修改参数的…

两天学会微服务网关Gateway-Gateway路由规则

锋哥原创的微服务网关Gateway视频教程: Gateway微服务网关视频教程(无废话版)_哔哩哔哩_bilibiliGateway微服务网关视频教程(无废话版)共计17条视频,包括:1_Gateway简介、2_Gateway工作原理、3…

vue3 (四)动态组件Vs异步组件

1.动态组件 点击toggle切换2个组件&#xff0c;配合<keep-alive>使用防止切换后数据丢失 <keep-alive><component :is"currentItem"></component> </keep-alive> 2.异步组件 定义方法&#xff1a;app.component(组件名,Vue.defineAs…

vs创建asp.net core webapi发布到ISS服务器

打开服务器创建test123文件夹&#xff0c;并设置共享。 ISS配置信息&#xff1a; 邮件网站&#xff0c;添加网站 webapi asp.net core发布到ISS服务器网页无法打开解决方法 点击ISS Express测试&#xff0c;可以成功打开网页。 点击生成&#xff0c;发布到服务器 找到服务器IP…

第十篇:如何利用人工智能技术做好营销流量整形管理?(Traffic Shaping)- 我为什么要翻译介绍美国人工智能科技巨头IAB公司

IAB平台&#xff0c;使命和功能 IAB成立于1996年&#xff0c;总部位于纽约市​​​​​​​。 作为美国的人工智能科技巨头社会媒体和营销专业平台公司&#xff0c;互动广告局&#xff08;IAB- the Interactive Advertising Bureau&#xff09;自1996年成立以来&#xff0c;先…

每日五道java面试题之mysql数据库篇(六)

目录&#xff1a; 第一题. MySQL中InnoDB引擎的行锁是怎么实现的&#xff1f;第二题. InnoDB存储引擎的锁的算法有三种第三题. 什么是死锁&#xff1f;怎么解决&#xff1f;第四题. 数据库的乐观锁和悲观锁是什么&#xff1f;怎么实现的&#xff1f;第五题. 为什么要使用视图&a…

【MySQL】视图 -- 详解

视图 是一个虚拟表&#xff0c;其内容由查询定义。同真实的表一样&#xff0c;视图包含一系列带有名称的列和行数据。视图的数据变化会影响到基表&#xff0c;基表的数据变化也会影响到视图。 一、基本使用 1、创建视图 create view 视图名 as select 语句; 好处&#xff1a;…

基于NB-IoT的西红柿基地温湿度监测系统

总体硬件架构 在西红柿种植园内&#xff0c;我们为每株作物分配RFID标签&#xff0c;以便在每次照顾作物后记录其生长状况、施肥和灌溉等信息。这些数据将上传至云端&#xff0c;便于用户在线实时监控作物生长情况。 为了确保温湿度的精确控制&#xff0c;我们在作物棚内每隔3米…

#QT(智能家居界面上-图片插入)

1.IDE&#xff1a;QTCreator 2.实验 3.记录 (1)添加图片文件&#xff08;图片资源文件&#xff0c;PNG格式为佳&#xff09; &#xff08;2&#xff09;将图片放入工程文件夹 &#xff08;3&#xff09;按如下步骤将图片加入到工程中&#xff08;pic.qrs文件夹&#xff09; &…

阿里云2核4G服务器支持多少人同时在线?

2核4G服务器支持多少人在线&#xff1f;阿里云服务器网账号下的2核4G服务器支持20人同时在线访问&#xff0c;然而应用不同、类型不同、程序效率不同实际并发数也不同&#xff0c;2核4G服务器的在线访问人数取决于多个变量因素&#xff1a; 2核4G&#xff1a;2核CPU和4G内存对…

2024年【烟花爆竹经营单位主要负责人】试题及解析及烟花爆竹经营单位主要负责人作业模拟考试

题库来源&#xff1a;安全生产模拟考试一点通公众号小程序 2024年【烟花爆竹经营单位主要负责人】试题及解析及烟花爆竹经营单位主要负责人作业模拟考试&#xff0c;包含烟花爆竹经营单位主要负责人试题及解析答案和解析及烟花爆竹经营单位主要负责人作业模拟考试练习。安全生…

代码还原之 函数

指令堆里逆向出来的代码有歧义&#xff0c;有三处返回&#xff0c;有嵌套IF语句&#xff0c;故推断出是个函数&#xff1b; #if 0/*27ec: 48 8d 3d 58 39 00 00 lea 0x3958(%rip),%rdi # 614b <_IO_stdin_usedBase0x14b> // rdi"COLUMNS"27f3: e8 e…

“.网址”中文域名成为中国企业互联网发展新潮流

随着互联网的不断发展和英文域名资源的日益枯竭&#xff0c;中文域名在国内迅速崛起。 中文域名不可重复注册&#xff0c;具有一经注册全球唯一的属性。 为维护自主品牌权益&#xff0c;加强中文域名知识产权保护已成为企业的重要任务。 现代知识产权法的价值已经从西方文化价…

Docker入门——安装部署(openEuler)、镜像加速

安装 1&#xff09;依赖的基础环境 64 位CPU Linux kernel(内核) 3.10 Linux kernel cgroups and namespaces 我用的是openEuler&#xff0c;所以直接yum安装(推荐&#xff0c;因为二进制安装&#xff0c;docker命令中补全操作要另外安装软件) [rootlocalhost ~]# yum -y…