System and method for transferring data in high latency firewalled networks
First Claim
1. A method of increasing data transfer rates in a network including a firewall, the method comprising:
- receiving a connection request from a client for a plurality of parallel connections to a specified server process operating at a server, the connection request received at the server on a communication port;
transmitting a list of available server ports to the client in response to the connection request;
receiving a first request from the client for a connection to a first one of the available server ports, the first request received at the server on said communication port;
accepting a first connection to the client, the first connection accepted at the server on said communication port;
creating a first process at the server to manage the first connection to the client on said communication port;
establishing a first local connection to the specified server process, the connection established by the first process to the first one of the available server ports on the specified server process;
receiving a second request from the client for a connection to a second one of the available server ports, the second request received at the server on said communication port;
accepting a second connection to the client, the second connection accepted at the server on said communication port;
creating a second process at the server to manage the second connection to the client on said communication port;
establishing a second local connection to the specified server process, the connection established by the second process to the second one of the available server ports on the specified server process; and
executing a data transfer between the specified server process and the client, wherein the data transfer occurs in parallel on the first connection and the second connection at the server on said communication port, and wherein the first process and the second process relay data between the first and second ones of the available server ports on the specified server process and the client via the first connection and the second connection at the server on said communication port.
6 Assignments
0 Petitions
Accused Products
Abstract
A system and method are provided for establishing multiple parallel connections between a client and a server on a single server port. Data may be transferred on the multiple parallel connections between the server and the client through an opening in a network firewall that corresponds to the single server port. A control process may accept N connection requests from a client then transfer each accepted connection to a relay process that manages that connection. Each relay process may relay data between the server and the client via the single server port. A single collective data transfer may be executed on the N parallel connections, thereby increasing throughput and data transfer rates. If the data transfer rate is primarily limited by network latency, using N parallel connections provides the advantage of increasing the data transfer rate by approximately a factor of N.
-
Citations
52 Claims
-
1. A method of increasing data transfer rates in a network including a firewall, the method comprising:
-
receiving a connection request from a client for a plurality of parallel connections to a specified server process operating at a server, the connection request received at the server on a communication port;
transmitting a list of available server ports to the client in response to the connection request;
receiving a first request from the client for a connection to a first one of the available server ports, the first request received at the server on said communication port;
accepting a first connection to the client, the first connection accepted at the server on said communication port;
creating a first process at the server to manage the first connection to the client on said communication port;
establishing a first local connection to the specified server process, the connection established by the first process to the first one of the available server ports on the specified server process;
receiving a second request from the client for a connection to a second one of the available server ports, the second request received at the server on said communication port;
accepting a second connection to the client, the second connection accepted at the server on said communication port;
creating a second process at the server to manage the second connection to the client on said communication port;
establishing a second local connection to the specified server process, the connection established by the second process to the second one of the available server ports on the specified server process; and
executing a data transfer between the specified server process and the client, wherein the data transfer occurs in parallel on the first connection and the second connection at the server on said communication port, and wherein the first process and the second process relay data between the first and second ones of the available server ports on the specified server process and the client via the first connection and the second connection at the server on said communication port. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A method for increasing data transfer rates in a network including a firewall, the method comprising:
-
accepting a first connection to a client, the first connection accepted at a server on a communication port;
creating a first process at the server to manage the first connection to the client, wherein the first process manages the first connection to the client at the server on said communication port;
accepting a second connection to the client, the second connection accepted at the server on said communication port;
creating a second process at the server to manage the second connection to the client, wherein the second process manages the second connection to the client at the server on said communication port; and
transferring data in parallel between the client and the server using the first connection and the second connection at the server on said communication port. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24)
-
-
25. A system for increasing data transfer rates in a network including a firewall, the system comprising:
-
a control process operating at the server that accepts a first connection to a client and a second connection to the client, wherein the first connection and the second connection are accepted at the server on a communication port;
a first relay process that receives the first connection transferred by the control process; and
a second relay process that receives the second connection transferred by the control process. - View Dependent Claims (26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37)
-
-
38. A system for increasing data transfer rates in a network including a firewall, the system comprising:
-
a control process that accepts two or more connections to a client at the server on a communication port;
a first relay process that maintains a first connection to the client at the server on said communication port, wherein the first relay process is created by and receives the first connection from the control process;
a second relay process that maintains a second connection to a client at the server on said communication port, wherein the second relay process is created by and receives the second connection from the control process;
a server process that is accessed by the client such that data is transferred between the client and the server over the first connection and the second connection in parallel.
-
-
39. A system for increasing data transfer rates in a network including a firewall, the system comprising:
-
request receiving means for receiving a first request from a client for a connection to a first one of a plurality of available server ports and a second request from the client for a connection to a second one of the plurality of available server ports, the first request and the second request received at the server on a communication port;
connection accepting means for accepting a first connection and a second connection to the client, the first connection and the second connection accepted at the server on said communication port; and
data transfer means for transferring data in parallel between the client and the server using the first connection and the second connection. - View Dependent Claims (40, 41, 42, 43)
-
-
44. A system for increasing data transfer rates in a network including a firewall, the system comprising:
-
first connection accepting means for accepting a first connection to a client, the first connection accepted at a server on a communication port;
first process creating means for creating a first process to manage the first connection to the client at the server on said communication port;
second connection accepting means for accepting a second connection to the client, the second connection accepted at the server on said communication port; and
second process creating means for creating a second process to manage the second connection to the client at the server on said communication port.
-
-
45. A method of increasing data transfer rates in a network including a firewall, wherein the method is conducted by an operating system control process running at a server, the method comprising:
-
receiving a first request from a client for a connection to a server process, the first request received at the server on a communication port;
accepting a first connection to the client, the first connection accepted at the server on said communication port;
creating a first child process to manage the first connection to the client, wherein the first connection is transferred to the first child process by inheritance;
receiving a second request from the client for a connection to the server process, the second request received at the server on said communication port; and
accepting a second connection to the client, the second connection accepted at the server on said communication port. - View Dependent Claims (46, 47, 48, 49, 50)
-
-
51. A method of increasing data transfer rates in a network including a firewall, the method comprising:
-
receiving a first request from a client for a connection to a first available port on a server process, the first request received at the server on a communication port;
accepting a first connection to the client, the first connection accepted at the server on said communication port;
establishing a first local connection to the first available port on the server process;
receiving a second request from the client for a connection to a second available port on the server process, the second request received at the server on said communication port;
accepting a second connection to the client, the second connection accepted at the server on said communication port;
establishing a second local connection to the second available port on the server process;
transferring data in parallel between the client and the server process via the first connection, the first local connection, the second connection, and the second local connection. - View Dependent Claims (52)
-
Specification