IP Library Granted Patent US 7,225,236
Granted Patent B1
US 7,225,236 · App. 09/923,895 · Granted May 29, 2007

Load balancing between LNSs using virtual LNS with minimal LAC configuration

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 7,225,236
App. No.
09/923,895
Granted
May 29, 2007
Kind
B1
Abstract

A system for load balancing, the system includes a LAC, a contact LNS, and a plurality of load balancing LNSs. The LAC includes a contact LNS address, the contact LNS address specifies the address of a contact LNS. The contact LNS is communicatively coupled to the LAC and the plurality of load balancing LNSs are communicatively coupled to the contact LNS and to the LAC. The LAC sends a message to the contact LNS, the message informing the LAC of its availability and the contact LNS sends a response message containing IP address of a selected one of the plurality of load balancing LNSs to which the LAC should establish a session.

Claims (60)

1. A system for load balancing, the system comprising:

a contact L2TP Network Server (LNS) that can determine whether to establish a session between the contact LNS and an L2TP Access Concentrator (LAC), the contact LNS being communicatively coupled to the LAC;

the LAC, the LAC including an address of the contact LNS, the LAC using the address of the contact LNS to send to the contact LNS at least a first message to request establishment of the session between the contact LNS and the LAC and to inform the contact LNS of the availability of the LAC for participating in load balancing; and

a plurality of load balancing LNSs communicatively coupled to the contact LNS and to the LAC,

wherein if the contact LNS determines the contact LNS can handle establishing the requested session, the contact LNS establishes the requested session with the LAC, and

wherein if the contact LNS determines the contact LNS cannot handle establishing the requested session, the contact LNS sends to the LAC a response message containing an Internet Protocol (IP) address of a selected load balancing LNS of the plurality of load balancing LNSs to which the LAC should establish a session.

2. The system of claim 1 wherein the contact LNS is included within a virtual LNS.

3. The system of claim 1 , wherein the at least a first message to request establishment of the session between the contact LNS and the LAC and to inform the contact LNS of the availability of the LAC for participating in load balancing includes an Incoming Call Request (ICRQ) message.

4. The system of claim 1 wherein the response message is an Incoming Call Response (ICRP) message.

5. The system of claim 1 further including a customer premise equipment (CPE) coupled to the LAC.

6. The system of claim 1 , wherein the contact LNS includes a list of LNSs available to provide LNS functions if the contact LNS determines the contact LNS cannot handle a session with the LAC.

7. The system of claim 1 , wherein each of the plurality of load balancing LNSs transmits heartbeat signals to the contact LNS so that the contact LNS can determine which LNSs of the plurality of load balancing LNSs are available to participate in load balancing.

8. A method of load balancing, the method comprising:

using an address of a contact L2TP Network Server (LNS) to establish an L2TP tunnel between the contact L2TP Network Server (LNS) and an L2TP Access Concentrator (LAC), the LAC containing the address of the contact LNS;

sending to the contact LNS from the LAC at least a first message to request establishment of a session between the contact LNS and the LAC and to inform the contact LNS that the LAC can participate in load balancing; and

determining whether the contact LNS can handle the session between the contact LNS and the LAC,

wherein, if the contact LNS can handle the session between the contact LNS and the LAC, the method further comprises establishing the session between the contact LNS and the LAC, and

wherein, if the contact LNS cannot handle the session between the contact LNS and the LAC, the method further comprises the LAC: (i) receiving from the contact LNS an address of a next available LNS, (ii) establishing a connection with the next available LNS, and then establishing a session with the next available LNS, and (iii) receiving data and forwarding the data to the next available LNS.

9. The method of claim 8 , wherein the at least a first message to request establishment of a session between the contact LNS and the LAC and to inform the contact LNS that the LAC can participate in load balancing includes an Incoming Call Request (ICRQ) message.

10. The method of claim 9 wherein the address of the next available LNS is included in an Incoming Call Response (ICRP) message.

11. The method of claim 9 wherein the contact LNS is included in a virtual LNS.

12. The method of claim 8 , wherein the at least a first message to request establishment of a session between the contact LNS and the LAC and to inform the contact LNS that the LAC can participate in load balancing comprises a Start-Control-Connection-Request (SCCRQ) message.

13. The method of claim 9 , wherein the ICRQ message comprises an attribute-value pair that indicates the LAC is capable of performing load balancing.

14. A method for load balancing between a contact L2TP Network Server (LNS), an L2TP Access Concentrator (LAC), and a next LNS, the method comprising:

sending to the contact LNS from the LAC at least a first message to request establishment of a session between the contact LNS and the LAC and to inform the contact LNS that the LAC can participate in load balancing;

at the contact LNS, determining whether the contact LNS can handle the L2TP session between the contact LNS and the LAC;

sending to the LAC from the contact LNS at least a second message that (i) indicates whether the contact LNS can handle the L2TP session between the contact LNS and the LAC, and (ii) contains an address of the next LNS if the contact LNS cannot handle the L2TP session between the contact LNS and the LAC;

wherein, if the contact LNS can handle the L2TP session between the contact LNS and the LAC, the method further comprises establishing the L2TP session between the contact LNS and the LAC; and

wherein if the contact LNS cannot handle the L2TP session between the contact LNS and the LAC, the method further comprises establishing a connection between the next LNS and the LAC using the next LNS address, and then establishing an L2TP session between the next LNS and the LAC.

15. The method of claim 14 wherein the contact LNS is included in a virtual LNS.

16. The method of claim 15 including the further step of determining the identity of the contact LNS within the virtual LNS.

17. The method of claim 14 ,

wherein if the contact LNS can handle the L2TP session, then after establishing the L2TP session between the contact LNS and the LAC, the method further comprising sending user data between (i) the LAC and the contact LNS, and (ii) the LAC and a customer premises equipment (CPE), and

wherein if the contact LNS cannot handle the L2TP session, then after establishing the session between the next LNS and the LAC, the method further comprising sending user data between (i) the LAC and the next LNS, and (ii) the LAC and the CPE.

18. The method of claim 14 , wherein the function of determining whether the contact LNS can handle the L2TP session includes determining whether the contact LNS is overloaded.

19. A system for load balancing, the system comprising:

a Customer Premise Equipment (CPE);

an L2TP Access Concentrator (LAC) coupled to the CPE;

a first network coupled to the LAC;

a second network coupled to the first network;

a contact L2TP Network Server (LNS) coupled to the first network; and

a next LNS coupled to the second network, the next LNS having an Internet Protocol (IP) address,

wherein the LAC sends to the contact LNS via the first network a message informing the contact LNS of the availability of the LAC for participating in load balancing,

wherein the contact LNS determines whether the contact LNS can handle a session with the LAC,

wherein if the contact LNS determines the contact LNS can handle the session, the contact LNS establishes the session with the LAC, and

wherein if the contact LNS determines the contact LNS cannot handle the session, the contact LNS sends to the LAC a message containing the IP address of the next LNS, and the LAC establishes a session with the next LNS via the second network.

20. The system of claim 19 wherein the contact LNS includes a table and the address of the next LNS is stored in the table.

21. The system of claim 19 wherein the contact LNS is included in a virtual LNS.

22. A system for load balancing, the system comprising:

means for an L2TP Access Concentrator (LAC) to obtain an address of a contact L2TP Network Server (LNS);

means for sending to the contact LNS from the LAC a message that indicates the LAC is available for participating in load balancing;

means for receiving from the contact LNS an address of a next available LNS;

means for establishing a connection and a session with the next available LNS; and

means for receiving data and forwarding the data to the next available LNS.

23. A computer readable medium for an L2TP Access Concentrator (LAC), the computer readable medium having stored therein program code executable by a processing unit of the LAC, the program code comprising:

first program code for causing the LAC to obtain an address of a contact L2TP Network Server (LNS);

second program code for causing the LAC to send to the contact LNS at the address of the contact LNS a message that indicates the LAC is available for participating in load balancing;

third program code for receiving from the contact LNS an address of a next available LNS;

fourth program code for establishing a connection and a session with the next available LNS; and

fifth program code for receiving data and forwarding the data to the next available LNS.

Assignments (7)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 9, 2022
From: OT PATENT ESCROW, LLC
To: VALTRUS INNOVATIONS LIMITED
Reel/Frame 059058/0720 →
PATENT ASSIGNMENT, SECURITY INTEREST, AND LIEN AGREEMENT Recorded Jan 26, 2021
From: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP; HEWLETT PACKARD ENTERPRISE COMPANY
To: OT PATENT ESCROW, LLC
Reel/Frame 055269/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 9, 2015
From: HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P.
To: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP
Reel/Frame 037079/0001 →
CORRECTIVE ASSIGNMENT PREVIUOSLY RECORDED ON REEL 027329 FRAME 0001 AND 0044. Recorded May 1, 2012
From: HEWLETT-PACKARD COMPANY
To: HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P.
Reel/Frame 028911/0846 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 6, 2011
From: HEWLETT-PACKARD COMPANY
To: HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P.
Reel/Frame 027329/0044 →
CORRECTIVE ASSIGNMENT TO CORRECT THE SEE ATTACHED Recorded Jul 15, 2010
From: 3COM CORPORATION
To: HEWLETT-PACKARD COMPANY
Reel/Frame 025039/0844 →
MERGER Recorded Jul 6, 2010
From: 3COM CORPORATION
To: HEWLETT-PACKARD COMPANY
Reel/Frame 024630/0820 →