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:


    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.


      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.

      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:


        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.

        Evaluation Order

        Order in which groups get evaluated, starting with 0 and going higher.

        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:


          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 will be stored in the database. It should start with alphanumeric characters, should be lowercase OR uppercase but not MixedCase, 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

          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.

          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:


            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:


              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:


                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:


                  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:


                    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:


                      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:


                        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:


                          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:


                            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:


                              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:


                                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   Select Commit and Publish.

                                Publish successful message is displayed.


                                Revert Changes

                                Perform the following steps to revert changes:


                                  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.