×

Distributed load balancer

  • US 10,069,903 B2
  • Filed: 04/16/2013
  • Issued: 09/04/2018
  • Est. Priority Date: 04/16/2013
  • Status: Active Grant
First Claim
Patent Images

1. A distributed load balancer system, comprising:

  • a plurality of load balancer nodes in a provider network; and

    a plurality of server nodes in the provider network, each comprising a server and a load balancer module;

    wherein the plurality of load balancer nodes is configured to distribute packet flows from one or more clients among the plurality of server nodes, wherein, to distribute the packet flows among the plurality of server nodes, the plurality of load balancer nodes is configured to;

    select server nodes from among the plurality of server nodes to receive connection requests for the packet flows from the one or more clients; and

    send the connection requests to the selected server nodes;

    wherein the load balancer module on each server node is configured to;

    receive a connection request of a client for a packet flow from one of the plurality of load balancer nodes;

    determine if a data communications protocol connection for the packet flow is to be accepted by the server on the server node;

    if the server cannot accept the data communications protocol connection, reject the connection request; and

    if the server can accept the data communications protocol connection, cooperate with the plurality of load balancer nodes to establish the data communications protocol connection for the packet flow between the client and the server;

    wherein, after establishing the data communications protocol connection for the packet flow between the client and the server, the load balancer module on each server node is further configured to;

    receive incoming data communications protocol packets for the data communications protocol connection from one of the load balancer nodes;

    send the received incoming data communications protocol packets to the server on the server node;

    select one of the plurality of load balancer nodes to act as an egress server for the data communications protocol connection, wherein the selection is based at least in part on an identifier for the packet flow between the client and the server;

    intercept outgoing data communications protocol packets for the data communications protocol connection; and

    send the intercepted outgoing data communications protocol packets to the selected egress server for delivery to the client.

View all claims
  • 1 Assignment
Timeline View
Assignment View
    ×
    ×