Configuring CPS DRA

Policy Builder Overview

CPS DRA allows service providers to create policies that are customized to their particular business requirements through the Policy Builder interface which is a web-based application with a graphical user interface (GUI) that enables rapid development of innovative new services.

Policy Builder page supports both configuration of the overall CPS cluster of virtual machines (VMs) as well as the configuration of services and advanced policy rules.

System Configuration

You need to define a system as it represents the customer deployment. Each system contains one or more clusters that represent a single high availability site environment. A cluster is used to define configurations related to the blades and shares the same set of policy directors.

In Policy Builder, the Environment specific data section displays a list of system configurations that enables you to perform create, read, update, and delete (CRUD) operations and to create clusters which can further overwrite and customize system configurations.

Configure System

Perform the following steps to configure a system:

Procedure


Step 1

In CPS DRA, navigate to Policy Builder.

Step 2

Select Systems under Reference Data.

Step 3

Enter the values in each field as described in the following table:

Table 1. Configure System Parameters

Field

Description

Name

Name of the CPS system.

Description

Description of the entire system.

Session Expiration (hours)

If no messages are received in x hours, the session is removed.

Default value is 8.

Session Expiration (minutes)

If no messages are received in x minutes, the session is removed.

Default value is 0.

Timeout For Unknown Session

Time in minutes that CPS takes to keep a session alive after the subscriber logs off. The other network entities involved in the session close the session.

Default value is 0.

Timeout For Soft Delete

Time in seconds in which a soft delete session is maintained for a CPS session after the session ends.

Default value is 30.

Enable Multi Primary Key

Select this check box to allow two primary keys to be utilized by maintaining a map of each separate primary key and storing the true multi-primary key as a UUID related to the two maps. Changing this setting has a negative performance impact. Keep the Enable Multi Primary Key unchecked.

Default is unchecked.

Step 4

Click Save.


Add Clusters

After system configuration, you can add clusters.

Procedure


Step 1

To add clusters, click Add Clusters.

Step 2

Enter the values in each field as described in the following table:

Table 2. Cluster Parameters

Field

Description

Name

Name of the cluster.

Description

Brief description of the cluster.

DB Write Concern

Determines the write behavior of sessionMgr and for the error exceptions raised.

Default option is OneInstanceSafe.

Failover SLA (ms)

Used to enter the duration (in milliseconds) to wait before starting failover database handling.

Replication Wait Time (ms)

Specifies a time limit, in milliseconds. This parameter is applicable only if you select TwoInstanceSafe in Db Write Concern.

Causes write operations to return with an error after the specified limit, even if the required write concern eventually succeeds. When these write operations return, MongoDB does not undo successful data modifications performed before the write concern exceeds the replication wait time limit. The time is in milliseconds.

Trace Database Size (MB)

Determines the size in MegaBytes of the policy_trace database capped collection.

Default value is 512.

Min Key Cache Time (minutes)

The minimum amount of time in minutes to keep a secondary key for a session.

Default value is 2000.

Max Timer TPS

Default value is 2000.

Re-evaluation diffusion buckets

The number of batches or buckets into which CPS will divide the transactions to be processed when the rate limiting TPS function of CPS is triggered. The rate limiting feature is defined in the Max Timer TPS field.

Default is 50 buckets.

Re-evaluation diffusion interval (ms)

Defines the delay before processing the next bucket. Enter the sum of all the delays between all the buckets.

Assuming 50 re-evaluation buckets are configured (by default), the default interval of 20000 milliseconds will introduce a delay of 408 milliseconds before proceeding with the next bucket of transactions.

bucket_size-1 / interval = delay between buckets

50-1 / 20000 = 408

Default is 20000 milliseconds

Broadcast Message Wait Timer (ms)

The amount of time in milliseconds for the Policy Engine to wait between sending each Broadcast Policy Message.

Default value is 50.

Max Sessions Per Shard

This is the maximum number of shard per session.

Disable Secondary Key Full Scan DB

Enable or disable full scan for secondary key database lookups. By default, the secondary key database lookups is enabled.

Disabling secondary key database lookups helps in reducing PCRF processing latencies.

Lookaside Key Prefixes

Added to improve Gx/Rx lookup and caching performance.

Key Prefix

To improve Gx/Rx lookup and caching performance, you can add the lookaside key prefixes.

For more information, see Cisco Policy Suite Mobile Configuration Guide.

Admin Database

Shard Configuration

Primary IP Address

The IP address of the Session Manager database that holds session information for Cisco Policy Builder and Cisco Policy Server.

Secondary IP Address

The IP address of the database that provides fail over support for the primary database.

This is the mirror of the database specified in the Primary IP Address field. Use this only for replication or replica pair's architecture. This field is present but deprecated to maintain downward compatibility.

Port

Port number of the database for Session data. By default, the value is 27717.

End Point Configurations

Shard Configuration

Primary IP Address

The IP address of the Session Manager database that holds session information for Cisco Policy Builder and Cisco Policy Server.

Secondary IP Address

The IP address of the database that provides fail over support for the primary database.

This is the mirror of the database specified in the Primary IP Address field. Use this only for replication or replica pair's architecture. This field is present but deprecated to maintain downward compatibility.

Port

Port number of the database for Session data. By default, the value is 27717.

Backup DB Monitor Interval In Sec

Used in thread which updates the primary balance DB (when primary balanceDB is available after fail over) with BackupBalance db records.

Default value is 3 sec.

Rate Limit

Used to control the TPS (with how much TPS reconciliation should take place once primary balance db is up).

Trace Database Configurations

Shard Configuration

Primary IP Address

The IP address of the sessionmgr node that holds trace information which allows for debugging of specific sessions and subscribers based on unique primary keys.

Secondary IP Address

The IP address of the database that provides fail over support for the primary database.

This is the mirror of the database specified in the Primary IP Address field. Use this only for replication or replica pair's architecture. This field is present but deprecated to maintain downward compatibility.

Port

Port number of the database for Session data. By default, the value is 27717.

Backup DB Monitor Interval In Sec

Used in thread which updates the primary balance DB (when primary balanceDB is available after fail over) with BackupBalance db records.

Default value is 3 sec.

Rate Limit

Used to control the TPS (with how much TPS reconciliation should take place once primary balance db is up).

Data Center Parameter

Deprecated

Common Time Changes

Deprecated

Step 3

Click Save.

For field descriptions of system configuration templates, refer to Plug-in Configuration in CPS vDRA Configuration Guide.


Custom Reference Data Configuration

Custom Reference Data Schemas enables you to define custom derived data for installation, to make decisions based on that data and includes the following options:

  • Search Table Groups - Enables logical grouping of multiple customer reference data tables.

  • Custom Reference Data Tables - Basic tables without search functionality.

Create Search Table Group

Perform the following steps to create a search table group:

Procedure


Step 1

To create a search table group, click Search Table Group.

Step 2

Enter the values in each field as described in the following table:

Table 3. Search Table Group Parameters

Field

Description

Name

Name of the search table group that is stored in the database.

The name can contain alphanumeric characters but must start with alphabets, can be either lowercase or uppercase, but not mixed cases. Special characters are not allowed except underscore. Use underscore character "_" to separate words.

Examples: logical_apn, no_spaces, logical_apn2

Non-examples: logicalAPN, 2logicalAPN

Additionally, a name must have a prefix. The prefix can be any alphanumeric string that starts with an alphabet. It can be the name of project, customer, etc.

The prefix is mandatory for vDRA where some CRD table are included by default in the ISO file. To avoid any duplicate names, a prefix is required.

Example: fn_logical_apn where fn is a prefix

Evaluation Order

Order in which groups are evaluated. Evaluation order value is in ascending order starting with 0.

Note

 

Search table groups and their respective CRD tables are listed based on the evaluation order value. If the evaluation order value is the same for two or more tables, then they are listed alphabetically.

Result Columns

These are the AVPs that will be added into processing. These need to be mapped to be the same as values from underlying tables. This allows populating the same AVPs from different tables.

Name

Name of the AVP. It should start with alphanumeric characters, should be lowercase, and should not start with numbers, no special characters are allowed, use "_" to separate words. For example, logical_apn = GOOD, logicalAPN = BAD, no_spaces

Display Name

More human readable name of the AVP.

Use In Conditions

Represents the availability of the row for conditions in Policies or Use Case Templates. There is a performance cost to having these checked, so it is recommended to uncheck unless they are required.

Default Value

The default value if no results are found from a Customer Reference Data Table.

Table Search Initiators

This section controls whether or not the Search Table Group and all tables below will be executed.

Name

Name of the table search initiators.

Step 3

Click Save.


Create Custom Reference Data Tables

Perform the following steps to create custom reference data tables:

Procedure


Step 1

To create custom reference data tables, click Custom Reference Data Tables.

Step 2

Enter the values in each field as described in the following table:

Table 4. Custom Reference Data Table Parameters

Field

Description

Name

Name of the table that is stored in the database.

The name can contain alphanumeric characters but must start with alphabets, can be either lowercase or uppercase, but not mixed cases. Special characters are not allowed except underscore. Use underscore character "_" to separate words.

Examples: logical_apn, no_spaces, logical_apn2

Non-examples: logicalAPN, 2logicalAPN

Additionally, a name must have a prefix. The prefix can be any alphanumeric string that starts with an alphabet. It can be the name of project, customer, etc.

The prefix is mandatory for vDRA where CRD tables are included by default in the ISO file. To avoid any duplicate names, a prefix is required.

Example: fn_logical_apn where fn is a prefix

Display Name

Name of the table that will be displayed in Control Center.

Cache Results

Indicates if the tables should be cached in memory and should be checked for production.

Activation Condition

Custom Reference Data Trigger that needs to be true before evaluating this table. It can be used to create multiple tables with the same data depending on conditions or to improve performance if tables do not need to be evaluated based on an initial conditions.

Svn Crd Data

When enabled, indicates that the CRD table is an SVN CRD table and CRD data for the table is fetched from CRD CSV file present in SVN data source.

When disabled, indicates that the CRD table data needs to be fetched from Mongo database.

Columns

Name

asdf;lkj

Name of the column in the database. It should be unique else an error will be thrown.

Display Name

More readable display name.

Use In Conditions

Represents the availability of the row for conditions in Policies or Use Case Templates. There is a performance cost to having these checked, so it is recommended to uncheck unless they are required.

Type

Determines the values in the control center as described below:

  • Text: Value can be any character. For example, example123!.

  • Number: Value should be a whole number. For example, 1234.

  • Decimal: Value can be any number. For example, 1.234.

  • True/False: Value can be true or false. For example, true.

  • Data: Value should be a date without time component. For example, May 17th 2020.

  • DateTime: Value should be a date and time. For example, May 17th, 2020 5:00pm.

Key

Indicates that this column is all or part of the key for the table that makes this row unique. By default, a key is required. Keys also are allowed set the Runtime Binding fields to populate this data from the current message/session. Typically, keys are bound to data from the current session (APN, RAT Type) and other values are derived from them. Keys can also be set to a value derived from another customer reference data table.

Required

Indicates whether this field will be marked required in Control Center. A key is always required.

Column Details

Valid

All

All values are allowed in control center.

List of Valid

A list of name/display name pairs that will be used to create the list. Valid values can also contain a name which will be the actual value of the column and a display value which allows Control Center to display an easier to use name.

Name

The name of the column in the database.

Display Name

Readable display name.

Validation

Validation used by Control Center

Regular Expression

The Java regular expression that will be run on the proposed new cell value to validate it.

In CPS 22.2.0 and later releases, vDRA supports validation of IPv6 addresses:

  • Validates whether the starting IPv6 address is less than the ending IPv6 address.

  • Validates name and description of the zone.

  • During multi_table update if any row gets failed due to conflict then entire CRD table is not updated.

  • Displays a warning message after updating CRD successfully.

Regular Expression Description

A message to the user indicating what the regular expression is trying to check.

Runtime

Which row match when a message is received.

None

-

Bind to Subscriber AVP

This pulls the value from an AVP on the subscriber. It will also pull values from a session AVP or a Policy Derived AVP.

Bind to Session/Policy State

This pulls the value from a Policy State Data Retriever which knows how to retrieve a single value for a session.

Bind to a result column from another table

This allows the key to be filled out from a columns value from another table. This allows 'normalizing' the table structure and not having on giant table with a lot of duplicated values.

Bind to Diameter request AVP code

This allows the key be filled out from an AVP on the diameter request.

Matching Operator

This allows the row to be 'matched' in other ways than having the value be 'equals'. Default value is equals.

  • eq: Equal

  • ne: Not Equal

  • gt: Greater than

  • gte: Greater than or equal

  • lt: Less than

  • lte: Less than or equal

Step 3

Click Save.


Diameter Configuration

CPS DRA supports the following Diameter Applications:

  • Gx Application

  • Gy Application

  • Rx Application

  • Sd Application

For more information about Diameter configuration, see the CPS vDRA Configuration Guide.

Add Gx Application

Perform the following steps to add Gx application:

Procedure


Step 1

In CPS DRA, navigate to Policy Builder.

Step 2

Click Diameter Applications.

Step 3

To add a Gx application, click Gx Application.

Step 4

Enter the values in each field as described in the following table:

Table 5. Gx Application Parameters

Field

Description

Name

Name of the Gx application.

Application Id

16777238, 3GPP specified Application Identifier for Gx interface.

Vendor Ids

Vendor Identifiers that are required to be supported on Gx interface.

Tgpp Application

When selected it indicates this is a 3GPP defined application interface.

Application Route

Name

Identifier of the route.

Priority

Indicates the priority of the route.

Command Code

Indicates value of command code AVP within the message.

Request Type

Indicates if the Credit Control Request type is Initial (1)/Update (2) or Terminate (3).

Destination Host

When selected it indicates the message will contain a Destination-Host.

Action Tables

Identifies the request routing table for this interface and message.

Step 5

Click Save.


Add Gy Application

Perform the following steps to add Gy application:

Procedure


Step 1

In CPS DRA, navigate to Policy Builder.

Step 2

Click Diameter Applications.

Step 3

To add a Gy application, click Gy Application.

Step 4

Enter the values in each field as described in the following table:

Table 6. Gy Application Parameters

Field

Description

Name

Name of the Gy application.

Application Id

4, 3GPP specified Application Identifier for Gy interface.

Vendor Ids

Vendor Identifiers that are required to be supported on Gy interface.

Tgpp Application

When selected it indicates this is a 3GPP defined application interface.

Application Route

Name

Identifier of the route.

Priority

Indicates the priority of the route.

Command Code

Indicates value of command code AVP within the message.

Request Type

Indicates if the Credit Control Request type is Initial (1)/Update (2) or Terminate (3).

Destination Host

When selected it indicates the message will contain a Destination-Host.

Action Tables

Identifies the request routing table for this interface and message.

Step 5

Click Save.


Add Rx Application

Perform the following steps to add Rx application:

Procedure


Step 1

In CPS DRA, navigate to Policy Builder.

Step 2

Click Diameter Applications.

Step 3

To add a Rx application, click Rx Application.

Step 4

Enter the values in each field as described in the following table:

Table 7. Rx Application Parameters

Field

Description

Name

Name of the Gy application.

Application Id

16777236, 3GPP specified Application Identifier for Rx interface.

Vendor Ids

Vendor Identifiers that are required to be supported on Gy interface.

Tgpp Application

When selected it indicates this is a 3GPP defined application interface.

Application Route

Name

Identifier of the route.

Priority

Indicates the priority of the route.

Command Code

Indicates value of command code AVP within the message.

Request Type

Indicates if the Credit Control Request type is Initial (1)/Update (2) or Terminate (3).

Destination Host

When selected it indicates the message will contain a Destination-Host.

Action Tables

Identifies the request routing table for this interface and message.

Step 5

Click Save.


Add Sd Application

Perform the following steps to add Sd application:

Procedure


Step 1

In CPS DRA, navigate to Policy Builder.

Step 2

Click Diameter Applications.

Step 3

To add a Sd application, click Sd Application.

Step 4

Enter the values in each field as described in the following table:

Table 8. Sd Application Parameters

Field

Description

Name

Name of the Gy application.

Application Id

16777303, 3GPP specified Application Identifier for Sd interface.

Vendor Ids

Vendor Identifiers that are required to be supported on Gy interface.

Tgpp Application

When selected it indicates this is a 3GPP defined application interface.

Application Route

Name

Identifier of the route.

Priority

Indicates the priority of the route.

Command Code

Indicates value of command code AVP within the message.

Request Type

Indicates if the Credit Control Request type is Initial (1)/Update (2) or Terminate (3).

Destination Host

When selected it indicates the message will contain a Destination-Host.

Action Tables

Identifies the request routing table for this interface and message.

Step 5

Click Save.


Diameter Routing

Diameter request message routing is done via realms and applications. A Diameter message that is forwarded by Diameter agents (proxies, redirects or relays) must include the target realm in the Destination-Realm AVP and one of the application identification AVPs (Auth-Application-Id/Acct-Application-Id/Vendor-Specific-Application-Id). The realm can be retrieved from the User-Name AVP, which is in the form of a Network Access Identifier (NAI). The realm portion of the NAI is inserted in the Destination-Realm AVP. Diameter agents have a list of locally supported realms and applications, and can have a list of externally supported realms and applications.

Routing AVP definitions links the different Application Routing tables to required CRD tables and supports the following applications:

  • Gx Application

  • Rx Application

  • Sd Application

The following parameters can be configured under Routing AVP Definitions:
Table 9. Routing AVP Definition Parameters

Parameter

Description

Name

Name of the application.

Routing Avp Lookup

List of search table groups to perform routing AVP lookup. The AVPs from incoming messages will be looked up to match the rows of the CRD tables referenced by the search table groups listed here. For more information, see CPS vDRA Configuration Guide.

CPS Service Configuration

The Import/Export option enables you to perform the following operations:

  • Export CPS Service Configuration into a single file.

  • Import CPS Service Configuration to another environment.

For more information, see Export and Import Service Configurations in CPS Operations Guide.

View Versioned Custom Reference Data Tables

You can view the SVN CRD data of a specific versioned CRD table under the Versioned Custom Reference Data option. The versioned CRD tables represents a combined list of custom reference data tables present under Custom Reference Data tables and different Search Table Groups whose Svn Crd Data checkbox is enabled.

View Details of Versioned CRD Tables

Perform the following steps to view the CRD data of a versioned CRD table:

Procedure


Step 1

Navigate to Versioned Custom Reference Data under Policy Builder.

Step 2

To view details, select a versioned CRD table listed.

The versioned CRD table details is displayed.


Import Data of Versioned CRD Tables

Perform the following steps to import CRD data of a versioned CRD table:

Procedure


Step 1

Navigate to Versioned Custom Reference Data under Policy Builder.

Step 2

Click Import option provided against the CRD table whose data you want to import.

The File to Import dialog box is displayed from where you can select a CSV file containing CRD data to be imported.

Step 3

Select a file.

Step 4

After the file is loaded, select Import.

File imported success message is displayed.


View Graphical Illustration of CRD Tables

Experimental CRD visualization option enables users to view Search Table Group relationships graphically. The nodes displayed are Search Table Groups and the links show where column data for a search table group is pulled from another table with the "Bind to a result column from another table" setting.

You can select an STG element, view its details in the Selected Info dialog box and save the layout.

STG displays the following information:

  • Layout nodes.

  • Switched display of STG elements to list STG result columns instead of CRD Columns.

  • Indicates columns in CRD tables under STG displaying ‘keys’ (key symbol) or ‘required’ (*).

  • Indicates where columns get their values from such as subscriber AVP, other CRD column, and session data field.

View Details of STG Element

Perform the following steps to view details of the STG element:

Procedure


Step 1

In CPS DRA, navigate to Policy Builder.

Step 2

Select Experimental CRD visualization under Policy Builder.

Step 3

To view details, select an STG element.

The following details are displayed:
Table 10. STG Element Details

Field

Description

STG Name

Name of the search table group.

STG Columns

Search table group columns.

Child Custom Reference Data Tables

Child custom reference data tables.


View Repository Details

Policy Builder displays an option that enables you can view a list of repositories as follows:

  • Select Repository to navigate repositories list page, to view repository details and to reload configurations of the selected repository

  • Select the dropdown to view the available repositories.

To switch to a new repository by selecting a repository from the dropdown list, user will have to re-login to authenticate the user with the selected repository.

The following table describes the repository details:
Table 11. Repository Details

Field

Description

Name

Name of the repository.

URL

URL of the branch of the version control software server that are used to check in this version of the data.

SVN Username

Username that is configured to view Policy Builder data.

Temp Directory

Temporary working local directory for the policy configurations.

Reload Repository

Select to reload the repository from the file system.

Note

 
Reload link is available only when the repository matches the selected (working) repository.

Add New Repository

Perform the following steps to add a new repository:

Procedure


Step 1

In CPS DRA, navigate to Policy Builder Overview.

A Choose Policy Builder Data Repository dialog box is displayed.

Step 2

Click Add Repository link.

An Add Repository dialog box is displayed with the following fields/URL:

Fields

Description

Name

Name of the repository.

URL

URL of the branch of the version control software server that is used to check in this version of the data.

Local Directory

Local directory for the policy configurations.

The standard path for Local Directory is /var/broadhop/pb/workspace/tmp-repository_name.

Step 3

Enter valid values.

Note

 
If the mandatory fields are not entered, an error message is displayed.

Step 4

Click OK.

  1. After entering values in the repository fields, the progress bar should display and hide when the response from API is returned.

  2. If there is an error response from the API, it should be displayed in the error modal. On closing the error modal the add repository modal with the old values is displayed.


Select Repository

When you select Policy Builder option in the CPS DRA interface, a Choose Policy Builder Data Repository dialog box is displayed which enables you to select a repository.


Note


The dialog box to select a repository is displayed only if you have not loaded any repository earlier. In case any error occurs while loading the available repositories, an error dialog is displayed. When you click Close, the DRA landing page is displayed.

Perform the following steps to select a repository:

Procedure


Step 1

In CPS DRA, navigate to Policy Builder Overview.

A Choose Policy Builder Data Repository dialog box is displayed.

Step 2

Click the Select Repository drop-down.

Step 3

Select a repository from the drop-down list.

Step 4

Click Done.

The selected repository is loaded.

Note

 
If you click Cancel, the application is redirected to the DRA landing page as there is no repository loaded.

Switch Repository

Perform the following steps to switch repositories:

Procedure


Step 1

In CPS DRA, navigate to Policy Builder Overview.

Step 2

Select the Switch Repository icon.

A Choose Policy Builder Data Repository dialog box is displayed.

Note

 
The repository which is currently loaded is displayed as selected in the repository drop-down.

Step 3

Click the Select Repository drop-down.

Step 4

Select a repository from the drop-down list.

Step 5

Click Done.

The selected repository is loaded.

Note

 
You are notified with appropriate error messages during switching repositories in the following scenarios:
  • Failure from API end.

  • When SVN is down.

  • When the request gets timed out.


Publish Configuration Changes

To put changes into effect and have the Cisco Policy Builder server recognize the configuration changes made in your client session, use the Publish option and save the changes to the server repository.

Publish enables you to publish or revert all the changes made in the Policy Builder.

For more information on Publishing operations, see CPS Mobile Configuration Guide.

Publish Changes

Perform the following steps to publish changes:

Procedure


Step 1

In CPS DRA, navigate to Policy Builder.

Step 2

Select Publish.

Step 3

Enter a commit comment.

Step 4

Review the changes displayed under Changes to commit.

Step 5

Click the Publish To drop down and select the Publish Repository.

Note

 
The Publish to drop down points to CPS server SVN configurations repository where CPS server polls for SVN changes. After receiving the notification, CPS server will check out the latest configurations from SVN.

Step 6

(Optional) Select Cancel to cancel the changes.

Step 7

Select Commit .

Saves changes only to the SVN repository. After saving is complete the Preview Changes button gets enabled.

The Preview Changes button shows changes between the SVN repository and RUN repository. If changes are appropriate, then, theAre you okay with changes check box is enabled.

If you select the Are you okay with changes check box the Publish button is enabled. Click Publish to publish all changes.


Revert Changes

Perform the following steps to revert changes:

Procedure


Step 1

In CPS DRA, navigate to Policy Builder.

Step 2

Select Publish.

Step 3

Review the changes displayed under Changes to commit.

Step 4

Click Revert All Changes.


View Notifications

You can view notifications regarding various stages of all CPS products by selecting the Alert option provided in the toolbar.

Perform the following steps to view notifications:

Procedure


Step 1

Click Alert.

A notification message is displayed.

Step 2

Click Accept.

Note

 
  • After the notification is accepted, the toolbar reverts to the default color.

  • If the system upgrade deadline is approaching, the accept option is not displayed and the toolbar continues to display the alert link and notification.