Search

EP-4410049-B1 - METHODS, SYSTEMS, AND COMPUTER READABLE MEDIA FOR RESTORATION OF DIAMETER CONNECTIVITY

EP4410049B1EP 4410049 B1EP4410049 B1EP 4410049B1EP-4410049-B1

Inventors

  • GROVER, LALIT
  • SHRIMALI, Jayesh
  • TEWARI, Vimal, Chandra

Dates

Publication Date
20260506
Application Date
20220810

Claims (15)

  1. A method for restoration of Diameter connectivity, the method comprising: accepting a first Diameter connection with a Diameter client having a Diameter identifier (600); receiving a request to establish a new Diameter connection with the Diameter identifier (602); holding the request to establish a new Diameter connection for a specified time limit, and, while holding the request, probing the first Diameter connection (606) to determine whether the first Diameter connection has been broken, wherein probing the first Diameter connection comprises sending a Diameter watchdog request to the Diameter client on the first Diameter connection; determining that the first Diameter connection has been broken (608), wherein determining that the first Diameter connection has been broken comprises receiving a reset message from the Diameter client; and in response to determining that the first Diameter connection has been broken, aborting the first Diameter connection and accepting a second Diameter connection with the Diameter client having the Diameter identifier (610).
  2. The method of claim 1, wherein determining that the first Diameter connection has been broken comprises determining that the first Diameter connection has been broken before reaching the specified time limit.
  3. The method of claim 1 or claim 2, wherein the reset message is a transmission control protocol (TCP) message sent as a result of the Diameter client treating the Diameter watchdog request as received on an unexpected connection.
  4. The method of any preceding claim, wherein establishing the first Diameter connection comprises creating a first peer state machine for the first Diameter connection with the Diameter identifier.
  5. The method of claim 4, wherein aborting the first Diameter connection and establishing the second Diameter connection comprises cleaning up the first peer state machine and then resuming processing of the request to establish the new Diameter connection by creating a second peer state machine.
  6. The method of any preceding claim, wherein the Diameter client is deployed in a high availability configuration comprising an active node and one or more standby nodes configured to takeover an active role in response to a failure of the active node.
  7. The method of any preceding claim, wherein the specified time limit for holding the request to establish a new Diameter connection is less than a Diameter transaction timeout.
  8. The method of any preceding claim, wherein establishing the first Diameter connection comprises establishing a transport connection and then receiving a capability exchange request (CER) message on the transport connection.
  9. A system for restoration of Diameter connectivity, the system comprising: at least one processor and a memory; and a Diameter server implemented by the at least one processor and configured for: accepting a first Diameter connection with a Diameter client having a Diameter identifier (602); receiving a request to establish a new Diameter connection with the Diameter identifier (604); holding the request to establish a new Diameter connection for a specified time limit, and, while holding the request, probing the first Diameter connection (606) to determine whether the first Diameter connection has been broken, wherein probing the first Diameter connection comprises sending a Diameter watchdog request to the Diameter client on the first Diameter connection; and determining that the first Diameter connection has been broken (608), wherein determining that the first Diameter connection has been broken comprises receiving a reset message from the Diameter client; and in response to determining that the first Diameter connection has been broken, aborting the first Diameter connection and accepting a second Diameter connection with the Diameter client having the Diameter identifier (610).
  10. The system of claim 9, wherein determining that the first Diameter connection has been broken comprises determining that the first Diameter connection has been broken before reaching the specified time limit.
  11. The system of claim 9 or claim 10, wherein the reset message is a transmission control protocol (TCP) message sent as a result of the Diameter client treating the Diameter watchdog request as received on an unexpected connection.
  12. The system of claim 10 or claim 11, wherein establishing the first Diameter connection comprises creating a first peer state machine for the first Diameter connection with the Diameter identifier.
  13. The system of claim 12, wherein aborting the first Diameter connection and establishing the second Diameter connection comprises cleaning up the first peer state machine and then resuming processing of the request to establish the new Diameter connection by creating a second peer state machine.
  14. The system of any of claims 9 to 13, wherein the Diameter client is deployed in a high availability configuration comprising an active node and one or more standby nodes configured to takeover an active role in response to a failure of the active node, preferably wherein the specified time limit for holding the request to establish a new Diameter connection is less than a Diameter transaction timeout.
  15. A non-transitory computer readable medium having stored thereon executable instructions that when executed by a processor of a computer control the computer to perform steps comprising: accepting a first Diameter connection with a Diameter client having a Diameter identifier (602); receiving a request to establish a new Diameter connection with the Diameter identifier (604); holding the request to establish a new Diameter connection for a specified time limit, and, while holding the request, probing the first Diameter connection (606) to determine whether the first Diameter connection has been broken, wherein probing the first Diameter connection comprises sending a Diameter watchdog request to the Diameter client on the first Diameter connection; determining that the first Diameter connection has been broken (608), wherein determining that the first Diameter connection has been broken comprises receiving a reset message from the Diameter client; and in response to determining that the first Diameter connection has been broken, aborting the first Diameter connection and accepting a second Diameter connection with the Diameter client having the Diameter identifier (610).

Description

TECHNICAL FIELD The subject matter described herein relates to telecommunications networks. More particularly, the subject matter described herein relates to methods, systems, and computer readable media for restoration of Diameter connectivity. BACKGROUND Diameter is an authentication, authorization, and accounting (AAA) protocol used extensively in telecommunications core networks for carrying subscriber and policy information among core network elements. Diameter works at the application layer and uses, e.g., transmission control protocol (TCP) or stream control transmission protocol (SCTP) as the underlying transport protocol. A Diameter client establishes a transport connection with the server before sending a CER (Capability Exchange Request) message to initiate a Diameter connection. The Diameter connection is established once the server responds back with a CEA (Capability Exchange Answer) message. If a Diameter client fails, restarts, or switches active nodes, it may take some time for the connection to be restored. The delay in restoring Diameter connectivity can potentially lead to service impacting issues at client such as call drops, accounting loss, authorization / accounting failures. In light of these and other difficulties, there exists a need for methods, systems, and computer readable media for restoration of Diameter connectivity. SUMMARY The invention is defined according to independent method claim 1 and corresponding independent system claim 9 and non-transitory computer readable medium claim 15. Further details are defined in the dependent claims. The subject matter described herein can be implemented in software in combination with hardware and/or firmware. For example, the subject matter described herein can be implemented in software executed by a processor. In one example implementation, the subject matter described herein may be implemented using a computer readable medium having stored thereon computer executable instructions that when executed by the processor of a computer control the computer to perform steps. Example computer readable media suitable for implementing the subject matter described herein include non-transitory devices, such as disk memory devices, chip memory devices, programmable logic devices, and application specific integrated circuits. In addition, a computer readable medium that implements the subject matter described herein may be located on a single device or computing platform or may be distributed across multiple devices or computing platforms. Document US8964529B2 discloses various exemplary embodiments related to a method performed by a network node. In particular, the document describes a method for managing Diameter connections when a redundant element fails, involving sending a verification message and setting a timer to determine if the existing connection is broken. BRIEF DESCRIPTION OF THE DRAWINGS The subject matter described herein will now be explained with reference to the accompanying drawings of which: Figure 1 is a message flow diagram illustrating messages sent between a Diameter server and a Diameter client;Figure 2 is a message flow diagram illustrating an example situation where Diameter client finishes rebooting before Diameter server determines that Diameter client is unreachable on the old connection;Figure 3 is a message flow diagram illustrating an example situation where Diameter server does not immediately determine that the Diameter connection is broken after Diameter client has resumed services;Figure 4 is a message flow diagram illustrating an example high availability configuration;Figure 5 is a message flow diagram illustrating restoration of Diameter connectivity; andFigure 6 is a flow diagram of an example method for restoring Diameter connectivity. DETAILED DESCRIPTION The subject matter described herein relates to methods, systems, and computer readable media for restoration of Diameter connectivity. Diameter is an authentication, authorization, and accounting (AAA) protocol used extensively in telecommunications core networks for carrying subscriber and policy information among core network elements. Diameter works at the application layer and uses, e.g., transmission control protocol (TCP) or stream control transmission protocol (SCTP) as the underlying transport protocol. A Diameter client establishes a transport connection with the server before sending a CER (Capability Exchange Request) message to initiate a Diameter connection. The Diameter connection is established once the server responds back with a CEA (Capability Exchange Answer) message. The Diameter connections are usually persistent in nature, i.e., they remain established for long periods of time, such as weeks, months or years. Diameter network elements (or nodes) maintain a peer state machine for each peer they are connected to. They continuously monitor the health of the underlying transport connection and the liveness of the peer application so t