目录

文章目录

UPF

UPF(User Plane Function,用户面功能),是 3GPP 定义的 5G Core(核心网)基础设施系统架构的基本组成部分。

UPF 从 4G EPC CUPS 演进而来,4G EPC CUPS 将 PGW 分离为 PGW-C 和 PGW-U。使 PGW-U 在更接近网络边缘的地方执行数据包处理以及流量聚合,即提高带宽效率,同时减少网络阻塞。而处理信令业务的 PGW-C 则依旧位于 MME 的北行。CUPS 的主要目标是支持 5G 实现新的无线接入(NR)实现,满足物联网应用和更高的数据传输速率需求。然而要彻底实现 CP 和 UP 的分离是一项复杂的工程,所以 5G Core 利用 UPF 的优势来实现了网络切片(Network Slicing)的设计。

3GPP 23.501 是这样定义 UPF 的

NOTE: 并非所有上述的 UPF 功能清单都需要在网络切片的 UPF 的实例中得到支持。

  • 作为移动基础设施(Mobile Infrastructure,例如:RAN)和 DN(Data Network)之间的互连点,完成 UP 上 GTP-U(GRPS 隧道协议)协议的封装和解封装。

  • 用于 RAT(Radio Access Technologies,无线接入技术)内部、或 RAT 之间移动性的 PDU(Protocol Data Unit,协议数据单元)会话锚点(Session Anchor Point),包括向 gNB(NG-RAN 节点)发送一个或多个 End 标记包(End Marker Packets)。

  • 分组路由和转发:当 UPF 在多个 PSA(PDU session anchor)之间时,即 UPF 作为 I-UPF(Intermediate UPF,中间 UPF)时,会充当上行链路分类器(Uplink Classifier,UL-CL)和分支点的角色以支持多宿主 PDU 会话。作为前者时,会基于 traffic matching filters 将数据流导向到特定 DN。

  • 数据包检查:使用 SDF(Service Data Flow,服务数据流)的 traffic filter templates 或者接收从 SMF 发出的 3-tuple(协议、以及服务端的 IP 地址和端口)PDF(Packet Flow Description)来对应用流程进行检测。

  • 用户平面部分策略规则实施,例如门控,重定向,流量转向。

  • 提供 UP 的 Pre-Flow QoS 功能,对包括上行链路(UL)和下行链路(DL)的传输层数据段实施速率限制(Rate Limiting)以及分组标记,以及在 DL 上处理反射 QoS(DSCP)标记,在 UL 上处理流量验证(SDF 到 QoS 流量映射)。

  • 为计费(Billing)以及合法拦截(LI,Lawful Intercept)提供 UP 流量收集接口以及流量使用报告。



与 UPF 相关的由 4 个标准参考点

  • N3:RAN(gNB)和 Initial UPF 之间的接口
  • N9:两个 UPF 之间的接口,例如:I-UPF 和 UPF of PDU Session Anchor(简称:锚 UPF)之间
  • N6:DN 和 UPF 之间的接口,即连接外部 PDU 和 DN
  • N4:SMF 和 UPF 之间的接口

其中,N3 和 N9 参考点上采用的协议是带 5G 扩展协议头的 GTP 协议、分段路由协议(SRV6 或 NSH)以及 ICN(Information Centric Networking)协议。此外,还有 GTP 协议之上(Over)的 LISP-DP(Locator/ID Separation data plane protocol,位置/身份分离数据平面协议)和 ILA(Identifier Locator Addressing,标识符定位寻址)。由 I-UPF 来完成中继,并在锚 UPF 之上终止这些协议。

UPF 通过 N4 参考点从 SMF 接收 user plane traffic flow,并最终根据 rules 实现数据分流。N4 采用了 PFCP(Packet Forwarding Control Protocol,分组交换控制协议),该协议类似于 OpenFlow,也可以用于 CUPS SX 参考点。外部可以使用 UPF 建立的 PFCP Session 来识别(PDRs,Packet Detection Rules,数据包发现规则)、转发(FARs,Forwarding Action Rules)、处理(BARs,Buffering Action Rules)、标记(QERs,QoS Enforcement Rules)、报告(URRs,Usage Reporting Rules)数据包。

参考文档

https://www.metaswitch.com/knowledge-center/reference/what-is-the-5g-user-plane-function-upf

3GPP 5G UPF的更多相关文章

  1. 老猿学5G:3GPP 5G规范中的URI资源概念

    ☞ ░ 前往老猿Python博文目录 ░ 说明: 本文参考3GPP29.501<Principles and Guidelines for Services Definition>结合笔者 ...

  2. 鹅厂车联网探索:5G下边缘云计算的车路协同实践

    5G网络下,多接入边缘计算(MEC)应运而生.结合TKEStack强大的集群管理能力和异构计算资源管理能力,腾讯打造了一个功能完备的边缘计算PaaS平台TMEC,提供了高精确度定位.视频处理.无线网络 ...

  3. 车联网容器应用探索:5G下边缘云计算的车路协同实践

    导语 | 5G网络下,多接入边缘计算(MEC)应运而生.结合TKEStack强大的集群管理能力和异构计算资源管理能力,腾讯打造了一个功能完备的边缘计算PaaS平台TMEC,提供了高精确度定位.视频处理 ...

  4. 老猿学5G专栏文章目录

    ☞ ░ 前往老猿Python博文目录 ░ 一.3GPP规范文档及其他推荐阅读博文 老猿学5G扫盲贴:3GPP规范文档命名规则及同系列文档阅读指南 老猿学5G扫盲贴:3GPP规范中部分与计费相关的规范序 ...

  5. 中兴获25个5G商用合同

    网易科技讯,6 月 25 日消息,在 2019 年 MWC 上海展期间,中兴通讯宣布随着全球首批 5G 规模商用部署展开,已在全球获得 25 个 5G 商用合同,覆盖中国.欧洲.亚太.中东等主要 5G ...

  6. 老猿Python博文汇总目录--按标题排序

    ☞ ░ 前往老猿Python博文目录 ░ 本部分为老猿CSDN全部博文的汇总(含转载部分),所有文章在此未进行归类,仅按文章标题排序,方便关键字查找.本部分内容将至少以周为单位定期更新,可能不包含发布 ...

  7. 5G-第五代移动通信系统(5th generation mobile/wireless/cellular system)

    通信系统 有意义的信息交流被称为通讯. 自然界:狼嚎.狗叫.虫鸣.鸡叫. 人类社会:说话.眼神.写信.烽火台. 目的:信息的传递. 人类发明电以后,开始使用电来传递信息,特别快. 于是有了电报.电话以 ...

  8. 老猿学5G扫盲贴:NEF、NRF、AF、UPF以及DN的功能

    专栏:Python基础教程目录 专栏:使用PyQt开发图形界面Python应用 专栏:PyQt入门学习 老猿Python博文目录 NEF:Network Exposure Function ,网络开放 ...

  9. 从1G到5G发展史(3GPP是个什么组织 为啥5G标准离不开它)

    1.“3GPP”组织建立的来龙去脉 3GPP一直以来在人们心中是一个神秘的组织,很多用户对于它的理解和认知,说不清,道不明.最近关于5G网络的诸多报道,都陈述了“5G网络”的标准是由“3GPP”来规定 ...

随机推荐

  1. 关于PPP拨号 和 AT指令实现GPRS模块联网的疑问

    以下内容摘抄自互联网: ppp拨号 与 at命令的疑问 GPRS模块在Linux平台上ppp拨号上网总结与心得 以PPP拨号实现GPRS与因特网的数据通信的具体实现流程 问: 我刚接触GPRS,了解A ...

  2. idou老师教你学Istio :5分钟简析Istio异常检测

    异常检测 异常检测和踢出异常主机是一个动态检查上游主机是否正常工作,对不健康主机进行移除的过程.异常检测是一种被动健康检查,根据返回状态码来判断是否满足移除条件,最后将主机移除,首先我们来了解下驱逐算 ...

  3. notify()和 notifyAll()有什么区别?(未完成)

    notify()和 notifyAll()有什么区别?(未完成)

  4. mysql打开报错2013解决办法

    修改mysql配置文件 在[mysqld]下面设置skip-name-resolve 重启mysql from :https://www.jb51.net/article/52637.htm

  5. PHP开发中常用的字符串操作函数

    1,拼接字符串 拼接字符串是最常用到的字符串操作之一,在PHP中支持三种方式对字符串进行拼接操作,分别是圆点.分隔符{}操作,还有圆点等号.=来进行操作,圆点等号可以把一个比较长的字符串分解为几行进行 ...

  6. Http协议与TCP协议

    背景 在日常工作中,经常会遇到某某框架是基于Http协议或者TCP协议,今天,就针对于该协议,整理下 从本质上来说,Http协议与TCP协议是应用在不同网络层,Http协议处于应用层,TCP处于传输层 ...

  7. 22-系统SQL整理

    1.查看内存使用情况 select * from sys.dm_os_sys_memory 2.查看当前进程的情况 select * from  sys.sysprocesses 3.查看非系统进程的 ...

  8. python文件操作知识点总结:写入篇

    文件写入: 文中的两个变量:f 和 f1(截图时被该死的灯泡遮挡住了) 被称作文件对象 或文件句柄(重口味的叫法,感觉很C++,句子又不是刀子,怎么还带柄?) 以逗号为界,open()方法所依赖的3个 ...

  9. js特殊字符的验证

    // 特殊字符的验证 // 包含特殊字符返回true,不包含特殊字符返回false function checkEspcial(s) { var str=trim(s); //var reg=/< ...

  10. redis数据存储--C++连接redis

    一.下载的是Redis Windows版本:下载地址:https://github.com/microsoftarchive/redis:解压到:E:\Software\redis-3.0: 二.用V ...