Method and apparatus for a client connection manager
First Claim
Patent Images
1. A method comprising:
- receiving a plurality of client connection requests;
establishing a connection to the plurality of clients;
creating for each connection a data structure, the data structure having a state of the connection and a reference to buffers for the connection, the state of the connection being one of three states selected from the group consisting of active, inactive-idle, and inactive-sleep;
maintaining substantially persistent connections with the plurality of clients;
establishing a new client connection based on an active communication wherein the new client is not one of the plurality of clients with the maintained substantially persistent connections; and
killing a receive thread of an inactive-idle connection.
5 Assignments
0 Petitions
Accused Products
Abstract
A method and apparatus for a connection manager have been disclosed. By providing for persistent connections with clients, the connection manager allows for servers to communicate with clients, which would otherwise be inaccessible.
17 Citations
13 Claims
-
1. A method comprising:
-
receiving a plurality of client connection requests; establishing a connection to the plurality of clients; creating for each connection a data structure, the data structure having a state of the connection and a reference to buffers for the connection, the state of the connection being one of three states selected from the group consisting of active, inactive-idle, and inactive-sleep; maintaining substantially persistent connections with the plurality of clients; establishing a new client connection based on an active communication wherein the new client is not one of the plurality of clients with the maintained substantially persistent connections; and killing a receive thread of an inactive-idle connection. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A method comprising:
-
receiving a plurality of client connection requests; establishing a connection to the plurality of clients; creating for each connection a data structure, the data structure having a state of the connection and a reference to buffers for the connection, the state of the connection being one of three states selected from the group consisting of active, inactive-idle, and inactive-sleep; maintaining substantially persistent connections with the plurality of clients; determining if a connection threshold has been reached; when the connection threshold has been reached scanning all the data structures for a candidate connection to be transitioned to inactive-idle; when the connection threshold has not been reached determining if a performance threshold has been reached; when the performance threshold has been reached scanning all the data structures for a candidate connection to be transitioned to inactive-idle; and when the candidate connection to be transitioned to inactive-idle has been identified then for the identified candidate connection, freeing the identified candidate connection buffers, freeing other identified candidate connection resources, removing the identified candidate connection from the active state of connection and indicating the state of connection of the identified candidate connection as inactive-idle. - View Dependent Claims (11)
-
-
12. A method comprising:
-
receiving a plurality of client connection requests; establishing a connection to the plurality of clients; creating for each connection a data structure, the data structure having a state of the connection and a reference to buffers for the connection, the state of the connection being one of three states selected from the group consisting of active, inactive-idle, and inactive-sleep; maintaining substantially persistent connections with the plurality of clients; determining if a connection threshold has been reached; when a performance threshold has been reached scanning all the data structures for a candidate connection to be transitioned to inactive-sleep; and further comprising when the candidate connection to be transitioned to inactive-sleep has been identified then for the identified candidate connection, caching the identified candidate connection state of connection to a slower access memory, freeing other identified candidate connection resources, removing the identified candidate connection from the active-idle state of connection and indicating the state of connection of the identified candidate connection as inactive-sleep. - View Dependent Claims (13)
-
Specification