Permanent connection oriented communication using parallel single connection circuits
First Claim
Patent Images
1. A method in a client computing system for providing a pseudo permanent communication connection by using a pool of communication connections, comprising:
- receiving a first request from a first client application to send data to a server;
opening a first communications data connection from the pool of communication connections to the server in response to the first request;
transmitting, over the opened first communications data connection, the first request to send data to the server;
initiating an opening of a second communications data connection from the pool of communication connections to the server in response to the first request, wherein the second communications data connection is established while the first communications data connection is open;
receiving a second request to send data to the server;
determining whether the first request to send data has completed over the first communications data connection and determining whether the first communication data connection is still open;
in response to determining that the first request to send data has completed and that the first communication data connection is still open, transmitting the second request to send data over the opened first communications data connection while maintaining the second communications data connection for subsequent requests;
in response to determining that the first request to send data has not completed, transmitting the second request to send data over the opened second communications data connection, and opening a third communications data connection from the pool of communication connections; and
in response to determining that the first request to send data has completed and that the first communication data connection is closed, transmitting the second request to send data over the opened second communications data connection, and opening the third communications data connection from the pool of communication connections.
1 Assignment
0 Petitions
Accused Products
Abstract
Methods, systems, and techniques for providing a pseudo permanent communications connection using temporary connection protocols are described. Example embodiments provide a Enhanced Communications Layer that provides such connections by means of a layer incorporated in the client side and server side communications stacks. The ECL maintains a pool of connections that are opened and used in a staggered fashion to reduce the amount of connection setup and teardown.
29 Citations
20 Claims
-
1. A method in a client computing system for providing a pseudo permanent communication connection by using a pool of communication connections, comprising:
-
receiving a first request from a first client application to send data to a server; opening a first communications data connection from the pool of communication connections to the server in response to the first request; transmitting, over the opened first communications data connection, the first request to send data to the server; initiating an opening of a second communications data connection from the pool of communication connections to the server in response to the first request, wherein the second communications data connection is established while the first communications data connection is open; receiving a second request to send data to the server; determining whether the first request to send data has completed over the first communications data connection and determining whether the first communication data connection is still open; in response to determining that the first request to send data has completed and that the first communication data connection is still open, transmitting the second request to send data over the opened first communications data connection while maintaining the second communications data connection for subsequent requests; in response to determining that the first request to send data has not completed, transmitting the second request to send data over the opened second communications data connection, and opening a third communications data connection from the pool of communication connections; and in response to determining that the first request to send data has completed and that the first communication data connection is closed, transmitting the second request to send data over the opened second communications data connection, and opening the third communications data connection from the pool of communication connections. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A non-transitory computer-readable medium having contents that, when executed, enable a computing device to provide a pseudo permanent communication connection by performing a method comprising:
-
receiving a first request from a first client application to send data to a server; opening a first communications data connection from a pool of communication connections to the server in response to the first request; transmitting, over the opened first communications data connection, the first request to send data to the server; initiating an opening of a second communications data connection from the pool of communication connections to the server in response to the first request, wherein the second communications data connection is established while the first communications data connection is open; receiving a second request to send data to the server; determining whether the first request to send data has completed over the first communications data connection and determining whether the first communication data connection is still open; in response to determining that the first request to send data has completed and that the first communication data connection is still open, transmitting the second request to send data over the opened first communications data connection while maintaining the second communications data connection for subsequent requests; in response to determining that the first request to send data has not completed, transmitting the second request to send data over the opened second communications data connection, and opening a third communications data connection from the pool of communication connections; and in response to determining that the first request to send data has completed and that the first communication data connection is closed, transmitting the second request to send data over the opened second communications data connection, and opening the third communications data connection from the pool of communication connections. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. A computing system comprising:
-
a memory; a module stored on the memory that is configured, when executed, to; receive a first request from a first client application to send data to a server; open a first communications data connection from the pool of communication connections to the server in response to the first request; transmit, over the opened first communications data connection, the first request to send data to the server; initiate an opening of a second communications data connection from the pool of communication connections to the server in response to the first request, wherein the second communications data connection is established while the first communications data connection is open; receive a second request to send data to the server; determine whether the first request to send data has completed over the first communications data connection and determining whether the first communication data connection is still open; in response to determining that the first request to send data has completed and that the first communication data connection is still open, transmit the second request to send data over the opened first communications data connection while maintaining the second communications data connection for subsequent requests; in response to determining that the first request to send data has not completed, transmit the second request to send data over the opened second communications data connection, and open a third communications data connection from the pool of communication connections; and in response to determining that the first request to send data has completed and that the first communication data connection is closed, transmitting the second request to send data over the opened second communications data connection, and opening the third communications data connection from the pool of communication connections. - View Dependent Claims (16, 17, 18, 19, 20)
-
Specification