Rules Data Model (2.3)

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

See APL - PCC Runtime Support (2.3) for further information about how to use the PCC.Rules UDRs with APL, and REST HTTP Interface (2.3) for information on how to access the PCC.Rules UDRs from the REST HTTP interface.

The main objects of PCRF.Rules are:

ObjectDescription

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

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

ID (int)

The unique ID of the rule.

Period (string)

The activity period that the rule should have, see Periods Data Model (2.3).

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 (2.3).

  • 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

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

Example Charging_Rule UDR

The following values:

ID=1
Name='PRIMARY'
Static_Rule=111
Dynamic_Rule=
Final_Indication_Rule=

ID=3
Name='SECONDARY'
Static_Rule=112
Dynamic_Rule=
Final_Indication_Rule=

ID=5
Name='REST'
Static_Rule=
Dynamic_Rule=
Final_Indication_Rule=200

will give the following setup:

  • The first charging rule, with ID 1 and name Primary, uses the static rule with ID 111.

  • The second charging rule, with ID 3 and name Secondary, uses the static rule with ID 112.

  • The third charging rule, with ID 5 and name Rest, uses the final indication rule with ID 200.

QoS_Information UDR

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

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

Example QoS_Information UDR

The following values:

ID=10 
Name='Quality A' 
APN_AGG_MBR_DL=32 
APN_AGG_MBR_UL=32 
GBR_DL=64 
GBR_UL=64 
MBR_DL=128 
MBR_UL=64 
QCI=7 
 
ID=20 
Name='Quality B' 
APN_AGG_MBR_DL=32 
APN_AGG_MBR_UL=32 
GBR_DL=64 
GBR_UL=64 
MBR_DL=128 
MBR_UL=128 
QCI=4

will give the following setup:

  • The maximum aggregated bit rate for both uploading and downloading data is 32 kbit/s for both QoS settings, Quality A and Quality B.

  • The guaranteed bit rate for both uploading and downloading data is 64 kbit/s for both QoS settings.

  • The maximum bit rate for uploading data is 64 kbit/s for Quality A and 128 kbit/s for Quality B.

  • The maximum bit rate for downloading data is 128 kbit/s for both QoS settings.

  • The first QoS setting uses Quality of Service Indicator 7, while the second uses Quality of Service Indicator 4.

Static_Rule UDR

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


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

Example Static_Rule UDR

The following values:

ID=111
Rule_Name='STATIC 1'

ID=112
Rule_Name='STATIC 2'

ID=113
Rule_Name='STATIC 3'

will give the following setup:

  • The three static rules; 111, 112 and 113, have the names STATIC 1, STATIC 2 and STATIC 3.


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

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

Example Final_Indication_Rule UDR

The following values:

ID=100 
Name='FIRST REDIRECT' 
Rating_Group=1 
Final_Unit_Action=1 
Redirect_Address_Type=2 
Redirect_Server_Address='http://example1.com' 
 
ID=200 
Name"'SECOND REDIRECT' 
Rating_Group=2 
Final_Unit_Action=1 
Redirect_Address_Type=2 
Redirect_Server_Address='http://example2.com'

will give the following setup:

  • The first rule, with ID 100 and name First Redirect, will use rating group 1 while the second rule, with ID 200 and name Second Redirect will use rating group 2.

  • Both rules will use redirect messages (indicated by setting Final_Unit_Action to 1).

  • The type of address used for the redirect messages is URL (indicated by setting Redirect_Address_Type to 2).

  • The subscribers adhering to the rule with ID 100 will be redirected to http://example1.com, while the subscribers adhering to the rule with ID 200 will be redirected to http://example2.com/.