CONSTANT ACCESS GATEWAY AND DE-DUPLICATED DATA CACHE SERVER
First Claim
1. A method for initiating secure and efficient communication using a gateway between a data store that is connected to a private internal network and a client device that is connected to an external network, wherein both the client device and the gateway are unable to initiate a direct network connection with the data store, the method comprising:
- a. establishing a first communication channel between the client device and the gateway via a network and assigning a unique identifier to said first communication channel;
b. establishing, at the data store, a control channel between the data store and the gateway, wherein the establishment of the control channel is initiated by the data store;
c. sending a connection request from the gateway to the data store via the control channel;
d. establishing, at the data store, a second communication channel between the gateway and the data store and assigning said unique identifier to said second communication channel, wherein the establishment of the second communication channel is initiated by the data store;
e. receiving inbound data at the gateway via the first communication channel;
f. receiving outbound data at the gateway via the second communication channel;
g. forwarding the inbound data to the data store via the second communication channel; and
h. forwarding the outbound data to the client device via the first communication channel;
wherein forwarding the inbound data to the data store and forwarding the outbound data to the client device creates a virtual communication channel between the client device and the data store.
5 Assignments
0 Petitions
Accused Products
Abstract
An Constant Access Gateway provides secure access for remote mobile computing users to centrally stored data without requiring a VPN connection or a direct connection to the LAN in which the data resides. A Cache Server works alone or in conjunction with the Constant Access Gateway to provide distributed access to the centrally stored data. The Cache Server performs local storage of de-duplicated versions of the centrally stored data, and may interact with the Constant Access Gateway to maintain cache coherency with the central data store.
22 Citations
45 Claims
-
1. A method for initiating secure and efficient communication using a gateway between a data store that is connected to a private internal network and a client device that is connected to an external network, wherein both the client device and the gateway are unable to initiate a direct network connection with the data store, the method comprising:
-
a. establishing a first communication channel between the client device and the gateway via a network and assigning a unique identifier to said first communication channel; b. establishing, at the data store, a control channel between the data store and the gateway, wherein the establishment of the control channel is initiated by the data store; c. sending a connection request from the gateway to the data store via the control channel; d. establishing, at the data store, a second communication channel between the gateway and the data store and assigning said unique identifier to said second communication channel, wherein the establishment of the second communication channel is initiated by the data store; e. receiving inbound data at the gateway via the first communication channel; f. receiving outbound data at the gateway via the second communication channel; g. forwarding the inbound data to the data store via the second communication channel; and h. forwarding the outbound data to the client device via the first communication channel; wherein forwarding the inbound data to the data store and forwarding the outbound data to the client device creates a virtual communication channel between the client device and the data store. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15)
-
-
16. A method of creating a de-duplicated cache at a cache server to be used in a networked system, said method comprising:
-
a. receiving, at a cache server, a request for a data item, wherein said request is sent by a client device; b. determining that said data item is not stored in a cache on the cache server; c. retrieving said data item from a data store; d. storing said data item in the cache; and e. sending said data item to the client device. - View Dependent Claims (17, 18, 19, 20, 21, 22)
-
-
23. A system for providing secure and efficient communication using a gateway between a data store that is connected to a private internal network and a client device that is connected to an external network, wherein the client device and the gateway are unable to initiate a direct network connection with the data store, the system comprising:
-
a. a data store for storing data in computer-readable form, said data store operable to transmit and receive data via the private internal network and comprising logic for establishing a control channel between the data store and a gateway; and b. a gateway connected to the external network, said gateway comprising; logic for sending a connection request from the gateway to the data store via said control channel; logic for establishing a first communication channel between the client device and the gateway and for assigning a unique identifier to said first communication channel; logic for establishing a second communication channel between the gateway and the data store and for assigning said unique identifier to said second communication channel; logic for receiving inbound data via the first communication channel; logic for receiving outbound data via the second communication channel; logic for forwarding the inbound data to the data store via the second communication channel; and logic for forwarding the outbound data to the client device via the first communication channel; wherein forwarding the inbound data to the data store and forwarding the outbound data to the client device creates a virtual communication channel between the client device and the data store. - View Dependent Claims (24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38)
-
-
39. A system for creating a de-duplicated cache at a cache server to be used in a networked system, said cache server comprising:
-
a. a cache operable to store data items in computer-readable format; b. logic for receiving from a client device a request for a data item; c. logic for determining that said data item is not stored in the cache; d. logic for retrieving said data item from a data store; e. logic for storing said data item in the cache; and f. logic for sending said data item to the client device. - View Dependent Claims (40, 41, 42, 43, 44, 45)
-
Specification