5G网络学习——大白话讲解PDU会话(未完待续)
Posted CodeSavior
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了5G网络学习——大白话讲解PDU会话(未完待续)相关的知识,希望对你有一定的参考价值。
在介绍PDU会话之前让我们介绍一下什么是PDU
PDU简介
PDU(Protocol Data Unit)是协议层的协议在对等层之间交换的信息叫协议数据单元。
封装
数据要通过网络进行传输,要从高层一层一层向下传送,如果一个主机要传送数据到别的主机,在发送端需要先把数据包装到一个特殊协议数据包中,逐层添加头部信息,这个过程叫封装。
解封装
数据被传送到接收设备,接收设备需要将添加的信息进行删除,根据报头决定将数据沿协议栈向上传给合适的应用程序,这样的过程叫做解封装。
从下面的图中我们也能发现,不同网络层次所传输的数据叫法是不一样的,传输层PDU叫段,网络层PDU叫报文,链路层PDU叫帧,物理层PDU叫比特。实际使用过程中不用划分这么细致,统称为数据包。
下图描绘的是数据传输的过程,中间传输仅用到了最后三层,分别对应承载网络中L1,L2,L3。因此,在发送端和接收端用到了所有层,而在中间的转发过程用到了最下面三层。
PDU会话
在介绍完什么是PDU之后让我们来看下什么是PDU会话!
PDU会话概念
一个PDU会话是指一个用户终端UE与数据网络DN之间进行通讯的过程。PDU会话建立后,也就是建立了一条UE和DN的数据传输通道。PDU会话的类似于2/3G的PDP上下文、4G的承载上下文。
其中,PDU会话信息包括号码、IMSI、IMEI、PDU会话ID、会话类型(IPv4、IPv6、IPv4v6、Ethenet、Unstructured)、 上下行速率、计费ID、漫游状态信息、UE的IP信息、PCF信息、Qos信息、隧道信息、目的地地址、SMF标识、切片信息(如果支持)、默认DRB信息、数据网名、AMF信息、用户位置信息、会话管理信息、UPF ID、在线计费标识、离线计费标识等相关信息。
从PDU会话信息可以看到,PDU会话保存有用户面的数据路由、Qos、计费、切片、速率等可能与计费相关的重要信息。
PDU会话的建立过程
在4G网络环境下,要建立PDU会话需要建立缺省承载(建立通路),在5G网络则不需要这些,当5G终端在网络中注册Registration时,无需建立和4G承载类似的PDU会话。
5G终端在有业务需求的时候会发起建立PDU会话的申请,在5G网络中建立PDU会话只能由终端发起。
但这并不意味着终端不发起会话外部数据就无法发送给终端,在这种情况下网络会对终端进行寻呼,终端接收到寻呼进行响应,再发起Service Request流程,申请PDU会话的建立就可以了。
因此,PDU会话的过程可以是用户发起的也可以是服务器发起的。
其具体的建立过程如下图所示
PDU会话修改
当用户和网络之间的一个或几个QoS参数发生改变会发生PDU会话修改动作。
PDU会话释放
PDU会话释放主要是把一切和会话有关的资源进行释放。
流量监测
流量监测过程在UPF处执行,主要是为了确定数据包属于哪个 会话或哪个服务数据流。
而整个监测过程不是由UPF独立执行的,需要SMF指导UPF,通过PDR告诉UPF如何检测数据包是属于谁的。
SMF和PDU之间的通信就叫做PFCP会话。
PFCP会话
在用户建立PDU会话的流程中,会同步建立N4会话,又称为PFCP会话,采用PFCP(Packet Forwarding Control Protocol,分组交换控制协议),这个协议用来定义UPF对PDU的一系列动作包括:
- 识别:PDRs(Packet Detection Rules,报文检测规则)。
- 转发:FARs(Forwarding Action Rules,转发操作规则)
- 缓存:BARs(Buffering Action Rules,缓存操作规则)
- 标记:QERs(Qos实施规则)
- 报告:URRs(用量上报规则)
- 多接入:MAR(多接入规则)
其中
每个PDR(报文检测规则)内部必须包括一个PDI(报文检测信息),PDI定义了一个或多个对报文进行匹配检测的字段。
控制平面应该在一个PFCP会话中规定每个PDR仅提供一个FAR。
- DROP:丢弃数据包
- FORW:转发数据包
- BUFF:缓冲下行链路数据包
- NOCP:通知SMF缓冲相关的第一个下行链路数据包到达的通知
- DUPL:提供如何转发重复数据包的说明
看了这些还是有点迷糊,数据沿哪条路径走到目标位置的呢??
每一个PDU都有一个用户面路径,这个路径至少包含一个UPF,可能包含多个I-UPF。对于一个已经建立好的PDU会话而言,其用户面路径不是一成不变的,UE移动或者策略的变化都可能导致SMF决策改变用户面路径。(什么策略的变化?是SMF决定用户路径吗??)
下面主要介绍几个场景
在用户移动的情况下
如图所示:
用户从RAN1覆盖的区域移动到了RAN2覆盖的区域,这触发了切换流程,而原来RAN2和UPF之间的连线是没有的,SMF需要控制UPF和RAN2建立新的N3隧道。SMF会分配隧道信息巷UPF发器N4会话更新,下发新的PDR和FAR规则,使得DN的下行流量被发送给RAN2,并使得从用户通过RAN2来的上行流量可以正确匹配PDR而被转发给DN。(整个过程的重点是原来的RAN2和UPF没有连通性,SMF需要在用户平面路径插入一个新的UPF)
如果SMF判断要插入一个I-UPF,SMF会使用UPF选择机制选择出合适的UPF作为I-UPF,并向I-UPF发起建立N4会话,分配tunnel信息并下发PDR和FAR等规则使得I-UPF可以与原UPF之间建立N9隧道,使得I-UPF和RAN2之间可以建立N3隧道。将I-UPF的N9隧道信息通知给原UPF,控制原UPF建立N9隧道。从而建立起可以承载切换后用户流量的新的用户面路径。重建后的网络结构如下所示。
在有边缘计算的场景下
在边缘计算的场景下,PDU会话中将上行数据流量分流到多个PSA(PDU session anchor )的UPF,UL CL与各PSA之间建立N9隧道,UL CL根据SMF下发的PDR、FAR等规则将不同的流量转发给不同的PSA,再由PSA转发给DN。
UL CL通常可应用于需要将用户流量引导至本地DN出口的场景。SMF通过给UL CL下发多个PDR和FAR,将去往DN远端出口和DN本地出口的流量区分出来,使得去往本地出口的流量被UL CL转发给本地DN出口(即本地的PSA,图中的PDU session anchor 2),而去往远端的流量被转发给远端DN出口。
ps:
- 每个PDU会话都只能有一个DN
- UL CL的功能除分流上行流量外,还包括汇聚从多个DN出口去往UE的下行流量
- PSA和UL CL可以被合设在同一个UPF上;
- SMF可能在会话建立过程中即插入UL CL,也可以在PDU会话建立完成后的某个时间插入UL CL
业务连续性问题
在一些情况下I-UPF的变化不同,PDU会话锚点的变化将影响到用户体验中重要的一环——业务连续性。为了保证不同业务连续性的需求,5GC定义了三种业务连续性模式。
- SSC mode1:PDU会话锚点不允许改变
- SSC mode2:PDU会话锚点可以改变,改变时需删除旧的PDU会话,建立新的PDU会话
- SSC mode3:PDU会话锚点可以改变,改变时可以先建立新的PDU会话,在新的PDU会话建立完成后的某个时间,再删除旧的PDU会话。
理论上分析第二种模式应该是用户体验最差的一种方式,而改变锚节点的方式有助于运营商中UPF负载更加均衡,进而提供更好的服务。
此外,这三种业务连续性模式对于用户移动的场景和边缘计算的场景都是不冲突的,在三种SSC模式的PDU会话都可以应用ULCL。
UPF之间可以通过N9隧道进行中继转发,核心网络中的用户面非常灵活(光说非常灵活,具体用到哪个协议让他这么灵活呢?)
https://blog.csdn.net/weixin_41834014/article/details/107190472
https://is-cloud.blog.csdn.net/article/details/102834482
https://blog.csdn.net/weixin_42548215/article/details/86442727对PFCP协议进行了详细的解释,PFCP就是用在SMF和UPF之间的协议。
以上是关于5G网络学习——大白话讲解PDU会话(未完待续)的主要内容,如果未能解决你的问题,请参考以下文章