Skip Headers
Oracle® Communications Service Broker Policy Controller Implementation Guide
Release 6.1

Part Number E29455-01
Go to Documentation Home
Home
Go to Book List
Book List
Go to Table of Contents
Contents
Go to Feedback page
Contact Us

Go to previous page
Previous
Go to next page
Next
PDF · Mobi · ePub

2 Installing and Configuring Policy Controller

This chapter explains how to install and configure an Oracle Communications Service Broker Policy Controller (Policy Controller) implementation.

Policy Controller Hardware and Software Requirements

This section lists the hardware and software components that your Policy Controller implementation requires.

The list of hardware and software components that you need depends on the extent of your Policy Controller Implementation. Policy Controller itself is a Policy and Charging Rules Function (PCRF) software node, and you need to also obtain a Policy and Charging Enforcement Function (PCEF) software node. The remaining components depend on the services you intend to deliver to your subscribers. Depending on the extent of your implementation you may also need to obtain:

Any additional hardware and software components depend on your implementation's needs.

Installing and Deinstalling Policy Controller

You install Policy Controller using the Oracle Communications Service Broker Installation program. See Oracle Communications Service Broker Installation Guide for instructions on installing and deinstalling Policy Controller. During installation:

Creating and Starting a Domain and Managed Server for Policy Controller

For each Policy Controller installation create one or more managed servers and a domain. See the discussions on setting up a domain in Oracle Communication Service Broker Installation Guide for information about creating the domain, adding managed servers, and managed server starting those components.

Understanding Policy Controller Memory Requirements

Policy Controller requires a lot of memory to store subscriber data. It caches session and subscriber profile information to achieve a nearly-realtime response, and you need to reserve significant resources for it. Policy Controller's memory requirements are most effected by:

A good general rule is to reserve 4 KB of memory for each active subscriber session running any given time. The 4 KB is divided between in-memory space required for subscriber profile information, and Java heap memory for session information. The in-memory requirements are generally affected more by the number of active subscribers caching data, and the Java heap is generally affected more by the length of their sessions. As session length increases, so do Java heap requirements, and they can require 15-20 GB of space per blade to maintain high performance response. The large Java heap memory requirement are a challenge for the Java heap garbage collector. See "Configuring Java JVM Parameters" for guidelines for configuring your JDK heap size.

Configuring Java JVM Parameters

Tune your Java JDK garbage collection performance to reduce the time required to perform a full garbage collection cycle. Do not attempt to tune the JVM to minimize the frequency of full garbage collections, because this generally results in an eventual forced garbage collection cycle that may take up to several full seconds to complete.

The following examples list domain configuration settings for different Policy Controller configurations. Implementations that use service availability require more memory because of the additional data replication. See Oracle Communications Service Broker Installation Guide for details on the service availability and continuity options.

Example Configuration for a Unified Domain with Service Continuity

Table 2-1 lists Java JDK tuning settings for a domain using service continuity, in a clustered deployment (2 Sun Blade X6270 blades, each running two JVMs) with this expected load:

  • Total subscribers: 1 million/blade

  • Average Policy Controller session length: 30 minutes

  • Expected traffic throughput: 1,500 sessions/second/blade

  • JVM heap size: 14 GB

These settings generally work well in this environment. Adjust the following settings for your hardware and software configuration.

Table 2-1 JDK Parameters for a Unified Domain with Service Continuity

Category Setting

Memory and Garbage Collection Options

AXIA_OPTS="-d64 -XX:MaxPermSize=512m -XX:PermSize=512m" -Xms14g -Xmx14g -Xmn3g -XX:+UseCompressedOops -XX:+UseConcMarkSweepGC -XX:CMSInitiatingOccupancyFraction=75 -XX:+UseCMSInitiatingOccupancyOnly"

Application Settings

AXIA_OPTS="${AXIA_OPTS} -Dsubscriber.core.cache.mem.initial=2047"AXIA_OPTS="${AXIA_OPTS} -Doracle.ocsb.app.rcc.feature.pcrf.max.session.actors=7000" AXIA_OPTS="${AXIA_OPTS} -Dsubscriber.core.wb.high-units=10000 -Dsubscriber.core.wb.low-units=5000" AXIA_OPTS="${AXIA_OPTS} -Doracle.axia.util.executor.max_clean_time=1200000"


Example Configuration for Service Availability

Table 2-2 lists Java JDK tuning settings for a unified domain in a clustered deployment (2 Sun Blade X6270 blades, each running 3 JVMs) with this expected load:

  • Total subscribers 1 M per blade

  • Average Policy Controller session length: 30 minutes

  • Expected traffic throughput: 3,500 sessions/second/blade

  • JVM heap size: 17 GB

These settings work well in this environment. Adjust the following settings for your hardware and software configuration.

Table 2-2 JDK Parameters for a Unified Domain with Service Availability

Category Setting

Memory and Garbage Collection Options

AXIA_OPTS="-d64 -XX:MaxPermSize=512m -XX:PermSize=512m -Xms14g -Xmx14g -Xmn3g -XX:+UseCompressedOops -XX:+UseConcMarkSweepGC-XX:+UseCMSInitiatingOccupancyOnly"

Application Settings

AXIA_OPTS="${AXIA_OPTS} -Dsubscriber.core.cache.mem.initial=2047" AXIA_OPTS="${AXIA_OPTS} -Doracle.ocsb.app.rcc.feature.pcrf.max.session.actors=7000" AXIA_OPTS="${AXIA_OPTS} -Dsubscriber.core.wb.high-units=10000 -Dsubscriber.core.wb.low-units=5000" AXIA_OPTS="${AXIA_OPTS} -Doracle.axia.util.executor.max_clean_time=1200000"


Starting, and Configuring Policy Designer

This section explains how to start and configure Policy Designer. This section assumes that you have created a domain and managed server, as described in Oracle Communication Service Broker Installation Guide.

Starting Policy Designer

Use the following steps to start Policy Designer:

  1. Log on to the Service Broker system on which you created the Policy Controller domain.

  2. Start the domain (Administration Server) (this also starts the Policy Controller JETTY server):

    cd Oracle_home/ocsb61/admin_server
    ./start.sh domain_configuration_directory
    

    Where:

    Oracle_home is the Oracle home directory you defined when you installed Service Broker.

    domain_configuration_directory is the path to the domain configuration directory.

    Note:

    If you use basic authorization (axia.digest.auth=true in Oracle_home/ocsb61/admin_server/properties/admin.properties) you will be prompted for two sets of credentials to use when starting the Administration Console. The first set is required to access the Administration Console, and the second set is required to access the Policy Designer user interface.

    Note:

    The Policy Controller does not work with the standalone version of the Administration Console.
  3. Start the managed server you created during installation with these commands:

    cd Oracle_home/ocsb61/managed_server
    ./start.sh managed_server_name file:///domain_configuration_directory/initial.zip
    

    Where:

    Oracle_home is the Oracle home directory you defined when you installed Service Broker.

    managed_server_name is the name of the managed server file you created.

    domain_configuration_directory is the path to the domain configuration directory.

  4. Open a Web browser.

  5. Enter one of these Policy Designer URLs:

    (SSL off) https: // [ localhost | IP_address ] : port_number /policydesigner

    (SSL on) http: // [ localhost | IP_address ] : port_number /policydesigner

    Where:

    • IP_address is the IP address of the Service Broker server running Policy Controller.

    • port_number is the server port number to use. The defaults are 8090 (SSL off) and 8091 (SSL on). You can change the default port numbers. See "Setting the Policy Designer Port Number" for details.

    If you enabled basic authorization (axia.digest.auth=true in Oracle_home/ocsb61/admin_server/properties/admin.properties) you are prompted for the username and password that you entered when you created the Policy Controller domain.

    This example starts Policy Designer with SSL off on your local system using the default port number:

    http://localhost:8090/policydesigner
    

    Note:

    If SSL is off, use http, not https to avoid ssl_error_rx_record_too_long errors.

For information on changing the default port number, see "Setting the Policy Designer Port Number".

Setting the Policy Designer Port Number

The default Policy Designer uses port 8090 using HTTP, and 8091 using HTTPS. You can change this by following these steps:

  1. Open the common.properties file located in Oracle_home/admin_server/common.properties.

  2. Add one of the following entries:

    • If you do not use SSL:

      oracle.ocsb.app.rcc.pcrf.gui.port=port_number
      
    • If use SSL:

      pcrf.gui.http.port.secure=port_number
      

    Where port_number is the new port number to use.

  3. Restart the Administration Console.

    For details, see Oracle Communications Service Broker System Administrator's Guide.

Using the Policy Designer Accessibility Features

All Policy Designer interface windows include an Accessibility Preferences link that you use to access the interface's accessibility capabilities.

The accessibility options include these alternatives to the default browser preferences:

  • Screen reader - Puts the browser in screen reader mode.

  • High contrast - Adds a background color to make text easier to see.

  • Large Fonts - Increases the font size of all Policy Controller interface text.

Selecting Accessibility Features

To enable Policy Designer accessibility features:

  1. Start the Policy Design interface. See "Starting Policy Designer" for details.

  2. Click the Accessibility link in the upper right of your browser page with a mouse, or use the Ctrl-Alt-A keyboard shortcut.

    The Accessibility Preferences page appears.

  3. Click any combination of these accessibility check boxes to select the feature:

    • Screen reader

    • High contrast

    • Large fonts

  4. Click OK to make your changes take effect.

  5. Click Home to return to the Policy Designer interface.

Disabling the Policy Designer Automatic Start

By default, the Policy Designer process is started when you start the Service Broker domain that contains it. To prevent this automatic startup, use the following steps:

  1. Add this entry to the Oracle_home/admin_server/common.properties file:

    oracle.ocsb.app.rcc.pcrf.gui.disable=true
    

    A value of true disables the automatic startup. If this entry is false or missing, the Policy Designer starts automatically.

  2. Restart the Administration Console.

    For details, see Oracle Communications Service Broker System Administrator's Guide.

Configuring Policy Controller

This section explains the tasks necessary to configure Policy Controller for your implementation. The "Policy Controller Configuration Checklist" section servers as a guide to walk you through the process, and the sections that follow have details on the configuration tasks.

Policy Controller Configuration Checklist

This section explains how to configure a Policy Controller implementation. This section assumed that you have installed Policy Controller as described in Service Broker Installation Guide and created a domain for it as described in "Creating and Starting a Domain and Managed Server for Policy Controller".

Configuring a Policy Controller implementation involves these tasks:

There are additional configuration procedures in these chapters in this manual:

Configuring Your Diameter Traffic

To configure Diameter traffic for Policy Controller, complete these tasks which are explained in the following sections:

Configuring the SSU Diameter and Specify AF and PCEF Servers as Peers

This section assumes that you know details for of each of your PCEF and AF servers (host name, address, port no, protocol). The Service Broker Signaling Server Units Configuration Guide has details on the configuring the SSU Diameter. This section provides basic instructions.

Note:

You will also configure your online charging system and Service Profile Repository as Diameter peers when you configure them. See "Configuring Subscriber Profile and Charging Information" for details.

To configure the SSU Diameter for Policy Controller:

  1. Start the Administration Console.

    For details, see Oracle Communications Service Broker System Administrator's Guide.

  2. Navigate to Platform, OCSB, Signaling Tier, SSU Diameter, DIAMETER, then Diameter Configuration.

    The General subtab appears.

  3. Click Lock and Edit

  4. Configure these fields as explained in the discussion on configuring the Diameter Signaling Server Unit in the Service Broker Signaling Server Units Configuration Guide.

  5. Click the Peers subtab.

  6. Click Add to your AF or PCEF server as a peer.

    The New popup screen appears.

  7. Enter a name for the new SSU and click Apply.

  8. Select the new peer to configure it.

  9. Select True from the Allow Dynamic Peers menu.

  10. Enter a value for Peer Retry Delay (in seconds) and click Apply.

  11. Scroll down in the Peers pane and click New.

    The New popup screen appears.

  12. In the New popup screen, enter your AF or PCEF server identifying data:

    • Host - The host name of the server.

    • Address - the IP address of the server.

    • Port - A server port number to use on your PCEF.

    • Protocol - A service data flow protocol to use.

    • Watchdog Enabled - the True/False choices enable/disable the watchdog timer.

  13. Click Apply.

  14. Repeat steps 6 through 13 for each of your PCEF and AF servers.

  15. Click Commit to save your changes.

Configuring the SSU Diameter to Route PCEF and AF Service Data Flow

The Diameter SSU routing rules specify how the PCEF and AF server service data flow is routed through Policy Controller. Use the following steps to create these routing rules:

  1. Start the Administration Console.

    For details, see Oracle Communications Service Broker System Administrator's Guide.

  2. Navigate to Platform, OCSB, Signaling Tier, SSU Diameter, SSU Diameter, Routing, then Incoming Routing Rules.

  3. Click Lock and Edit.

  4. Click Add to create an Incoming Routing Rule for Gx traffic:

    The New popup window appears.

  5. Enter a name for the new routing rule and click Apply.

    The new routing rule appears and is highlighted.

  6. Edit these Incoming Routing Rules fields as necessary:

    • Name: Change if necessary.

    • Priority: Leave the 0 default priority.

    • Module Instance: Enter ssu:ocsb/pcrf.

  7. Click Apply.

  8. Click Add to create the Gx traffic routing criteria.

    The New popup window appears.

  9. Enter a name for the new routing rule and click Apply.

    The new routing rule appears and is highlighted.

  10. Enter the routing rule criteria for Gx traffic:

    • Name: Enter an informal name for the criteria.

    • Attribute: Select APPLICATION_ID from the dropdown list.

    • Value: Enter 16777238 to specify Gx service data flow.

      This value is the default for Gx traffic. Other values are also supported.

  11. Click Apply.

  12. Click Add to create an Incoming Routing Rule for Rx traffic.

    The New popup window appears.

  13. Enter a name for the new routing rule and click Apply.

    The new routing rule appears and is highlighted.

  14. Enter the routing rule criteria for Rx traffic.

    • Name: Change if necessary.

    • Priority: Leave the 0 default priority.

    • Module Instance: Enter ssu:ocsb/pcrf.

  15. Click the Incoming Routing Rule subtab to add Rx traffic routing criteria.

  16. Click New.

    The New routing popup window appears.

  17. Enter the routing rule criteria for the Rx traffic:

    • Name: Change if necessary.

    • Attribute: Select APPLICATION_ID from the dropdown list.

    • Value: Enter 16777236 to specify Rx service data flow.

  18. Click Apply to save your changes.

  19. Click Commit to save your changes.

Configuring Policy Controller System Parameters

This section lists the Policy Controller global parameters that you must approve or change before using Policy Controller.

This section assumes that you have acquired and configured a rating engine and PCEF, and know the values you use to indicate rating groups and PCC service identifiers.

Configuring Policy Controller Global Parameters

This section lists Policy Controller parameters that you set by using the Service Broker Administration Console.

The default Policy Controller global parameters are listed in Table 2-3.

Table 2-3 Default Policy Controller Global Parameter Settings

Global Parameter Default Value Data Type Description

Revalidation Time

14400000 (4 hours)

Milliseconds

The maximum time before your PCEF should trigger Policy Controller. This parameter also subscribes the Revalidation_Timeout trigger (See "About Event Triggers" for details). A value of 0 specifies no time limit.

Events to subscribe

See Oracle Communications Service Broker Policy Controller Protocol Implementation Conformance Statement for details for the list of default values.

Comma-separated list of integers

Specifies the list of 3GPP 29.211 event triggers to use. This field accepts the integer values that represent the Event-Trigger AVP. See the 3GPP 29.211 specification for a complete list. See "Using an Event Trigger to Change a PCC Profile" for a discussion of event triggers and "Add any Vendor-specific Values for Event-Trigger to Use as Event Triggers" for instructions on how add your own.

Primary Online Charging System address

None

URL

The primary online charging system address. Your PCEF attempts to send charging traffic to this server for charging first.

Secondary Online Charging System address

None

URL

The secondary online charging server address. Used if the primary server is unavailable.

Primary Offline Charging System Address

None

URI

The primary online collection server address. Policy Controller attempts to send collection traffic to this server for charging first.

Secondary Offline Charging System Address

None

URL

The secondary online collection server address. Used if the primary collection server is unavailable.

Default Online Charging Method

None

Boolean

Select TRUE to allow online charging; FALSE to disallow it. No entry directs Policy Controller to use your PCEF's default charging method.

Default Offline Charging method

None

Boolean

Select TRUE to allow offline charging; FALSE to disallow it. No entry directs Policy Controller to use your PCEF's default charging method

Install Default Plan

True

Boolean

Whether to automatically install and use the default PCC profile if no other plan applies.


Change these settings as necessary using the PCRF Global Parameters tab of the Service Broker Administration Console:

  1. Start the Administration Console.

    For details see Oracle Communications Service Broker Administrator's Guide.

  2. Navigate to PCRF, OCSB, Execution Blocks, then System Parameters.

  3. Click the PCRF System Parameters tab, then the Global Parameters subtab.

  4. Click Edit.

  5. Enter the required new values in the fields displayed. See Table 2-3 for details on the Global parameter settings.

  6. Click Apply.

  7. Click Commit.

Add any Vendor-specific Values for Event-Trigger to Use as Event Triggers

Event-Trigger is a Gx AVPs that directs Policy Controller to reinterpret PCC and ADC profiles when received in a session. See "Using Vendor-specific and Default Gx Event Triggers to Reinterpret Rules" for details on how to use Event-Trigger in Policy Controller rules.

See "Supported Gx Event-Trigger Event Values" for the list of the default event triggers supported by Policy Controller. The instructions in this section explain how to add up to ten additional vendor-specific Gx AVPs to use as event triggers. For example, if your PCEF implementation uses custom values for the Event-Trigger AVP you could add them as event triggers here.

To add vendor-specific AVPs to the event trigger list the Policy Controller uses:

  1. Start the domain and managed server.

  2. Start the Administration Console.

    For details see Oracle Communications Service Broker Administrator's Guide.

  3. Navigate to PCRF, OCSB, Execution Blocks, then System Parameters.

  4. Click the PCRF System Parameters tab, then the Oracle Event Triggers subtab.

  5. Click Edit.

  6. Enter values in the unused OCPC_GENERIC_EVENT fields.

  7. Click Apply.

  8. Click OK to make your changes take effect.

Configuring the Policy Controller Session Guard Timers

Policy Controller uses Gx and Rx session guard timers (Tcc) and closing guard timers (Tsc) protect Policy Controller service data flow session validity by avoiding dangling sessions. In the event that any part of the PCEF implementation is not working correctly, the Gx and Rx timers ensure that a session is correctly terminated. The default settings work for a test and evaluation system and may also work for a production implementation. Configure them to fit your implementation's requirements.

You configure these timers independently to prevent problems caused by missing messages expected from network nodes, which orphan/dangling sessions. The Gx and Rx Session Guard timers set a time limit for expected session messages. If the Gx or Rx Session Guard timer limit runs out, the appropriate Gx or Rx Session Closing Guard Timer starts and attempts to close the session cleanly. If it cannot close the session cleanly it closes out the session after the time limit expires.

Table 2-4 lists the timers that control and protect Rx and Gx traffic.

To change the Policy Controller Rx and Gx default timer values:

  1. Start the Administration Console.

    For details see Oracle Communications Service Broker Administrator's Guide.

  2. Navigate to PCRF, OCSB, Execution Blocks, then System Parameters.

  3. Click the PCRF System Parameters tab, then the Timers subtab.

  4. Click Lock & Edit.

  5. Enter new parameters in the parameter text fields. See Table 2-4 for details on the individual timers.

    Table 2-4 RX and Gx Timer Names, Default Values, and Descriptions.

    Timer Alternate Timer Name Default Value (ms) Description

    Gx Session Guard Timer

    Gx Tcc

    36000000

    Guards each Gx session by setting a time limit for pending Gx messages. This timer is started each time a Gx request (CCA-Initial) arrives at the Policy Controller, and is canceled when the last response (CCA-Terminal) is sent. Each CCA-Update resets this timer.

    Gx Session Closing Guard Timer

    Gx Tsc

    5000

    Sets a time limit for the Gx session termination process. If the Gx Session Guard Timer expires, Policy Control starts this timer and sends an RAR with a Session-Release-Cause of UNSPECIFIED_REASON. If an answering RAA arrives, Policy Controller waits for a CCR-Terminate, and the responds with CCA-Terminate. In any case, the session is closed when the time limit is reached.

    Rx Session Guard Timer

    Rx Tcc

    36000000

    Guards each Rx session by setting a time limit for pending Rx messages. This timer starts when the first AAA message is sent and canceled when the STA is sent. This timer is reset each time an AAA/AAR combination is sent and received.

    Rx Session Closing Guard Timer

    Rx Tsc

    5000

    Sets a time limit for the Rx session termination process. If the Rx Session Guard Timer expires, Policy Controller send an ASR message with an Abort Cause of INSUFFICIENT_SERVER_RESOURCES. If an ASA message is returned, Policy Controller waits for the STR message from the network node, and then responds with an STA and cleans up the session. If no ASA is received before this timer expires the session is closed.


  6. Click Apply.

  7. Click Commit to make your changes take effect.

About Execution Blocks

The Default Execution Blocks tab (under the PCRF tab of the Administration Console) is reserved for Oracle use.

Configuring Data Storage for Policy Controller

Policy Controller requires that you set up persistent data storage using the Data Storage feature. For information on setting up data storage, see the discussion on configuring data storage in Oracle Communications Service Broker Installation Guide.

Configuring Your PCEF Server

This section explains the steps necessary to make your PCEF server work with Policy Controller.

Configuring Your AF Server

You must set up a Diameter link between Policy Controller and any AFs that you use. You set up the Policy Controller end of the link using the SSU Diameter. See "Configuring the SSU Diameter and Specify AF and PCEF Servers as Peers" for details if you haven't already. See your AF product documentation for details on setting up the AF end of the link, and any other setup steps necessary.

(Optional) Configuring Policy Controller to Send SMS Messages

Configuring Policy Controller to sent SMS messages includes these configuration tasks:

(Optional) Configuring Custom Event Triggers

If your implementation requires support for nonstandard Diameter AVPs, add them now. For example if your PCEF or AF use nonstandard AVPs, you must at least add them to the Service Broker Diameter stack so that they do not cause error messages when they arrive. You can also use them as triggers for actions in Policy Designer rules. See "Adding Custom Diameter AVPs" details on adding custom AVPs.

(Optional) Configuring the Operation Timeout Setting

This timer sets the amount of time (in milliseconds) that Policy Controller waits for synchronous traffic responses sent by Policy Controller and returned by the SPR you use. The default value of 500 milliseconds is sufficiently large that only the slowest network connections, or a pressing need to receive responses from absolutely all messages may require a higher value.

Indications that you must change this setting are frequent error messages like these:

2012-11-08 06:07:45,201 ERROR wm-diameter_inbound-1 SynchronousUserProfileServiceImpl - Operation timed out.1352347664698
2012-11-08 06:07:45,202 ERROR wm-diameter_inbound-1 PcrfHash - Failed to retrieve subscriber profile for subscriber: 622|END_USER_E164

Changing the Operation Timeout Settings

To change the operation timeout settings:

  1. Start the Administration Console.

    For details see Oracle Communications Service Broker Administrator's Guide.

  2. Navigate to PCRF, OCSB, Domain Management, Subscriber Store, then Core Service.

    The Core Service subtab appears:

  3. Enter a new value in the Operation Timeout box.

    The default setting is 500 milliseconds.

  4. Click Apply.

(Optional) Supporting Explicit Rule Removal

In the Policy Controller 6.0 release this product did not use the implicit profile removal strategy that it does now. The 6.0 release used explicit rule removal. that is, your rules needed to specifically remove any profiles that you did not want applied using Remove_PCCProfile actions. Explicit rule removal is generally seen as less efficient and more error prone than the implicit rule removal, but you can use it if your implementation requires it.

See "Understanding How Policy Controller Makes Policies Take Effect" for details on the explicit rule removal strategy that Policy Controller now uses.

Note:

Only the 6.0 rule strategy (explicit rule removal) is supported. Using 6.0 rules with this release is not supported.

To use rules with the explicit rule removal strategy:

  1. Start the Administration Console.

    For details see Oracle Communications Service Broker Administrator's Guide.

  2. Click Lock & Edit.

  3. Navigate to OCSB, Execution Blocks, System Parameters, PCRF System Parameters, then Global Parameters.

  4. Set the Disable Implicit Rule Actions parameter to True.

    Note:

    Do not make any other changes in the Execution Blocks area. The other settings are reserved for Oracle use.
  5. Click Apply.

  6. Click Commit.