UPF selection based on user plane functionalities

By determining and selecting a UPF based on required and optional functionalities using network-based and UE-assisted methods, the solution addresses the challenge of UPF selection, ensuring optimal PDU session performance and adaptability.

WO2025149209A1PCT designated stage expired Publication Date: 2025-07-17NOKIA TECHNOLOGIES OY
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
PCT/EP2024/083098
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2024-01-10
Filing Date
2024-11-21
Publication Date
2025-07-17

AI Technical Summary

Technical Problem

Existing technologies face challenges in efficiently selecting a User Plane Function (UPF) that meets the specific functionalities required or preferred for a Protocol Data Unit (PDU) session, such as Network Address Translation (NAT) and Packet Inspection, due to limitations in current UPF selection mechanisms.

Method used

The proposed solution involves determining and selecting a UPF based on the required and optional user plane functionalities by using network-based, UE-assisted, or combined methods, considering parameters like S-NSSAI, DNN, policy information, subscription data, and UE-provided assistance information to ensure the UPF supports the necessary features.

Benefits of technology

This approach enables the selection of a UPF that best matches the required and preferred functionalities, ensuring optimal PDU session establishment and maintenance, even in cases where UPF capabilities evolve or change.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure IMGF000017_0001
    Figure IMGF000017_0001
  • Figure 00000038_0000
    Figure 00000038_0000
  • Figure 00000039_0000
    Figure 00000039_0000
Patent Text Reader

Abstract

An apparatus including at least one processor; and at least one memory storing instructions that, when executed with the at least one processor, cause the apparatus to perform: determining whether there is at least one first user plane functionality for a protocol data unit session, where the determining of whether there is at least one first user plane functionality includes determining whether a user plane functionality is a required user plane functionality; determining whether there is at least one second user plane functionality for the protocol data unit session, where the determining of whether there is at least one second user plane functionality includes determining whether a user plane functionality is an optional user plane functionality; and selecting a user plane function based upon the determining of whether there is at least one first required user plane functionality and the determining of whether there is at least one second optional user plane functionality.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] UPF SELECTION BASED ON USER PLANE FUNCTIONALITIES

[0002] TECHNICAL FIELD

[0003] The example and non-limiting embodiments relate generally to communications and, more particularly, to selection of a user plane function.

[0004] BRIEF DESCRIPTION OF PRIOR DEVELOPMENTS

[0005] Selection of a user plane function with use of features which are required in the user plane function is known.

[0006] SUMMARY OF THE INVENTION

[0007] The following summary is merely intended to be an example. The summary is not intended to limit the scope of the claims.

[0008] In accordance with one aspect, an example apparatus is provided comprising: at least one processor; and at least one memory storing instructions that, when executed with the at least one processor, cause the apparatus to perform: determining at least one first user plane functionality for a protocol data unit session, where the determining of the at least one first user plane functionality comprises determining whether a user plane functionality is a required user plane functionality; determining whether there is at least one second user plane functionality for the protocol data unit session, where the determining of whether there is at least one second user plane functionality comprises determining whether a user plane functionality is an optional user plane functionality; and selecting a user plane function based upon the determining of the at least one first required user plane functionality and the determining of whether there is at least one second optional user plane functionality.

[0009] In accordance with one aspect, an example method is provided comprising determining at least one first user plane functionality for a protocol data unit session, where the determining of the at least one first user plane functionality comprises determining whether a user plane functionality is a required user plane functionality; determining whether there is at least one second user plane functionality for the protocol data unit session, where the determining of whether there is at least one second user plane functionality comprises determining whether a user plane functionality is an optional user plane functionality; and selecting a user plane function based upon the determining of the at least one first required user plane functionality and the determining of whether there is at least one second optional user plane functionality.

[0010] In accordance with one aspect, an example apparatus is provided comprising: means for determining at least one first user plane functionality for a protocol data unit session, where the determining of the at least one first user plane functionality comprises determining whether a user plane functionality is a required user plane functionality; means for determining whether there is at least one second user plane functionality for the protocol data unit session, where the determining of whether there is at least one second user plane functionality comprises determining whether a user plane functionality is an optional user plane functionality; and means for selecting a user plane function based upon the determining of the at least one first required user plane functionality and the determining of whether there is at least one second optional user plane functionality.

[0011] In accordance with one aspect, an example is provided with a program storage device readable by an apparatus, tangibly embodying a program of instructions executable with the apparatus for performing operations, the operations comprising: determining at least one first user plane functionality for a protocol data unit session, where the determining of the at least one first user plane functionality comprises determining whether a user plane functionality is a required user plane functionality; determining whether there is at least one second user plane functionality for the protocol data unit session, where the determining of whether there is at least one second user plane functionality comprises determining whether a user plane functionality is an optional user plane functionality; and selecting a user plane function based upon the determining of the at least one first required user plane functionality and the determining of whether there is at least one second optional user plane functionality.

[0012] In accordance with one aspect, an example apparatus is provided comprising: at least one processor; and at least one memory storing instructions that, when executed with the at least one processor, cause the apparatus to perform: determining at least one user plane functionality for a user equipment; and sending, by the user equipment, a message comprising an identification of the determined at least one user plane functionality. In accordance with one aspect, an example method is provided comprising: determining at least one user plane functionality for a user equipment; and sending, by the user equipment, a message comprising an identification of the determined at least one user plane functionality.

[0013] In accordance with one aspect, an example apparatus is provided comprising: means for determining at least one user plane functionality for a user equipment; and means for sending, by the user equipment, a message comprising an identification of the determined at least one user plane functionality.

[0014] In accordance with one aspect, an example is provided with program storage device readable by an apparatus, tangibly embodying a program of instructions executable with the apparatus for performing operations, the operations comprising: determining at least one user plane functionality for a user equipment; and sending, by the user equipment, a message comprising an identification of the determined at least one user plane functionality.

[0015] According to some aspects, there is provided the subject matter of the independent claims.

[0016] Some further aspects are provided in subject matter of the dependent claims.

[0017] BRIEF DESCRIPTION OF DRAWINGS

[0018] The foregoing aspects and other features are explained in the following description, taken in connection with the accompanying drawings, wherein:

[0019] FIG. l is a block diagram of one possible and non-limiting example system in which the example embodiments may be practiced;

[0020] FIG. 2 is a diagram illustrating example components in a control plane (CP) and a user plane (UP);

[0021] FIG. 3 isa diagram illustrating some features of an example method;

[0022] FIG. 4 is a diagram illustrating some examples of information which may be used in an example method;

[0023] FIG. 5 is a diagram of an example method;

[0024] FIG. 6 is a diagram of an example method;

[0025] FIG. 7 is a diagram of an example method;

[0026] FIG. 8 is a diagram of an example method. DETAILED DESCRIPTION

[0027] The following abbreviations that may be found in the specification and / or the drawing figures are defined as follows:

[0028] 3 GPP third generation partnership project

[0029] 5G fifth generation

[0030] 5GC 5G core network

[0031] AF application function

[0032] AMF access and mobility management function

[0033] ATSSS access traffic steering, switching and splitting

[0034] AUSF authentication server function

[0035] CN control plane

[0036] CU central unit

[0037] DN data network

[0038] DNN data network name

[0039] DU distributed unit

[0040] E2E end to end

[0041] EE event exposure eNB (or eNodeB) evolved Node B (e.g., an LTE base station)

[0042] EN-DC E-UTRA-NR dual connectivity en-gNB or En-gNB node providing NR user plane and control plane protocol terminations towards the UE, and acting as secondary node in

[0043] EN-DC

[0044] E-UTRA evolved universal terrestrial radio access, i.e., the LTE radio access technology

[0045] FAR forwarding action rule gNB (or gNodeB) base station for 5G / NR, i.e., a node providing NR user plane and control plane protocol terminations towards the UE, and connected via the NG interface to the 5GC

[0046] IE information element

[0047] I / F interface

[0048] LTE long term evolution

[0049] MAC medium access control

[0050] MME mobility management entity NAS non-access stratum

[0051] NEF network exposure function

[0052] NF network function ng or NG new generation ng-eNB or NG-eNB new generation eNB

[0053] NR new radio

[0054] NRF network repository function

[0055] NSSF network slice selection function

[0056] N / W or NW network PCF policy control function

[0057] PDCP packet data convergence protocol

[0058] PDU protocol data unit

[0059] PFCP packet forwarding control protocol

[0060] PHY physical layer QUIC quick UDP internet connection

[0061] RAN radio access network

[0062] Rel release

[0063] RLC radio link control

[0064] RRH remote radio head RRC radio resource control

[0065] RU radio unit

[0066] Rx receiver

[0067] S-NSSAI single - network slice selection assistance information

[0068] SBA service based architecture SDAP service data adaptation protocol

[0069] SDF service data flow

[0070] SID study item description

[0071] SGW serving gateway

[0072] SMF session management function TCP transport control protocol

[0073] TS technical specification

[0074] Tx transmitter

[0075] UDM unified data management UDP user datagram protocol

[0076] UDR unified data repository

[0077] UE user equipment (e.g., a wireless, typically mobile device)

[0078] UP user plane

[0079] UPF user plane function

[0080] Turning to FIG. 1, this figure shows a block diagram of one possible and non-limiting example in which the examples may be practiced. A user equipment (UE) 110, radio access network (RAN) node 170, and network element(s) 190 are illustrated. Examples of network equipment, network device, or a network entity might be understood to include, at least part of, a transmission reception point or a cell or a gNB or node for example. In the example of FIG. 1, the user equipment (UE) 110 is in wireless communication with a wireless network 100. A UE is a wireless device that can access the wireless network 100. The UE 110 includes one or more processors 120, one or more memories 125, and one or more transceivers 130 interconnected through one or more buses 127. Each of the one or more transceivers 130 includes a receiver, Rx, 132 and a transmitter, Tx, 133. The one or more buses 127 may be address, data, or control buses, and may include any interconnection mechanism, such as a series of lines on a motherboard or integrated circuit, fiber optics or other optical communication equipment, and the like. The one or more transceivers 130 are connected to one or more antennas 128. The one or more memories 125 include computer program code 123. The UE 110 includes a module 140, comprising one of or both parts 140-1 and / or 140-2, which may be implemented in a number of ways. The module 140 may be implemented in hardware as module 140-1, such as being implemented as part of the one or more processors 120. The module 140-1 may be implemented also as an integrated circuit or through other hardware such as a programmable gate array. In another example, the module 140 may be implemented as module 140-2, which is implemented as computer program code 123 and is executed by the one or more processors 120. For instance, the one or more memories 125 and the computer program code 123 may be configured to, with the one or more processors 120, cause the user equipment 110 to perform one or more of the operations as described herein. The UE 110 communicates with RAN node 170 via a wireless link 111.

[0081] The RAN node 170 in this example is a base station that provides access by wireless devices such as the UE 110 to the wireless network 100. The RAN node 170 may be, for example, a base station for 5G, also called New Radio (NR). In 5G, the RAN node 170 may be a NG-RAN node, which is defined as either a gNB or a ng-eNB. A gNB is a node providing NR user plane and control plane protocol terminations towards the UE, and connected via the NG interface to a 5GC (such as, for example, the network element(s) 190). The ng-eNB is a node providing E- UTRA user plane and control plane protocol terminations towards the UE, and connected via the NG interface to the 5GC. The NG-RAN node may include multiple gNBs, which may also include a central unit (CU) (gNB-CU) 196 and distributed unit(s) (DUs) (gNB-DUs), of which DU 195 is shown. Note that the DU may include or be coupled to and control a radio unit (RU). The gNB-CU is a logical node hosting RRC, SDAP and PDCP protocols of the gNB or RRC and PDCP protocols of the en-gNB that controls the operation of one or more gNB-DUs. The gNB-CU terminates the Fl interface connected with the gNB-DU. The Fl interface is illustrated as reference 198, although reference 198 also illustrates a link between remote elements of the RAN node 170 and centralized elements of the RAN node 170, such as between the gNB-CU 196 and the gNB-DU 195. The gNB-DU is a logical node hosting RLC, MAC and PHY layers of the gNB or en-gNB, and its operation is partly controlled by gNB-CU. One gNB-CU supports one or multiple cells. One cell is supported by only one gNB-DU. The gNB- DU terminates the Fl interface 198 connected with the gNB-CU. Note that the DU 195 is considered to include the transceiver 160, e.g., as part of a RU, but some examples of this may have the transceiver 160 as part of a separate RU, e.g., under control of and connected to the DU 195. The RAN node 170 may also be an eNB (evolved NodeB) base station, for LTE (long term evolution), or any other suitable base station or node.

[0082] The RAN node 170 includes one or more processors 152, one or more memories 155, one or more network interfaces (N / W I / F(s)) 161, and one or more transceivers 160 interconnected through one or more buses 157. Each of the one or more transceivers 160 includes a receiver, Rx, 162 and a transmitter, Tx, 163. The one or more transceivers 160 are connected to one or more antennas 158. The one or more memories 155 include computer program code 153. The CU 196 may include the processor(s) 152, memories 155, and network interfaces 161. Note that the DU 195 may also contain its own memory / memories and processor(s), and / or other hardware, but these are not shown.

[0083] The RAN node 170 includes a module 150, comprising one of or both parts 150-1 and / or 150-

[0084] 2, which may be implemented in a number of ways. The module 150 may be implemented in hardware as module 150-1, such as being implemented as part of the one or more processors 152. The module 150-1 may be implemented also as an integrated circuit or through other hardware such as a programmable gate array. In another example, the module 150 may be implemented as module 150-2, which is implemented as computer program code 153 and is executed by the one or more processors 152. For instance, the one or more memories 155 and the computer program code 153 are configured to, with the one or more processors 152, cause the RAN node 170 to perform one or more of the operations as described herein. Note that the functionality of the module 150 may be distributed, such as being distributed between the DU 195 and the CU 196, or be implemented solely in the DU 195.

[0085] The one or more network interfaces 161 communicate over a network such as via the links 176 and 131. Two or more gNBs 170 may communicate using, e.g., link 176. The link 176 may be wired or wireless or both and may implement, for example, an Xn interface for 5G, an X2 interface for LTE, or other suitable interface for other standards.

[0086] The one or more buses 157 may be address, data, or control buses, and may include any interconnection mechanism, such as a series of lines on a motherboard or integrated circuit, fiber optics or other optical communication equipment, wireless channels, and the like. For example, the one or more transceivers 160 may be implemented as a remote radio head (RRH) 195 for LTE or a distributed unit (DU) 195 for gNB implementation for 5G, with the other elements of the RAN node 170 possibly being physically in a different location from the RRH / DU, and the one or more buses 157 could be implemented in part as, for example, fiber optic cable or other suitable network connection to connect the other elements (e.g., a central unit (CU), gNB-CU) of the RAN node 170 to the RRH / DU 195. Reference 198 also indicates those suitable network link(s).

[0087] It is noted that description herein indicates that “cells” perform functions, but it should be clear that equipment which forms the cell will perform the functions. The cell makes up part of a base station. That is, there can be multiple cells per base station. For example, there could be three cells for a single carrier frequency and associated bandwidth, each cell covering one-third of a 360 degree area so that the single base station’s coverage area covers an approximate oval or circle. Furthermore, each cell can correspond to a single carrier and a base station may use multiple carriers. So if there are three 120 degree cells per carrier and two carriers, then the base station has a total of 6 cells.

[0088] The wireless network 100 may include a network element or elements 190 that may include core network functionality, and which provides connectivity via a link or links 181 with a further network, such as a telephone network and / or a data communications network (e.g., the Internet). Such core network functionality for 5Gmay include access and mobility management function(s) (AMF(S)) and / or user plane functions (UPF(s)) and / or session management function(s) (SMF(s)). Such core network functionality for LTE may include MME (Mobility Management Entity) / SGW (Serving Gateway) functionality. These are merely exemplary functions that may be supported by the network element(s) 190, and note that both 5G and LTE functions might be supported. The RAN node 170 is coupled via a link 131 to a network element 190. The link 131 may be implemented as, e.g., an NG interface for 5G, or an SI interface for LTE, or other suitable interface for other standards. The network element 190 includes one or more processors 175, one or more memories 171, and one or more network interfaces (N / W I / F(s)) 180, interconnected through one or more buses 185. The one or more memories 171 include computer program code 173. The one or more memories 171 and the computer program code 173 are configured to, with the one or more processors 175, cause the network element 190 to perform one or more operations.

[0089] The wireless network 100 may implement network virtualization, which is the process of combining hardware and software network resources and network functionality into a single, software-based administrative entity, a virtual network. Network virtualization involves platform virtualization, often combined with resource virtualization. Network virtualization is categorized as either external, combining many networks, or parts of networks, into a virtual unit, or internal, providing network-like functionality to software containers on a single system. Note that the virtualized entities that result from the network virtualization are still implemented, at some level, using hardware such as processors 152 or 175 and memories 155 and 171, and also such virtualized entities create technical effects.

[0090] The computer readable memories 125, 155, and 171 may be of any type suitable to the local technical environment and may be implemented using any suitable data storage technology, such as semiconductor based memory devices, flash memory, magnetic memory devices and systems, optical memory devices and systems, fixed memory and removable memory. The computer readable memories 125, 155, and 171 may be means for performing storage functions. The processors 120, 152, and 175 may be of any type suitable to the local technical environment, and may include one or more of general purpose computers, special purpose computers, microprocessors, digital signal processors (DSPs) and processors based on a multicore processor architecture, as non-limiting examples. The processors 120, 152, and 175 may be means for performing functions, such as controlling the UE 110, RAN node 170, and other functions as described herein.

[0091] In general, the various embodiments of the user equipment 110 can include, but are not limited to, cellular telephones such as smart phones, tablets, personal digital assistants (PDAs) having wireless communication capabilities, portable computers having wireless communication capabilities, image capture devices such as digital cameras having wireless communication capabilities, gaming devices having wireless communication capabilities, music storage and playback appliances having wireless communication capabilities, Internet appliances permitting wireless Internet access and browsing, tablets with wireless communication capabilities, as well as portable units or terminals that incorporate combinations of such functions.

[0092] Referring also to FIG. 2, an example control plane (CP) may comprise, for example, the following: NSSF, NEF, NRF, PCF, UDM, AF, AMF, AUSF and SMF. Also, an example user plane (UP) may comprise the UE, RAN, UPF and DN. The data network DN, such as an external data network, may also comprise one or more application functions AF. Please note that this is merely an example illustration to show some of the features and is not intended to be considered as limiting.

[0093] The functionality of the user plane function (UPF) is defined in stage-2 spec 3GPP TS 23.501 clause 6.2.3. This includes:

[0094] The User plane function (UPF) includes the following functionality. Some or all of the UPF functionalities may be supported in a single instance of a UPF :

[0095] - Anchor point for Intra- / Inter-RAT mobility (when applicable).

[0096] - Allocation of UE IP address / prefix (if supported) in response to SMF request.

[0097] - External PDU Session point of interconnect to Data Network. - Packet routing & forwarding (e.g. support of Uplink classifier to route traffic flows to an instance of a data network, support of Branching point to support multi -homed PDU Session, support of traffic forwarding within a 5G VN group (UPF local switching, via N6, via N19)).

[0098] - Packet inspection (e.g. Application detection based on service data flow template and the optional PFDs received from the SMF in addition).

[0099] - User Plane part of policy rule enforcement, e.g. Gating, Redirection, Traffic steering).

[0100] - Lawful intercept (UP collection).

[0101] - Traffic usage reporting.

[0102] - QoS handling for user plane, e.g. UL / DL rate enforcement, Reflective QoS marking in DL.

[0103] - Uplink Traffic verification (SDF to QoS Flow mapping).

[0104] - Transport level packet marking in the uplink and downlink.

[0105] - Downlink packet buffering and downlink data notification triggering.

[0106] - Sending and forwarding of one or more "end marker" to the source NG-RAN node.

[0107] - Functionality to respond to Address Resolution Protocol (ARP) requests and / or IPv6 Neighbour Solicitation requests based on local cache information for the Ethernet PDUs. The UPF responds to the ARP and / or the IPv6 Neighbour Solicitation Request by providing the MAC address corresponding to the IP address sent in the request.

[0108] - Packet duplication in downlink direction and elimination in uplink direction in GTP- U layer.

[0109] - NW-TT functionality.

[0110] - High latency communication, see clause 5.31.8.

[0111] - ATSSS Steering functionality to steer the MA PDU Session traffic, refer to clause 5.32.6.

[0112] NOTE: Not all of the UPF functionalities are required to be supported in an instance of user plane function of a Network Slice.

[0113] - Inter PLMN UP Security (IPUPS) functionality, specified in clause 5.8.2.14.

[0114] - event exposure, including exposure of network information, i.e. the QoS monitoring information, as specified in clause 5.8.2.18, events as specified in clause 5.2.26.2 of TS 23.502 [3], exposure of data collected for analytics, as specified in clause 5.2.26.2 of TS 23.502 [3] and exposure of the TSC management information as specified in clause 5.8.5.14.

[0115] - Exposure of the UE IP address translation information as specified in clause 5.2.26.3 of TS 23.502 [3] and clause 4.15.10 of TS 23.502 [3] if Network address translation (i.e. NAT) functionality of the UE IP address is deployed within UPF.

[0116] - Support PDU Set Handling as defined in clause 5.37.5.

[0117] One aspect is how UPF selection is performed, in order to serve different needs of both the UE and core network. As part of Rel-19 study items in SA2 WG, the approved UPEAS_Ph2 SID (S2-2313748) identifies the following open issue:

[0118] “The user plane functionalities supported by the UPF are described in clause 6.2.3 of TS23.501. There is need to study whether and how to enhance the UPF selection to support selection of UPF providing a selected user plane functionality, e.g. NAT, Packet inspection, etc.”

[0119] And the WT#2 in the same UPEAS_Ph2 SID (S2-2313748) is defined as “Study potential enhancement on UPF selection to support selection of UPF providing a selected user plane functionalities, e.g. NAT, Packet inspection, etc.”

[0120] Stage-2 spec 3GPP TS 23.501 states the following regarding the parameters and information that can be considered by the SMF for UPF selection:

[0121] 6.3.3 User Plane Function Selection

[0122] 6.3.3.1 Overview

[0123] The selection and reselection of the UPF for PDU session establishment, UE mobility or UE traffic offloading are performed by the SMF by considering UPF deployment scenarios such as centrally located UPF and distributed UPF located close to or at the Access Network site. The selection of the UPF shall also enable deployment of UPF with different capabilities, e.g. UPFs supporting no or a subset of optional functionalities.

[0124] (...)

[0125] 6.3.3.3 Selection of an UPF for a particular PDU Session

[0126] (...)

[0127] The following parameter(s) and information may be considered by the SMF for UPF selection and re-selection: - UPF's dynamic load.

[0128] - Analytics (i.e. statistics or predictions) for UPF load, Service Experience analytics and / or DN Performance analytics per UP path (including UPF and / or DNAI and / or AS instance) and UE related analytics (UE mobility, UE communication, and expected UE behavioural parameters) as received from NWDAF (see TS 23.288

[0086] ), if NWDAF is deployed.

[0129] - UPF's relative static capacity among UPFs supporting the same DNN.

[0130] - UPF location available at the SMF.

[0131] - UE location information.

[0132] - Capability of the UPF and the functionality required for the particular UE session: An appropriate UPF can be selected by matching the functionality and features required for an UE.

[0133] - Data Network Name (DNN).

[0134] - PDU Session Type (i.e. IPv4, IPv6, IPv4v6, Ethernet Type or Unstructured Type) and if applicable, the static IP address / prefix.

[0135] - SSC mode selected for the PDU Session.

[0136] - UE subscription profile in UDM.

[0137] - DNAI as included in the PCC Rules and described in clause 5.6.7.

[0138] - Local operator policies.

[0139] - S-NSSAI.

[0140] - Access technology being used by the UE.

[0141] - Information related to user plane topology and user plane terminations, that may be deduced from:

[0142] - 5G-AN-provided identities (e.g. CelllD, TAI), available UPF(s) and DNAI(s);

[0143] - Identifiers (i.e. a FQDN and / or IP address(es)) of N3 terminations provided by a W-AGF or a TNGF or a TWIF;

[0144] - Information regarding the user plane interfaces of UPF(s). This information may be acquired by the SMF using N4;

[0145] - Information regarding the N3 User Plane termination(s) of the AN serving the UE. This may be deduced from 5G-AN-provided identities (e.g. CelllD, TAI);

[0146] - Information regarding the N9 User Plane termination(s) of UPF(s) if needed;

[0147] - Information regarding the User plane termination(s) corresponding to DNAI(s). - RSN, support for redundant GTP-U path or support for redundant transport path in the transport layer (as in clause 5.33.2) when redundant UP handling is applicable.

[0148] - Information regarding the ATSSS Steering Capability of the UE session (e.g. any combination of ATSSS-LL capability, MPTCP capability, MPQUIC capability) and information on the UPF support of RTT measurements without PMF.

[0149] - Support for UPF allocation of IP address / prefix.

[0150] - Support of the IPUPS functionality, specified in clause 5.8.2.14.

[0151] - Support for High latency communication (see clause 5.31.8).

[0152] - Support for functionality associated with high data rate low latency services, extended Reality (XR) and interactive media services, specified in clause 5.37 (for example, ECN marking for L4S, specified in clause 5.37.3, PDU Set Marking, specified in clause 5.37.5, UE power saving management, specified in clause 5.37.8).

[0153] - User Plane Latency Requirements within AF request (see clause 5.6.7.1 and clause 6.3.6 of TS 23.548

[0130] ).

[0154] - List of supported Event ID(s) for exposure of UPF -related information via service based interface (see clause 7.2.29 and clause 5.2.26.2 of TS 23.502 [3]).

[0155] Features as described herein may be used to address the following item (WT#2) from UPEAS_Ph2 SID (S2-2313748) and proposes solutions for it:

[0156] “Study potential enhancement on UPF selection to support selection of UPF providing a selected user plane functionalities, e.g. NAT, Packet inspection, etc.”

[0157] More specifically, features as described herein may be used for the following aspects: the SMF determining the User Plane (UP) functionalities that should be considered for the selection of the UPF for a given PDU session; and which entities may assist the SMF in determining these UP functionalities.

[0158] It is worth to note that, all the aspects below are not limited to determining some required / preferred "UP functionalities”, but can be used also for determining some required / preferred “UPF capabilities" in the broader sense, as can be seen in some of the examples mentioned in the aspects below.

[0159] Example Aspect 1: Distinguishing the required vs. the preferred UP functionalities for a PDU session

[0160] This aspect enables the 5GS to support distinguishing:

[0161] 1) the UP functionalities that are required for a PDU session (i.e. the PDU session cannot be established or maintained if these UP functionalities are not supported by the UPF).

[0162] 2) the UP functionalities that are preferred for a PDU session, i.e. that are desired to be supported for the PDU session, but that are not essential or mandatory to be supported. In other words, the preferred UP functionalities for a PDU session are UP functionalities which are optional; not required to established or maintained the PDU session, and the PDU session can be established or maintained if these optional UP functionalities are not supported by the UPF.

[0163] The SMF may determine the required and the preferred UP functionalities for a PDU session as described below in regard to example Aspect 2 and example Aspect 3.

[0164] The SMF may discover a UPF that supports the required UP functionalities and, if possible, that also supports the preferred UP functionalities. The SMF may do so by issuing a NF Discovery request to the NRF requesting candidate UPF profiles that support the required UP functionalities (or PFCP features) and that preferentially support the preferred UP functionalities (or PFCP features). In one type of example, this may be done by setting the existing required-pfcp-features query parameter in the NF Discovery request to the required features, and by setting a new query parameter "preferred-pfcp-features" to the list of preferred features. A conventional query parameter may be used as the required-pfcp-features query parameter in the NF discovery request as follows:

[0165] The SMF may select a UPF supporting the required UP functionalities, and if possible, also select one or more other UP functionalities best matching the preferred UP functionalities, and then may proceed with the establishment of the PDU session. If no UPF supports the required UP functionalities, the SMF rejects the PDU session establishment request towards the UE with appropriate error information. In order to determine a UPF which best matches or best supports one or more preferred UP functionality(ies), a quantity based matching may be used. In other words, the best match may be determined as the UPF which has the highest number of preferred functionalities supported. In an alternate example, one could also add a new parameter indicating the prioritization of the features shown in preferred-pfcp-features. For example, preferred-pfcp-features={Fl,F2,F3} and priors=[2,l,3] would state that the prioritized order of the presented features is F2, Fl and F3. In one example, this may be a complementing option for the base (preferred-pfcp-features) solution. In one example, one could introduce an even more complex process for determining a “best match” where a weight value for each feature is given and a math equation may be used. For example, PreferredMatchingRank=Funcl(preferred-pfcp-features, weight list), and Funcl() would be then given as well, and then, for each evaluated UPF, their PreferredMatchingRank value may be calculated. The resulting values may be used to find the best candidate. In another example, using preferred-pfcp-features, prioritization might not be used because supportedPfcpFeatures is string where each feature has assigned octet / bit.

[0166] During the lifetime of a PDU session, if the UPF functionalities that were supported by the UPF serving the PDU session happen to evolve, the SMF may, if possible, select an alternative UPF for the PDU session. An evolution may comprise, for example, a UP functionality that was required for a PDU session becomes no longer available at the UPF (e.g. due to some faults, or UPF overload, or UPF reconfiguration, PDU session modification). If an alternative UPF for the PDU session is not selected, the SMF may trigger the release / reject of the PDU session towards the UE. Optionally, this may be with an indication for the UE to re-establish the PDU session such as, for example, where the indication includes the information of non- resolvable UP functionalities based on which the release decision was done. This may be used to optionally help the UE to not request a non-available set of UP functionalities; especially if they are not essential.

[0167] The SMF may signal to the PCF, AF or UE the preferred functionalities the selected UPF can support and / or the functionalities that cannot be supported. In one example, this may enable the PCF to adjust its policies for the PDU session based on the capabilities supported for the PDU session.

[0168] Examples of UPF functionalities that may be required or preferred for a PDU session

[0169] The following is a list of some examples of UPF functionalities that may be required or preferred for a PDU session: support of Deep Packet Inspection (DPI) and specific DPI levels to be supported, e.g. specific transport (such as QUIC, MP-QUIC, MP-TCP, MASQUE) and / or application (e g. HTTP, RTP, SIP, WebRTC); support of parental control, with optionally specific controls to be enforced to the traffic; support of MASQUE proxy server feature by the UPF; and support of Access Traffic Steering, Switching and Splitting.

[0170] It is important to highlight that some of the functionalities may be beyond the UPF features advertised or exposed over N4 and / or in the UPF profile such as, for example, support of ATSSS-LL, support of traffic duplication, etc. There may also be new UP functionalities / UPF capabilities which are used.

[0171] Example Aspect 2: Network-determined required / preferred UP features

[0172] In regard to this example aspect, the SMF may determine the required and / or the preferred UP functionalities for a PDU session using one or more of the following mechanisms:

[0173] 1. Based on the S-NSSAI / DNN of the PDU session

[0174] • The SMF may be configured with the required and / or preferred UP functionalities to use for PDU sessions established for a given S-NSSAI / DNN.

[0175] 2. Based on policy information received from the PCF

[0176] • The SMF may receive policy information from the PCF, during (or after) the establishment of the PDU session, indicating UP functionalities that are required and / or desired for the PDU session.

[0177] • The PCF may then be configured with the policies. For example, the policies may be per S-NSSAI / DNN, or per subscriber.

[0178] 3. Based on subscription information from the UDM / UDR

[0179] • The SMF may receive subscription information from the UDM, during (or after) the establishment of the PDU session, indicating UP functionalities that are required and / or desired for the PDU session.

[0180] • Corresponding user subscription information may be configured in UDR. For example, this may be per S-SNSSAI / DNN or per subscriber.

[0181] 4. Based on information from the AF

[0182] • The SMF may receive information from the AF, possibly via the NEF and / or PCF for example, during (or after) the establishment of the PDU session, indicating UP functionalities that are required and / or desired for the PDU session.

[0183] The example aspect 1 described above describes examples of the use of the required and / or preferred UP functionalities. Example Aspect 3: UE-assisted determination of required / preferred UP functionalities

[0184] In this example aspect, the UE may provide the network (SMF) with assistance information about the required and / or preferred UP functionalities / UPF capabilities during PDU Session Establishment procedure or PDU Session Modification procedure that goes through the NAS layer. Examples of the assistance information which the UE may provide to the network regarding the required and / or preferred UP functionalities or UPF capabilities are described below.

[0185] The UP functionalities / UPF capabilities assistance information may be used to assist the SMF in the process of UPF selection such as, for example, by giving some guidance / recommendation of some requested / preferred UP functionalities. In one type of example, use of the information regarding the required functionalities and / or the preferred functionalities in the Assistance Information from UE can be considered as an optional choice in the network side (AMF or SMF). In the case of the AMF this optionality is shown as 606 in FIG. 6. For the SMF case shown in FIG. 5, the corresponding optionality step is not shown in that figure, but may be provided in the SMF case. The AMF and the SMF are free to discard the Assistance Information from UE and, if so, the UPF selection may be done without the assistance information from UE. If the AMF or the SMF approves use of the assistance information, then the provided required / preferred functionalities may be included to the matching lists.

[0186] The NAS layer of the UE may obtain the assistance information, such as through an interaction with upper layers / application layers for example, from the application that triggered the PDU session establishment or modification of the PDU session through which the application traffic will be transmitted. As another example, the assistance information may be configured / pre- configured in the UE. As another example, the assistance information could also be provisioned to the UE in URSP rules or policies from the PCF.

[0187] Example of the UP functionalities / UPF capabilities assistance information can contain the following: a) One or more parameters from the existing information in clause 6.3.3.3 of TS 23.501, where the UE can provide some input about them, where the SMF can use the information from the UE when it is lacking another source for the information.

[0188] Examples include:

[0189] I. Information about UE location (cell / Tracking area / trajectories. . . etc).

[0190] II. Information about operator policies configured in the UE.

[0191] III. Information about supporting high latency communication.

[0192] IV. ...etc. b) New parameters that are not defined in clause 6.3.3.3 of TS 23.501 and yet helpful to assist the SMF in UPF selection. Some examples of those new parameters are:

[0193] I. Information about the traffic pattem / frequency that will be transferred over that PDU session. For example, a mission critical UE may need to guarantee free resources at network side to avoid any congestion and, thus, would be indicating high traffic frequency. Hence, the SMF would seek to select a low- loaded UPF. Another example may comprise an loT UE which may not transfer the traffic frequently and, thus, would indicate low-frequency traffic. Hence, the SMF can select a UPF that is a bit loaded to serve that UE.

[0194] II. Information about whether the UE is expected to be static or on frequent mobility, for that certain application traffic. Examples could be that the UE establishes a PDU session to serve a certain application / DNN that is only tied to a certain location.

[0195] III. Information about capability for establishing UE: intermediary (e.g., MASQUE proxy) tunnel over which UE’s E2E data packets are sent and over which UE may signal additional info, like metadata, for the network in order to help processing of UE’s E2E data packets. c) A combination of both a) and b).

[0196] As noted above, a determination of the required UP functionalities and, optionally, the preferred UP functionalities may comprise use of a network-based determination, a UE- assisted determination, or perhaps a combination of a network-based determination and a UE- assisted determination. Aspect 2 described above is an example of the network-based determination and Aspect 3 described above is an example of the UE-assisted determination. Regardless of what method(s) is used to determine the required UP functionalities and, optionally, the preferred UP functionalities, reference is made to FIG. 3 which shows one example of a PDU session establishment or PDU session modification with UP functionality support. After a new PDU session establishment or modification request is received by a SMF as illustrated with block 302, the SMF may determine required and preferred UP functionalities for a given PDU session as illustrated with block 304. As illustrated with block 306, the SMF may then proceed to discover if there are one or more UPFs which support the required UP functionalities and proceed to a decision step as illustrated with block 308. If no UPFs are found which support the required UP functionalities, the SMF may reject the PDU session establishment / modification request as illustrated with block 310. If at least one UPF is found which supports the required UP functionalities, as illustrated with block 312, the SMF may select a UPF which best matches or best supports the preferred UP functionality(ies). As illustrated with block 314, after the selection the SMF may proceed with the establishment or modification request for the PDU session.

[0197] Referring also to FIG. 4, a diagram is shown which illustrates network determined required / preferred UP functionalities. The SMF may determine the required and / or preferred UP functionalities for a PDU session using one or more of the mechanisms shown in FIG. 4. For example, this may comprise:

[0198] 1. S-NSSAI or DNN 402 of the PDU session with the SMF,

[0199] 2. Policy information 404 from the PCF, and

[0200] 3. Subscription information 406 from the UDM or UDR,

[0201] 4. Information 408 from the AF.

[0202] Referring also to FIG. 5, one example of a UE assisted mechanism for UE-assisted determination of required and preferred UP functionalities is shown. Initially, as illustrated with 502, the UPF is established as supporting one or more UP functionalities or features. In step 1, as illustrated with 504, the UE may provide the SMF with UP functionalities assistance information about one or more required and / or preferred UP functionalities during NAS-SM procedure for PDU Session Establishment request. That step can alternatively be done through a NAS PDU Session Modification Request. In step 2, as illustrated with 506, the UP functionalities assistance information may be used to assist the SMF in the process of UPF selection (such as example aspect 1 described above), i.e., by indicating some requested / preferred UP functionalities. In step 3, as illustrated with 508, if finding a UPF that supports the mandatory (required) UPF functionalities is satisfied, then the SMF may accept the PDU session establishment back to the UE (step 3a). Otherwise, the request may be rejected back to the UE with an appropriate error cause (step 3b).

[0203] Referring also to FIG. 6, another complementary alternative example of a UE assisted mechanism for UE-assisted determination of required and preferred UP functionalities is shown. Initially, as illustrated with 602, the UPF is established as supporting one or more UP functionalities or features. In this example the UE may provide the UP functionalities assistance information inside the NAS-MM signaling message (UL NAS Transport message) that carries the NAS-SM signaling message (PDU Session Establishment / Modification Request). This is illustrated in step 1 at 604. This may be used to help in a case where the AMF makes use of the UP functionalities assistance information, such as for example in SMF selection, when not all SMFs are capable to leverage the “UP functionalities assistance information” as illustrated in step 1 at 606. In this case, the SMFs may advertise, or expose, or otherwise make the AMF aware of the SMFs’ capabilities of handling “UP functionalities assistance information” and, optionally, levels of support in their SMF profile. As indicated with step 4, the SMF may perform a UPF selection based upon existing procedures and subscription information, but with taking into consideration the UP functionalities assistance information indicated by the UE. The SMF may communicate with the AMF as indicated in step 5 with a Communication_NlN2MessageTransfer, and the AMF may communicate with the UE as indicated in step 6 with a DL NAS transport (a PDU Session Establishment Accept message for example).

[0204] In accordance with one example embodiment, an apparatus may be provided comprising: at least one processor; and at least one memory storing instructions that, when executed with the at least one processor, cause the apparatus to perform: determining at least one first user plane functionality for a protocol data unit session, where the determining of the at least one first user plane functionality comprises determining whether a user plane functionality is a required user plane functionality; determining whether there is at least one second user plane functionality for the protocol data unit session, where the determining of whether there is at least one second user plane functionality comprises determining whether a user plane functionality is an optional user plane functionality; and selecting a user plane function based upon the determining of the at least one first required user plane functionality and the determining of whether there is at least one second optional user plane functionality. At least one of the determining of the at least one first user plane functionality or the determining of whether there is at least one second user plane functionality may be based upon at least one of: network slice selection assistance information of the protocol data unit session, a data network name of the protocol data unit session, policy information received from a policy control function, subscription information from a unified data management, subscription information from a unified data repository, or information from an application function. At least one of the determining of the at least one first user plane functionality or the determining of whether there is at least one second user plane functionality may be based upon information received from a user equipment during at least one of: a protocol data unit session establishment procedure, or a protocol data unit session modification procedure. The at least one memory may store instructions that, when executed with the at least one processor, cause the apparatus to perform determining all of the user plane functionalities for a protocol data unit session. The determining of the at least one first user plane functionality may be based, at least partially, upon the determining of all of the user plane functionalities for the protocol data unit session, and the determining of whether there is at least one second user plane functionality is based, at least partially, upon the determining of all of the user plane functionalities for the protocol data unit session. The selecting may be based, at least partially, upon discovering that the user plane function supports the determined at least one first user plane functionality. The selecting may comprise using the discovery of the at least one user plane function, which supports the determined at least one first user plane functionality, to determine to proceed with the determining whether there is at least one second user plane functionality for the protocol data unit session. The determining of whether a user plane functionality is an optional user plane functionality may comprise determining that the user plane functionality is not a required user plane functionality for the protocol data unit session. The at least one memory may store instructions that, when executed with the at least one processor, cause the apparatus to perform sending a request for candidate user plane function profiles from a network repository function. The at least one memory may store instructions that, when executed with the at least one processor, cause the apparatus to perform using the candidate user plane function profiles received from the network repository function for the selecting of the user plane function, where the selecting is based, at least partially, upon the received candidate user plane function profiles. The at least one memory may store instructions that, when executed with the at least one processor, cause the apparatus to perform using the candidate user plane function profiles received from the network repository function for the determining of whether there is at least one second user plane functionality which is an optional user plane functionality. The request may comprise a network function discovery request. The network function discovery request may comprise a required features query parameter and an optional features query parameter. The required features query parameter may comprise a required-pfcp-features query parameter. The optional features query parameter may comprise a preferred-pfcp-features query parameter. The at least one memory may store instructions that, when executed with the at least one processor, cause the apparatus to perform selecting one or more of the second user plane functionalities for the protocol data unit session based upon a comparison operation. The comparison operation may comprise comparing functionalities supported by the user plane function versus a predetermined list of features which are preferred to be supported with a target user plane function. The selecting of the user plane function may comprise determining that the user plane function best supports the predetermined list of features which are preferred to be supported. The determining that the user plane function best supports the predetermined list of features may comprise the functionalities supported by the user plane function supporting all the functionalities in the predetermined list of features. The determining that the user plane function best supports the predetermined list of features may comprise the functionalities supported by the user plane function supporting less than all the functionalities in the predetermined list of features. The SMF may signal to the PCF, AF or UE the preferred functionalities the selected UPF can support, or likewise, those that cannot be supported. This may enable e.g. the PCF to adjust its policies for the PDU session based on the capabilities supported for the PDU session. The first and second user plane functionalities may comprise at least one of: support of Deep Packet Inspection (DPI) and specific DPI levels to be supported, e.g. specific transport (such as QUIC, MP-QUIC, MP-TCP, MASQUE) and / or application (e.g. HTTP, RTP, SIP, WebRTC); support of parental control, with optionally specific controls to be enforced to the traffic; support of MASQUE proxy server feature by the UPF; and support of Access Traffic Steering, Switching and Splitting. The selecting may comprise disregarding user plane functionality assistance information received from a user equipment. The at least one memory may store instructions that, when executed with the at least one processor, cause the apparatus to perform receiving user plane functionality assistance information received from a user equipment, and determining not to use the received user plane functionality assistance information in the selecting of the user plane function. In accordance with one example embodiment, an apparatus may be provided comprising: at least one processor; and at least one memory storing instructions that, when executed with the at least one processor, cause the apparatus to perform: determining whether there is at least one first user plane functionality for a protocol data unit session, where the determining of whether there is the at least one first user plane functionality comprises determining whether a user plane functionality is a required user plane functionality; determining whether there is at least one second user plane functionality for the protocol data unit session, where the determining of whether there is at least one second user plane functionality comprises determining whether a user plane functionality is an optional user plane functionality; and selecting a user plane function based upon the determining of whether there is at least one first required user plane functionality and the determining of whether there is at least one second optional user plane functionality. In one example, a PDU session may be provided with both required and preferred UP functionalities. In one example, a PDU session may be provided with required UP functionalities only. In one example, a PDU session may be provided with preferred UP functionalities only.

[0205] Referring also to FIG. 7, in accordance with one example embodiment, a method may be provided comprising: determining whether there is at least one first user plane functionality for a protocol data unit session as illustrated with block 702, where the determining of whether there is at least one first user plane functionality comprises determining whether a user plane functionality is a required user plane functionality; determining whether there is at least one second user plane functionality for the protocol data unit session as illustrated with block 704, where the determining of whether there is at least one second user plane functionality comprises determining whether a user plane functionality is an optional user plane functionality; and selecting a user plane function based upon the determining of whether there is at least one first required user plane functionality and the determining of whether there is at least one second optional user plane functionality as illustrated with block 706. At least one of the determining of the at least one first user plane functionality or the determining of whether there is at least one second user plane functionality may be based upon at least one of: network slice selection assistance information of the protocol data unit session, a data network name of the protocol data unit session, policy information received from a policy control function, subscription information from a unified data management, subscription information from a unified data repository, or information from an application function. At least one of the determining of the at least one first user plane functionality or the determining of whether there is at least one second user plane functionality may be based upon information received from a user equipment during at least one of a protocol data unit session establishment procedure, or a protocol data unit session modification procedure. The method may comprise determining all of the user plane functionalities for a protocol data unit session. The determining of the at least one first user plane functionality may be based, at least partially, upon the determining of all of the user plane functionalities for the protocol data unit session, and the determining of whether there is at least one second user plane functionality may be based, at least partially, upon the determining of all of the user plane functionalities for the protocol data unit session. The selecting may be based, at least partially, upon discovering that the user plane function supports the determined at least one first user plane functionality. The selecting may comprise using the discovery of the at least one user plane function, which supports the determined at least one first user plane functionality, to determine to proceed with the determining whether there is at least one second user plane functionality for the protocol data unit session. The determining of whether a user plane functionality is an optional user plane functionality may comprise determining that the user plane functionality is not a required user plane functionality for the protocol data unit session. The method may comprise sending a request for candidate user plane function profiles from a network repository function. The method may comprise using the candidate user plane function profiles received from the network repository function for the selecting of the user plane function, where the selecting is based, at least partially, upon the received candidate user plane function profiles. The method may comprise using the candidate user plane function profiles received from the network repository function for the determining of whether there is at least one second user plane functionality which is an optional user plane functionality. The request may comprise a network function discovery request. The network function discovery request may comprise a required features query parameter and an optional features query parameter. The required features query parameter may comprise a required- pfcp-features query parameter. The optional features query parameter may comprise a preferred-pfcp-features query parameter. The method may comprise selecting one or more of the second user plane functionalities for the protocol data unit session based upon a comparison operation. The comparison operation may comprise comparing functionalities supported by the user plane function versus a predetermined list of features which are preferred to be supported with a target user plane function. The selecting of the user plane function may comprise determining that the user plane function best supports the predetermined list of features which are preferred to be supported. The determining that the user plane function best supports the predetermined list of features may comprise the functionalities supported by the user plane function supporting all the functionalities in the predetermined list of features. The determining that the user plane function best supports the predetermined list of features may comprise the functionalities supported by the user plane function supporting less than all the functionalities in the predetermined list of features. The selecting may comprise disregarding user plane functionality assistance information received from a user equipment. The method may comprise receiving user plane functionality assistance information received from a user equipment, and determining not to use the received user plane functionality assistance information in the selecting of the user plane function.

[0206] In accordance with one example embodiment, an apparatus may be provided comprising: means for determining whether there is at least one first user plane functionality for a protocol data unit session, where the determining of whether there is at least one first user plane functionality comprises determining whether a user plane functionality is a required user plane functionality; means for determining whether there is at least one second user plane functionality for the protocol data unit session, where the determining of whether there is at least one second user plane functionality comprises determining whether a user plane functionality is an optional user plane functionality; and means for selecting a user plane function based upon the determining of whether there is at least one first required user plane functionality and the determining of whether there is at least one second optional user plane functionality.

[0207] In accordance with one example embodiment, a program storage device readable by an apparatus may be provided, tangibly embodying a program of instructions executable with the apparatus for performing operations, the operations comprising: determining whether there is at least one first user plane functionality for a protocol data unit session, where the determining of whether there is at least one first user plane functionality comprises determining whether a user plane functionality is a required user plane functionality; determining whether there is at least one second user plane functionality for the protocol data unit session, where the determining of whether there is at least one second user plane functionality comprises determining whether a user plane functionality is an optional user plane functionality; and selecting a user plane function based upon the determining of whether there is at least one first required user plane functionality and the determining of whether there is at least one second optional user plane functionality.

[0208] In accordance with one example embodiment, an apparatus may be provided comprising: at least one processor; and at least one memory storing instructions that, when executed with the at least one processor, cause the apparatus to perform: determining at least one user plane functionality for a user equipment; and sending, by the user equipment, a message comprising an identification of the determined at least one user plane functionality.

[0209] The message may comprise at least one of: a protocol data unit session establishment request or modification request, or an uplink non-access stratum transport message. The message may comprise at least one of: user plane functionalities assistance information, or user plane function capabilities assistance information, configured to assist in a user plane function selection. The at least one memory may store instructions that, when executed with the at least one processor, cause the apparatus to perform determining of the assistance information based, at least partially, upon from an application which triggered a protocol data unit session establishment or a modification of a protocol data unit session. The at least one memory may store instructions that, when executed with the at least one processor, cause the apparatus to perform the determining of the assistance information based, at least partially, through an interaction with upper layers or application layers through which application traffic for the application will be transmitted. The user equipment may comprise the assistance information as preconfigured information in the user equipment. The at least one memory may store instructions that, when executed with the at least one processor, cause the apparatus to perform receiving provisioning information for the assistance information in user equipment route selection policy (URSP) rules or policies from a policy control function. The message may comprise guidance or recommendation information regarding at least one of: at least one requested user plane functionality, or at least one preferred user plane functionality. The message may comprise one or more of: information regarding user equipment location, information regarding operator policies configured in the user equipment, or information regarding supporting high latency communication. The message may comprise one or more of: information regarding traffic pattern or frequency that will be transferred over a user plane function session, information regarding whether the user equipment is expected to be static or on frequent mobility for certain application traffic, or information regarding a capability for establishing a user equipment intermediary.

[0210] Referring also to FIG. 8, in accordance with one example embodiment, a method may be provided comprising: determining at least one user plane functionality for a user equipment as illustrated with block 802; and sending, by the user equipment, a message comprising an identification of the determined at least one user plane functionality as illustrated with block 804. The message may comprise at least one of: a protocol data unit session establishment request or modification request, or an uplink non-access stratum transport message. The message may comprise at least one of: user plane functionalities assistance information ,or user plane function capabilities assistance information, configured to assist in a user plane function selection. The method may comprise determining of the assistance information based, at least partially, upon from an application which triggered a protocol data unit session establishment or a modification of a protocol data unit session. The method may comprise determining of the assistance information based, at least partially, through an interaction with upper layers or application layers through which application traffic for the application will be transmitted. The user equipment may comprise the assistance information as preconfigured information in the user equipment. The method may comprise receiving provisioning information for the assistance information in user equipment route selection policy (URSP) rules or policies from a policy control function. The message may comprise guidance or recommendation information regarding at least one of: at least one requested user plane functionality, or at least one preferred user plane functionality. The message may comprise one or more of: information regarding user equipment location, information regarding operator policies configured in the user equipment, or information regarding supporting high latency communication. The message may comprise one or more of: information regarding traffic pattern or frequency that will be transferred over a user plane function session, information regarding whether the user equipment is expected to be static or on frequent mobility for certain application traffic, or information regarding a capability for establishing a user equipment intermediary.

[0211] In accordance with one example embodiment, an apparatus may be provided comprising: means for determining at least one user plane functionality for a user equipment; and means for sending, by the user equipment, a message comprising an identification of the determined at least one user plane functionality. In accordance with one example embodiment, a program storage device readable by an apparatus may be provided, tangibly embodying a program of instructions executable with the apparatus for performing operations, the operations comprising: determining at least one user plane functionality for a user equipment; and sending, by the user equipment, a message comprising an identification of the determined at least one user plane functionality.

[0212] The term “non-transitory,” as used herein, is a limitation of the medium itself (i.e., tangible, not a signal) as opposed to a limitation on data storage persistency (e.g., RAM vs. ROM).

[0213] As used in this application, the term “circuitry” may refer to one or more or all of the following:

[0214] (a) hardware-only circuit implementations (such as implementations in only analog and / or digital circuitry) and

[0215] (b) combinations of hardware circuits and software, such as (as applicable):

[0216] (i) a combination of analog and / or digital hardware circuit(s) with software / firmware and

[0217] (ii) any portions of hardware processor(s) with software (including digital signal processor(s)), software, and memory(ies) that work together to cause an apparatus, such as a mobile phone or server, to perform various functions) and

[0218] (iii) hardware circuit(s) and or processor(s), such as a microprocessor(s) or a portion of a microprocessor s), that requires software (e.g., firmware) for operation, but the software may not be present when it is not needed for operation.”

[0219] This definition of circuitry applies to all uses of this term in this application, including in any claims. As a further example, as used in this application, the term circuitry also covers an implementation of merely a hardware circuit or processor (or multiple processors) or portion of a hardware circuit or processor and its (or their) accompanying software and / or firmware. The term circuitry also covers, for example and if applicable to the particular claim element, a baseband integrated circuit or processor integrated circuit for a mobile device or a similar integrated circuit in server, a cellular network device, or other computing or network device.

[0220] It should be understood that the foregoing description is only illustrative. Various alternatives and modifications can be devised by those skilled in the art. For example, features recited in the various dependent claims could be combined with each other in any suitable combination(s). In addition, features from different embodiments described above could be selectively combined into a new embodiment. Accordingly, the description is intended to embrace all such alternatives, modifications and variances which fall within the scope of the appended claims.

Claims

CLAIMS:

1. An apparatus comprising: at least one processor; and at least one memory storing instructions that, when executed with the at least one processor, cause the apparatus to perform: determining whether there is at least one first user plane functionality for a protocol data unit session, where the determining of whether there is the at least one first user plane functionality comprises determining whether a user plane functionality is a required user plane functionality; determining whether there is at least one second user plane functionality for the protocol data unit session, where the determining of whether there is at least one second user plane functionality comprises determining whether a user plane functionality is an optional user plane functionality; and selecting a user plane function based upon the determining of whether there is at least one first required user plane functionality and the determining of whether there is at least one second optional user plane functionality.

2. The apparatus as claimed in claim 1 where at least one of the determining of whether there is at least one first user plane functionality or the determining of whether there is at least one second user plane functionality is based upon at least one of: a single network slice selection assistance information of the protocol data unit session, a data network name of the protocol data unit session, policy information received from a policy control function, subscription information received from a unified data management, subscription information from a unified data repository, or information received from an application function.

3. The apparatus as claimed in any one of claims 1-2 where at least one of the determining whether there is at least one first user plane functionality or the determining of whether there is at least one second user plane functionality is based upon information received from a user equipment during at least one of: a protocol data unit session establishment procedure, or a protocol data unit session modification procedure.

4. The apparatus as claimed in any one of claims 1-3 where the at least one memory stores instructions that, when executed with the at least one processor, cause the apparatus to perform determining all of the user plane functionalities for a protocol data unit session.

5. The apparatus as claimed in claim 4 where the determining of whether there is at least one first user plane functionality is based, at least partially, upon the determining of all of the user plane functionalities for the protocol data unit session, and the determining of whether there is at least one second user plane functionality is based, at least partially, upon the determining of all of the user plane functionalities for the protocol data unit session.

6. The apparatus as claimed in any one of claims 1-5 where the selecting is based, at least partially, upon discovering that the user plane function supports the determined at least one first user plane functionality.

7. The apparatus as claimed in claim 6 where the selecting further comprises using the discovery of the at least one user plane function, which supports the determined at least one first user plane functionality, to select preferentially a user plane function that also supports the at least one second user plane functionality for the protocol data unit session, when it is determined that there is at least one second user plane functionality for the protocol data unit session.

8. The apparatus as claimed in any one of claims 1-7 where the determining of whether a user plane functionality is an optional user plane functionality comprises determining that the user plane functionality is not a required user plane functionality for the protocol data unit session.

9. The apparatus as claimed in any one of claims 1-8 where the at least one memory stores instructions that, when executed with the at least one processor, cause the apparatus to perform sending a request for discovering candidate user plane function profiles from a network repository function.

10. The apparatus as claimed in claim 9 where the at least one memory stores instructions that, when executed with the at least one processor, cause the apparatus to perform using the candidate user plane function profiles received from the network repository function for the selecting of the user plane function, where the selecting is based, at least partially, upon the received candidate user plane function profiles.

11. The apparatus as claimed in any one of claims 9-10 where the at least one memory stores instructions that, when executed with the at least one processor, cause the apparatus to perform using the candidate user plane function profiles received from the network repository function for the determining of whether there is at least one user plane function profile which also supports the at least one second user plane functionality which is an optional user plane functionality.

12. The apparatus as claimed in any one of claims 9-11 where the request comprises a network function discovery request.

13. The apparatus as claimed in claim 12 where the network function discovery request comprises a required features query parameter and an optional features query parameter.

14. The apparatus as claimed in claim 13 where at least one of the required features query parameter comprises a required-pfcp-features query parameter, or the optional features query parameter comprises a preferred-pfcp-features query parameter.

15. The apparatus as claimed in any one of claims 1-14 where the at least one memory stores instructions that, when executed with the at least one processor, cause the apparatus to perform selecting one or more of the second user plane functionalities for the protocol data unit session based upon a comparison operation.

16. The apparatus as claimed in claim 15 where the comparison operation comprises comparing functionalities supported by the user plane function versus thepredetermined list of features which are preferred to be supported for the protocol data unit session.

17. The apparatus as claimed in claim 16 where the selecting of the user plane function comprises determining that the user plane function best supports the predetermined list of features which are preferred to be supported.

18. The apparatus as claimed in claim 17 where the determining that the user plane function best supports the predetermined list of features comprises the functionalities supported by the user plane function supporting all the functionalities in the predetermined list of features.

19. The apparatus as claimed in claim 17 where the determining that the user plane function best supports the predetermined list of features comprises the functionalities supported by the user plane function supporting less than all the functionalities in the predetermined list of features.

20. A method comprising: determining whether there is at least one first user plane functionality for a protocol data unit session, where the determining of whether there is at least one first user plane functionality comprises determining whether a user plane functionality is a required user plane functionality; determining whether there is at least one second user plane functionality for the protocol data unit session, where the determining of whether there is at least one second user plane functionality comprises determining whether a user plane functionality is an optional user plane functionality; and selecting a user plane function based upon the determining of whether there is at least one first required user plane functionality and the determining of whether there is at least one second optional user plane functionality.

21. An apparatus comprising: means for determining whether there is at least one first user plane functionality for a protocol data unit session, where the determining of whether there is at least one firstuser plane functionality comprises determining whether a user plane functionality is a required user plane functionality; means for determining whether there is at least one second user plane functionality for the protocol data unit session, where the determining of whether there is at least one second user plane functionality comprises determining whether a user plane functionality is an optional user plane functionality; and means for selecting a user plane function based upon the determining of whether there is at least one first required user plane functionality and the determining of whether there is at least one second optional user plane functionality.

22. A program storage device readable by an apparatus, tangibly embodying a program of instructions executable with the apparatus for performing operations, the operations comprising: determining whether there is at least one first user plane functionality for a protocol data unit session, where the determining of whether there is at least one first user plane functionality comprises determining whether a user plane functionality is a required user plane functionality; determining whether there is at least one second user plane functionality for the protocol data unit session, where the determining of whether there is at least one second user plane functionality comprises determining whether a user plane functionality is an optional user plane functionality; and selecting a user plane function based upon the determining of whether there is at least one first required user plane functionality and the determining of whether there is at least one second optional user plane functionality.

23. An apparatus comprising: at least one processor; and at least one memory storing instructions that, when executed with the at least one processor, cause the apparatus to perform: determining at least one user plane functionality for a protocol data unit session; and sending, by the user equipment, a message comprising an identification of the determined at least one user plane functionality.

24. A method comprising: determining at least one user plane functionality for a user equipment; and sending, by the user equipment, a message comprising an identification of the determined at least one user plane functionality.

25. An apparatus comprising: means for determining at least one user plane functionality for a user equipment; and means for sending, by the user equipment, a message comprising an identification of the determined at least one user plane functionality.

Citation Information

Patent Citations

  • Open network automation platform (ONAP) - fifth generation core (5GC) interaction for analytics

    US20210288886A1

  • Select a UPF to establish PFCP association

    WO2022084450A1