IP Library Granted Patent US 9,332,053
Granted Patent B2
US 9,332,053 · App. 13/910,091 · Granted May 3, 2016

Methods, systems, and computer readable media for load balancing stream control transmission protocol (SCTP) messages

Inventor: Paul Sheer (Dallas, TX)
Assignee: Tekelec, Inc.
H04L65/608H04L65/1063H04L65/80H04L67/1004H04L67/1023
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,332,053
App. No.
13/910,091
Granted
May 3, 2016
Kind
B2
Abstract

According to one aspect, the subject matter described herein includes a method for load balancing SCTP messages. The method includes receiving an SCTP message containing an address, a port identifier, and a verification tag. The method includes determining, using the verification tag, an associated application server from a plurality of application servers. The method includes sending the SCTP message to the application server for processing.

Claims (31)

1. A method for load balancing stream control transmission protocol (SCTP) messages, the method comprising:

receiving an SCTP message containing an address, a port identifier, and a verification tag;

determining, using the verification tag, an associated application server from a plurality of application servers, wherein determining, using the verification tag, the associated application server from the plurality of application servers includes determining whether the address and the port identifier are associated with an entry in a load balancing data structure, in response to determining that the address and the port identifier are not associated with an entry in the load balancing data structure, determining whether the verification tag and the port identifier are associated with an entry in the load balancing data structure, in response to determining that the verification tag and the port identifier are associated with an entry in the load balancing data structure, modifying the entry so that the address and the port identifier are associated with the entry, and identifying the application server using the entry; and

sending the SCTP message to the application server for processing.

2. The method of claim 1 comprising:

in response to determining that the verification tag and the port identifier is not associated with an entry in the load balancing data structure, selecting an appropriate application server based on information associated with the SCTP message; and

storing a new entry in the load balancing data structure, wherein the new entry associates the SCTP message and the appropriate application server.

3. The method of claim 2 wherein selecting an appropriate application server based on information associated with the SCTP message includes computing, using at least one of the address, the verification tag, and the port identifier, a hash value usable in selecting the appropriate application server.

4. The method of claim 2 wherein storing a new entry in the load balancing data structure includes associating the verification tag and the port identifier with the new entry.

5. The method of claim 2 wherein storing a new entry in the load balancing data structure includes associating the address and the port identifier with the new entry.

6. The method of claim 1 wherein determining whether the address and the port identifier are associated with an entry in the load balancing data structure includes performing, using the address and the port identifier as a key, a lookup in the load balancing data structure to identify a corresponding entry, wherein the corresponding entry indicates the application server for processing the SCTP message.

7. The method of claim 1 wherein determining whether the verification tag and the port identifier are associated with an entry in the load balancing data structure includes performing, using the verification tag and the port identifier as a key, a lookup in the load balancing data structure to identify a corresponding entry, wherein the corresponding entry indicates the application server for processing the SCTP message.

8. The method of claim 1 wherein the address include a source address or a destination address and wherein the port identifier includes a source port identifier or a destination port identifier.

9. The method of claim 1 wherein the SCTP message is an initiation message containing a plurality of addresses and wherein the plurality of addresses are associated with a new entry in the load balancing data structure.

10. A system for load balancing stream control transmission protocol (SCTP) messages, the system comprising:

a load balancing module including at least one physical processor, the load balancing module is configured to:

receive an SCTP message containing an address, a port identifier, and a verification tag;

determine, using the verification tag, an associated application server from a plurality of application servers, wherein determining, using the verification tag, the associated application server from the plurality of application servers includes determining whether the address and the port identifier are associated with an entry in a load balancing data structure, in response to determining that the address and the port identifier are not associated with an entry in the load balancing data structure, determining whether the verification tag and the port identifier are associated with an entry in the load balancing data structure, in response to determining that the verification tag and the port identifier are associated with an entry in the load balancing data structure, modifying the entry so that the address and the port identifier are associated with the entry, and identifying the application server using the entry; and

send the SCTP message to the application server for processing.

11. The system of claim 10 wherein the load balancing module is configured to in response to determining that the verification tag and the port identifier is not associated with an entry in the load balancing data structure, select an appropriate application server based on information associated with the SCTP message and store a new entry in the load balancing data structure, wherein the new entry associates the SCTP message and the appropriate application server.

12. The system of claim 11 wherein the load balancing module is configured to select an appropriate application server based on information associated with the SCTP message by computing, using at least one of the address, the verification tag, and the port identifier, a hash value usable in selecting the appropriate application server.

13. The system of claim 11 wherein the load balancing module is configured to associate the verification tag and the port identifier with the new entry.

14. The system of claim 11 wherein the load balancing module is configured to associate the address and the port identifier with the new entry.

15. The system of claim 10 wherein the load balancing module is configured to determine whether the address and the port identifier are associated with an entry in the load balancing data structure by performing, using the address and the port identifier as a key, a lookup in the load balancing data structure to identify a corresponding entry, wherein the corresponding entry indicates an application server for processing the SCTP message.

16. The system of claim 10 wherein the load balancing module is configured to determine whether the verification tag and the port identifier are associated with an entry in the load balancing data structure by performing, using the verification tag and the port identifier as a key, a lookup in the load balancing data structure to identify a corresponding entry, wherein the corresponding entry indicates the application server for processing the SCTP message.

17. The system of claim 10 wherein the address include a source address or a destination address and wherein the port identifier includes a source port identifier or a destination port identifier.

18. The system of claim 10 wherein the SCTP message is an initiation message containing a plurality of addresses and wherein the plurality of addresses are associated with a new entry in the load balancing data structure.

19. A non-transitory computer readable medium comprising computer executable instructions that when executed by a processor of a computer control the computer to perform steps comprising:

receiving an SCTP message containing an address, a port identifier, and a verification tag;

determining, using the verification tag, an associated application server from a plurality of application servers, wherein determining, using the verification tag, the associated application server from the plurality of application servers includes determining whether the address and the port identifier are associated with an entry in a load balancing data structure, in response to determining that the address and the port identifier are not associated with an entry in the load balancing data structure, determining whether the verification tag and the port identifier are associated with an entry in the load balancing data structure, in response to determining that the verification tag and the port identifier are associated with an entry in the load balancing data structure, modifying the entry so that the address and the port identifier are associated with the entry, and identifying the application server using the entry; and

sending the SCTP message to the application server for processing.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 5, 2013
From: SHEER, PAUL
To: TEKELEC, INC.
Reel/Frame 030550/0437 →
Continuity (2)
Provisional Application 61660512 · Jun 15, 2012
Related Publication 20130339540A1 · Dec 19, 2013