A binding is a relationship stored in the Binding SBR
between various subscriber data session identities, such as MSIDN/IP
Address(es)/IMSI and the assigned PCRF. A session is a relationship stored in
the Session SBR that associate additional sessions with a binding.
Policy DRA allows distribution of Gx, Gxx, and S9 Policy
binding-capable sessions and distribution of Gx-Prime and Rx Policy
binding-dependent sessions across available PCRFs.
Binding-capable Session Initiation Request
Processing Rules and Requirements
Rules apply to the selection of a suggested PCRF Pool or
Sub-Pool upon receipt of a binding-capable session initiation request. The
request might be routed to an existing binding; only new bindings are
guaranteed to route to the suggested PCRF Pool or Sub-Pool.
- Upon receipt of a binding-capable session initiation
request containing no Called-Station-Id AVP (for example, no APN), Policy DRA
generates and sends a binding-capable session initiation answer message using
the Result Code configured for the Diameter interface for the Missing Or
Unconfigured APN condition in the Error Codes GUI. The answer message shall
include an Error-Message AVP with the 3-digit error code suffix of 500.
- Upon receipt of a binding-capable session initiation
request containing no Called-Station-Id AVP (for example, no APN), Policy DRA
asserts alarm-ID 22730 and increments measurement RxBindCapMissingApn by one.
- Upon receipt of a binding-capable session initiation
request containing a Called-Station-Id AVP (for example, APN) that is not
configured on the Access Point Names screen, Policy DRA generates and sends a
binding-capable session initiation answer message using the Result Code
configured for the Diameter interface for the Missing Or Unconfigured APN
condition on the Error Codes screen. The answer message includes an
Error-Message AVP with the 3-digit error code suffix of 501.
- Upon receipt of a binding-capable session initiation
request containing a Called-Station-Id AVP (for example, APN) that is not
configured on the Access Point Names screen, Policy DRA asserts Alarm-ID 22730
and increments measurement RxBindCapUnknownApn by one.
- Upon receipt of a binding-capable session initiation
request containing a Called-Station-Id AVP (for example, APN) that is
configured on the Access Point Names screen, the Policy DRA application
performs PCRF Pool selection. Measurement RxBindCapApn2PcrfPool is incremented
by one for the APN.
- If no PCRF Sub-Pool Selection rule matches, the
suggested PCRF Pool is the PCRF Pool configured for the APN on the Access Point
Names screen.
- If no PCRF Sub-Pool Selection Rule exists for the
PCRF Pool that was assigned to the APN from the bindng-capable session
initiation request, no match exists in the PCRF Sub-Pool Selection Rules.
- If no PCRF Sub-Pool Selection Rule exists where the
PCRF Pool that was assigned to the APN from the binding-capable session
initiation request matches and with an operator and value that match the
Origin-Host of the binding-capable session initiation request, no match exists
in the PCRF Sub-Pool Selection Rules.
- A PCRF Sub-Pool Selection Rule using the Equals
operator is considered as a match if all conditions are true:
- The PCRF Pool assigned to the APN from the
binding-capable session initiation request matches.
- All characters of the Origin-Host from the
binding-capable session initiation request match the Value specified in the
rule, ignoring case (for example, a.b.c is equivalent to A.B.C).
- A PCRF Sub-Pool Selection Rule using the Starts With
operator is considered as a match if all conditions are true:
- The PCRF Pool assigned to the APN from the
binding-capable session initiation request matches.
- All characters of the Value specified in the
rule match the leading characters in the Origin-Host from the binding-capable
session initiation request, ignoring case (for example, Fred is equivalent to
FRED).
- A PCRF Sub-Pool Selection Rule using the Ends With
operator is considered as a match if all conditions are true:
- The PCRF Pool assigned to the APN from the
binding-capable session initiation request matches.
- All characters of the Value specified in the rule
match the trailing characters in the Origin-Host from the binding-capable
session initiation request, ignoring case (for example, Fred is equivalent to
FRED ).
- If more than one PCRF Sub-Pool Selection Rule matches
and the matching rules have equal priority, the Policy DRA application prefers
rules with the Equals operator to rules with the Starts With and Ends With
operators.
Note:
The GUI prevents ambiguous Starts With and Ends
With rules.
- If more than one PCRF Sub-Pool Selection Rule matches
according to requirements, the Policy DRA application selects the match having
the highest priority (for example, the lowest numeric priority value).
Note:
The GUI prevents creation of ambiguous,
conflicting and duplicate rules.
- If a PCRF Sub-Pool Selection Rule matches according
to requirements, Policy DRA application uses the PCRF Sub-Pool from the
matching rule as the suggested PCRF Pool. Measurement RxBindCap2PcrfSubPool is
incremented by one for the PCRF Sub-Pool Selection Rule that was matched.
- If a binding-capable session initiation request is
received that would result in a new binding and no PCRFs are configured at the
site, Policy DRA generates an error response with the 3002 Diameter
Response-Code and Error-Message AVP including the string No PCRFs configured at
this site.
Note:
This requirement does not apply if a binding
already exists for the IMSI and APN, or IMSI and PCRF Pool.
- If a binding-capable session initiation request is
received and no PCRFs are configured at the site, Policy DRA generates timed
alarm 22730, which indicates that no PCRFs are configured.
Note:
The alarm is only generated if the
binding-capable session initiation request results in a new binding being
created.
The requirements describe handling of binding-capable
session initiation requests after a suggested PCRF Pool or Sub-Pool has been
successfully selected.
- Upon receipt of a binding-capable session initiation
request for an IMSI that has an existing Final binding, measurement
SbrFinalBindingsFollowed is incremented by one and the Policy DRA application
attempts to route the request to the PCRF from the selected binding.
- When checking for an existing binding, the Policy DRA
searches in a specific order, using the first binding that matches:
- A binding for the IMSI and APN (from the
ImsiApnAnchorKey table)
- A binding for the IMSI and suggested PCRF Pool or
Sub-Pool (from the ImsiApnAnchorKey table)
- Upon receipt of a binding-capable session initiation
request for an IMSI for which no existing binding is found, the Policy DRA
attempts to route the request using the suggested PCRF Pool or Sub-Pool.
- Upon receipt of a binding-capable session initiation
request for an IMSI for which no existing binding is found, a new binding is
created using the IMSI, APN, and suggested PCRF Pool or Sub-Pool.
- If, when creating the new binding, the record for the
IMSI already contains 10 session references, the Policy DRA generates a
Diameter error response using the response code configured for the SBR Error
condition.
Note:
The Error-Message AVP contains the reason for the
failure.
- When a binding-capable session initiation request
results in a new binding, the binding-capable session initiation request is
routed to the Peer Routing Table mapped to the PCRF Pool or Sub-Pool at the
site where the request was received. When the PCRF Pool or Sub-Pool is mapped
to a configured PRT table, measurement RxBindCapPcrfPool2Prt is incremented by
one for the PCRF Pool or Sub-Pool.
- If the PCRF Pool or Sub-Pool is not mapped to a Peer
Routing Table (for example, is mapped to the -Select- entry) at the site
processing the request, the request shall be routed according to the routing
layer PRT precedence. Measurement RxBindCapPcrfPoolNotMapped is incremented by
one.
Note:
When the PCA does not specify a PRT table to use,
DRL looks for a PRT in the ingress Peer Node configuration; then, if still not
specified, in the Diameter Application-Id configuration. This behavior is
necessary for backwards compatibility for cases where the pre-PCRF Pooling
release had the Site Options PRT table for new bindings set to -Not Selected-.
- If a new binding is created after PCRF Pooling is
Enabled and the GLA feature is activated in the Policy DRA Network, Policy DRA
stores the Origin-Host of the Policy Client that originated the binding-capable
session initiation request in the binding record for use by GLA.
PCRF Pool Selection
The configuration data are needed to support the PCRF
Pools feature:
- PCRF Pool Definition - Definition of the logical
concept of a PCRF pool. This includes configuring the information about PCRF
pools:
- PCRF Pool Name
- A string naming the PCRF Pool.
- PCRF Pool Description
- A string describing the PCRF Pool.
- Subpool Indicator
- An indicator that a sub-pool is defined for
this PCRF Pool.
- PRT Table ID
- The PRT Table to be used for this PCRF pool.
- PCRF Sub-Pool Selection Rules - Rules to determine
the PCRF sub-pool, if any, to which a new-session CCR-I is routed. This further
qualifies the PCRF Pool based on the Origin-Host of the PCEF that originates
the CCR-I. Note that absence of sub-pool rules for a PCRF Pool means that there
are no sub-pools for the PCRF Pool and all new-session CCR-Is are routed to the
PCRF Pool selected using the PCRF Pool Selection rules.
- PCRF Pool
- One of the PCRF Pools in the PCRF Pool
Selection Rules. This is used as a key to determine a new PCRF Pool to be used
for the subpool.
- Priority
- Rule priority
- FQDN (PCEF Origin-Host FQDN)
- An FQDN value or partial match.
- PCRF Sub-Pool
- One of the configured PCRF Pools.
A default PCRF Pool will be configured into the system upon
installation of the PCRF Pool Feature. All configured APNs will be configured
to map to the default PCRF Pool.
If there is an existing binding for the IMSI that
matches the APN, the existing binding will always be used. This occurs even if
there is a more specific rule that was configured after the binding was
created. This avoids a split-binding scenario. A split binding exists when more
than one PCRF is managing Gx sessions for the same PCEF.
If there are no existing bindings that match the Gx
session, Policy DRA uses the PCRF Pool Selection Rules to determine the PCRF
Pool to which the CCR-I message is to be routed.
After selecting the PCRF Pool, Policy DRA determines
whether there are PCRF sub-pool rules for the selected PCRF Pool. The PCRF
Sub-Pool rules consist of the FQDN of the Diameter peer that originated the
new-binding CCR-I and a priority. If multiple rules match, the highest priority
rule is used. If all of the matching rules have the same priority, the more
specific rule takes precedence.
Note:
The PCA GUI ensures no two rules with the same
specificity have the same priority.
There is an order of precedence, from most specific to
least:
- Origin-Host full FQDN value
- Origin-Host partial match
If there is a matching PCRF sub-pool rule then the PCRF
pool id indicated in the PCRF sub-pool rules is used for routing the CCR-I. If
there are no matching PCRF sub-pool rules then the CCR-I is handled based on
the PCRF Pool selection rules.
Finding or Creating a Binding
Routing to the selected PCRF Pool
If an existing binding is to be used to route a CCR-I,
then the PCRF in that binding is used. If a new binding is to be created, after
Policy DRA has selected PCRF Pool through a combination of the PCRF Pool
Selection Rules and the PCRF Sub-Pool selection rules, then Policy DRA must
select the PCRF peer that will own the binding.
The PRT Table ID mapped to the PCRF Pool points to the
PRT table to be used for routing the CCR-I message.
All existing PRT functionality, including all valid PRT
rules and load balancing capabilities, can be used for routing of the CCR-I to
an instance within the PCRF pool.
Binding-capable Session Initiation Answer
Processing
If a success response (for example, 2xxx) is received in
a binding-capable session initiation answer (for example, CCA-I) certain
actions occur:
- The answer message is relayed to the Policy Client
that sent the request.
- A Session record is created with information related
to the Diameter session.
- Alternate key binding records are created for the
intersection of alternate keys configured in
and alternate keys present in the
binding-capable session initiation request.
- If the binding-capable session initiation request
created a new binding, the early binding record is updated with the PCRF
identified in the Origin-Host of the answer message and marked as a final
binding.
If a failure response (for example, non 2xxx) is
received in a binding-capable session initiation answer (if example, CCA-I)
certain actions occur:
- The answer message is relayed to the Policy Client
that sent the request.
- No session or alternate key records are created.
- If the binding-capable session initiation request
created a new binding, the early binding record is removed.