IP Library › Granted Patent US 10,491,523
Granted Patent B2
US 10,491,523 · App. 15/645,292 · Granted Nov 26, 2019

Load distribution in data networks

Inventors: Swaminathan Sankar (San Jose, CA); Hasnain Karampurwala (San Clara, CA); Rahul Gupta (Fremont, CA); Gurudeep Kamat (San Jose, CA); Rishi Sampat (San Clara, CA); Rajkumar Jalan (Saratoga, CA)
Assignee: A10 Networks, Inc.
H04L47/125H04L67/101H04L67/1012H04L67/1025H04L67/1031
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 10,491,523
App. No.
15/645,292
Granted
Nov 26, 2019
Kind
B2
Abstract

Provided are methods and systems for load distribution in a data network. A method for load distribution in the data network comprises retrieving network data associated with the data network and service node data associated with one or more service nodes. The method further comprises analyzing the retrieved network data and service node data. Based on the analysis, a service policy is generated. Upon receiving one or more service requests, the one or more service requests are distributed among the service nodes according to the service policy.

Claims (57)

1. A system for service load distribution m a data network, the system comprising:

a cluster master configured to:

generate a service policy for distributing one or more service requests among a plurality of load balancing devices in the data network; and

provide the service policy to the plurality of load balancing devices associated with the data network; and

the plurality of load balancing devices configured to:

distribute the one or more service requests according to the service policy by:

distributing the one or more service requests evenly among load balancing devices of a first portion of the plurality of load balancing devices; and

upon receipt of the one or more service requests by each of the first portion of the plurality of load balancing devices, distributing, by each of the first portion of the plurality of load balancing devices, the one or more service requests asymmetrically among load balancing devices of a second portion of the plurality of load balancing devices.

2. The system of claim 1 , wherein the cluster master is further configured to:

retrieve network data associated with the data network;

retrieve service node data associated with one or more service nodes; and

analyze the network data and the service node data;

wherein the generating the service policy is based on the analysis of the network data and the service node data.

3. The system of claim 1 , wherein the plurality of load balancing devices associated with the data network includes a plurality of routers, a plurality of traffic classification engines, and a plurality of service nodes.

4. The system of claim 3 , wherein the distributing the one or more service requests evenly among the load balancing devices of the first portion of the plurality of load balancing devices includes distributing, by the plurality of routers, the one or more service requests evenly among the plurality of traffic classification engines, and

wherein the distributing the one or more service requests asymmetrically among the load balancing devices of the second portion of the plurality of load balancing devices includes distributing, by the plurality of traffic classification engines, the one or more service requests asymmetrically among the plurality of service nodes.

5. The system of claim 4 , wherein one or more of the plurality of service nodes are configured to distribute the one or more service requests to one or more backend servers according to the service policy.

6. The system of claim 4 , wherein one or more of the plurality of service nodes are configured to:

receive the one or more service requests;

determine, based on the service policy, that the one or more service requests are associated with a traffic flow associated with a further service node of the plurality of service nodes; and

redirect the one or more service requests to the further service node.

7. The system of claim 6 , wherein the further service node includes one of the following: a new owner of the traffic flow and an old owner of the traffic flow.

8. The system of claim 1 , wherein the plurality of load balancing devices are further configured to perform a health check of one or more backend servers, wherein the health check includes at least a service check and a connectivity check.

9. The system of claim 8 , wherein the service check is performed by one or more of the plurality of load balancing devices and shared among all of the plurality of load balancing devices, and wherein the connectivity check is performed by each of the plurality of load balancing devices.

10. A method for service load distribution in a data network, the method comprising:

generating a service policy for distributing one or more service requests among a plurality of load balancing devices in the data network;

providing the service policy to the plurality of load balancing devices associated with the data network; and

distributing the one or more service requests to the plurality of load balancing devices according to the service policy by:

distributing the one or more service requests evenly among load balancing devices of a first portion of the plurality of load balancing devices; and

upon receipt of the one or more service requests by each of the first portion of the plurality of load balancing devices, distributing, by each of the first portion of the plurality of load balancing devices, the one or more service requests asymmetrically among load balancing devices of a second portion of the plurality of load balancing devices.

11. The method of claim 10 , further comprising:

retrieving network data associated with the data network;

retrieving service node data associated with one or more service nodes; and

analyzing the network data and the service node data;

wherein the generating of the service policy is based on the analysis of the network data and the service node data.

12. The method of claim 11 , wherein the distributing the one or more service requests evenly among the load balancing devices of the first portion of the plurality of load balancing devices includes distributing the one or more service requests evenly among a plurality of traffic classification engines, and wherein the distributing the one or more service requests asymmetrically among the load balancing devices of the second portion of the plurality of load balancing devices includes distributing the one or more service requests asymmetrically among a plurality of service nodes.

13. The method of claim 12 , further comprising distributing, by one or more of the plurality of service nodes, the one or more service requests to one or more backend servers according to the service policy.

14. The method of claim 13 , further comprising:

receiving, by one or more of the plurality of service nodes, the one or more service requests;

determining, by one or more of the plurality of service nodes, based on the service policy, that the one or more service requests are associated with a traffic flow associated with a further service node of the plurality of service nodes; and

redirecting, by the one or more of the plurality of service nodes, the one or more service requests to the further service node.

15. The method of claim 10 , further comprising performing a health check of one or more backend servers, wherein the health check includes at least a service check and a connectivity check.

16. The method of claim 15 , wherein the performing the service check of the one or more backend servers includes:

performing the service check by one or more of the plurality of load balancing devices; and

sharing the service check among all of the plurality of load balancing devices.

17. The method of claim 15 , wherein the performing the connectivity check of the one or more backend servers includes performing the connectivity check by each of the plurality of load balancing devices.

18. A system for service load distribution m a data network, the system comprising:

a cluster master configured to:

generate a service policy for distributing one or more service requests among a plurality of load balancing devices in the data network; and

provide the service policy to the plurality of load balancing devices associated with the data network; and

the plurality of load balancing devices including a plurality of routers, a plurality of traffic classification engines, and a plurality of service nodes, wherein the plurality of load balancing devices is configured to:

distribute the one or more service requests according to the service policy by:

distributing the one or more service requests evenly among load balancing devices of a first portion of the plurality of load balancing devices; and

upon receipt of the one or more service requests by each of the first portion of the plurality of load balancing devices, distributing, by each of the first portion of the plurality of load balancing devices, the one or more service requests asymmetrically among load balancing devices of a second portion of the plurality of load balancing devices; and

perform a health check of one or more backend servers, wherein the health check includes at least a service check and a connectivity check;

wherein the service check is performed by one or more of the plurality of load balancing devices and shared among all of the plurality of load balancing devices; and

wherein the connectivity check is performed by each of the plurality of load balancing devices.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 10, 2017
From: SANKAR, SWAMINATHAN; KARAMPURWALA, HASNAIN; GUPTA, RAHUL; KAMAT, GURUDEEP; SAMPAT, RISHI; JALAN, RAJKUMAR
To: A10 NETWORKS, INC.
Reel/Frame 042954/0250 →
Continuity (11)
Continuation 14029656 · Sep 17, 2013
Continuation In Part 14279270 · May 15, 2014
Continuation In Part 14029656 · Sep 17, 2013
Continuation In Part 13716128 · Dec 15, 2012
Continuation In Part 14320420 · Jun 30, 2014
Continuation In Part 14029656 · Sep 17, 2013
Continuation In Part 15645292
Continuation In Part 14326325 · Jul 8, 2014
Continuation In Part 14029656 · Sep 17, 2013
Provisional Application 61705618 · Sep 25, 2012
Related Publication 20170310596A1 · Oct 26, 2017
Cited By (1)
US 12,531,807