Rules Data Model

The UDRs in PCRF.Rules store information about different rules regarding the provided quality of service for different subscribers.

See APL - PCC Runtime Support for further information about how to use the PCC.Rules UDRs with APL.

The main objects of PCRF.Rules are:

Object

Description

Object

Description

Rules_Mapping

A flexible mapping table used to map from an external representation to a list of rules. The mapping should not include any information related to a specific subscriber.

Rules

Rules contains the rule settings regarding quality of service and charging that should be applied for the subscribers.

Overview of the Rules Data Model

The different UDRs within the Rules Data Model are connected as follows:

Overview of the Rules Data Model

RulesMapping UDR

In the RulesMapping UDR you set up the priority for the rules mapping, the product, enforcements, notifications, etc that the rules mapping should use and the PCC rules that should be applied.

Field

Description

Field

Description

ID (int)

The unique ID of the rules mapping table.

Priority (int)

The priority of the mapping item, a low value indicates a high priority. Determines the order in which the matched mapping objects are returned.

Arguments (list<string>)

The arguments of a mapping object e g the product. The arguments are stated with regular expressions, which means that entering "Products [2-5]" will match Products 2, 3, 4, or 5.

Targets (list<PCC_Rule>)

The different rules used by the mapping object, see the section below PCC_Rule UDR.

StopFallthrough (boolean)

Used in the rules selection process. If several rules apply, but the one with highest priority has been configured with StopFallthrough set to Yes in the APL code, only this rule will be returned if it is active. If it is not active, all other active rules that apply will be returned.

Below is a screenshot of the UDR Assistance displaying the RulesMapping UDR:

RulesMapping UDR



Example RulesMapping UDR

The following values:

ID=11 Priority=2 Arguments=['Product 1'] Targets=[1,2] ID=12 Priority=1 Arguments=['Product 2-4'] Targets=[3] StopFallthrough=yes

will give the following setup:

  • The second mapping table, with priority 1, will have higher priority than the first one, with priority 2.

  • The first mapping table use the product Product 1, while the second mapping table use the products Product 2, Product 3, or Product 4.

  • The first mapping table uses PCC Rules with IDs 1 and 2, while the second mapping object uses the rule with ID 3.

  • If the second mapping table is active, only the rules for this table will be returned even if other rules apply.

PCC_Rule UDR

In the PCC_Rule UDR you determine the period during which the rule should be active, the charging rule that should be applied and the quality of service that should be applied for the rule.

Field

Description

Field

Description

ID (int)

The unique ID of the rule.

Period (string)

The activity period that the rule should have, see Periods Data Model Rules.

Charging_Rules (list<Charging_Rule (PCRF.Rules)>))

The charging rules that should be applied for this rule, see the section below, Charging_Rule UDR.

Rule_Name (string)

The name of the rule.

QoS (QoS_Information (PCRF.Rules)

The quality of service that should be applied for this rule, see the section below, QoS_Information UDR.

Below is a screenshot of the UDR Assistance displaying the Rules UDR:

Rules UDR

Example Rules UDR

The following values:

ID=1 Period='WEEKDAYS' Charging_Rules=[1] Rule_Name='PRIMARY' QoS=[20] ID=2 Period='NIGHTS' Charging_Rules=[3] Rule_Name='SECONDARY' QoS=[10] ID=3 Period="WEEKENDS' Charging_Rules=[5] Rule_Name='THIRD' QoS=[30]

will give the following setup:

  • The IDs used for the three rules; 1,2 3, are the IDs stated as Targets in the mapping tables, see the section above, RulesMapping UDR.

  • The three rules are active during three different periods; WEEKDAYS, NIGHTS and WEEKENDS, see Periods Data Model Rules.

  • Rule number 1 uses the charging rule with ID 1, rule number 2 uses charging rule with ID 3 and rule number 3 uses charging rule with ID 5, see the section below, Charging_Rule UDR.

  • The names of the rules are PRIMARY, SECONDARY and THIRD.

  • The first rule uses QoS ID 20, the second rule uses QoS ID 10 and the third rule uses QoS ID 30, see the section below, QoS_Information UDR.

Charging_Rule UDR

In the Charging_Rule UDR you determine the Static, Dynamic or Final Indication that should be used for the charging rule.

Field

Description

Field

Description

ID (int)

The unique ID of the charging rule.

Name (string)

The name of the charging rule.

Static_Rule (Static_Rule (PCRF.Rules))

The static rule that should be applied, see the section below, Static_Rule UDR.

Dynamic_Rule (Dynamic_Rule (PCRF.Rules))

The dynamic rule that should be applied, see the section below, Dynamic_Rule UDR.

Final_Indication_Rule (Final_Indication_Rule (PCRF.Rules))

The final indication rule that should be applied, see the section below, Final_Indication_Rule UDR.



Note

The Charging rule only indicates one type of rule; static, dynamic or final indication, not a combination.

Below is a screenshot of the UDR Assistance displaying the Charging_Rule UDR:

Charging_Rule UDR

QoS_Information UDR

The QoS_Information UDR contains Quality of Service parameters according to 3GPP specifications TS 29.212 and TS23.203.

Field

Description

Field

Description

ID (int)

The unique ID of the quality of service.

Name (string)

The name of the quality of service.

APN_AGG_MBR_DL (long)

The maximum aggregated bit rate for downloading data to the APN (Access Point Name).

APN_Agg_MBR_UL (long)

The maximum aggregated bit rate for uploading data from the APN (Access Point Name).

ARP (Allocation_Retention_Priority (PCRF.Rules))

The priority of allocation and retention, the pre-emption capability and pre-emption vulnerability. This field is only applicable for Dynamic Rules.

GBR_DL (long)

The guaranteed bit rate for downloading data.

GBR_UL (long)

The guaranteed bit rate for uploading data.

MBR_DL (long)

The maximum bit rate for downloading data.

MBR_UL (long)

The maximum bit rate for uploading data.

QCI (int)

The Quality of Service Class Identifier identifies a set of QoS parameters that define the authorized QoS, excluding the applicable bitrates and ARP, for the bearer or service flow. The following values are defined:

  • 1 - Has priority 2 and is used for conversational voice services.

  • 2 - Has priority 4 and is used for conversational video (live streaming) services.

  • 3 - Has priority 3 and is used for real time gaming services.

  • 4 - Has priority 5 and is used for non-conversational video (buffered streaming) services.

  • 5 - Has priority 1 and is used for IMS signaling services.

  • 6 - Has priority 6 and is used for video (buffered streaming) and TCP-based (e g www, e-mail, chat, ftp, p2p file sharing, progressive video, etc) services.

  • 7 - Has priority 7 and is used for voice, video (live streaming), and interactive gaming services.

  • 8 - Has priority 8 and is used for video (buffered streaming), TCP-based (e g www, e-mail, chat, ftp, p2p file sharing, progressive video, etc) services.

  • 9 - Has priority 9 and is used for video (buffered streaming), TCP-based (e g www, e-mail, chat, ftp, p2p file sharing, progressive video, etc) services, for example.

Below is a screenshot of the UDR Assistance displaying the QoS_Information UDR:

QoS_Information UDR

Static_Rule UDR

Static rules are provisioned via the Gx interface and can be activated or deactivated at any time.



Field

Description

Field

Description

ID (int)

The unique ID of the static rule.

Rule_Name (string)

The name of the static rule.

Rule_Base_Name (string)

The base name of the rule which indicates the name of a pre-defined group of PCC rules. This field is not necessary if a Rule Name has been set.



Below is a screenshot of the UDR Assistance displaying the Static_Rule UDR:

Static_Rule UDR



Dynamic_Rule UDR

Dynamic rules are dynamically provisioned via the Gx interface. Dynamic PCC rules can be installed, modified and removed at any time.

For information about the fields in the Dynamic_Rule UDR, see specification TS 29.212 from 3GPP.

Below is a screenshot of the UDR Assistance displaying the Dynamic_Rule UDR:

Dynamic_Rule UDR

Final_Indication_Rule UDR

A Final Indication Rule is used to indicate when a subscriber should be redirected or blocked based on reaching a certain usage level. In the case of mobile data traffic control, this would be done by sending the information in the Gy-answer (as opposed to Gx, which is used for Static and Dynamic rules), in the Multiple-Services-Credit-Control field "Final-Unit-Indication", with the same fields populated as the fields in this table.

Field

Description

Field

Description

ID (int)

The unique ID of the final indication rule. The ID is only included as a key and will not be part of the MSCC.

Name (string)

The name of the final indication rule.

Rating_Group (int)

The rating group for the final indication rule.

Final_Unit_Action (int)

Indicates if redirection should be used. Possible values are 0 - Terminate, 1 - Redirect and 2 -Restrict Access.

Redirect_Address_Type (int)

The type of address used for the redirect messages; 0 - IPv4 Address, 1 - IPv6 Address, 2 - URL, or 3 - SIP URI.

Redirect_Server_Address (string)

The address the subscriber should be redirected to.

Filter_Id (list<string>)

The ID of the filter to be used.

Restriction_Filter_Rule (list<string>)

The Restriction_Filter_Rule to be used

Below is a screenshot of the UDR Assistance displaying the Final_Indication_Rule UDR:

Final_Indication_Rule UDR