Stateless load-balancing across multiple tunnels
First Claim
Patent Images
1. A method comprising:
- receiving, by an access point, a communication request and at least one identifier from a wireless device;
first determining, by the access point, a plurality of potential tunnel endpoints for the wireless device;
second determining whether to perform load balancing on a per flow basis or per the wireless device;
selecting, based on the at least one identifier and the plurality of potential tunnel endpoints, at least one preferred endpoint for the wireless device, the selecting comprising;
in response to a decision by the second determining to perform load balancing on a per flow basis, selecting at least one flow identifier from the wireless device as the at least one identifier;
in response to a decision by the second determining to perform load balancing per the wireless device, obtaining a device identifier from the wireless device as the at least one identifier; and
establishing a tunnel between the access point and the at least one preferred endpoint, wherein the tunnel transfers traffic for the wireless device.
1 Assignment
0 Petitions
Accused Products
Abstract
Systems, methods, and computer-readable storage media for load-balancing are disclosed. An access point receives a communication request and an identifier from a wireless device. The access point determines a plurality of potential endpoints and selects at least one preferred potential endpoint for the wireless device, based on the identifier and the plurality of potential endpoints. The access point establishes a tunnel between the access point and the preferred endpoint for routing traffic associated with the wireless device.
-
Citations
19 Claims
-
1. A method comprising:
-
receiving, by an access point, a communication request and at least one identifier from a wireless device; first determining, by the access point, a plurality of potential tunnel endpoints for the wireless device; second determining whether to perform load balancing on a per flow basis or per the wireless device; selecting, based on the at least one identifier and the plurality of potential tunnel endpoints, at least one preferred endpoint for the wireless device, the selecting comprising; in response to a decision by the second determining to perform load balancing on a per flow basis, selecting at least one flow identifier from the wireless device as the at least one identifier; in response to a decision by the second determining to perform load balancing per the wireless device, obtaining a device identifier from the wireless device as the at least one identifier; and establishing a tunnel between the access point and the at least one preferred endpoint, wherein the tunnel transfers traffic for the wireless device. - View Dependent Claims (2, 3, 4, 5, 6, 7, 17)
-
-
8. An access point on a wireless network, the access point comprising:
-
a processor; and a computer-readable storage medium having stored therein instructions which, when executed by the processor, cause the processor to perform operations comprising; receive a communication request and at least one identifier from a first wireless device; first determine a plurality of potential tunnel endpoints for the first wireless device; second determine whether to perform load balancing on a per flow basis or per the wireless device; perform a hashing function using the at least one identifier and an internet protocol (IP) address corresponding to each of the plurality of potential tunnel endpoints; select, based on the hashing function, at least one preferred endpoint for the first wireless device, comprising; in response to a decision by the second determine to perform load balancing on a per flow basis, select at least one flow identifier from the wireless device as the at least one identifier; in response to a decision by the second determine to perform load balancing per the wireless device, obtaining a device identifier from the wireless device as the at least one identifier; and establish a tunnel between the access point and the at least one preferred endpoint, wherein the tunnel transfers traffic for the first wireless device. - View Dependent Claims (9, 10, 11, 12, 18)
-
-
13. A non-transitory computer-readable storage medium having stored therein instructions which, when executed by a processor, cause the processor to perform operations comprising:
-
receiving, by an access point, a communication request and at least one identifier from a wireless device; first determining, by the access point, a plurality of potential tunnel endpoints for the wireless device; second determining whether to perform load balancing on a per flow basis or per the wireless device; selecting, based on the at least one identifier and the plurality of potential tunnel endpoints, at least one preferred endpoint for the wireless device, the selecting comprising; in response to a decision by the second determining to perform load balancing on a per flow basis, selecting at least one flow identifier from the wireless device as the at least one identifier; in response to a decision by the second determining to perform load balancing per the wireless device, obtaining a device identifier from the wireless device as the at least one identifier; and establishing a tunnel between the access point and the at least one preferred endpoint, wherein the tunnel transfers traffic for the wireless device. - View Dependent Claims (14, 15, 16, 19)
-
Specification