Policy Counters

For each Sy session, MATRIXX Engine tracks which counters the external PCRF/PCF has requested (a subscribed policy counter) and only returns information about those counters.

If a Spending-Limit Request (SLR) includes a list of policy counters, MATRIXX Engine returns information about those counters in the Spending-Limit Answer (SLA) and sends an SNR. For Sy spending-limit notifications, you can configure if only the policy counters that have changed since the last notification are sent or if all policy counters are sent. See the discussion about policy counter configuration for more information.

An SLR that does not specify any policy counters indicates that the PCRF subscribes to all counters; MATRIXX Engine returns information about all counters in the SLA and any SNRs include information about all counters. A policy counter list in the next SLR overrides the previous counter list.

Unknown Policy Counters

When a policy counter is requested in an SLR that does not exist in any of the selected policy profiles (an unknown policy counter), an operator-defined policy counter status for unknown policy counters and the status for known policy counters is returned in the SLA or SNR.

The following examples describe unknown policy counter handling.

In Example 1: SLR Policy Counters, MATRIXX Engine received an SLR with requested policy counters C1 and C2. C1 is unknown.

Table 1. Example 1: SLR Policy Counters
Operator-defined Policy Counter Status Reject Requests with Unknown Policy Counters
An SLR is sent with policy counter C1 with the operator-defined policy counter status and policy counter C2. An SLA is sent with Experimental-Result-Code UNKNOWN_POLICY_COUNTER and policy counter C1 is in BadPolicyCounterIdList.
In Example 2: SNR Policy Counters, MATRIXX Engine received an SLR with requested policy counters C1 and C2. After the subscriber purchases offers, policy counter C1 becomes unknown, and policy counters C3 and C4 are added to the selected profiles.
Table 2. Example 2: SNR Policy Counters
Policy Counter Status Operator-defined Policy Counter Status Reject Requests with Unknown Policy Counters
Policy counter C2 becomes unknown, also. An SNR is sent with policy counter C1 and policy counter C2 with the operator-defined policy counter status. No SNR is sent.
Policy counter C2 status is not changed. An SNR is sent with C1 with the operator-defined policy counter status and policy counter C2. An SNR is sent with policy counter C2.
Policy counter C2 status is changed. An SNR is sent with policy counter C1 with the operator-defined policy counter status and policy counter C2. An SNR is sent with policy counter C2.

Policy Counter Configuration

Configure the Sy policy counter status behavior during global system configuration. For more information about configuring policy behavior, see the discussion about global system configuration in MATRIXX Configuration.

For Sy and N28 spending-limit notifications, you can configure if only the policy counters that have changed since the last notification are sent. To limit the notifications to only those counters that have changed, answer y to the create_config.info question (the default is n): Global:Session:Policy:Notify:Send only the changed policy counters in the SNR? (y/n)?

For policy change EDRs (MtxPolicyChangeEvent), you can configure if only changed policy counters are included in a policy change event. See the discussion about policy events for more information.

Policy Counter Status Value Priority Sorting

When evaluating policy counters, the Charging Server prioritizes product offers according to their priority. Then, the Charging Server evaluates Sy components in each offer to select policy profiles. If the policy profiles have conflicting policy counter values and Enable Priority is selected in a policy counter, the Charging Server checks the policy counter status priority list and the highest priority status value is used. If status priority is not enabled in the policy counter, the status value in the higher priority offer is used. When a MtxPolicyChangeEvent EDR is generated, it includes a list of the policy counter status values in MtxPolicyCounterStatus. You can also include lists of previously-selected policy profile information and previous policy counter information (the counter ID and its status). For more information about policy counters in events, see the discussion about policy events.

The following example describes Sy status value selection when Enable Priority is selected for a policy counter in My MATRIXX.

Assume that rating selects two policy profiles (A and B) and both profiles reference the following policy counters:
  • X
    • RED
    • GREEN
    • BLUE
  • Y
    • HIGH
    • MEDIUM
    • LOW

Profile A defines policy counter X=RED and policy counter Y=LOW. Profile B defines policy counter X=GREEN and Y=HIGH . Rating prioritizes the counter values (not the policy profiles), so the highest value of each counter is returned. Values RED (policy counter X) and High (policy counter Y) are selected and returned in the MtxPolicyChangeEvent EDR.