5G核心网学习平台
SMF 实践篇 #03

《5GC实践篇》之SMF篇(10)N4接口支持之下行数据到达后的上报

《5G核心网原理与实践》实践篇 · SMF 网元功能

《5GC实践篇》之SMF篇(10)N4接口支持之下行数据到达后的上报

爱卫生

2023年03月26日 21:18

2.4.7 下行数据到达后的上报

一 概述

CU分离之后,如果UE处于空闲态(CM-IDLE),此时当有下行数据到达UPF,UPF应根据SMF的指示给SMF发送下

行数据到达通知,SMF会调用AMF的服务触发寻呼流程,UE收到寻呼后发起Service Request流程将状态切换到连接

态(CM-Connected),从而接收下行数据。

具体的信令可以参考原理篇和规范中的“网络侧发起的Service Request流程”。

但上面提到,UPF是根据SMF的指示才会给SMF发送下行数据到达通知的,体现在N4口,具体是怎么实现的呢?可以

直接在规范中寻找答案。一段一段看规范的原文吧。和本节相关的规范主要有:TS23501的5.8.3.2 Buffering at UPF、

以及TS29244的5.28 Downlink data delivery status with UPF buffering (for 5GC)和5.2.3 Forwarding Action Rule

Handling。

Q1:UPF应如何上报?

A1:规范原文:“The UP function shall report the first buffered DL packet for each service data flow identified by a

PDR, by sending a PFCP Session Report Request including a Downlink Data Report IE identifying the PDR(s) for

which downlink packets have been received. ”--- UPF应通过发送 PFCP 会话报告请求来报告由 PDR 识别的每个业务

数据流的第一个缓冲的 DL 数据包,该请求包括一个Downlink Data Report参数,用于标识已接收到下行数据包。

Q2:如果UPF侧对收到的第一个下行数据采取的行动是缓存(而非丢弃),那SMF是怎样指示UPF来上报的呢?

(注:UPF侧缓存下行数据更常见。)

A2:规范原文:“The CP function can request the UP function to report the first buffered DL packet by setting the

BDPN flag and / or the NOCP flag in the Apply Action IE of the FAR. If the BDPN flag is set, the UP function reports

the first buffered DL packet for each service data flow identified by a PDR associated to the FAR.”--- 也就是SMF通过

下发FAR,并设置Apply Action参数中的BDPN和/或NOCP标记位来要求UPF上报第一个缓存的下行数据。

If the NOCP flag is set, the UP function reports the first buffered DL packet of any PDR associated to the FAR.”-- 如果

UPF看到FAR中带了NOCP标记位,那UPF就应该上报。

Q3:UPF收到第一个下行数据时,可以是丢弃,也可以是缓存,也可以是转发。根据什么来决定的呢?

A3:根据SMF下发的FAR的Apply Action参数的标记位来决定。原文:“By setting the appropriate flag(s) in the Apply

Action IE in the FAR (see clause 8.2.26), the CP function may request the UP function to:

- drop the packets, by setting the DROP flag;

- buffer downlink packets by setting the BUFF flag and by optionally provisioning buffering parameters providing

instructions on how to buffer the packets;

- forward the packets, by setting the FORW flag and by provisioning the Forwarding Parameters providing

instructions on how to forward the packets;

- notify the CP function about the arrival of a first DL packet being buffered, by setting the NOCP flag;”。翻译过来就

是:

- 如果SMF希望UPF丢弃,则设置DROP标记位;

- 如果SMF希望UPF缓存,则设置BUFF标记位,并可提供BAR缓存规则来指导UPF如何进行缓存(BAR可选,也可交

给UPF自行决定。);

- 如果SMF希望UPF转发,则设置FORW标记位,并同时提供Forwarding Parameter参数告诉UPF该如何转发(例如转

到那个网络实例和接口);

- 如果前面带了BUFF标记位和BAR,还可以设置NOCP标记位,这样当UPF将第一个下行数据缓存时,就会给SMF发

送通知。

Q4:涉及到的主要参数有哪些?

A4:首先是FAR中的Apply Action参数的两个标记位:

- NOCP (Notify the CP function)位: 置1表示有下行数据到达并缓存时需要通知SMF;

- BDPN (Buffered Downlink Packet Notification)位:置1表示要给SMF发送第1个缓存的下行数据的下行数据交付状态

通知(downlink data delivery status notification)。

然后是PFCP Session Report Request中的Downlink Data Report参数:

- PDR、Downlink Data Service Information(数据所关联的QFI)、Data Status(可选参数,包括BUFF和DROP两个

标记位,置1分别表明UPF收到的下行数据是被缓存了还是被丢弃了。)

信令图如下:

二 检查点与消息举例

1)检查SMF发出的PFCP Session Establishment(或Modification) Request消息是否设置了NOCP和BUFF标记位。

以下是消息举例:

Packet Forwarding Control Protocol

Flags: 0x21, SEID (S)

Message Type: PFCP Session Modification Request

Length: 29

SEID: 0x6660000000000aaa

Sequence Number: 6666888

Spare: 0

Update FAR :

IE Type: Update FAR

IE Length: 13

FAR ID : Dynamic by CP 2

Apply Action :

IE Type: Apply Action

IE Length: 1

Flags: 0x0c, NOCP (Notify the CP function), BUFF

000. .... = Spare: 0

...0 .... = DUPL (Duplicate): False

.... 1... = NOCP (Notify the CP function): True

.... .1.. = BUFF (Buffer): True

.... ..0. = FORW (Forward): False

.... ...0 = DROP (Drop): False

2)以下是UPF将第一个收到的下行数据缓存后,给SMF发送报告的消息举例。主要检查消息中是否正确携带了

Downlink Data Report参数,以及Report Type值是否正确。

Packet Forwarding Control Protocol

Flags: 0x21, SEID

Message Type: PFCP Session Report Request

Length: 33

SEID: 0x0000000006666888

Sequence Number: 0

Spare: 0

Report Type :

IE Type: Report Type (39)

IE Length: 1

Flags: 0x01, DLDR (Downlink Data Report)

0000 .... = Spare: 0

.... 0... = UPIR (User Plane Inactivity Report): False

.... .0.. = ERIR (Error Indication Report): False

.... ..0. = USAR (Usage Report): False

.... ...1 = DLDR (Downlink Data Report): True

Downlink Data Report :

IE Type: Downlink Data Report

IE Length: 12

Downlink Data Service Information :

IE Type: Downlink Data Service Information

IE Length: 2

Flags: 0x02, QFII(QoS Flow Identifier)

0000 00.. = Spare: 0

.... ..1. = QFII(QoS Flow Identifier): Present

.... ...0 = PPI(Paging Policy Indication): Not Present

00.. .... = Spare: 0

.000 0101 = QFI: 0x05

PDR ID : 1

IE Type: PDR ID

IE Length: 2

Rule ID: 1

← 返回 SMF 实践篇