Method and system for managing memory in an internet over satellite connection
First Claim
Patent Images
1. A method for managing memory for buffering information, said information comprising a plurality of packets, each of said packets comprising data and a header, in a system comprising a client, selected from a plurality of potential clients;
- a server, selected from a plurality of potential servers;
a first gateway, connected to said client by a first telecommunications link, said first gateway comprising a first buffer and a second buffer;
a second gateway, connected to said server by a second telecommunications link;
a third telecommunications link connecting said first gateway to said second gateway, said method comprising;
intercepting a connection attempt with said server using said first gateway, said connection attempt initiated by said client, said client capable of establishing connections at a first characteristic data rate;
establishing a connection between said first gateway and said second gateway over said third telecommunications link, said connection having a second characteristic data rate;
wherein said first buffer stores information received over said third telecommunications link and said second buffer stores information for said client;
setting an initial receive window size for said client at said first gateway;
determining a state in said second buffer, said state indicating if said second characteristic data rate in said third telecommunications link is greater than said first characteristic data rate for said client; and
resetting said receive window size for said client at said first gateway to reduce an amount of data received over said third telecommunications link for said client, if the state in the second buffer indicates said second characteristic data rate is greater than said first characteristic data rate.
13 Assignments
0 Petitions
Accused Products
Abstract
According to the present invention, a technique for managing memory for storing information communicated over one or more TCP connections over a wireless wide area network is provided. In an exemplary embodiment, the present invention provides methods and systems for controlling the buffering of information that flows over a TCP connection to an Xpress Transport Protocol (herein “XTP”) connection, for example.
-
Citations
29 Claims
-
1. A method for managing memory for buffering information, said information comprising a plurality of packets, each of said packets comprising data and a header, in a system comprising a client, selected from a plurality of potential clients;
-
a server, selected from a plurality of potential servers;
a first gateway, connected to said client by a first telecommunications link, said first gateway comprising a first buffer and a second buffer;
a second gateway, connected to said server by a second telecommunications link;
a third telecommunications link connecting said first gateway to said second gateway, said method comprising;
intercepting a connection attempt with said server using said first gateway, said connection attempt initiated by said client, said client capable of establishing connections at a first characteristic data rate;
establishing a connection between said first gateway and said second gateway over said third telecommunications link, said connection having a second characteristic data rate;
wherein said first buffer stores information received over said third telecommunications link and said second buffer stores information for said client;
setting an initial receive window size for said client at said first gateway;
determining a state in said second buffer, said state indicating if said second characteristic data rate in said third telecommunications link is greater than said first characteristic data rate for said client; and
resetting said receive window size for said client at said first gateway to reduce an amount of data received over said third telecommunications link for said client, if the state in the second buffer indicates said second characteristic data rate is greater than said first characteristic data rate. - View Dependent Claims (2, 3, 4, 5, 22, 23, 24, 25, 26, 27, 29)
said terminating said connection attempt comprises removing said header; and
said establishing said connection comprises adding a second header.
-
-
26. The method as in claim 1 wherein said determining said state and said resetting said receive window size are iteratively repeated.
-
27. The method as in claim 22 wherein said substantially identical first and second gateways further comprise a substantially identical functionality.
-
29. The method as in claim 24 wherein said establishing said connection comprises initiating a second connection between said first and second gateways, said second connection comprising an independent protocol connection between said first and second gateways.
- 6. The method of 1, wherein said connection between said first gateway and said second gateway comprises a satellite protocol.
-
8. A computer program product for managing memory for buffering information, said information comprising a plurality of packets, each of said packets comprising data and a header, in a system comprising a client, selected from a plurality of potential clients;
-
a server, selected from a plurality of potential servers;
a first gateway, connected to said client by a first telecommunications link, said first gateway comprising a first buffer and a second buffer;
a second gateway, connected to said server by a second telecommunications link;
a third telecommunications link connecting said first gateway to said second gateway, said computer program product comprising;
code for intercepting a connection attempt with said server, said connection attempt initiated by said client, said client capable of establishing connections at a first characteristic data rate;
code for establishing a connection between said first gateway and said second gateway over said third telecommunications link, said connection having a second characteristic data rate;
wherein said first buffer stores information received over said third telecommunications link and said second buffer stores information for said client;
code for setting an initial receive window size for said client at said first gateway;
code for determining a state in said second buffer, said state indicating if said second characteristic data rate in said third telecommunications link is greater than said first characteristic data rate for said client;
code for resetting said receive window size for said client at said first gateway to reduce an amount of data received over said third telecommunications link for said client, if the state in the second buffer indicates said second characteristic data rate is greater than said first characteristic data rate; and
a computer readable storage medium for holding the codes. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. A system for managing memory for buffering a flow of information over a satellite, said system comprising:
-
a client, selected from a plurality of potential clients;
a server, selected from a plurality of potential servers;
a first gateway, connected to said client by a first telecommunications link, said first gateway comprising a first buffer and a second buffer;
a second gateway, connected to said server by a second telecommunications link;
a third telecommunications link connecting said first gateway to said second gateway;
wherein said first gateway is operatively disposed to;
intercept a connection attempt with said server, said connection attempt initiated by said client, said client capable of establishing connections at a first characteristic data rate;
establish a connection between said first gateway and said second gateway over said third telecommunications link, said connection having a second characteristic data rate;
wherein said first buffer stores information received over said third telecommunications link and said second buffer stores information for said client;
set an initial receive window size for said client at said first gateway;
determine a state in said second buffer, said state indicating if said second characteristic data rate in said third telecommunications link is greater than said first characteristic data rate for said client; and
reset said receive window size for said client at said first gateway to reduce an amount of data received over said third telecommunications link for said client, if the state in the second buffer indicates said second characteristic data rate is greater than said first characteristic data rate. - View Dependent Claims (16, 17, 18, 19, 20, 21, 28)
-
Specification