读南山耕夫笔记_一文弄懂5G UE策略

2023-10-20 22:49

本文主要是介绍读南山耕夫笔记_一文弄懂5G UE策略,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目录

引子

UE Policy Association 的触发场景和条件

UE Policy 为何物 ?

URSP

优先级

业务描述符(traffic descriptor)

路由选择描述符: 包括 (重要项, 非重要项此处未列出)

UE中如何使用URSP路由数据

URSP规则的匹配过程: 感觉像一个算法

信令流程

ue策略更新有两种场景

流程第一阶段: 触发

流程第二阶段: UE PolicyAssociation的建立

流程第三阶段: UE策略的下发

eps.pcap 分析

引子

1. UE上 应用程序的数据 -> PDU Session  如何映射 ?

2. UE 新建立PDU Session 时如何选择切片 ?

3. UE 策略的下发流程 ?

4. UE 策略的更新流程 ?

YYR: 程序是可以串联起来的, 有因就有果;

        进入了5G后, UE建立PDU Session时就需要判定用哪个切片, 应用数据如何映射, 每个细节都是问题

UE Policy Association 的触发场景和条件

  • 场景
  • UE发起初始注册;
  • HO或移动性过程中, AMF改变, 新AMF选择了新PCF;
  • EPS->5GS: UE移动到5GS时, AMF和PCF间无UE Policy Association

条件

  • 非漫游下: 注册请求消息中, 如果包含了 UE Policy Container, 则会执行 UE策略关联; 如果未包含, 则AMF根据本地配置决定是否执行 UE策略关联;
  • 漫游下: 需要根据漫游协议来决定;

UE Policy 为何物 ?

  • ANDSP: Access Network discoveryyand selection policies, 用于UE选择 non-3GPP接入网络
  • V2XP: R16 新增
  • URSP: Route Selection Policy, 路由选择策略, 这个是重点 !!!

URSP

整体介绍

指导UE路由上行业务, 就是将 UE上行用户数据和PDU Session进行关联起来的准则

  • UE触发建立 新 PDU Session;
  • UE将业务路由到一个已建立的PDU Session;
  • UE将业务路由到non-3GPP接入的PDU Session;

规则特点

可由 UE预配置 或 PCF提供, 但 PCF 的优先级高;

可以有1条 或 多条规则;

如果有多条规则, 则其中只有一条可定义为 缺省URSP规则: 可以匹配上所有业务的 业务描述符(traffic des)

规则定义:

 由上图可以看出包含3部分(必选)内容, 和 其他可选内容  (LY: NTA)

优先级, 业务描述符, 路由选择描述符, 具体:

优先级

  • 数值越小, 优先级越高

业务描述符(traffic descriptor)

  • 包含能够匹配上所有业务的描述符, 或
  • 包含匹配具体的Application des, IP des, Domain des, DNN 等信息的组建

注意: 1. DNN 也可以在 路由选择描述符中存在, 但只能二选一;

         2. 相同类型的组件, 其中之一匹配上即可; 不同类型的组件, 只有都能匹配上才能使用此URSP规则;

路由选择描述符: 包括 (重要项, 非重要项此处未列出)

  • 优先级
  • 路由选择组件: (Route Selection Compont, UE在创建PDU Session时 必须符合下面的条件)
    • SSC模式 selection : UE发送的上行数据包 使用的 PDU Session 需支持此 SSC 模式
    • 网络切片selection : UE发送的上行数据包 使用的 PDU Session 需支持 此切片
    • DNN selection : UE发送的上行数据包 使用的 PDU Session 需支持 此 DNN
    • PDU Session Type selection : 类似上面
    • Non-Seamless Offload indication : 应用数据需卸载到 non-3GPP接入, 此组件 和 DNN/切片选择 互斥 !!!
    • Access Type Preference : 3GPP, non-3GPP, multi-access
    • Time Window : 一定的时间窗口内有效
    • Location Criteria : UE的位置能匹配上 时有效
  • 路由选择校验标准

UE中如何使用URSP路由数据

1个PDU会话可以有多条QoS Flow (max 64条);

不同的PDU会话的QFI可以相同, 但同一个会话的QFI不同;

取值范围: PDU会话(1-15), QFI(0-63)

URSP规则的匹配过程: 感觉像一个算法

  • UE新运行一个应用 -> 根据优先级执行URSP规则的匹配 -> : why 这样做 ? (TD 可以理解, 但RSD 没法被 应用 直接 判断吧 ??? )
  • 有匹配的 URSP规则, 根据其中的 "路由选择描述符(RSD)" 的优先级选择适合的 RSD;
  • UE比较 已建立的 PDU Session 是否能匹配上 上面选择的 RSD 中的组件, 匹配规则如下:
    • 比较 PDU会话的SSC 和 RSD的 SSC;
    • 比较 PDU会话的切片 和 RSD的 切片;
    • ...
  • 匹配结果分析
    • 如果UE新启动的应用 和 现存的一个PDU 会话 能够匹配: 把此应用的数据路由到这个 PDU 会话
    • 如果UE新启动的应用 和 现存的多个PDU 会话 能够匹配: UE根据自己的配置选择适合的PDU会话
    • 如果UE新启动的应用 和 现存的PDU 会话 都不能匹配: 使用 RSD 包含的参数请求 UE的 NAS层触发建立新的 PDU会话
      • 所以说, PDU会话建立时的参数不是凭空来的, 这 便是依据 !!!
      • 从 RSD 中可获得的参数有:
        • SSC 
        • 一个 S-NSSAI: 如果有的话
        • 一个 DNN: 如果有(并且 traffic des 中没有DNN时)
        • PDU session type
        • 优先的 Access Type  OR  multi-access
      • 如果PDU会话建立成功:
        • UE的NAS层 将建立的PDU会话信息 通知给 URSP层,
        • 将PDU addr 等信息通知给更高层
        • 停止为应用程序选择 RSD
      • 如果PDU会话建立失败
        • 采用 RSD 中的其他参数组合重新发起 PDU会话建立流程
        • 如果还失败, 则选择 低优先级的 RSD 再尝试
        • 如果还失败, 则使用能匹配 traffic des 的低优先级的 URSp规则中的组合值再建;

信令流程

ue策略更新有两种场景

  • 场景一: 初始注册过程中的触发
    • 触发条件: Register Req 中携带 UE Policy Container, 和注册流程一起执行。
  • 场景二: 触发器触发:
    • 触发条件: AMF执行 Npcf_UEPolicyControl_CreateReq 后会下发触发器, 后续UE如果满足触发器定义的条件时, 进行UE策略的更新

流程第一阶段: 触发

场景一的触发, 场景二的触发暂无

流程第二阶段: UE PolicyAssociation的建立

req 资源 url: {apiRoot}/npcf-ue-policy-control/v1/policies/

res: location: 创建的UE策略资源URI: {apiRoot}/npcf-ue-policy-control/v1/policies/{polAssoId}

注册: res 中含有 ue policy, 但是 !!! 这个绝对不会直接发给 AMF, 而是必须要经过 下一个阶段的流程 !!!

流程第三阶段: UE策略的下发

nas 角度: UE策略管理流程

 整体角度: UE策略的下发

 这是流程规定使用的 uri:

p1:

        req: {apiRoot}/namf-comm/<apiVersion>/ue-contexts/{ueContextId}/n1-n2-messages

        res: 200

p3: 使用 DL NAS TRANSPORT 消息

p4: 使用 UL NAS TRANSPORT 消息

p5: 

      req: 此处的 uri 为 PCF通过N1N2MessageSubscribe订阅AMF事件时提供的 N1NotifyCallBackUri .

      res: 204

注意: p1, p5 这是两条消息, 每条都有 req, res, 不是一条消息, 这个图只是为了简单明了才把 res 给省略了

eps.pcap 分析

 

这篇关于读南山耕夫笔记_一文弄懂5G UE策略的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/250206

相关文章

一文详解SpringBoot响应压缩功能的配置与优化

《一文详解SpringBoot响应压缩功能的配置与优化》SpringBoot的响应压缩功能基于智能协商机制,需同时满足很多条件,本文主要为大家详细介绍了SpringBoot响应压缩功能的配置与优化,需... 目录一、核心工作机制1.1 自动协商触发条件1.2 压缩处理流程二、配置方案详解2.1 基础YAML

一文详解如何从零构建Spring Boot Starter并实现整合

《一文详解如何从零构建SpringBootStarter并实现整合》SpringBoot是一个开源的Java基础框架,用于创建独立、生产级的基于Spring框架的应用程序,:本文主要介绍如何从... 目录一、Spring Boot Starter的核心价值二、Starter项目创建全流程2.1 项目初始化(

SpringBoot如何通过Map实现策略模式

《SpringBoot如何通过Map实现策略模式》策略模式是一种行为设计模式,它允许在运行时选择算法的行为,在Spring框架中,我们可以利用@Resource注解和Map集合来优雅地实现策略模式,这... 目录前言底层机制解析Spring的集合类型自动装配@Resource注解的行为实现原理使用直接使用M

一文带你了解SpringBoot中启动参数的各种用法

《一文带你了解SpringBoot中启动参数的各种用法》在使用SpringBoot开发应用时,我们通常需要根据不同的环境或特定需求调整启动参数,那么,SpringBoot提供了哪些方式来配置这些启动参... 目录一、启动参数的常见传递方式二、通过命令行参数传递启动参数三、使用 application.pro

一文带你深入了解Python中的GeneratorExit异常处理

《一文带你深入了解Python中的GeneratorExit异常处理》GeneratorExit是Python内置的异常,当生成器或协程被强制关闭时,Python解释器会向其发送这个异常,下面我们来看... 目录GeneratorExit:协程世界的死亡通知书什么是GeneratorExit实际中的问题案例

一文详解SQL Server如何跟踪自动统计信息更新

《一文详解SQLServer如何跟踪自动统计信息更新》SQLServer数据库中,我们都清楚统计信息对于优化器来说非常重要,所以本文就来和大家简单聊一聊SQLServer如何跟踪自动统计信息更新吧... SQL Server数据库中,我们都清楚统计信息对于优化器来说非常重要。一般情况下,我们会开启"自动更新

4G/5G全网通! FiberHome烽火5G CPE Air路由器拆机评测

《4G/5G全网通!FiberHome烽火5GCPEAir路由器拆机评测》烽火5GCPE已经使用一段时间了,很多朋友想要知道这款路由器怎么样?今天我们就来看看拆机测评... 我想大家都听说过、了解过5G。 5G是具有高速率、低时延和大连接特点的新一代宽带移动通信技术,5G通讯设施是实现人机物互联的网络基础设

一文详解kafka开启kerberos认证的完整步骤

《一文详解kafka开启kerberos认证的完整步骤》这篇文章主要为大家详细介绍了kafka开启kerberos认证的完整步骤,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录一、kerberos安装部署二、准备机器三、Kerberos Server 安装1、配置krb5.con

Redis 内存淘汰策略深度解析(最新推荐)

《Redis内存淘汰策略深度解析(最新推荐)》本文详细探讨了Redis的内存淘汰策略、实现原理、适用场景及最佳实践,介绍了八种内存淘汰策略,包括noeviction、LRU、LFU、TTL、Rand... 目录一、 内存淘汰策略概述二、内存淘汰策略详解2.1 ​noeviction(不淘汰)​2.2 ​LR

一文详解Nginx的强缓存和协商缓存

《一文详解Nginx的强缓存和协商缓存》这篇文章主要为大家详细介绍了Nginx中强缓存和协商缓存的相关知识,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录一、强缓存(Strong Cache)1. 定义2. 响应头3. Nginx 配置示例4. 行为5. 适用场景二、协商缓存(协