Network protocol proxy
First Claim
Patent Images
1. A method of managing a plurality of network connections, the method comprising:
- by a network proxy implemented on a first host system comprising computer hardware;
intercepting a network connection request from an application running on the first host system, the network connection request intended to open a single logical network connection to a second host system;
in response to intercepting the network connection request, opening a plurality of parallel logical network connections to the second host system instead of the single logical network connection;
establishing a congestion control connection with the second host system, wherein the network proxy implemented on the first host system is configured to send test packets to a remote network proxy implemented on the second host system;
receiving a message from the application;
monitoring, by at least one of the network proxy and the remote network proxy, the congestion control connection to determine a level of congestion; and
transmitting the message to the second host system over the plurality of parallel logical network connections.
22 Assignments
0 Petitions
Accused Products
Abstract
A network proxy can be provided as a layer between an application layer protocol (such as the Remote Desktop Protocol) and a transport layer protocol (such as TCP). The network proxy can intercept communications between the application layer protocol and the transport layer protocol. The network proxy can transmit communications on multiple connections, without the application layer or transport layer protocols being aware of the parallelization.
-
Citations
22 Claims
-
1. A method of managing a plurality of network connections, the method comprising:
by a network proxy implemented on a first host system comprising computer hardware; intercepting a network connection request from an application running on the first host system, the network connection request intended to open a single logical network connection to a second host system; in response to intercepting the network connection request, opening a plurality of parallel logical network connections to the second host system instead of the single logical network connection; establishing a congestion control connection with the second host system, wherein the network proxy implemented on the first host system is configured to send test packets to a remote network proxy implemented on the second host system; receiving a message from the application; monitoring, by at least one of the network proxy and the remote network proxy, the congestion control connection to determine a level of congestion; and transmitting the message to the second host system over the plurality of parallel logical network connections. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
8. A system for managing a plurality of network connections, the system comprising:
-
a hardware appliance on a host computer system, the hardware appliance having a network proxy implement therein, the network proxy comprising; an interceptor module configured to intercept a connection request from an application process attempting to open a single logical connection from the application process to a remote host system; a connections manager configured to; establish parallel logical connections to the remote host system in place of the single logical connection; establish a congestion control connection with the remote host system, wherein the network proxy implemented on the host computer system is configured to send test packets to a remote network proxy implemented on the remote host system; receiving a message from the application process; monitor, by at least one of the network proxy and the remote network proxy, the congestion control connection to determine a level of congestion; and distribute a message to the remote host system over the parallel logical connections. - View Dependent Claims (9, 10, 11, 12, 13, 14, 15)
-
-
16. A system for managing a plurality of network connections, the system comprising:
a hardware appliance on a client computer system, the hardware appliance having a client network proxy implemented therein, the client network proxy comprising; an injector module configured to inject an interceptor module into an application process executing on the client computer system; the interceptor module configured to intercept a connection request from the application process, the connection request intended to open a single Transmission Control Protocol (TCP) connection to a remote host system; a connections manager configured to; establish parallel TCP connections to a server network proxy implemented in the remote host system in place of the single TCP connection, the parallel TCP connections being abstracted from the application process; establish a congestion control connection with the remote host system, wherein the client network proxy implemented on the client computer system is configured to send test packets to the server network proxy implemented in the remote host system; receiving a message from the application process; monitor, by at least one of the client network proxy and the server network proxy, the congestion control connection to determine a level of congestion; and distribute a message received from the application process over the parallel TCP connections to the server network proxy. - View Dependent Claims (17)
-
18. A non-transitory computer-readable storage medium comprising computer-executable instructions configured to implement a method of managing a plurality of network connections, the method comprising:
-
intercepting, with a network proxy running on a first host system, a network connection request from an application running on the first host system in response to intercepting the network connection request, opening a plurality of logical network connections to a second host system; establishing a congestion control connection with the second host system, wherein the network proxy implemented on the first host system is configured to send test packets to a remote network proxy implemented on the second host system; receiving a message from the application; monitoring, by at least one of the network proxy and the remote network proxy, the congestion control connection to determine a level of congestion; and transmitting the message to the second host system over the plurality of logical network connections. - View Dependent Claims (19, 20, 21, 22)
-
Specification