Enforcing differential policies on user traffic in a 5G/EPC environment with congestion avoidance and real time policy enforcement

A method of configuring a user plane function node in, e.g., a fifth generation mobile core architecture to process user plane traffic without reliance on control messages over the Sx/N4 or Gx/N7 interfaces. The method includes detecting a type of user traffic at a user plane function node in, e.g., a fifth generation mobile core architecture, selecting, on the user plane function node and based on the type of user traffic, a rule to be applied to the user traffic, and activating the rule to be applied to the user traffic. The approach reduces or eliminates north-south control traffic in CUPS architecture or 5G mobile core architecture.

TECHNICAL FIELD

The present disclosure relates to processing data traffic in a fifth generation (5G)/evolved packet core (EPC) environment.

BACKGROUND

In a 5G/EPC network, a User Plane Function (UPF)/User Plane (UP) is responsible for handling or processing user plane traffic, i.e., packets, received via a radio access network (RAN), from, e.g., user equipment (UE). The UPF/UP is typically configured by a Session Management Function (SMF)/Control Plane (CP) with instructions received from a Policy Control Function (PCF)/Policy and Charging Rules Function (PCRF).

More specifically, policies that control an operator's use case on a 5G/EPC network are installed by the PCF/PCRF onto the SMF/CP over the N7/Gx interfaces, respectively. These policies are then propagated by the SMF/CP to the UPF/UP, over the N4/Sx interface, in the form of packet detection rules (PDRs) for policy enforcement on user traffic as the user traffic is processed by the UPF/UP.

Thus, for a subscriber (i.e., user) session being processed by the UPF/UP, there are typically multiple N4/Sx interface transactions that occur between the UPF/UP and the SMF/CP containing information regarding specific user traffic. This information is then translated to N7/Gx interface transactions that occur between the SMF/CP and the PCF/PCRF to inform the PCF/PCRF of a specific event, and the PCF/PCRF then, in turn, based on the traffic information received, triggers policies to be transmitted over the N7/Gx interface between the PCF/PCRF and SMF/CP, and subsequently over the N4/Sx interface between the SMF/CP and UPF/UP for applying appropriate treatment to the user's traffic. Thus, there can be an inordinate amount of “north-south”control traffic that is exchanged among control plane functional nodes in response to traffic being processed by a UPF/UP.

DESCRIPTION OF EXAMPLE EMBODIMENTS

Overview

Presented herein is a method of configuring a user plane function node in, e.g., a fifth generation mobile core or evolved packet core architecture to process user plane traffic without reliance on control messages over the Sx/N4 or Gx/N7 interfaces. In an embodiment, the method includes detecting a type of user traffic at a user plane function node in a fifth generation mobile core architecture, selecting, on the user plane function node and based on the type of user traffic, a rule to be applied to the user traffic, and activating the rule to be applied to the user traffic. The approach reduces or eliminates north-south control traffic in CUPS architecture or 5G mobile core architecture by eliminating message exchange over N4/N7 and Gx/Sx interfaces.

In another embodiment, a device is provided. The device includes an interface configured to enable network communications, a memory, and one or more processors coupled to the interface and the memory, and configured to: detect a type of user traffic at a user plane function node in, e.g., a fifth generation mobile core architecture, select, on the user plane function node and based on the type of user traffic, a rule to be applied to the user traffic, and activate the rule to be applied to the user traffic.

Example Embodiments

FIG.1shows a 5G control and user plane separation (CUPS) architecture100including policy enforcement engine (PEE) logic150disposed with a traffic detection function (TDF) node, according to an example embodiment, andFIG.2shows a 5G mobile core architecture200including policy enforcement engine logic150disposed with a user plane function (UPF) node, according to an example embodiment. More specifically, architectures100,200make up a mobile core network that may be configured as any combination of a (private or non-private) 4G/LTE core, typically referred to as the Evolved Packet Core or System (EPC/EPS), 5G core or system (5GC/5GS), nG core or system (e.g., a Sixth Generation (6G) core/system, etc.), and/or the like as may be defined by 3GPP or other similar standards and may include any components, network elements, etc. in order to facilitate operations discussed herein. For example, inFIG.1, the architecture includes CUPS components including a user plane serving gateway SGW-U110, a control plane serving gateway (SGW-C)115, a user plane packet gateway (PGW-U)120, a control plane packet gateway (PGW-C)125, a user plane (UP) traffic detection function (TDF-U)130, and a control plane traffic detection function (TDF-C)135. As shown inFIG.1, the control and user plane nodes communicate with one another via the Sx interface. A Policy and Charging Rules Function (PCRF)140is also provided and communicates over the Gx interface with PGW-C125and/or over the Sd interface with TDF-C135. Those skilled in the art will appreciate that many other interfaces are defined for the depicted nodes as well as for other nodes. However, those interfaces are not particularly relevant to the embodiments described herein.

Also shown inFIG.1is a radio access network (RAN)105that enables a user equipment (UE) (not shown inFIG.1) to communicate with the architecture100. On the other end ofFIG.1, a packet data network (PDN)180serves content to the UE via the architecture100and RAN105. Still also shown inFIG.1, is policy enforcement engine (PEE) logic150that may be instantiated with TDF-U130or PGW-U120(i.e., in the user plane) and may be configured via a controller or command line interface (CLI)190. The function of PEE logic150is discussed further below.

FIG.2shows one instance of a 5G/nG mobile core architecture200that includes multiple functional nodes as follows. An Access and Mobility Management function (AMF)210supports termination of network address translation (NAS) signaling, NAS ciphering & integrity protection, registration management, connection management, mobility management, access authentication and authorization, security context management.

A Session Management Function (SMF)215supports session management (e.g., session establishment, modification, release), UE IP address allocation & management, DHCP functions, termination of NAS signaling related to session management, DL data notification, and traffic steering configuration for UPF220for proper traffic routing.

A User Plane Function (UPF)220supports packet routing & forwarding, packet inspection, QoS handling, acts as external PDU session point of interconnect to Data Network (DN)280, and is an anchor point for intra- & inter-radio access technology (RAT) mobility.

A Policy Control Function (PCF)225supports unified policy framework, and provides policy rules to control plane functions, and access subscription information for policy decisions in user data repository (UDR).

An Authentication Server Function (AUSF)230acts as an authentication server.

Unified Data Management (UDM)235supports generation of Authentication and Key Agreement (AKA) credentials, user identification handling, access authorization, subscription management.

An Application Function (AF)240supports application influence on traffic routing, and interaction with policy framework for policy control.

Still other nodes and functionality may also be provided.

As shown, a UE201may communicate over Radio Access Network (RAN)205and via mobile core architecture200to reach data network280. Similar to the architecture100ofFIG.1, inFIG.2, PEE logic150may be instantiated on UPF220(i.e., in the user plane), and may be controlled by controller or command line interface190.FIG.2also shows the several interfaces between the several functional nodes depicted including interfaces N1, N2, N3, N4, N5, N6, N7, N8, N9, N10, N11, N12, N13, N14, and N15. Interfaces N4 and N7 (which correspond to interfaces Sx and Gx/Sd of architecture100) are of particular interest in the context of the present embodiments.

As noted above, in order for data packets to be processed by PGW-U120or TDF-U130or UPF220, packet data rules (PDRs) are first loaded or configured on the PGW-U120or TDF-U130or UPF220, and those PDRs are received from, e.g., PCRF140and TDF-C135via the Gx/Sd and Sx interfaces, or PCF225and SMF215via the N4 and N7 interfaces. This PDR configuration process creates a significant amount of north-south control plane traffic.

To address the overuse of the Sx/Gx/Sd and N4/N7 interfaces, and in accordance with an embodiment, PEE logic150is configured, using controller of CLI190, to self-install and uninstall the PDRs based on event identification on the TDF-U130or UPF220, without any intervention from PCF225/PCRF140or SMF215/PGW-C125/TDF-C135. This eliminates or significantly reduces transactions on the Gx/Sd/N7 and the N4/Sx interfaces for processing related to PDRs.

FIG.3shows a ladder diagram depicting relevant nodes, i.e., UPF220, SMF215, and PCF225in the 5G mobile core architecture200where the PEE logic150is disabled, according to an example embodiment. This functionality is juxtaposed toFIG.4, which shows a ladder diagram depicting the same relevant nodes in the 5G mobile core architecture200where PEE logic150is enabled, according to an example embodiment. Referring first toFIG.3, when PEE logic150is disabled, and in order to provide differential treatment to user traffic, UPF220informs SMF215of Start of Traffic with traffic type information. More specifically, at302, UPF220detects video, music and social media traffic. At304, UPF220sends a Traffic Start Video message to SMF215. At306, UPF220sends a Traffic Start Music message to SMF215, and at308, UPF220sends a Traffic Start Social message to SMF215. These Start of Traffic messages are then passed over the N7/Gx interface to PCF225at310,312, and314. PCF225, depending on the policies configured for treating the received traffic type, will install such policies on the SMF215via Activate Video-Rule message at316, Activate Music-Rule message at318, and Activate Social-Rule at320. These installed policies are then pushed to the UPF220in the form of Install PDRs (Video-Rule) at322, Install PDRs (Music-Rule) at324, and Install PDRs (Social-Rule) at326.

In turn, UPF220processes the different traffic types with Video-Rule applied to Video Traffic at328, Music-Rule applied to Music Traffic at330, and Social-Rule applied to Social Traffic at332.

At some point subsequent, when video traffic is no longer detected, UPF220sends a Traffic Stop Video message to SMF215at334. That Traffic Stop Video message is sent to PCF225at336, and PCF225sends a Deactivate Video-Rule to SMF215at338. SMF215then sends a Remove PDRs (Video Rule) message to UPF220at340.

Similarly, at some point subsequent, when music traffic is no longer detected, UPF220sends a Traffic Stop Music message to SMF215at342. That Traffic Stop Music message is sent to PCF225at344, and PCF225sends a Deactivate Music-Rule to SMF215at346. SMF215then sends a Remove PDRs (Music Rule) message to UPF220at348.

And, at still some other point subsequent, UPF220, when social media traffic is no longer detected, sends a Traffic Stop Social message to SMF215at350. That Traffic Stop Social message is sent to PCF225at352, and PCF225sends a Deactivate Social-Rule to SMF215at354. SMF215then sends a Remove PDRs (Social Rule) message to UPF220at356.

Thus, when PEE logic150is disabled, there is significant messaging overhead and possibly congestion on the N4/N7 interfaces (and Sx/Gx/Sd interfaces in a CUPS implementation), possible latency in applying the policies on the detected traffic, as well as increased monetary cost for an operator since a per transaction cost may be incurred by the operator by the vendor of PCF225(or PCRF140).

FIG.4shows functionality of an embodiment when PEE logic150is enabled. In an embodiment, PEE logic150is configured with rules (PDRs) directly from controller or CLI190. In this manner, an operator directly controls the operation of the UPF220(or TDF-U130) without intervention or communication with SMF215(or with PGW-C125/TDF-C135) via the N4/N7 interfaces (or via the and Sx/Gx/Sd interfaces). An operator can enable or disable PEE logic150as desired.

UPF220thereafter processes the different types of traffic with Video-Rule applied to Video Traffic at416, Music-Rule applied to Music Traffic at418, and Social-Rule applied to Social Traffic at420.

At some point subsequent, when video traffic ends and is no longer detected, e.g., at422, PEE logic150matches for Traffic Stop Video at424, and at426causes UPF220to Deactivate Video-Rule.

Similarly, at some point subsequent, when music traffic ends and is no longer detected, e.g., at428, PEE logic150matches for Traffic Stop Video at430, and at432causes UPF220to Deactivate Music-Rule.

Likewise, at some point subsequent when social media traffic ends and is no longer detected, e.g., at434, PEE logic150matches for Traffic Stop Social at436, but at438, instead of deactivating the social rule, PEE logic150is configured to take no action, and UPF220therefore maintains the Social-Rule. The operator in this particular case might have knowledge that social media traffic (or a flow) is likely to reappear and thus PEE logic150is programmed to not deactivate the rule(s) associated with processing social media on UPF220.

Thus, as those skilled in the art will appreciate, the embodiments described herein support providing differential treatment to user traffic using policy enforcement engine logic150on UPF220or PGW-U120or TDF-U130(i.e., in the user plane). The policies that are enforced against specific traffic types are the same policies that could be received from PCF225/SMF215or from PCRF140/PGW-C125/TDF-C135. Once a certain traffic type is detected on UPF220/PGW-C125/TDF-U130, PEE logic150selects a corresponding configured rule for the traffic type and activates that specific rule so that appropriate traffic treatment is performed. At any point in time, if UPF220/PGW-U120/TDF-U130detects that no more flows of a certain traffic type exist, PEE logic150is configured to selectively deactivate the activated rule. In the example ofFIG.4and the table below, PEE logic150on UPF220can be configured to install a Video-Rule and a Music-Rule only as long as any Video or Music Traffic exists. On the other hand, for Social Media Traffic, PEE logic150may be configured to install Social-Rule upon Social Traffic detection and keep the rule alive throughout the lifetime of a user session, even if the Social traffic or flow itself has ended.

The condition variable could be extended to support various other parameters like Time of Day, Radio Access Technology (RAT) type, etc.

FIG.5is a flowchart showing a series of operations performed by the policy enforcement engine logic150, according to an example embodiment. Those skilled in the art will appreciate that the depicted operations may be performed on a UPF, PGW-U, or a TDF-U. That is, PEE logic150may be installed on a user plane node. At502, an operation detects a type of user traffic at a user plane function node in a fifth generation mobile core architecture. At504, an operation selects, on the user plane function node and based on the type of user traffic, a rule to be applied to the user traffic. And, at506, an operation activates the rule to be applied to the user traffic.

FIG.6illustrates a hardware block diagram of a computing device that may be configured to execute policy enforcement engine logic150, according to an example embodiment.

In at least one embodiment, the computing device600may include one or more processor(s)602, one or more memory element(s)604, storage606, a bus608, one or more network processor unit(s)610interconnected with one or more network input/output (I/O) interface(s)612, one or more I/O interface(s)614, and control logic620. In various embodiments, instructions associated with logic for computing device600can overlap in any manner and are not limited to the specific allocation of instructions and/or operations described herein.

In at least one embodiment, processor(s)602is/are at least one hardware processor configured to execute various tasks, operations and/or functions for computing device600as described herein according to software and/or instructions configured for computing device600. Processor(s)602(e.g., a hardware processor) can execute any type of instructions associated with data to achieve the operations detailed herein. In one example, processor(s)602can transform an element or an article (e.g., data, information) from one state or thing to another state or thing. Any of potential processing elements, microprocessors, digital signal processor, baseband signal processor, modem, PHY, controllers, systems, managers, logic, and/or machines described herein can be construed as being encompassed within the broad term ‘processor’.

In at least one embodiment, memory element(s)604and/or storage606is/are configured to store data, information, software, and/or instructions associated with computing device600, and/or logic configured for memory element(s)604and/or storage606. For example, any logic described herein (e.g., policy enforcement engine logic150) can, in various embodiments, be stored for computing device600using any combination of memory element(s)604and/or storage606. Note that in some embodiments, storage606can be consolidated with memory element(s)604(or vice versa), or can overlap/exist in any other suitable manner.

In at least one embodiment, bus608can be configured as an interface that enables one or more elements of computing device600to communicate in order to exchange information and/or data. Bus608can be implemented with any architecture designed for passing control, data and/or information between processors, memory elements/storage, peripheral devices, and/or any other hardware and/or software components that may be configured for computing device600. In at least one embodiment, bus608may be implemented as a fast kernel-hosted interconnect, potentially using shared memory between processes (e.g., logic), which can enable efficient communication paths between the processes.

In various embodiments, network processor unit(s)610may enable communication between computing device600and other systems, entities, etc., via network I/O interface(s)612to facilitate operations discussed for various embodiments described herein. In various embodiments, network processor unit(s)610can be configured as a combination of hardware and/or software, such as one or more Ethernet driver(s) and/or controller(s) or interface cards, Fibre Channel (e.g., optical) driver(s) and/or controller(s), and/or other similar network interface driver(s) and/or controller(s) now known or hereafter developed to enable communications between computing device600and other systems, entities, etc. to facilitate operations for various embodiments described herein. In various embodiments, network I/O interface(s)612can be configured as one or more Ethernet port(s), Fibre Channel ports, and/or any other I/O port(s) now known or hereafter developed. Thus, the network processor unit(s)610and/or network I/O interface(s)612may include suitable interfaces for receiving, transmitting, and/or otherwise communicating data and/or information in a network environment.

Variations and Implementations

In sum, method is provided and includes detecting a type of user traffic at a user plane function node in, e.g., a fifth generation mobile core architecture, selecting, on the user plane function node and based on the type of user traffic, a rule to be applied to the user traffic, and activating the rule to be applied to the user traffic.

In the method, the user plane function node is at least one of a traffic detection function in a control plane and user plane separation (CUPS) architecture or a user plane function (UPF) in a 5G mobile core architecture.

The type of user traffic may be at least one of video traffic, music traffic, or social media traffic.

The method may further include configuring the user plane function node with the rule to be applied to the user traffic, wherein the configuring does not use a Sx interface of a control plane and user plane separation (CUPS) architecture or a N4 interface of a 5G mobile core architecture. The configuring may be performed with a controller, via a command line interface (CLI).

The method may further include configuring the user plane function node with the rule to be applied to the user traffic, wherein the configuring does not use a Gx/Sd interface of a control plane and user plane separation (CUPS) architecture or a N7 interface of a 5G mobile core architecture. The rule to be applied to the user traffic may implement a differential policy for the type of user traffic.

The method may still further include deactivating the rule to be applied to the user traffic upon detecting that the type of user traffic has ended.

And, the method may also include maintaining the rule to be applied to the user traffic upon detecting that the type of user traffic has ended.

In another embodiment, a device is provided. The device includes an interface configured to enable network communications, a memory, and one or more processors coupled to the interface unit and the memory, and configured to: detect a type of user traffic at a user plane function node in, e.g., a fifth generation mobile core architecture, select, on the user plane function node and based on the type of user traffic, a rule to be applied to the user traffic, and activate the rule to be applied to the user traffic.

The user plane function node may be at least one of a traffic detection function in a control plane and user plane separation (CUPS) architecture or a user plane function (UPF) in a 5G mobile core architecture.

The type of user traffic may be at least one of video traffic, music traffic, or social media traffic.

In an embodiment, the one or more processors may be configured to configure the user plane function node with the rule to be applied to the user traffic, without using a Sx interface of a control plane and user plane separation (CUPS) architecture or a N4 interface of a 5G mobile core architecture.

In another embodiment, the one or more processors may be configured to configure the user plane function node with the rule to be applied to the user traffic, without using a Gx/Sd interface of a control plane and user plane separation (CUPS) architecture or a N7 interface of a 5G mobile core architecture.

In still another embodiment, a non-transitory computer readable storage media encoded with instructions is provided. When executed by a processor, the instructions cause the processor to: detect a type of user traffic at a user plane function node in, e.g., a fifth generation mobile core architecture, select, on the user plane function node and based on the type of user traffic, a rule to be applied to the user traffic, and activate the rule to be applied to the user traffic.

The user plane function node may be at least one of a traffic detection function in a control plane and user plane separation (CUPS) architecture or a user plane function (UPF) in a 5G mobile core architecture.

The type of user traffic may be at least one of video traffic, music traffic, or social media traffic.

The instructions, when executed by the processor, may cause the processor to configure the user plane function node with the rule to be applied to the user traffic, without using a Sx interface of a control plane and user plane separation (CUPS) architecture or a N4 interface of a 5G mobile core architecture.

The instructions, when executed by the processor, may cause the processor to configure the user plane function node with the rule to be applied to the user traffic, without using a Gx/Sd interface of a control plane and user plane separation (CUPS) architecture or a N7 interface of a 5G mobile core architecture.