IP Library Granted Patent US 9,723,055
Granted Patent B2
US 9,723,055 · App. 14/271,937 · Granted Aug 1, 2017

System and method for acceleration of a secure transmission over satellite

Inventors: Aditya N. Chatterjee (Montgomery Village, MD); Roberto Guimaraes (McLean, VA); Hanny P. Kadrichu (North Potomac, MD); Steven Bowers (Herndon, VA)
Assignee: Gilat Satellite Networks Ltd.
H04L67/02H04B7/1858H04B7/18582H04L12/1836H04L61/1511H04L63/0428H04L67/288H04L67/2842H04L67/2847H04L12/189H04L69/329
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,723,055
App. No.
14/271,937
Granted
Aug 1, 2017
Kind
B2
Abstract

A broadband communication system with improved latency is disclosed. The system employs acceleration of secure web-based communications over a satellite communication network. In accordance with aspects of the invention, secure protocol acceleration is employed such that required protocol signals transmitted from a computer employing a web browser may be intercepted by a remote terminal. To insure that the browser will continue transmitting data, the remote terminal generates required acknowledgment and security signals to continue the secure communication, which may then transmitted back to the computer. Meanwhile, the received protocol signals may be converted by the remote terminal for transmission through the satellite communications system in a format appropriate for that communication medium. Aspects of the invention further include a hub or similar device for communicating with the satellite communications system.

Claims (75)

1. A method, comprising:

receiving, at a device, a data page request from a remote station via a satellite link, the data page request indicating a data page to be retrieved, the data page request including a cookie comprising information related to the remote station;

identifying, by the device, a network address associated with the data page;

establishing a connection with a second device associated with the network address;

requesting, by the device, the data page from the second device associated with the network address;

receiving, at the device, the data page from the second device;

requesting, by the device, a plurality of objects referenced in the data page, wherein at least one of the plurality of objects is associated with the cookie;

compiling the plurality of objects into a data cluster;

compressing the data cluster;

transmitting the data cluster to the remote station;

receiving, from the remote station via the satellite link, a second data page request, the second data page request indicating a second data page to be retrieved, the second data page request not including the cookie;

requesting the second data page, the requesting the second data page comprising transmitting the cookie;

receiving the second data page; and

transmitting the second data page to the remote station.

2. The method of claim 1 , wherein the identifying the network address comprises:

generating and transmitting, by the device, a DNS request; and

receiving, at the device, an internet protocol (IP) address in response to the DNS request.

3. The method of claim 1 , wherein the identifying the network address comprises:

searching, by the device, a locally stored DNS table for an internet protocol (IP) address corresponding to the requested data page; and

retrieving, by the device, the IP address corresponding to the requested data page.

4. The method of claim 1 , further comprising storing, in a local cache, the cookie included within the data page request.

5. The method of claim 4 , wherein the local cache is included within the device.

6. The method of claim 1 , wherein the transmitting the data cluster comprises transmitting the data cluster as a multicast transmission.

7. The method of claim 1 , further comprising parsing the data page to determine the plurality of objects to be requested.

8. The method of claim 1 , further comprising assembling the plurality of objects to be requested into a plurality of lists.

9. The method of claim 8 , wherein the assembling comprises assembling the plurality of objects to be requested into the plurality of lists based on a web server associated with each object such that separate lists include objects associated with separate web servers.

10. The method of claim 9 , wherein the requesting the plurality of objects further comprises transmitting at least one of the lists to a respective web server.

11. The method of claim 1 , further comprising:

establishing a tunnel over the satellite link between the device and the remote station,

wherein transmitting the data cluster comprises:

encapsulating the data cluster in a container having a network address associated with the remote station; and

transmitting the container to the remote station via the tunnel.

12. The method of claim 11 , further comprising:

using a first encryption to encrypt data for transmission through the tunnel; and

using a second encryption to encrypt data for transmission through the connection with the second device, the second encryption being different from the first encryption.

13. The method of claim 1 , further comprising:

prior to the transmitting the data cluster, multicasting the data page to the remote station.

14. The method of claim 13 , further comprising:

evaluating contents of the data page; and

marking the data page as a page to be multicasted based on a result of the evaluating.

15. The method of claim 1 , further comprising:

receiving, at the device, a message indicating a particular page being accessed by the remote station, wherein the requesting the plurality of objects is responsive to the message.

16. The method of claim 1 , further comprising:

transmitting, from the device to the remote station, an index marker indicating whether content in a cache at the remote station is up-to-date.

17. The method of claim 1 , further comprising processing a script included in the data page, wherein the plurality of objects referenced in the data page comprises one or more objects referenced by the script.

18. An apparatus, comprising:

a processor; and

memory storing computer-executable instructions that, when executed by the processor, cause the apparatus to:

receive a data page request from a remote station via a satellite link, the data page request indicating a data page to be retrieved, the data page request including a cookie comprising information related to the remote station;

identify a network address associated with the data page;

establish a connection with a second device associated with the network address;

request the data page from the second device associated with the network address;

receive the data page from the second device;

request a plurality of objects referenced in the data page, wherein at least one of the plurality of objects is associated with the cookie;

compile the plurality of objects into a data cluster;

compress the data cluster; and

transmit the data cluster to the remote station;

receive, from the remote station via the satellite link, a second data page request, the second data page request indicating a second data page to be retrieved, the second data page request not including the cookie;

request the second data page, the requesting the second data page comprising transmitting the cookie;

receive the second data page; and

transmit the second data page to the remote station.

19. One or more non-transitory computer-readable media storing computer-executable instructions that, when executed by a processor, cause a device to:

receive a data page request from a remote station via a satellite link, the data page request indicating a data page to be retrieved, the data page request including a cookie comprising information related to the remote station;

identify a network address associated with the data page;

establish a connection with a second device associated with the network address;

request the data page from the second device associated with the network address;

receive the data page from the second device;

request a plurality of objects referenced in the data page, wherein at least one of the plurality of objects is associated with the cookie;

compile the plurality of objects into a data cluster;

compress the data cluster;

transmit the data cluster to the remote station;

receive, from the remote station via the satellite link, a second data page request, the second data page request indicating a second data page to be retrieved, the second data page request not including the cookie;

request the second data page, the requesting the second data page comprising transmitting the cookie;

receive the second data page; and

transmit the second data page to the remote station.

Continuity (6)
Division 13596509 · Aug 28, 2012
Continuation 10303722 · Nov 26, 2002
Continuation In Part 09781554 · Feb 13, 2001
Provisional Application 60262647 · Jan 22, 2001
Provisional Application 60182537 · Feb 15, 2000
Related Publication 20150288738A1 · Oct 8, 2015