User Guide 21/1553-AXB 901 33/7 Uen A

Configuration Guide for Integration with OCS for Spending Limit Reporting (Sy)
Ericsson Service-Aware Policy Controller

Contents


1 Configuration and Provisioning Overview

Next figure, shows the main parts related to configuration and provisioning in the SAPC.

Figure 1   Configuration and Provisioning Overview

The purpose of this document is to provide a guideline to configure Online Charging System (OCS) related data in the SAPC node by providing some configuration examples.

This configuration is to be applied in addition to Gx configurations, so it is an extension of Configuration Guide for Access and Charging Control (Gx).

This document is not intended as an exhaustive guide to configure the SAPC for every possible scenario.

The complete parameter list and details of all configuration options of the SAPC are included in separate documents, refer to Managed Object Model (MOM) and Provisioning REST API.

Examples in this document cover the case of data configured in the SAPC internal repository. If an external repository is used, refer to Database Access.

1.1 Typographic Conventions

The following typographic and document conventions are used:

Table 1   Typographic Conventions

Convention

Description

Example

Representational State Transfer (REST)

SAPC REST provisioning.

Exact REST resources, methods, attibutes, or their corresponding values.

PUT /dataplans/Silver { "dataplanName" : "Silver", "notification" : "sms" }

Managed Object Class (MOC)

or Attributes value

Exact COM model object, classes names, attributes, or their corresponding values.

SmsCenter

enableDelivery=true

NETCONF

SAPC COM configuration

<edit-config> <target> <running /> </target> <config> <ManagedElement xmlns="urn:com:ericsson:ecim:ComTop"> <managedElementId> 1 </managedElementId> <PolicyControlFunction xmlns="urn:com:ericsson:ecim:sapcmom"> <policyControlFunctionId> 1 </policyControlFunctionId> <NotificationConfig xmlns="urn:com:ericsson: ecim:notificationconfigmom"> <notificationConfigId> 1 </notificationConfigId> <enableDelivery> true </enableDelivery> </NotificationConfig> </PolicyControlFunction> </ManagedElement> </config> </edit-config>

1.2 Other Conventions

This document refers to some configuration and provisioning data.

To clarify which detailed data is managed by COM or by the REST API, this document uses the following conventions:

  • Configuration: whenever referring to Managed Object Class (MOC).

    The detailed description of the object and attributes can be found in Managed Object Model (MOM).

    Example: set enableReauthsOnSubsChange attribute in class AppConfig.

    The tools or interfaces to manage these data in the SAPC are:

    • NETCONF interface, refer to Ericsson NETCONF Interface.

      The configuration examples show the NETCONF file contents, using the following syntax:

      <edit-config>
        ...
        <config>
        <ManagedElement xmlns="urn:com:ericsson:ecim:ComTop">
        <managedElementId>1</managedElementId>
             ...
        </ManagedElement>
        </config>
      </edit-config>
  • Provisioning: mainly subscribers, subscriber groups (dataplans), services (contents), profiles, and policy-related data. The SAPC provides a REST API for them, see Provisioning REST API.

    This document uses the following terminology for them: <resource-name> URI in the provisioning REST API.

    Example: To provision subscriber groups, use the dataplan URI in the provisioning REST API.

    Provisioning examples show HTTP operations on REST resources with the following syntax:

    HTTP-Operation /resource-URI 
        {json content}

    where /resource-URI is the relative URI from the SAPC provisioning base URI detailed in Provisioning REST API.

    Example:

    PUT /dataplans/Gold   
    { "dataplanName" : "Gold",
      "subscribedContents" : [{"contentName" : "HTTP_Streaming",
                               "redirect" : false}]
    }
    Note: To ease provisioning operations, the SAPC provides an HTTPS CLI client named resty, refer to Provisioning Tools.

2 Configuration Prerequisites

Before configuring the SAPC in an operational network, assure that:

  • CBA Components are installed.

  • The SAPC product software is installed.

  • To have a detailed understanding of the function.

3 Charging System Configuration

In addition to configure the SAPC as a Gx server, the SAPC can act as an Sy client.

Note: The Origin-Host, Origin-Realm, IP address and diameter port values are set during the SAPC installation procedure. Diameter data related to capabilities exchange (application and vendor identifiers) are provided at installation time, so that no manual procedure is needed.

3.1 Configure Online Charging Systems

For each Online Charging System the SAPC needs to communicate with, provision the charging profile in the /profiles/online-charging-system/<profileId> URI in the provisioning REST API with the following attributes:

  • Set profileId attribute with a charging profile name

  • Set serverRealm attribute to the realm of the Online Charging System

  • Set syVersion attribute to specify the Sy interface version to use:

    • Value 0: 3GPP standard Sy interface.

    • Value 1: Ericsson Sy interface.

An example to configure an Online Charging System is the following:

Example 1   Configuration of Charging Systems

PUT /profiles/online-charging-system/OcsWestMadrid

{
	"profileId" : "OcsWestMadrid",
	"serverRealm" : "ocs3gpprealm.com",
	"syVersion" : 0
}


This example configures an Online Charging System with values "OcsWestMadrid" as profileId, "ocs3gpprealm.com" as serverRealm and "0" for syVersion (3GPP standard Sy interface).

4 Provision of Subscribers

4.1 Subscribers Provisioned Only in Charging Systems

Subscribers can be provisioned only in Charging Systems without the need of provisioning corresponding resources in the SAPC database. In this case, the following configurations (for the SAPC to initiate communication towards a Charging System) apply:

Note: If the SAPC obtains the subscription from the Online Charging System, it makes no sense to use Unknown subscriber. If it is not obtained any Policy Group or Policy Counter for the Subscriber from the OCS, the SAPC can apply Unknown subscriber (if provisioned).
Note: This scenario only applies to deployments with Ericsson Sy.

4.2 Subscribers Provisioned in the SAPC and in the Charging System

In this case, the resulting Subscriber profile is a combination of the Subscriber data provisioned in the SAPC internal database (subscribers URI in the provisioning REST API) and the subscription information (Policy Groups and activation/deactivation time) obtained from Charging System.

The mapping between the Policy Groups obtained from Ericsson Sy interface and the SAPC Subscriber Group is needed in case it is needed to associate some static qualification data that characterize such group.

In this case, the following configurations (for the SAPC to initiate communication towards a Charging System) apply:

5 Configure Selection of Charging System

This chapter explains the different ways to configure the selection of Charging System in the SAPC.

5.1 Provisioning at Subscriber Profile

To assign statically a Charging System to a subscriber:

  • Add a value that corresponds to the profileId attribute in the/profiles/online-charging-system/<profileId> URI in the provisioning REST API to the onlineChargingSystemProfileId JSON attribute inside the staticQualification attribute in the subscriber URI in the provisioning REST API.

The following example shows how to associate a particular Charging System for a single subscriber:

Example 2   Provisioning of Subscriber

 
PUT /subscribers/34600320101

{
	"dataplans" : 
	[
		
		{
			"dataplanName" : "MobileBroadband"
		}
	],
	"staticQualification" : 
	{
		"onlineChargingSystemProfileId" : "OcsWestMadrid"
	},
	"subscriberId" : "34600320101"
}


PUT /dataplans/MobileBroadband

{
        "dataplanName" : "MobileBroadband"
}

The example above associates “OcsWestMadrid” profile to the subscriber “34600320101”, which belongs to “MobileBroadband “ group.

5.2 Avoiding Sy Interface Communication for Subscribers Provisioned in the SAPC

To avoid communication with any Charging System for a subscriber provisioned in the SAPC, use a <charging system name identifier> in the onlineChargingSystemProfileId JSON attribute inside the staticQualification attribute in the subscribers URI in the provisioning REST API that does not correspond to any existing entry of the /profiles/online-charging-system/<profileId> URI in the provisioning REST API.

Example 3   Provisioning of Subscriber

 
PUT /subscribers/34600320102

{
	"staticQualification" : 
	{
		"onlineChargingSystemProfileId" : "NoOcs"
	},
	"subscriberId" : "34600320102"
}


The example above assigns "NoOcs" to the subscriber "34600320102". As "NoOcs" does not exist in /profiles/online-charging-system/<profileId> URI in the provisioning REST API, the SAPC does not establish communication with any Charging System for this subscriber.

5.3 Configure Policies for Dynamic Charging System Selection

It is possible to use flexible conditions to assign a Charging System to Subscribers in the SAPC, by using Charging System policies.

To configure policies for Charging System selection, configure the following objects:

Table 2   Charging System Policy Type

Policy Type

Policy Locator

Output Attributes

Comments

Context

Resource

Subject

   

Charging System

charging-system

any

-

permit

charging-system

<chargingSystemName>

Only has sense to use Global Policy Locator

  • For Global policy locator, use the following REST URI: /locators/resources/any/contexts/charging-system

  • Within the outputAttributes attribute in the /rules/<ruleId> URI in the provisioning REST API set:

    • attrName attribute to charging-system.

    • attrValue with the alias used in /profiles/online-charging-system for this OCS, for example "OCS_1"

Figure 2 shows an example of selection of OCS using policies.

Figure 2   Configuration for Charging System selection based on IMSI

Figure 2 shows an example for the SAPC configuration for the following case: a postpaid Charging System has to be selected for subscribers whose first IMSI character matches certain number; and other Charging System applies for the rest of subscribers.

The following example completes the configuration for Figure 2.

Example 4   Configuration of default Charging System

PUT /rules/r_0

{
	"condition" : "(firstCharsOf(AccessData.subscriber.imsi, 1) == \"2\")",
	"outputAttributes" : 
	[
		
		{
			"attrName" : "charging-system",
			"attrValue" : "\"OCS_postPaid\"",
			"result" : "permit"
		}
	],
	"ruleName" : "r_0"
}


PUT /rules/r_1

{
	"condition" : "(firstCharsOf(AccessData.subscriber.imsi, 1) != \"2\")",
	"outputAttributes" : 
	[
		
		{
			"attrName" : "charging-system",
			"attrValue" : "\"OCS_prePaid\"",
			"result" : "permit"
		}
	],
	"ruleName" : "r_1"
}


PUT /policies/pGlobal

{
	"policyName" : "pGlobal",
	"ruleCombiningAlgorithm" : "permit-overrides",
	"rules" : [ "r_0", "r_1" ]
}


PUT /locators/resources/any/contexts/charging-system

{
	"policies" : [ "pGlobal" ]
}

PUT /profiles/online-charging-system/OCS_postPaid

{
	"profileId" : "OCS_postPaid",
	"serverRealm" : "ocsrealm.com",
	"syVersion" : 1
}


PUT /profiles/online-charging-system/OCS_prePaid

{
	"profileId" : "OCS_prePaid",
	"serverRealm" : "newocsrealm.com",
	"syVersion" : 1
}


In addition, to select "default" chargingSystem as the prepaid OCS, see Example 5.

5.4 Configure Default Charging System

To configure a default entry that applies to all subscribers without any static Online Charging System qualification, configure the profileId attribute with the "default" value in the /profiles/online-charging-system URI in the provisioning REST API as follows:

Example 5   Configuration of default Charging System

PUT /profiles/online-charging-system/default

{
	"profileId" : "default",
	"serverRealm" : "newocsrealm.com",
	"syVersion" : 1
}


This example provisions a charging profile in the /profiles/online-charging-system URI in the provisioning REST API with "default" profileId, serverRealm attribute set to "newocsrealm.com" value and syVersion attribute set to 1 (Ericsson Sy interface).

Default Sy Interface Communication for Subscribers Provisioned in the SAPC

If there is a "default" profile defined in /profiles/online-charging-system URI in the provisioning REST API, a subscriber provisioned in the SAPC without any profile in the onlineChargingSystemProfileId JSON attribute inside the staticQualification attribute in the subscribers URI in the provisioning REST API is assigned to that "default" OCS.

6 Configure Policy Control Based on Spending Limits Reporting

The SAPC can deny the access to a service, change the bandwidth, apply different ratings, and so on, depending on the subscriber monetary balance state, by using operator configured policies.

To configure policies for Spending Limits Reporting as any other policy in the SAPC, refer to Configuration Guide for Subscription and Policies and Provisioning REST API.

Note: In this scenario, accumulation policy type does not apply.

A typical case for a condition based on Spending Limits Reporting counter state to authorize or not a Service is shown in the following example:

Example 6   Configuration for Service Authorization based on Spending Limits

PUT /rules/Auth_FB

{
	"condition" : "(SubsCharging.state[\"volume\"] != \"80ThresholdReached\")",
	"ruleName" : "Auth_FB"
}


PUT /policies/Auth_FB

{
	"policyName" : "Auth_FB",
	"ruleCombiningAlgorithm" : "permit-overrides",
	"rules" : [ "Auth_FB" ]
}


PUT /locators/resources/Facebook/contexts/access

{
	"policies" : [ "Auth_FB" ]
}

 

The previous example shows a policy for Authorization of Facebook Service. The Facebook Service is authorized when the state for "volume" counter received from the Online Charging System is different from"80ThresholdReached".

7 Appendix A. Charging System Policy Type

Next table show the different policy types applicable to Charging System, which can be used in the SAPC.

Table 3   Charging System Policy Type

Policy Type

Policy Locator

Output Attributes

Comments

Context

Resource

Subject

   

Charging System

charging-system

any

-

permit

charging-system

<chargingSystemName>

Only has sense to use Global Policy Locator

8 Appendix B. Policy Tags

Table 4 includes the policy tags that can be used to configure policies based on Spending Limit Reporting.

Table 4   Integration with Online Charging System for Spending Limit Reporting Related Tag

Tag

Return Type

Possible Values

Comments

SubsCharging.state["identifier"]

String

any

The policy counter state obtained from the Charging System for the indicated Policy Counter.

  • For 3GPP standard Sy interface: obtained from Policy-Counter-Status AVP.

  • For Ericsson Sy interface(1): obtained from Ericsson-Policy-Counter-Status

SubsCharging.group["groupName"].state["identifier"] (2)

String

any

The policy counter state obtained from an Ericsson Charging System for the indicated Policy Counter and Policy Group.

(1) Only use this tag if the counter identifier is unique among different Policy Groups. Otherwise, use SubsCharging.group["groupName"].state["identifier"].
(2) Only applicable for Ericsson Sy interface.

9 Reference List