OpenUPF

  • 1 简介
  • 2 UPF
    • 2.1 什么是UPF
    • 2.2 UPF功能
      • 2.2.1 基本业务
      • 2.2.2 路由和转发功能
        • 2.2.2.1 用户面数据转发
        • 2.2.2.2 接入外部数据网的功能
        • 2.2.2.3 分流功能
        • 2.2.2.4 隧道管理
        • 2.2.2.5 End-Mark
        • 2.2.2.6 数据缓存

1 简介

5GC由若干功能网元组成,包括移动接入管理AMF,会话管理SMF,切片管理NSSF等,其中,UPF为用户数据面网元(或转发面网元),用于安全传输用户数据(简单的来说-为用户提供上网能力/服务)。
根据边缘网络层次划分,UPF可运行在极边缘、边缘、中心边缘、DN中心,需要支持与MEP平台对接以及边缘导流。
基于微服务的5GC与NFV具备天然的承接性,原因在于基于微服务的网元定位于软件,使其能运行在NFV平台之上; 而N4解耦后的UPF更能充分“脱离”大网5GC部署之外,并下沉于各级边缘网络或边缘云之中。

本文内容基于《中国移动OpenUPF N4解耦设备规范》,并对其尝试从需求层面和实现层面进行解读,供大家参考。

2 UPF

2.1 什么是UPF

3GPP定义为数据面功能,区分别控制面(如AMF,SMF,UDM,NRF,NSSF,AUSF等)。5GC控制面类似于EMC,区别在于微服务化和SBI化,作用于UE行为管理和通信管理(微服务化后的5GC为切片提供了天然支撑基础); 5GC数据面,即UPF,功效与PGW/SGW几乎完全相同。
UPF本质仍然是一个传输设备,配合控制面打通UE、RAN、DN的通信通路,即会话/承载。北向支持N4接口的策略控制,东西向支持N3,N6/N9,中间基于会话/承载转发,可以说是一个策略路由器,流式转发器。

2.2 UPF功能

2.2.1 基本业务

UPF支持三种PDU会话类型:IP会话、Eth会话、Unstructured会话。此能力要求UPF支持三种转发类型:L3 IP转发、L2 MAC转发、非IP转发(多用于私有协议领域,待进一步分析),而IP转发支持IPv4, IPv6或双栈转发能力。
PDU会话要求UPF与RAN/UPF之间建立GTPU隧道,而隧道内容可承载上述三种报文。
IP会话适用于大多数UE访问Internet场景。5GC控制面(SMF)为UE分配本地IP地址(含IPv6), 并为UE打通数据面通路(GTPU隧道)。在UPF侧,IP会话表现为基于IP规则的策略表,UPF根据IP策略处理IP数据报文。
Eth会话适用于UE 2 UE下的二层通信场景(含组内广播)。根据UE组及UE会话需求,5GC控制面(SMF)为UE创建Eth会话,为相同组的UE组建二层广播域网络,适用于UE间的可信组网。N19接口适用于此场景。
Unstructured会话适用于自定义或5G扩展组网,如为非IP网络提供数据承载能力或传输能力,此会话有待进一步细化和明确。

2.2.2 路由和转发功能

2.2.2.1 用户面数据转发

  • 节点转发

用户面数据包括上述三种会话类型,UPF收到用户数据后根据控制面下发的策略/规则执行转发,而转发包括上行和下行两个处理方向,不同的方向对应不同的处理策略。根据对接设备的不同,UPF需要支持N3、N9/N19、N4u、N6等接口,分别对接RAN、UPF/PGW、SMF、DN Router,其中N6为非GTPU转发,可定义为普通IP转发或带隧道(如IPSec)转发。

  • MTU 1500

GTPU承载报文长度需支持最大1500字节,这里限制的时内层报文MTU,故而GTPU总长度将超过1500字节。如在UE TCP/IP协议栈发出1500字节的报文后,RAN应将其封装在GTPU隧道内,此时长度将超过1500字节。由于RAN到UPF之间经过OTN网络,GTPU报文可能(运营商通常将保证不会分片)会被中间分片传输至UPF,UPF应支持对分片进行重组;对于UE发出的IP分片,由于某些策略需要(如黑白名单策略),将需要UPF对其进行内层分片重组或虚拟重组;对于UPF转发到下一个节点的报文,如果其长度超过MTU值,其将会被分片(或再次分片),受限于RAN IP协议栈能力,对于下行的报文转发,分片应作用于内层报文。

  • TEID与数据传输

以UE访问Intranet Web为例,HTTP报文将经过UE、RAN、UPF、DN到达Intranet。RAN与UPF, UPF与UPF/PGW双向之间使用GTPU隧道转发,GTPU具备隧道Endpoint(源IP,源Port,目地IP,目地Port)特性,故而在GTPU会话双方之间相当于建立了一条虚链路。每个UE可有条件的建立多条这样的虚链路,通常以业务&切片需求进行划分,如访问Intranet会建立一条,IMS通信会建立另一条。访问本地边缘业务也可以再建立一条,或者基于原有某个PDU进行再次分流。

一条虚链路对应于UPF侧的一个PDU,由于所有隧道复用了Sport,Dport, 故而GTPU需要通过第三方进行标识/区分,即TEID。在整个数据转发路径中,UE与RAN基于无线承载(DRB)和QFI及TEID的映射转发,故其侧重于空口处理,而不需要对TCP/IP的复杂处理(如对接UPF侧网络所需要的分片、重组)。对UE和UPF来说,RAN实侧相当于二层设备了。
一条PDU会话内部再次通过TFI, SDF,APP ID、DNN等进行分流,或本地出,或N9出,用于上行流量; 对于下行流量,与分流对应的则是汇聚。

  • DNS Cache

DNS Cache要求UPF对DNS流量作缓存并再应答,即DNS代答功能。首先,要求UPF对于上下行的DNS报文进行“窥探”,尝试获取通过本UPF的DNS信息并进行缓存; 其次,对于缓存的DNS条目加以利用,如DNS 黑白名单,DNS应答。通常,此功能与DNS Sniffer 一起使用,并配合本地预定义策略应用到PDU(PDR)中。

  • 转发动作

UPF转发行为,即控制报文转发行为,包括转发、丢弃、缓存、上送、复制,具体表现为FAR的类型:

类型 作用
转发 此报文将会转发给下一个节点,UPF/RAN/DN
丢弃 此报文将会被丢序弃,同时无URR
缓存 此报文将会被缓存,通常是下行报文,数据面表现为与UE无PDU时
上送 与缓存对应,在目标UE建立PDU之后,SMF将更新FAR转发状态为“上送”或“丢弃“
复制 数据报文将会被复制一份,且通常会被转发到下一个节点

UPF的PDU内转发实则是通过PDR的再分类进行的,数据流量通过匹配PDRs进行自分类,并根据PDRs与FAR的映射关系作不同的数据处理,其它规则同也是根据PDR分类后处理的。

2.2.2.2 接入外部数据网的功能

  • DiffServ功能

QoS标识功能,在PDR中配置5QI、ARP匹配策略,并对于命中PDR的流量进行分类,通常情况下,根据5QI、ARP值可以区分应用,不同的应用具备不同的处理策略。

  • 隧道功能

GRE或IPSec隧道多用于N6口。UPF通常情况下不是直接暴露于DN网络,外侧通常部署防火墙或审计系统;另外,UPF与IMS或其它运营商系统并非直连关系,通常属于DN网络的子网;再者,下沉的UPF靠近用户侧,甚至被用户直接管理。这些限制要求,要求UPF与其它对接系统间有内网通信需求,甚至是安全性通信需要。某些复杂的组网可能会存在GTPU Over GRE Over IPSec的可能。

2.2.2.3 分流功能

分流用于上行流量,UPF分流包括基于PDR的ULCL分流和基于源地址的多分支分流(IPv6)。分流功能要求UPFs串/并联组网,3GPP未显示要求UPF的级联个数,通常情况下,二级能覆盖非漫游条件下的大多数组网场景。

在ULCL分流中,UPF被标识为两种类型:I-UPF和PSA-UPF。其中,I-UPF要求同时具备PSA UPF能力,分流策略在I-UPF被应用。RAN、I-UPF、P-UPF三个节点中,RAN、I-UPF为动变量,将顺着UE的位置变更而变化,而P-UPF通常不会,故而P-UPF也称为锚点,或可以理解为目标出口。


在5GC控制面(SMF)的控制逻辑中,数据面被划分为若干服务区(Service)进行管理,RAN/UPF/SMF可划分在不同的服务区中, 同时根据组网规划和服务能力亦或有重叠,即同一个网元可能被划分在不同的服务区中。在UE移动过程中,除TA的切换外,还涉及到服务区的变更(服务区通常意义上大于TA),但流量出口,即PSA-UPF在切换过程中通常应保持不变(同一条数据流期间或同一个PDU活跃期),以维持数据流的持续性和业务的连续性。

2.2.2.4 隧道管理

  • 隧道管理

当今网络发展逐渐软件化和通用化,与SDN的发展相辅相成。软件化带来的好处是智能化。智能化具备统一的控制大脑,要求数据面网元受控制大脑统一调度,故而大多数传统自治组网控制协议被SD所取代,受中心统一控制,形成SDN。
根据NFV架构,UPF归纳到VNF中,且整个5GC采用转控分离架构,UPF整体转发行为受制于控制面(提取此,对于本地预定义策略导致的例外性,一直心存芥蒂)。UPF的隧道管理由控制面发起(而控制面由UE或自身发起),UPF定位于被动转发网元。
控制面通过N4接口向UPF下发隧道创建/删除/释放消息,包括:
N3隧道:UPF与RAN之间的GTPU隧道;
N4u隧道:UPF与SMF或SMF可控代理之间的GTPU隧道;
N9隧道:UPF与UPF之间的GTPU隧道,用于I-UPF与P-UPF之间;
N19隧道:UPF与UPF之间的GTPU隧道,用于UE间直通的场景。

  • 隧道状态

UPF按策略进行转发,同时将向控制面上报转发状态。转发状态包括业务状态、节点状态、链路状态等。其中,链路状态即隧道状态需要包含隧道活跃状态、DOWN信息,转发错误信息等,控制面(SMF)将根据这些信息评估PDU转发状态,某些信号可能将影响控制面决策。

  • 隧道去激活

控制面在创建PDU时,会有选择的要求UPF上报信息,其中,下行空闲状态将作为控制面对数据面隧道去激活的条件之一。UPF在隧道下行空闲时,将以链路状态信息上报给SMF,SMF将释放除PSA之外的隧道,以节省链路资源(包括空口)。
当存在上行或下行流量时,将触发隧道的重建,重建后的隧道不一定与原来的路径相同。上行隧道由控制面发起(即UE主动发起),故而隧道会先于数据建立;下行隧道由数据流触发,此时先收到数据,再建立隧道,由于隧道建立的滞后性,需要UPF对数据流进行一定时间或一定长度的缓存。

在下行方向,UPF在缓存数据的同时,会通知SMF下行数据的到来及相应状态;SMF会触发UE寻呼,以将UE拉上来(即让激活UE PDU);此时,缓存的后续处理由控制面决策,条件会随着UE的状态变化有不同的处理方式:
转发:P-UPF无需变更,UE重新建立与P-UPF的通路时;
丢弃:数据过期;
上送:P-UPF变化,数据需要上送到控制面,并由控制面下发至新P-UPF或新SMF。

2.2.2.5 End-Mark

隧道关闭采用优雅释放机制,所谓优雅可以理解为绅士机制,Say Hello, Say goodbye。End-Mark属于Say goodbye,属于隧道关闭前的最后一个报文,属于GTPU关闭控制报文,用于数据面转发路径切换(如UE移动过程中)。End-Mark将从发起者传递到RAN, 发起者包括UPF和SMF。

  • 数据面发起

数据面通过N4控制接口与控制面(SMF)协商End-Mark能力,并在UE PDU路径发生变更时,由控制面指示数据面P-UPF或变更点的I-UPF在旧路径上发起End-Mark。

  • 控制面发起

某些时候End-Mark需要控制面发起,如P-UPF发生变化或某些特殊管理策略(如“管理员”行为)。跨服务区的移动可能引起PSA-UPF变更(这里的服务区指逻辑组上的管理区)。
由于End-Mark属于数据面指令,需要SMF和UPF之间具备N4u接口。

2.2.2.6 数据缓存

无线通信与有线通信都需要通过维持“连接”进行通信保持,这都是通过信号介质+链路协议实现的。有线的连接与物理实体是存在对应关系的,如一条光缆就是一条连接,而无线受限于终端的可移动特点,表现不同。受限于空口资源(频段)限制以及能效考虑,无线的连接是一种按需连接,只有需要才会建立数据链路。当GTPU隧道去激活时,UE和第一个UPF不存在连接关系(即至少NR,N3不存在),此时,下行报文无法成功投递给UE。

此种场景下,要求5GC具备数据缓存能力。根据3GPP标准,支持缓存能力的网元可以是UPF或SMF。

  • UPF缓存

  • SMF缓存

解读《移动5G OpenUPF N4解耦设备规范》- 待更新相关推荐

  1. 成都16条新经济优势赛道解读之5G大数据

    作者 | 36氪四川 来源 | 36氪四川(ID:SC36kr) 原标题 | 成都16条新经济优势赛道解读之5G&大数据 当前成都新经济企业已高达36万家,7月15日,成都市委十三届七次全会举 ...

  2. 随着计算机硬件设备,随着计算机硬件设备的不断更新.doc

    随着计算机硬件设备的不断更新 随着计算机硬件设备的不断更新,软件的不断升级,数码相机处于不断的发展变化之中,性能不断提升,成本不断下降,伴随着电脑的普及逐步向家庭用户靠拢,成为人们的新宠.面对众多数码 ...

  3. PCIe 5.0 规范最新更新及PCIe 5.0测试挑战​

    PCIe 5.0 基础规范 v1.0 在 2019 年年中发布以后,Synopsys 发布了世界上第一款支持 PCIe 5.0 基础规范 v1.0 的 IP,并展示了在其实验室验证发射机/接收机 Tx ...

  4. M通用版代码规范 - 持续更新

    文章目录 M通用版代码规范 - 持续更新 变量 方法 类 锁 事务 陷阱 格式 空行 注释 M通用版代码规范 - 持续更新 变量 代码中的命名均不能$.#等特殊符号开始或结束,因为$.#等是系统方法. ...

  5. 5G智慧工业 | PLC设备远程监控系统解决方案

    PLC作为目前信息采集.控制的主要技术手段,势必将在物联网的建设中起到关键性作用,这就是PLC行业的机遇.然而传统的PLC虽然能够接入物联网,但实施步骤复杂,成本高昂:物联网的信息交换和通信也是复杂的 ...

  6. 《Linux内核剖析》(Yanlz+VR云游戏+Unity+SteamVR+云技术+5G+AI+Makefile+块设备驱动+字符设备驱动+数学协处理器+文件系统+内存管理+GDB+立钻哥哥+==)

    <Linux内核剖析> <Linux内核剖析> 版本 作者 参与者 完成日期 备注 YanlzLinux_Kernel0.12_V01_1.0 严立钻 2020.02.06 # ...

  7. 老猿学5G扫盲贴:3GPP规范文档命名规则及同系列文档阅读指南

    专栏:Python基础教程目录 专栏:使用PyQt开发图形界面Python应用 专栏:PyQt入门学习 老猿Python博文目录 老猿学5G博文目录 在学习5G规范过程中,有些内容把握不定的时候,有时 ...

  8. 手机查找仪 手机信号搜索查找定位 4G 5G信号源查找设备

    随着运营商4G.5G用户的大规模爆发增长,大多数用户手机已经首选驻留在4G.5G网络,4G及5G主动式设备已经成为当前国内科技强警的迫切需求.不同于以往2G.3G时代的设备,4G网络的复杂性大大提高, ...

  9. 解读中国电信5G NB-IoT用户破亿背后:中国物联网行业出现“领头雁”

    517世界电信日当天,"中国电信5G NB-IoT用户规模突破1亿, 5G窄带物联网规模全球第一"这一消息引发行业震动,全球第一何种概念?可以说,这不仅对中国电信自身而言是一种大跨 ...

最新文章

  1. 数字图象处理之二维码图像提取算法(九)
  2. flannel源码分析--RegisterNetwork
  3. VS2017-MFC-生成二维码测试小程序
  4. JMeter中3种参数值的传递
  5. 集成测试还原数据库_项目学生:分片集成测试数据
  6. 运动搜索(运动估计)知识
  7. 在BCB中使用多线程实例
  8. 完美收官!java程序内存溢出找原因
  9. 本周论文推荐(10.26-11.1)
  10. Java逆向工程SpringBoot + Mybatis Generator + MySQL
  11. cpuz测试分数天梯图_2015最新cpu天梯图 cpu性能排行榜
  12. ROVIO安装运行及保存轨迹用evo评估
  13. 世界各国大脑计划现状综述,互联网大脑计划系列二
  14. ORA-12514问题解决方法
  15. android布局事件吗,Android事件分发机制
  16. meta标签详解(name、http-equiv、scheme、charset、各浏览器常用meta标签、常见移动端meta标签)、viewport详解
  17. 用c语言程序判断谁是小偷
  18. ddns client
  19. Tensorflow变量作用域及变量初始化
  20. Fatal error: Uncaught Error: Call to undefined function mysqli_content() in D:\phpstudy_pro\WWW\user

热门文章

  1. php 敏感关键词检测,字符串 - PHP 敏感词违法关键字检测 算法方案
  2. linux系统漏洞测试过程,Linux下bash破壳漏洞检测方法
  3. CSS进阶(3)- 布局
  4. Android解决你的手机上未安装应用程序。的问题
  5. grid栅格布局详解
  6. Java开发在线报名系统_单独招生在线报名系统设计和实现.doc
  7. 弱口令实验室招新赛Writeup
  8. 清华计算机2020保研,清华大学2020届保研情况
  9. 绝了!毕业10年年薪百万,今天总结一下我都学了什么!
  10. UE4《大象无形》学习笔记