Link load balancer that controls a path for a client to connect to a resource
First Claim
1. A non-transitory computer readable storage device having computer-executable instructions stored thereon, the computer-executable instructions when installed on a client device cause the client device to perform actions, comprising:
- establishing a connection over a path to a server, the connection enabling a session between the client device and the server;
collecting path data about a plurality of different possible connections between the client device and the server, the path data including metrics about each of the plurality of different possible connections based on at least one of a network ping, a probe, or a path characteristic that includes at least one of a network device failure indication or a security metric;
selecting a link by evaluating each of the plurality of possible connections based on the collected path data; and
establishing an alternate connection for the session to the same server over the selected link, wherein the alternate connection enables the session between the client device and the same server to be maintained and further preserving a same last hop to the same server for the session.
1 Assignment
0 Petitions
Accused Products
Abstract
A system, apparatus, and method are directed to managing network communications between a client and a server by enabling the client to make decisions involving the selection of alternate network paths. The client and/or the server may be multi-homed to a network. In one embodiment, a link load balancer provides the client with a message and/or path data that enables the client to improve its connections with the server by redirecting network packets using an alternate network path. The message may be based on a static policy at the server, changes in availability of the network connections between the client and server, changes in a quality of the network connections, paths, or the like. Redirecting the network packet by the client may include closing one network connection and establishing another network connection, and/or employing an available alternate network path to re-route network packets towards the server.
-
Citations
17 Claims
-
1. A non-transitory computer readable storage device having computer-executable instructions stored thereon, the computer-executable instructions when installed on a client device cause the client device to perform actions, comprising:
-
establishing a connection over a path to a server, the connection enabling a session between the client device and the server; collecting path data about a plurality of different possible connections between the client device and the server, the path data including metrics about each of the plurality of different possible connections based on at least one of a network ping, a probe, or a path characteristic that includes at least one of a network device failure indication or a security metric; selecting a link by evaluating each of the plurality of possible connections based on the collected path data; and establishing an alternate connection for the session to the same server over the selected link, wherein the alternate connection enables the session between the client device and the same server to be maintained and further preserving a same last hop to the same server for the session. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A client device, comprising:
-
a transceiver for receiving and sending packets over a network, the client device being further multi-homed to the network; and a processor that executes program instructions, including; establishing a connection over a path to a server, the connection enabling a session between the client device and the server; collecting path data about a plurality of different possible connections between the client device and the server, the path data including metrics about each of the plurality of different possible connections based on at least one of a network ping, a probe, or a path characteristic that includes at least one of a network device failure indication or a security metric; selecting a link by evaluating each of the plurality of possible connections based on the collected path data; and establishing an alternate connection to the same server over the link for the session, wherein the alternate connection enables the session between the client device and the same server to be maintained and further preserving a same last hop to the same server for the session. - View Dependent Claims (8, 9, 10, 11, 12)
-
-
13. A method of managing a communication over a network, comprising:
-
establishing a connection over a path to a server device, the connection enabling a session between a multi-homed client device and the server device; installing onto the client device a redirect agent that executes within the client device and performs actions, including; collecting path data about a plurality of different possible connections between the client device and the server device, the path data including metrics about each of the plurality of different possible connections based on at least one of a network ping, a probe, or a path characteristic that includes at least one of a network device failure indication or a security metric; selecting a link by evaluating each of the plurality of possible connections based on the collected path data; and establishing an alternate connection to the same server device over the link for the session, wherein the alternate connection enables the session between the client device and the same server device to be maintained and further preserving a same last hop to the same server for the session. - View Dependent Claims (14, 15, 16, 17)
-
Specification