5GC支持PDU连接业务,PDU连接业务就是UE和DN之间交换PDU数据包的业务;PDU连接业务通过UE发起PDU会话的建立来实现。一个PDU会话建立后,也就是建立了一条UE和DN的数据传输通道。
每个S-NSSAI的订阅信息可能会包含一个默认DNN和多个DNN,当UE发起PDU Session Establishment Request时没有提供S-NSSAI的DNN,那么服务AMF就会为其S-NSSA选择默认DNN,如果UE的订阅信息有默认DNN的话;如果没有默认DNN,那么服务AMF会选择本地配置的DNN给S-NSSAI。如果UE在PDU会话建立请求消息里携带的DNN不被网络支持,并且AMF也没能通过查询NRF选择到一个合适SMF,则AMF就会拒绝这个PDU连接请求,携带原因值“DNN is not supported”。
每个PDU会话支持一个PDU会话类型,也就是IPv4、IPv6、IPv4v6、Ethenet、Unstructured中的一种。
PDU会话在UE和SMF之间通过NAS SM信令进行建立、修改、释放。
网络也可以出发PDU会话的建立:1)应用服务器要建立PDU会话连接时会给5GC发送触发消息,2)5GC收到应用服务器的建立请求时会给UE发送触发PDU会话建立的消息,3)UE收到后会将其发给UE上对应的应用,4)UE上的应用根据触发消息的内容来决定何时发起指定的PDU会话连接。具体流程见TS 23.502 章节 5.2.6.1。
SMF支持LADN的PDU会话,LADN就是只在本地网络服务区才能访问的DN;网络会在注册流程和配置更新流程中将当前注册区下的LADN发给UE。
SMF负责检查UE的会话请求是否和其订阅数据一致;SMF会从UDM获取UE的订阅数据,这些数据有:
- 允许的PDU Session Type和默认的PDU Session Type
- 允许的SSC mode和默认的SSC mode
- Qos信息:Session-AMBR,默认5QI和默认ARP
- 静态IP地址/前缀
-计费方式
如果UE同时在3GPP和non-3GPP接入下都建立有PDU会话连接,那么UE可以请求将一个PDU会话从3GPP/non-3GPP移到non-3GPP/3GPP去。
UE给网络发送PDU Session Establishment Request消息时,UE要提供PDU Session ID;PDU Session ID由UE分配,且在UE内具有唯一性。为了支持不同网络下的3GPP和non3GP接入的切换,PDU Session ID会被存储在UDM中。
不管是3GPP还是non-3GPP接入下,UE都是建立多条连接到同一个DN的PDU会话连接,或者多条连接到不同DN的PDU会话连接。
UE可以建立多条连接到同一个DN的PDU会话连接,且通过不同的UPF连接到DN上。
UE建立的多条PDU会话连接,每条PDU会话对应的SMF可以不同。
每条PDU会话的服务SMF信息会登记在UDM中。
- N1口的终结点时AMF,AMF负责透传UE和SMF之间的NAS SM消息(基于PDU Session ID),NAS SM 的响应消息必须要和请求消息相同的接入网发送。
- SMF负责处理NAS的SM消息。
- UE只能在RM-REGISTERED状态下发起PDU会话流程
-一个SMF被选择为某条PDU会话服务时,AMF要保证跟这条PDU会话有关的所有NAS SM消息都是发给该SMF去处理。
- PDU会话建立后,AMF和SMF都要保存该PDU会话的接入类型
- AMF根据SMF的订阅上报UE的位置信息
- 当一个PDU Session被释放时SMF要通知AMF
- 当一个PDU Session成功建立时,AMF要保存服务该PDU Session的SMF ID,SMF要保存服务这个UE的AMF ID
- 某些N2信令(如切换相关的信令)可能会要求AMF和SMF执行相关的操作,此场景下AMF负责保证AMF和SMF之间的协调,AMF可以将SM N2信令转发给对应的SMF处理,AMF是通过N2消息里的PDU Session ID找到对应的SMF的,因为AMF保存了PDU Session的服务SMF ID。
- 为了加快NG-RAN去给不同的PDU Type数据包应用合适的头压缩,SMF应该给NG-RAN提供PDU Type和PDU Session等信息
可选择激活或者去激活存在的PDU Session的用户面连接。
当UPF收到一个UE的下行数据包,但发现没有下行N3隧道可以发送数据包,则UPF就会通知SMF,SMF就会通知AMF去发起“网络触发的Service Request 流程”,但是如果SMF被导致UE不可达或仅优先级业务可达而SMF又不支持优先级业务,那么SMF就不会通知AMF有下行数据到达
为了支持到DN的可选择路由功能和支持SSC mode 3,SMF可以控制PDU Session的数据路由使得这个PDU Session可以同时有多个N6接口。每个N6接口的UPF就称为PDU会话锚点。
单PDU会话多PDU会话锚点功能和下面的功能相对应:
-在一个PDU会话中使用上行分类器
-在一个PDU会话中使用IPv6 multi-homing(多宿主)
对于类型为IPv4、IPv6、IPv4v6、Ethenet的PDU Session,SMF可以在该PDU会话的数据传输路径中插入一个上行分类器(Uplink Classifier)(简称为“UL CL”);“UL CL”功能在UPF中提供,其目的是将满足业务过滤规则的数据包转发到指定的路径去,这就有点像路由表的作用。插入和删除“UL CL”是由SMF控制的,其通过N4口对UPF进行操作,当然SMF要靠UPF的能力是否支持“UL CL”。
对于核心网内的“UL CL”数据转发功能,UE是不感知的;UE完全不参与“UL CL”的插入和删除。
当一个“UL CL”被插入到一条PDU Session数据通道中时,这条PDU Session就有了多个PDU Session锚点,这些锚点提供接入同一个DN的多条不同的路径。
“UL CL”的功能是将上行业务数据按照过滤器要求转发到不同的PDU 会话锚点去,将该UE的多个锚点下来的下行数据合并。
“UL CL”执行过滤规则和决定数据包的路由;支持“UL CL”的UPF可以负责计费业务统计、执行速率控制(Session-AMBR per PDU Session)。
上图展示了一个PDU Session拥有两个PDU Session 锚点的场景;上行分类器(UL CL)插在N3口终结点的UPF上,锚点1和锚点2终结N6接口,上行分类器UPF和锚点UPF之间通过N9接口传输。
一个PUD会话可以关联多个IPv6前缀,这就是所谓的多宿主(multi-homed) PDU会话。多宿主PDU会话通过多个PDU会话锚点访问一个数据网络(DN)。各个PDU会话锚点对应的数据通道最后都会汇聚于一个公共的UPF,这个公共的UPF具有“分支点”(Branching Point)功能,称为分支点UPF。分支点向上转发上行业务包到不同的PDU锚点去、向下将各个锚点下来的数据合并。
分支点UPF可以用于计费统计、速率控制(Session-AMBR per PDU Session)。SMF通过N4口控制在UPF插入或者移除分支点,当然也要考虑UPF的能力是否支持分支点功能。
多宿主PDU会话仅仅应用于IPv6的PDU会话;UE在请求建立类型为IPv6或IPv4v6的PDU会话时,UE要告知网络其是否支持Multi-homed IPv6 PDU会话。
上图是用于SSC mode 3的多宿主PDU会话示意图,网络要切换接入网的锚点时,先建立一个接入到同一个数据网的新锚点(上图的PDU session anchor 2),然后再释放老的锚点(上图的PDU session anchor1)。在这个锚点切换过程中,UE是可以获得连续性服务的,业务不会受到影响的。
上图展示了一个PDU有两个锚点访问DN的场景。