Systems and methods for providing client-side dynamic redirection to bypass an intermediary
First Claim
1. A method for redirecting, on a client, a communication of the client to a server to bypass an intermediary upon determining the intermediary is not useable to communicate by the client to the server, the method comprising the steps of:
- (a) establishing, by an acceleration program on a client, a first transport layer connection between the client and a server via an intermediary, the first transport layer connection carrying an established application layer session between each of a plurality of applications of the client and the server;
(b) transmitting via multiplexing over the established first transport layer connection, by the acceleration program, data of each of the established application layer sessions between the plurality of applications of the client and the server;
(c) determining, by the acceleration program responsive to not receiving a communication from the intermediary within a predetermined time, the intermediary is not useable to communicate by the client via the first transport layer connection;
(d) intercepting, by the acceleration program, a communication of a first established application layer session of the plurality of application layer sessions from a respective application of the client to the server;
(e) establishing, by the acceleration program, a second transport layer connection between the acceleration program and the server to bypass the intermediary; and
(f) transmitting via the established second transport layer connection, by the acceleration program, the intercepted communication transparently to the first established application layer session to continue the same first established application layer session with the server without disruption.
8 Assignments
0 Petitions
Accused Products
Abstract
The present invention is directed towards systems and methods for dynamically redirecting on a client communications of the client with a server to bypass an intermediary that is determined to be unavailable for such communications. An acceleration program on the client establishes a transport layer connection between the client and server, and intercepts communications of the client to the server. The transport layer connection may be established via an intermediary, such as a gateway, proxy or appliance. If the client-side acceleration program determines the intermediary is not available for communicating by the client to the server, the acceleration program automatically establishes a second transport layer connection to the server in order to bypass the intermediary. The acceleration program then transmits the intercepted communications of the client via the second transport layer connection to the server. The acceleration program may automatically redirect intercepted communications of the client to the server transparently to any user or application of the client.
-
Citations
23 Claims
-
1. A method for redirecting, on a client, a communication of the client to a server to bypass an intermediary upon determining the intermediary is not useable to communicate by the client to the server, the method comprising the steps of:
-
(a) establishing, by an acceleration program on a client, a first transport layer connection between the client and a server via an intermediary, the first transport layer connection carrying an established application layer session between each of a plurality of applications of the client and the server; (b) transmitting via multiplexing over the established first transport layer connection, by the acceleration program, data of each of the established application layer sessions between the plurality of applications of the client and the server; (c) determining, by the acceleration program responsive to not receiving a communication from the intermediary within a predetermined time, the intermediary is not useable to communicate by the client via the first transport layer connection; (d) intercepting, by the acceleration program, a communication of a first established application layer session of the plurality of application layer sessions from a respective application of the client to the server; (e) establishing, by the acceleration program, a second transport layer connection between the acceleration program and the server to bypass the intermediary; and (f) transmitting via the established second transport layer connection, by the acceleration program, the intercepted communication transparently to the first established application layer session to continue the same first established application layer session with the server without disruption. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. A system for redirecting, on a client, a communication of the client to a server to bypass an intermediary upon determining the intermediary is not useable to communicate by the client to the server, the system comprising:
-
means for establishing, by an acceleration program on a client, a first transport layer connection between the client and a server via an intermediary, the first transport layer connection carrying an established application layer session between each of a plurality of applications of the client and the server; means for transmitting via multiplexing over the established first transport layer connection, by the acceleration program, data of each of the established application layer sessions between the plurality of applications of the client and the server; means for determining, by the acceleration program responsive to not receiving a communication from the intermediary within a predetermined time, the intermediary is not useable to communicate by the client via the first transport layer connection; means for intercepting, by the acceleration program, a communication of a first established application layer session of the plurality of application layer sessions from a respective application of the client to the server; means for establishing, by the acceleration program, a second transport layer connection between the acceleration program and the server to bypass the intermediary; and means for transmitting via the established second transport layer connection, by the acceleration program, the intercepted communication transparently to the first established application layer session to continue the same first established application layer session with the server without disruption. - View Dependent Claims (13, 14, 15, 16, 17, 18, 19, 20, 21, 22)
-
-
23. A method for redirecting, on a client, a communication of the client to a server to bypass an intermediary upon determining the intermediary is not useable to communicate by the client to the server, the method comprising the steps of:
-
transmitting, by an acceleration program on a client, a plurality of packets of a plurality of applications of the client to establish a plurality of application layer sessions with a server via a first transport layer connection established between the client and the server via an intermediary; transmitting via multiplexing over the established first transport layer connection, by the acceleration program, data of each of the established application layer sessions of the plurality of applications of the client between the client and the server using an acceleration technique; determining, by the acceleration program, the intermediary is not useable to communicate by the client via the first transport layer connection; intercepting, by the acceleration program, a first packet of a first established application layer session of the plurality of application layer sessions from a respective application of the client to the server, wherein the first packet is not a request to establish or re-establish the first application layer session; establishing, by the acceleration program, a second transport layer connection between the acceleration program and the server to bypass the intermediary; determining that the first application is not capable of being accelerated by the client to the server via the second transport connection; and transmitting via the established second transport layer connection, by the acceleration program, the intercepted first packet transparently to the first established application layer session of the application of the client to continue the same first established application layer session with the server without disruption, without using an acceleration technique, responsive to the determination.
-
Specification