Network proxy with asymmetric connection connectivity
First Claim
1. A method comprising:
- storing, with a network device, respective wait times for a plurality of classes of network connections for a network protocol, wherein each of the wait times defines a time to wait before initiating a process to determine whether a network connection for the respective classes of network connections has failed, and wherein at least two of the wait times for the plurality of classes of network connections specify different wait times;
collecting statistical information from current network connections of the network device;
calculating the wait times for the plurality of classes of network connections based on the statistical information;
automatically identifying a new class of network connections based on the statistical information by identifying a set of the current network connections having a substantially similar time until failure that is different from the wait times for the currently defined plurality of classes of network connections;
calculating a wait time for the new class of network connections based on the statistical information;
establishing a socket with the network device for a network connection to a second network device, wherein the network connection is associated with a first one of the plurality of classes of network connections; and
initiating the process to determine whether the network connection has failed when the wait time for the first one of the plurality of classes of network connections has passed since a last successful communication on the second network connection.
1 Assignment
0 Petitions
Accused Products
Abstract
Techniques are described in which a network device waits differing amounts of time for different network sockets before beginning processes to determine whether respective network connections from the network sockets have failed. An intermediate device may create a network socket for a network connection having a keep-alive wait time option set to a keep-alive wait time associated with a class of the network connection. If an amount of time specified by the keep-alive option of the socket passes after a last successful communication on the network connection, the socket may begin a process to determine whether the network connection has failed. If the intermediate device determines that the network connection has failed, the intermediate device may terminate the connection to free resources on the intermediate device allocated to the network connection.
39 Citations
24 Claims
-
1. A method comprising:
-
storing, with a network device, respective wait times for a plurality of classes of network connections for a network protocol, wherein each of the wait times defines a time to wait before initiating a process to determine whether a network connection for the respective classes of network connections has failed, and wherein at least two of the wait times for the plurality of classes of network connections specify different wait times; collecting statistical information from current network connections of the network device; calculating the wait times for the plurality of classes of network connections based on the statistical information; automatically identifying a new class of network connections based on the statistical information by identifying a set of the current network connections having a substantially similar time until failure that is different from the wait times for the currently defined plurality of classes of network connections; calculating a wait time for the new class of network connections based on the statistical information; establishing a socket with the network device for a network connection to a second network device, wherein the network connection is associated with a first one of the plurality of classes of network connections; and initiating the process to determine whether the network connection has failed when the wait time for the first one of the plurality of classes of network connections has passed since a last successful communication on the second network connection. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15)
-
-
16. A network device comprising:
a processor; a socket creation module, executing on the processor, to establish a first socket of a network device to manage a first network connection that is a member of a first class of network connections in a network protocol and to establish a second socket of the network device to manage a second network connection that is a member of a second class of network connections in the network protocol; a statistical collection module, executing on the processor, to collect statistical information about network connections of the network device; and an optimization module, executing on the processor to calculate a network connection keep-alive wait time for the first class of network connections and a network connection keep-alive wait time for the second class of network connections based on the statistical information, wherein the optimization module automatically identifies a new class of network connections based on the statistical information and calculates a network connection keep-alive wait time for the new class of network connections based on the statistical information, wherein the first socket determines whether the first network connection is still active when an amount of time that has passed since a last successful communication on the first network connection exceeds the network connection keep-alive wait time for the first class of network connections, wherein the second socket determines whether the second network connection is still active when an amount of time that has passed since a last successful communication on the second network connection exceeds the network connection keep-alive wait time for the second class of network connections, and wherein the network connection keep-alive wait time of the first socket is different than the network connection keep-alive wait time for the second socket. - View Dependent Claims (17, 18, 19, 20, 21, 22, 23, 24)
Specification