ADC for Dynamic Rules

Table 1. Feature History

Feature Name

Release Information

Description

IoT Application Traffic Prioritization with ToS Values

2025.01.0

This feature allows IoT application traffic to be prioritized using ToS values received from cnPGW through dynamic rules. The UPF applies these values to manage data packet traffic efficiently. These changes are visible in the show subscribers user-plane-only full all command.

Default Setting: Enabled – Always-on

ADC Dynamic Rules over Gx

2024.02.0

UPF leverages the dynamic ADC rules for traffic matching and charging. This feature allows the service providers to manage IoT devices, such as connected cars, and charge their subscribers based on the traffic flows classified by SMF or UPF. With this traffic classification, the service providers enable service monetization.

In summary, SMF first processes the dynamic ADC rules received from PCF with TDF-App-Identifier, Service ID, and Rating group. SMF then sends this information to UPF to classify ruledefs and perform charging.

Default Setting: Enabled – Always-on

Feature Description

UPF processes N4 messages received from SMF and installs, removes, and modifies the message entities (PDR/URR/FAR/QER) of dynamic ADC rules.

UPF matches the configured ruledef with the TDF-App-Identifier AVP received in the dynamic ADC rule as part of PDR installation from SMF. If matched, UPF classifies the packets and charges the subscribers as per the Rating Group and Service ID of the Dynamic rule PDR.

The TosTrafficClass field is received in a dynamic rule from PCRF to SMF and to UPF. It supports the prioritization of traffic flow during network congestion.

How it Works

PCRF installs a dynamic ADC rule with charging rule definition on SMF. UPF receives the N4 messages from SMF containing the dynamic ADC rule-related PDRs, URRs, QERs, and FARs. The dynamic ADC rule PDR contains the Application ID corresponding to the TDF-App-Identifier received from the PCRF and the Mute notification. UPF does not enable any Application Start/Stop triggers as Mute is enabled.

Upon receiving the N4 message, UPF matches the ruledef pointed using the Application ID/TDF-App-Identifier. UPF then charges the packets matching to this ruledef against the URR received and applies bandwidth policing based on the QER received for the dynamic ADC rule PDR.

UPF supports the following three use cases to support dynamic ADC rules:

  • Installing a Dynamic ADC Rule per Subscription: Upon receiving the dynamic ADC rule from PCRF, SMF installs the rule and sends an N4 Session Establishment Request to UPF to create PDR, QER, FAR, and URR. The Create PDR Request for this dynamic ADC rule contains the TDF-App-Identifier and Mute AVP enabled for all dynamic ADC rules.

    The ToSTrafficClass is an optional value received in SMF through CCA-I message.

    The TOS value and the corresponding mask is populated in TRANSPORT LEVEL MARKING IE in DL FAR and in INNER PACKET MARKING IE in UL FAR respectively in N4 Establishment request.

    UPF matches the configured ruledef with the TDF-App-Identifier and charges the packets according to the RG/SI received in the Dynamic ADC rule. UPF does not generate the N4 Session report for APP-START/STOP, as Mute notifications are enabled from PCRF on SMF during rule install.

  • Modifying a Dynamic ADC Rule from PCRF/SMF: PCRF sends a Re-authorization request (RAR) to SMF along with a Dynamic ADC Rule Modification request. SMF then sends a Session Modification Request to UPF to update QER containing the updated gate status and MBR values.

    UPF performs modifications of the AVPs and sends a N4 Session Modification Response to SMF. UPF also allows enabling or disabling the offline/online charging and modification of the QoS through RAR in mid-session.


    Note


    Modification of TOS for an existing ADC Rule is not applicable. When ADC Rules are getting installed, they can get installed with different TOS values, however once the installation is successful, the TOS value of the rule will not be changed during the lifetime of a call.


  • Removing a Dynamic ADC Rule from PCRF/SMF: UPF receives an N4 Modify Request with Remove PDRs and QERs corresponding to the dynamic ADC rule. UPF also receives Remove URRs occasionally, if it is the last rule for that Rating-Group/Service-ID.

    Upon receiving the N4 Modify Request, UPF stops matching the rule for the ruledef pointed by the TDF-App-Identifier from the Session Modification Request.

For detailed information on dynamic ADC rules, see the UCC 5G SMF Configuration and Administration Guide applicable for the release.

Limitations

Following is the known limitation of this feature:

  • Default bearer URR does not display usage for the subscriber when offline charging is enabled using the RAR on mid-session for the dynamic ADC rule.

OAM Support

This section describes operations, administration, and maintenance support for this feature.

Show Command Output

This section describes the show commands supported in this feature.

show subscribers user-plane-only full all

The output of the show command show subscribers user-plane-only full all has been enhanced to display the number of associated ADC PDRs and ToS counters.

[local]UPF1# show subscribers user-plane-only full all

  Local SEID      : [0x0004000000000002] 1125899906842626
  Remote SEID     : [0x00000004bebf6665] 20380083813
  State           : Connected
  Connect Time    : Wed Apr  3 12:45:51 2024
  Idle time       : 00h00m07s
  Access Type: uplane-ipv4v6             Network Type: IP
  user-plane-service-name: user-plane-service
  active-service-scheme-name:
  Callid: 00004e23
  Rulebase: adc1
  Interface Type: N4
  eMPS Session: No
  eMPS Session Priority: 0
  Session-Type: normal
  Precedence-order: 0
  Data Queue: 0
  Card/Cpu: 1/0                          Sessmgr Instance: 1
  IP address: 2001:cb0:0:3::4e:2301,11.11.0.4
  Next Hop Ip Address: N/A,
  Source context: EPC2-UP                Destination context: ISP
  PDN-Instance: cnpgw
  User-plane-Sx-addr: 20.20.20.106
  Control-plane-Sx-addr: 20.20.20.3
  Number of associated PDRs : 4
  Number of associated ADC PDRs : 2
  Number of associated FARs : 4
  Number of associated QERs : 3
  Number of associated BARs : 0
  Number of associated URRs : 5
  Number of associated BLIs : 1
  Uplink APN AMBR (bps) : 100000       Downlink APN AMBR (bps) : 100000
  active input acl: n/a                active output acl: n/a
  active input ipv6 acl: n/a             active output ipv6 acl: n/a
  Bandwidth Policy: n/a
  FW-and-NAT Policy: n/a
  FW-and-NAT Policy ID: n/a
  Firewall Policy IPv4: n/a
  Firewall Policy IPv6: n/a
  NAT Policy NAT44: n/a
  NAT Policy NAT64: n/a
  Converged Session: No                 Converged Peer Callid:      n/a
  Visited Call: No
  Subscriber Parameters:
  IMSI: 123456781300001
  IMEI: 123456781312381
  MSISDN: 22331101101010
  Rat Type: 6
  Old Rat Type: n/a
  MCC MNC: 123456
  SGSN Address: 20.20.20.15
  ULI: TAI+ECGI=21635400152163540000000d00
  CF Policy ID: n/a
  GX CF Policy ID: n/a
  S-NSSAI: 0x01000002
  Roaming Status:  Homer
  Old Roaming Status: n/a
  input pkts: 5                                   output pkts: 5
  input bytes: 5200                               output bytes: 200
  input bytes dropped: 0                          output bytes dropped: 0
  input pkts dropped: 0                           output pkts dropped: 0
  CF Buffered Uplink Packets: 0                   CF Buffered Downlink Packets: 0
  CF Buffered Uplink Bytes: 0                     CF Buffered Downlink Bytes: 0
  Uplink Packets in Buffer: 0                     Downlink Packets in Buffer: 0
  Buff Over-limit Uplink Pkts: 0                  Buff Over-limit Downlink Pkts: 0
  DDN buffered pkts : 0                           DDN buffered bytes : 0
  DDN buffer overflow drop pkts : 0               DDN buffer overflow drop bytes : 0
  pk rate from user(bps): 0                       pk rate to user(bps): 0
  ave rate from user(bps): 0                      ave rate to user(bps): 0
  sust rate from user(bps): 0                     sust rate to user(bps): 0
  pk rate from user(pps): 0                       pk rate to user(pps): 0
  ave rate from user(pps): 0                      ave rate to user(pps): 0
  sust rate from user(pps): 0                     sust rate to user(pps): 0
  ipv4 bad hdr: 0                                 ipv4 ttl exceeded: 0
  ipv4 fragments sent: 0                          ipv4 could not fragment: 0
  ipv4 bad length trim: 0
  input pkts dropped (0 mbr): 0                   output pkts dropped (0 mbr): 0
  ipv4 input acl drop: 0                          ipv4 output acl drop: 0
  ipv6 input acl drop: 0                          ipv6 output acl drop: 0
  ip source violations: 0                         ipv4 output no-flow drop: 0
  ipv6 bad hdr: 0                                 ipv6 bad length trim: 0
  ipv4 icmp packets dropped: 0
  APN AMBR Uplink Pkts Drop: 0                     APN AMBR Downlink Pkts Drop: 0
  APN AMBR Uplink Bytes Drop: 0                    APN AMBR Downlink Bytes Drop: 0
  APN AMBR Uplink Pkts IP pref lowered: 0          APN AMBR Downlink Pkts IP pref lowered: 0
  APN AMBR Uplink Bytes IP pref lowered: 0         APN AMBR Downlink Bytes IP pref lowered: 0
  ITC Uplink Pkts Drop: 0                          ITC Downlink Pkts Drop: 0
  ITC Uplink Bytes Drop: 0                         ITC Downlink Bytes Drop: 0
  ITC Uplink Pkts IP pref lowered: 0               ITC Downlink Pkts IP pref lowered: 0
  ITC Uplink Bytes IP pref lowered: 0              ITC Downlink Bytes IP pref lowered: 0
  ITC Terminated Flows:: 0                         ITC Redirected Flows: 0
  Flow Action Terminated Flows: 0                  Flow Action Redirected Flows: 0
  ToS marked Uplink Pkts: 0                        ToS marked Downlink Pkts: 0
  CC Dropped Uplink Pkts: 0                        CC Dropped Downlink Pkts: 0
  CC Dropped Uplink bytes: 0                       CC Dropped Downlink Bytes: 0
  Uplink Inflight Pkts: 0                          Downlink Inflight Pkts: 0
  QFI Mismatch Uplink Pkts Drop: 0                 QFI Mismatch Downlink Pkts Drop: 0
  Total QoS-Group(s) Active: 0
  DNS-to-EDNS Uplink Pkts: 0                     DNS-to-EDNS Uplink Bytes: 0
  EDNS Response Received: 0

  Flow information:
    Current Active Flows:
      TCP: 1
      UDP: 0
    Total Flows:
      TCP: 1
      UDP: 0
      FP:  1

show subscribers user-plane-only callid callid pdr full all

The output of the show command show subscribers user-plane-only callid callid pdr full all has been modified to display the following new fields:

  • TDF App Id

  • TDF Notifications

  • Total ADC PDRs found

[local]UPF1# show subscribers user-plane-only callid 00004e21 pdr full all

Callid: 00004e21
Interface Type: N4
IP address: 2001:cb0:0:3::4e:2301,11.11.0.4
PDR-ID:                    0x0003
 Rule Name:                port-2000
 TDF App Id:        port-2000
 TDF Notifications:  Disabled
 Hits:                     1 Match Bypassed:             4
 Matched Bytes:          200 Matched Packets:            5
 Precedence:              55
 Source Interface:       Core
 Source Interface Type: N/A
 SDF Filter(s):
  No SDF filters present
 Local F-TEID:           0x0
 Local F-TEID IP Addr:
  IPv4:                 N/A
  IPv6:                 N/A
 Outer header removal:
 Application ID:         N/A
 Associated FARID:       0x80000001
  Destination Interface: Access
  Apply Action:          FORWARD
  Outer Header Creation: GTP-U/UDP/IPv4
  Remote TEID:           0x3000000
  Transport Level Marking:        0X88 0XFC
  Transport Level Marking Options:
    Copy Inner:                    No
    Copy Outer:                    No
  Inner Packet Marking:            N/A
  Remote IP Address:     20.20.20.15
 Remote Port:            N/A
 Associated QERIDs:      2
  QER-IDs                Correlation-ID
   0x00000003                     n/a
   0x00000001                0x0000000E
 Associated URRIDs:      4
  URR-IDs                Parent URR-ID
   0x00000011            0x80000002
   0x00000027                 n/a
   0x80000002                 n/a
   0x80000009                 n/a
 Activation Time:        N/A
 Deactivation Time:      N/A
 Bearer Level Info-id:        1
    5QI:                    5
    ARP:                    20
    Charging Id:            4

PDR-ID:                    0x0004
 Rule Name:                port-2000
 TDF App Id:        port-2000
 TDF Notifications:  Disabled
 Hits:                     1 Match Bypassed:             4
 Matched Bytes:         5200 Matched Packets:            5
 Precedence:              55
 Source Interface:     Access
 Source Interface Type: S5U(1)
 SDF Filter(s):
  No SDF filters present
 Local F-TEID:           0x8001
 Local F-TEID IP Addr:
  IPv4:                 20.20.20.46
  IPv6:                 N/A
 Outer header removal:   GTP-U/UDP/IPv4
 Application ID:         N/A
 Associated FARID:       0x80000002
  Destination Interface: Core
  Apply Action:          FORWARD
  Outer Header Creation:
  Remote TEID:           0x0
  Transport Level Marking:         N/A
  Transport Level Marking Options:
    Copy Inner:                    No
    Copy Outer:                    No
  Inner Packet Marking:            0X88 0XFC
  Remote IP Address:
 Remote Port:            N/A
 Associated QERIDs:      2
  QER-IDs                Correlation-ID
   0x00000003                     n/a
   0x00000001                0x0000000E
 Associated URRIDs:      4
  URR-IDs                Parent URR-ID
   0x00000011            0x80000002
   0x00000027                 n/a
   0x80000002                 n/a
   0x80000009                 n/a
 Activation Time:        N/A
 Deactivation Time:      N/A
 Bearer Level Info-id:        1
    5QI:                    5
    ARP:                    20
    Charging Id:            4

PDR-ID:                    0x0005
 Rule Name:                ipv6rsradl
 TDF App Id:              N/A
 TDF Notifications:       N/A
 Hits:                     3 Match Bypassed:             0
 Matched Bytes:          312 Matched Packets:            3
 Precedence:               1
 Source Interface:CP-function
 Source Interface Type: N/A
 SDF Filter(s):
  No SDF filters present
 Local F-TEID:           0x8000a001
 Local F-TEID IP Addr:
  IPv4:                 20.20.20.46
  IPv6:                 N/A
 Outer header removal:   GTP-U/UDP/IPv4
 Application ID:         N/A
 Associated FARID:       0x0003
  Destination Interface: Access
  Apply Action:          FORWARD
  Outer Header Creation: GTP-U/UDP/IPv4
  Remote TEID:           0x3000000
  Transport Level Marking:         N/A
  Transport Level Marking Options:
    Copy Inner:                    No
    Copy Outer:                    No
  Inner Packet Marking:            N/A
  Remote IP Address:     20.20.20.15
 Remote Port:            N/A
 Associated QERIDs:      1
  QER-IDs                Correlation-ID
   0x00000002                     n/a
 Associated URRIDs:      0
 Activation Time:        N/A
 Deactivation Time:      N/A
 Bearer Level Info-id:   N/A

PDR-ID:                    0x0006
 Rule Name:                ipv6rsraul
 TDF App Id:              N/A
 TDF Notifications:       N/A
 Hits:                     0 Match Bypassed:             0
 Matched Bytes:            0 Matched Packets:            0
 Precedence:               1
 Source Interface:     Access
 Source Interface Type: S5U(1)
 SDF Filter(s):
  Filter 1
    Protocol:            ICMPV6
    Src IP Addr:         ANY
    Src Port:            ANY
    Dst IP Addr:         ff05::2/128
    Dst Port:            ANY
    SPI:                 0
  Filter 2
    Protocol:            ICMPV6
    Src IP Addr:         ANY
    Src Port:            ANY
    Dst IP Addr:         ff02::2/128
    Dst Port:            ANY
    SPI:                 0
  Filter 3
    Protocol:            ICMPV6
    Src IP Addr:         ANY
    Src Port:            ANY
    Dst IP Addr:         ff01::2/128
    Dst Port:            ANY
    SPI:                 0
 Local F-TEID:           0x8001
 Local F-TEID IP Addr:
  IPv4:                 20.20.20.46
  IPv6:                 N/A
 Outer header removal:   GTP-U/UDP/IPv4
 Application ID:         N/A
 Associated FARID:       0x0004
  Destination Interface: CP-function
  Apply Action:          FORWARD
  Outer Header Creation: GTP-U/UDP/IPv4
  Remote TEID:           0x4
  Transport Level Marking:         N/A
  Transport Level Marking Options:
    Copy Inner:                    No
    Copy Outer:                    No
  Inner Packet Marking:            N/A
  Remote IP Address:     20.20.20.3
 Remote Port:            N/A
 Associated QERIDs:      0
 Associated URRIDs:      0
 Activation Time:        N/A
 Deactivation Time:      N/A
 Bearer Level Info-id:   N/A

Total ADC PDRs found:  2
Total PDRs found:      4