1.4.2 用户面
5G核心网的用户面由UPF节点构成,代替了原来4G中执行路由和转发功能的SGW和PGW。PDU会话的用户面协议栈如图1-32所示。
图1-32 PDU会话的用户面协议栈
5G-AN(UE与gNodeB之间)用户面协议栈如图1-33所示,其数据链路层(L2)由MAC、RLC、PDCP和SDAP共4个子层组成。
图1-33 5G-AN(UE与gNodeB之间)用户面协议栈
数据流封装示意如图1-34所示。MAC层通过复用来自RBx的两个RLC PDU和RBy的一个RLC PDU来生成一个TB传输块。一个TB对应包含一个MAC PDU的数据块,这个数据块会在一个TTI内发送,同时也是HARQ重传的单位。如果发射端不支持空分复用,则一个TTI至多会发送一个TB。如果发射端支持空分复用,则一个TTI支持同时发送多个TB,而TB的大小取决于调度器分配给用户的资源数量、调制编码方式、天线映射。
下行载波聚合协议栈架构如图1-35所示。从非接入层角度来看,载波聚合(CA)的UE只与Pcell相连,Pcell提供切换时的安全密钥,跟踪区更新。每个无线承载只有一个PDCP和RLC实体,RLC层不知道物理层有多少个分量载波(CC),各个分量载波上MAC层的数据面独立调度,每个分量载波有各自独立的Uu接口传输信道和独立的HARQ实体,以及重传进程。在物理层,每个传输块(TB)映射到服务小区的一个分量载波上,各个分量载波采用独立的编码调制方案。各个分量载波业务信道调度可由对应分量载波上的PDCCH进行调度,也可以跨载波调度。
图1-34 数据流封装示意
图1-35 下行载波聚合协议栈架构
SDAP层位于PDCP以上,一个PDU会话对应一个SDAP实体,可以包含多个QoS Flow。一个会话中的多个QoS Flow由SDAP根据QoS等级映射到不同DRB,每个DRB对应一个PDCP实体,PDU会话、SDAP实体、PDCP实体、DRB间映射关系如图1-36所示。
SDAP层由RRC高层配置,其功能包括以下几个方面。
● 传输用户面QoS Flow。
图1-36 PDU会话、SDAP实体、PDCP实体、DRB间映射关系
1.QFI(QoS Flow Identifier,QoS流标识符)。
● 将上下行QoS Flow映射到对应的DRB。
● 在上下行QoS Flow中标记QFI。
● 如果下行配置了SDAP头,则UE接收端执行reflective QoS Flow到DRB映射,生成上行QoS Flow到DRB的映射规则。
RRC信令中携带SDAP配置(位于DRB配置字段),UE从中可以得到QoS Flow和DRB的映射关系,相关映射关系的描述如下。
DRB-ToAddModList::= SEQUENCE(SIZE(1..maxDRB))OF DRB-ToAddMod DRB-ToAddMod::= SEQUENCE{ cnAssociation CHOICE{ eps-BearerIdentity INTEGER(0..15) --EPS-DRB-Setup sdap-Config SDAP-Config --5GC } OptionAL, --Cond DRBSetup drb-Identity DRB-Identity, reestablishPDCP ENUMERATED{true} OptionAL, --Need N recoverPDCP ENUMERATED{true} OptionAL, --Need N pdcp-Config PDCP-Config OptionAL, --Cond PDCP }
协议中关于信元SDAP-Config的描述如下。
--ASN1START --TAG-SDAP-CONFIG-START SDAP-Config::= SEQUENCE{ pdu-Session PDU-SessionID, sdap-HeaderDL ENUMERATED{present,absent}, sdap-HeaderUL ENUMERATED{present,absent}, defaultDRB BOOLEAN, mAppedQoS-FlowsToAdd SEQUENCE(SIZE(1..maxNrofQFIs))OF QFI mAppedQoS-FlowsToRelease SEQUENCE(SIZE(1..maxNrofQFIs))OF QFI } QFI::= INTEGER(0..maxQFI) PDU-SessionID::= INTEGER(0..255) --TAG-SDAP-CONFIG-STOP --ASN1STOP
SDAP-Config参数的具体说明如下。
● PDU-Session:PDU会话ID,表示这条DRB属于哪个PDU会话,也就是说,这个DRB是为哪个PDU会话建立。
● sdap-HeaderDL:下行数据传输是否配置SDAP头,如果没有配置SDAP头,则下行分组数据包不经过SDAP层处理。
● sdap-HeaderUL:上行数据传输是否配置SDAP头,如果没有配置SDAP头,则上行分组数据包不经过SDAP层处理。
● default DRB:这条PDU会话的默认DRB。一个PDU会话的所有SDAP配置实例中,最多只能有一个默认DRB。
● mAppedQoS-FlowsToAdd:指示新增映射到该DRB的PDU会话的UL QoS Flow的QFI列表。同一PDU会话的所有SDAP配置实例中,一个QFI值只能出现一次,也就是说,一条QoS Flow不能映射到多条DRB上。
● mAppedQoS-FlowsToRelease:QFI列表,表示这些QoS Flow不能再映射到这条DRB上。
gNB会为一个PDU会话建立一个或多个DRB,每个DRB负责承载一个或多个QoS数据流。UE和gNB的SDAP层负责将QoS Flow映射到相应DRB,SDAP层数据处理流程如图1-37所示。针对下行数据,QoS Flow经过SDAP层时,SDAP层根据网管配置(QoS Profile)将QoS Flow映射到相应DRB。针对上行数据,UE为了将数据发送给gNB,有显式和隐式两种方式将QoS Flow映射到DRB。
● 显式方式下,gNB通过RRCReconfiguration(RRC重新配置)消息将QoS Flow与DRB映射关系发送给UE。当UE有上行数据包发送时,根据收到的映射关系将上行QoS Flow映射到对应的DRB。
● 隐式方式下,UE会监听每个DRB中下行数据包标记的QFI值,并根据收到的下行数据包中添加的SDAP头部,推导出上行的“QoS Flow到DRB的映射规则”,之后,UE将推导出来的QoS规则应用于对应的上行QoS Flow中。
配置SDAP前后PDU构成对比如图1-38所示。
图1-37 SDAP层数据处理流程
图1-38 配置SDAP前后PDU构成对比
1.RDI表示反向映射QoS Flow到DRB映射指示,如果配置1,则UE保存QoS Flow到DRB的映射规则。
2.RQI表示反向映射QoS Flow指示,如果配置1,则指示SDF到QoS Flow映射规则的变更需要通知UE的NAS层。