WPS Prioritization

Table 1. Feature History

Feature Name

Release Information

Description

WPS Prioritization on UPF

2023.04

The Wireless Priority Services (WPS) feature provides finer control for priority handling over multiple interfaces.

UPF supports WPS services based on the message priority indicated by SMF. The configured priority value set on SMF will be sent to UPF over N4 as part of the PFCP header.

Feature Description

The Wireless Priority Services (WPS) feature provides finer control for priority handling over multiple interfaces. UPF supports WPS based on the message priority indicated by SMF.

The priority value set on SMF will be sent to UPF over N4 as part of the PFCP header. The message priority values from SMF/CUPS-CP are currently supported for Emergency, VoLTE, and non-VoLTE IMS sessions.


Note


WPS supports only N4 (SMF) and Sxa (cnSGW) terminations on UPF. WPS does not support Sxb (PGW-C) and Sxa (SGW-C) terminations in this release.


For information on WPS prioritization support on RCM, see the UCC 5G RCM Configuration and Administration Guide.

For information on WPS prioritization support on SMF, see the UCC 5G SMF Configuration and Administration Guide.

How it Works

This section describes how WPS prioritization works in UPF.

Priority Handling

The session-priority-profile maps the session-priority values from 0 to 15 to precedence values from 1 to 4. It is used internally in modules like RCM and data-queue distribution.

SR and ICSR

When the feature is not enabled, any session with a valid session-priority received over N4/SX will be prioritized for SR/ICSR as per earlier design.

When the feature enabled, there is a change such that only the Emergency and WPS sessions will be prioritized for SR/ICSR. During UPF downgrade, the priority values are recovered with an offset of +1.

Data Queue

The following table describes the traffic distribution over data queues based on session precedence:

Queue #

Details

3 (Highest priority)

Reserved for Sx

2

Used for Precedence 1,2 sessions

1

Used for Precedence 3,4 sessions

0 (Lowest priority)

Used for Data/Non-prioritized sessions

The default precedence values will be used when:

  • Only session-type is configured and precedence is not defined for session-priority

  • No priority value is configured in the session-priority profile

  • WPS feature is enabled with the default session-priority profile


Note


  • If the feature is disabled, UPF uses N-1 support prioritization.

  • For session recovery of combo calls, the highest priority value received on Sxa or N4 will be used for both sessions.


Mapping to Session Type

UPF maps the session priority values (WPS, Emergency, and IMS) received over N4 to the session types using the "associate session-priority-profile" CLI configuration.

For VoLTE non-active sessions, mapping is not available. For VoLTE active sessions, the priority value 'ims' will be used, while the next priority value (+1) is implicitly used for VoLTE non-active sessions. Hence, "ims+1" priority should not be configured in the session-priority profile.

Version Compatibility

  1. For the latest version (X) of RCM and a prior version (X-1) of UPF:

    1. RCM will support the previous UPF version (X-N), as the priority set is extended without affecting the previously supported set of priorities (1, 2, 3).

    2. During switchover, the flush sequence will be completely based on the priority received from the UPF, which was not the case in earlier versions.

  2. For the prior version (X-1) of RCM and latest version (X) of UPF:

    1. RCM will not support the extended set of priorities, and the checkpoints received for priority 4 will be dropped.

    2. During switchover, calls for priority 1, 2, and 3 can be restored.

Control-Plane Compatibility

To enable WPS prioritization, upgrade the UPF to the new configuration. Prioritization will not be guaranteed in the following scenarios when:

  • SMF/CP is not upgraded

  • Priority values are sent based on N-1 support

  • WPS prioritization is enabled on UPF

Based on the priority values received from the Control Plane, the following combinations will work:

S. No.

SMF / cnSGW / PGW-C / SGW-C Version

UPF Version

WPS prioritization enabled on UPF

UPF Behavior

1

N-1

Or

N without config

N-1

N/A

No WPS prioritization - same as previous behavior.

2

N-1

Or

N without config

N

No

No WPS prioritization - same as previous behavior.

3

N-1

Or

N without config

N

Yes

Session prioritization will not be guaranteed.

4

N (Config present)

N-1

N/A

This is not recommended as session prioritization will not be guaranteed. RCM checkpoints will be dropped for priority>3.

5

N (Config present)

N

Yes

WPS prioritization works.

6

N (Config present)

N

No

This is not recommended as session prioritization will not be guaranteed.

Limitations

The WPS Prioritization feature has the following limitations:

  • In a multi-Sx/N4 scenario, all Control Plane nodes must use the same process to send MP values. This applies to SMF/cnSGW and PGW-C/SGW-C working with the same UPF.

  • The sessions recovered during the UPF software upgrade will retain their prioritization values. As a result, after the UPF upgrade between N-1 and N, the prioritization for existing sessions will not work as expected, and the show CLI output will be undetermined.

  • In the case of a configuration change at the SMF that changes existing priority values or a configuration change at the UPF that changes the session type, the session type and priority are not re-evaluated. As a result of such a configuration change, incorrect statistics updates may occur.

  • Due to any mid-session priority changes, some of the statistics may be inconsistent.

Configuring WPS Prioritization

This section describes how to configure the WPS Prioritization feature.

Enabling WPS Prioritization

Use the following configuration to enable or disable WPS prioritization support and associate a session-priority-profile with the user-plane-service:

config 
   context context_name 
      user-plane-service up_service_name 
         [ no ] associate session-priority-profile { name | default } [ name_string ] 
         end 

NOTES:

  • associate session-priority-profile { name | default } [ name_string ] : Enables WPS prioritization support.

    • name : Specify the name of the session priority profile to be associated with the User Plane service.

    • default : Specify the default precedence value associated with the session priority.

    • name_string : Specify the name string associated with the session priority.

  • no associate session-priority-profile : Disables WPS prioritization support.

  • On a given UPF, you can configure a total number of 16 session-priority profiles. Only one session-priority profile can be associated with a user-plane service.

  • When a session does not receive any message-priority within the N4/Sx messages, it is classified as a 'Normal' session with a 'precedence' value set to 0.

  • If a priority is not specified in the session-priority-profile configuration, the session-type will be shown as 'Unclassified' and uses the default1 precedence value.

  • When there is no session-priority-profile association in the user-plane-service, UPF utilizes the existing (N-1) behavior with fixed priority values, including Emergency, IMS-VoLTE, and IMS-nonVoLTE.

Mapping the Session Priority Profile

Use the following configuration to configure the session priority value with a session type and precedence value.

config 
   session-priority-profile spp_name 
      priority priority_value type { wps | emergency | ims } precedence precedence_value 
      end 

NOTES:

  • session-priority-profile : Specify the session priority profile name.

  • priority : Specify the priority value as an integer in the range of 0 to 15.

  • type { wps | emergency | ims } : Specify the session type.

  • precedence : Specify the precedence value as an integer in the range of 1 to 4.

  • The session-priority profile must not be configured with the priority value next to the one assigned for ims .

OAM Support

Show Commands Support

This section provides information about show commands and their outputs in support of this feature.

show subscribers user-plane-only full all

The output of this CLI command is enhanced to display the session-type value.

The following is a sample output of this command:

show subscribers user-plane-only full all | more

  Local SEID      : [0x0004000000000000] 1125899906842624
  Remote SEID     : [0x0004000000000002] 1125899906842626
  State           : Connected
  Connect Time    : Thu Jun  8 09:36:49 2023
Idle time       : 00h00m11s
  Access Type: uplane-ipv4               Network Type: IP
  user-plane-service-name: user-plane-service
  active-service-scheme-name:
  Callid: 00004e21
  Rulebase: prepaid
  Interface Type: Sxb
  eMPS Session: Yes
  eMPS Session Priority: 6
  Session-Type: wps
  Precedence-Order: 1 
  Data Queue: 2

show user-plane-service all

The output of this CLI command is enhanced to display the Session Priority Profile name.

The following is a sample output of this command:

show user-plane-service all

Service name : user-plane-service
Service-Id : 7
Context : ingress
Status : STARTED
PGW Ingress GTPU Service : sx-gtpu-service
…
Nf-Instance-Id : Not defined
Session Priority Profile          : sp1

show user-plane-service session-priority-profile name | all

The output of this CLI command displays the session priority profile name, along with type and precedence value per priority.

The following is a sample output of this command:

show user-plane-service session-priority-profile name spp1

  Session Priority Profile Name: spp1
  Priority     Type            Precedence
  ---------------------------------------
  0            unclassified    1
  1            wps             1
  2            unclassified    1
  3            emergency       2
  4            unclassified    2
  5            ims             3
  6            ims             3
  7            unclassified    2
  8            unclassified    3
  9            unclassified    3
  10           unclassified    3
  11           unclassified    3
  12           unclassified    4
  13           unclassified    4
  14           unclassified    4
  15           unclassified    4

Total session priority profile(s) found: 1

show user-plane-service statistics all

The output of this command is enhanced to display the number of WPS sessions.

The following is a sample output of this command:

show user-plane-service statistics all
…
  eMPS PDNs Total:
    Active:                            0        Setup:                           0
    Released:                          0        Rejected:                        0

  WPS PDNs Total:
    Active:                            0        Setup:                           0
    Released:                          0        Rejected:                        0

show user-plane-service statistics session-priority-profile

The output of this CLI command displays the number of prioritized and non-prioritized sessions. This command also displays prioritized sessions based on the ‘type’ configuration in the ‘session-priority-profile’.

The following is a sample output of this command:

show user-plane-service statistics session-priority-profile

  Total Non-Prioritized (Normal) sessions: 0

  Total Prioritized sessions: 121
    WPS sessions            Total: 11           Active: 11
      Precedence            Config match        Default match
      ----------           --------------      ---------------
        1                               1                    0
        2                               0                   10
        3                               0                    0
        4                               0                    0

    Emergency sessions      Total: 110          Active: 110
      Precedence            Config match        Default match
      ----------           --------------      ---------------
        1                               0                   10
        2                               0                    0
        3                               0                  100
        4                               0                    0

    IMS sessions            Total: 0            Active: 0
      Precedence            Config match        Default match
      ----------           --------------      ---------------
        1                               0                    0
        2                               0                    0
        3                               0                    0
        4                               0                    0

    Unclassified sessions   Total: 0            Active: 0
      Precedence            Config match        Default match
      ----------           --------------      ---------------
        1                               0                    0
        2                               0                    0
        3                               0                    0
        4                               0                    0