My Oracle Support Banner

DCA To Allow Termination Request Of Failed Session (Doc ID 2851541.1)

Last updated on JUNE 20, 2023

Applies to:

Oracle Communications Network Charging and Control - Version to [Release 12.0.0]
Information in this document applies to any platform.


On Oracle Communications Network Charging and Control (NCC), version,

Diameter Control Agent (DCA) to allow termination request of failed session.

Consider a scenario of Multiple Services Credit Control (MSCC) insufficient funds session, and there is a session context for session-id even when there is no active charging session between DCA and Advance Control Services (ACS). As a result, even though the charging session was denied, the network is still expected to close the session context down with a TERMINATION_REQUEST.

In this case Customer have "returnServiceResultCodeInRoot" set to true, which means that in response to the UPDATE_REQUEST both the root and MSCC level result code is 4012. DCA's interpretation of this is that this response message is terminate - and the session ends here and expects no further update from the network. Customer's interpretation is that the session still requires explicit termination, and follows the same standard message sequence - sending a TERMINATION_REQUEST for the perceived session-context and DCA rejects this with a 5012.

Sample diameterControlAgent.log:


This issue is causing issues on their network, and it is not possible to change the behavior of the Network client. As such, they would like DCA to gracefully handle this scenario . Here the network tells that the termination should have Result Code 2001 as the answer and Result Code 5012 is interpreted as a request that the OCS did not respond to.

DCA should send a the Update Response and Termination Response with Result Code 2001 at Root Level.

The issue can be reproduced at will with the following steps:
1. On NCC 12.0.2 Version SLC, set the DCA Configuration parameter "returnServiceResultCodeInRoot = true" inside the DCA section of eserv.config
2. Create a Subscriber and make Insufficient balance for using a Data Session.
3. Send a CCR Initial without MSCC and RSU AVP (so that there is no service engagement and doesn't trigger ACS). Check if DCA respond with CCA with Result Code 2001.
4. Send CCR Update with MSCC Rating Group and RSU set which trigger the Control Plan and returns IR_NACK for insufficient funds from VWS.
5. Check if DCA is sending CCA Resonse with Result Code 4012 in both Root Level and MSCC Level.
6. Send CCR Terminate Request to DCA without MSCC and USU.
7. Check if DCA is responding with CCA Terminate with Result Code 5012.


To view full details, sign in with your My Oracle Support account.

Don't have a My Oracle Support account? Click to get started!

In this Document

My Oracle Support provides customers with access to over a million knowledge articles and a vibrant support community of peers and Oracle experts.