The invention includes a method and apparatus for establishing DIAMETER associations between nodes of a network. The invention uses a DIAMETER application server disposed between DIAMETER nodes in order to establish DIAMETER associations between nodes and, further, to provide DIAMETER traffic load balancing using established associations. A method includes receiving a DIAMETER connection establishment request from an originating node requesting an association with a destination node, terminating the DIAMETER connection establishment request, obtaining respective DIAMETER associations for the originating node and the destination node, linking the obtained DIAMETER associations, and storing the linked DIAMETER associations. The DIAMETER association for a node may be obtained by identifying a node associated with the DIAMETER connection establishment request, determining if an association exists for the identified node, and retrieving the association from memory if an association exists for the identified node, retrieving the association from memory, or, if an association does not exist for the identified node, establishing the association.
Legal claims defining the scope of protection, as filed with the USPTO.
1. A method for establishing DIAMETER associations between nodes of a network using a DIAMETER application server, comprising: receiving, at the DIAMETER application server from an originating node, a DIAMETER connection establishment request configured to request establishment of a DIAMETER association between the originating node and a destination node for supporting propagation of DIAMETER signaling messages from the originating node toward the destination node; terminating the DIAMETER connection establishment request at the DIAMETER application server; obtaining, at the DIAMETER application server, a first DIAMETER association between the originating node and the DIAMETER application server; obtaining, at the DIAMETER application server, a second DIAMETER association between the destination node and the DIAMETER application server; linking the obtained first and second DIAMETER associations at the DIAMETER application server, the linked first and second DIAMETER associations configured to support propagation of DIAMETER signaling messages from the originating node toward the destination node; and storing the linked first and second DIAMETER associations at the DIAMETER application server.
2. The method of claim 1 , wherein obtaining a DIAMETER association for a node comprises: identifying a node associated with the DIAMETER connection establishment request; determining if a DIAMETER association exists for the identified node; if a DIAMETER association exists for the identified node, retrieving the DIAMETER association from memory; if a DIAMETER association does not exist for the identified node, establishing the DIAMETER association by: initiating a DIAMETER association request message toward the node; receiving a DIAMETER association response message from the node; generating the DIAMETER association in response to the DIAMETER association response message; and storing the DIAMETER association.
3. The method of claim 1 , further comprising: receiving, at the DIAMETER application server, a DIAMETER signaling message from the originating node, wherein the DIAMETER signaling message is intended for a logical destination node comprising a plurality of physical destination nodes; identifying the logical destination node for which the DIAMETER signaling message is intended; identifying ones of the physical destination nodes having existing DIAMETER associations with the DIAMETER application server; selecting one of the identified ones of the physical destination nodes using load balancing; and propagating the DIAMETER signaling message from the DIAMETER application server toward the selected one of the physical destination nodes using the DIAMETER association of the selected one of the physical destination nodes.
4. The method of claim 1 , further comprising: monitoring for a heartbeat message from one of the nodes.
5. The method of claim 4 , further comprising: in response to a determination that a heartbeat message is not received from the monitored one of the nodes after a threshold period of time, deactivating a DIAMETER association for the monitored one of the nodes.
6. The method of claim 4 , further comprising: in response to a determination that a heartbeat message is received from the monitored one of the nodes for which a DIAMETER association is currently deactivated, activating the DIAMETER association for the monitored one of the nodes.
7. The method of claim 1 , wherein the originating node comprises one of a plurality of physical nodes of a logical network entity and the destination node comprises one of a plurality of physical nodes of a logical network entity.
8. An apparatus for establishing DIAMETER associations between nodes of a network using a DIAMETER application server, comprising: a processor and a memory, the processor configured to: receive, at the DIAMETER application server from an originating node, a DIAMETER connection establishment request configured to request establishment of a DIAMETER association between the originating node and a destination node for supporting propagation of DIAMETER signaling messages from the originating node toward the destination node; terminate the DIAMETER connection establishment request at the DIAMETER application server; obtain, at the DIAMETER application server, a first DIAMETER association between the originating node and the DIAMETER application server; obtain, at the DIAMETER application server, a second DIAMETER association between the destination node and the DIAMETER application server; link the obtained first and second DIAMETER associations at the DIAMETER application server, the linked first and second DIAMETER associations configured to support propagation of DIAMETER signaling messages from the originating node toward the destination node; and store the linked first and second DIAMETER associations at the DIAMETER application server.
9. The apparatus of claim 8 , wherein, to obtain a DIAMETER association for a node, the processor is configured to: identify a node associated with the DIAMETER connection establishment request; determine if a DIAMETER association exists for the identified node; retrieve the DIAMETER association from memory if a DIAMETER association exists for the identified node; and if a DIAMETER association does not exist for the identified node, establish the DIAMETER association by: initiating a DIAMETER association request message toward the node; receiving a DIAMETER association response message from the node; generating the DIAMETER association in response to the DIAMETER association response message; and storing the DIAMETER association.
10. The apparatus of claim 8 , wherein the processor is further configured to: receive, at the DIAMETER application server, a DIAMETER signaling message from the originating node, wherein the DIAMETER signaling message is intended for a logical destination node comprising a plurality of physical destination nodes; identify the logical destination node for which the DIAMETER signaling message is intended; identify ones of the physical destination nodes having existing DIAMETER associations with the DIAMETER application server; select one of the identified ones of the physical destination nodes using load balancing; and propagate the DIAMETER signaling message from the DIAMETER application server toward the selected one of the physical destination nodes using the DIAMETER association of the selected one of the physical destination nodes.
11. The apparatus of claim 8 , wherein the processor is further configured to: monitor for a heartbeat message from one of the nodes.
12. The apparatus of claim 11 , wherein the processor is further configured to: deactivate a DIAMETER association for the monitored one of the nodes in response to a determination that a heartbeat message is not received from the monitored one of the nodes after a threshold period of time.
13. The apparatus of claim 11 , wherein the processor is further configured to: activate a DIAMETER association for the monitored one of the nodes in response to a determination that a heartbeat message is received from the monitored one of the nodes for which the DIAMETER association is currently deactivated.
14. The apparatus of claim 8 , wherein the originating node comprises one of a plurality of physical nodes of a logical network entity and the destination node comprises one of a plurality of physical nodes of a logical network entity.
15. A method, comprising: receiving a DIAMETER signaling message at a DIAMETER application server, wherein the DIAMETER signaling message is received from a logical originating node comprising a physical originating node, wherein the DIAMETER signaling message is received via a first DIAMETER association between the physical originating node and the DIAMETER application server, wherein the DIAMETER signaling message is intended for a logical destination node comprising a plurality of physical destination nodes; identifying the logical destination node; identifying ones of the physical destination nodes having respective existing DIAMETER associations with the DIAMETER application server that are linked to the first DIAMETER association at the DIAMETER application server to support propagation of DIAMETER signaling messages from the physical originating node toward the physical destination nodes; selecting one of the identified ones of the physical destination nodes using a load balancing algorithm; and propagating the DIAMETER signaling message toward the selected one of the physical destination nodes using the existing DIAMETER association between the DIAMETER application server and the selected one of the physical destination nodes.
16. The method of claim 15 , wherein the existing DIAMETER association between the DIAMETER application server and the selected one of the physical destination nodes is established by a method comprising: receiving a DIAMETER connection establishment request from at least one physical originating node requesting a DIAMETER association with the physical destination node; terminating the DIAMETER connection establishment request; and in response to a determination that the DIAMETER association with the physical destination node does not exist, establishing the DIAMETER association with the physical destination node.
17. The method of claim 16 , wherein establishing the DIAMETER association with the physical destination node comprises: initiating a DIAMETER association request message toward the physical destination node; receiving a DIAMETER association response message from the physical destination node; generating the DIAMETER association in response to the DIAMETER association response message; and storing the DIAMETER association for the physical destination node.
18. An apparatus, comprising: a processor and a memory, the processor configured to: receive a DIAMETER signaling message at a DIAMETER application server, wherein the DIAMETER signaling message is received from a logical originating node comprising a physical originating node, wherein the DIAMETER signaling message is received via a first DIAMETER association between the physical originating node and the DIAMETER application server, wherein the DIAMETER signaling message is intended for a logical destination node comprising a plurality of physical destination nodes; identify the logical destination node; identify ones of the physical destination nodes having respective existing DIAMETER associations with the DIAMETER application server that are linked to the first DIAMETER association at the DIAMETER application server to support propagation of DIAMETER signaling messages from the physical originating node toward the physical destination nodes; select one of the identified ones of the physical destination nodes using a load balancing algorithm; and propagate the DIAMETER signaling message toward the selected one of the physical destination nodes using the existing DIAMETER association between the DIAMETER application server and the selected one of the physical destination nodes.
19. The apparatus of claim 18 , wherein, for establishing the existing DIAMETER association between the DIAMETER application server and the selected one of the physical destination nodes, the processor is further configured to: receive a DIAMETER connection establishment request from at least one physical originating node requesting a DIAMETER association with the physical destination node; terminate the DIAMETER connection establishment request; and establish the DIAMETER association with the physical destination node in response to a determination that the DIAMETER association with the physical destination node does not exist.
20. The apparatus of claim 19 , wherein, for establishing the DIAMETER association with the physical destination node, the processor is further configured to: initiate a DIAMETER association request message toward the physical destination node; receive a DIAMETER association response message from the physical destination node; generate the DIAMETER association in response to the DIAMETER association response message; and store the DIAMETER association for the physical destination node.
Cooperative Patent Classification codes for this invention. Click any code to explore related patents in that topic.
September 26, 2007
April 10, 2012
Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.