This disclosure relates to providing data access, and specifically for providing secure and efficient access to centrally-stored data.
Traditional data storage systems are designed to be centrally stored, managed and searched. Examples of such systems include backup servers, file servers, document repositories like SharePoint, Documentum etc. These systems typically reside in a corporate data center, behind a firewall, and are available only to those users who are connected to the corporate network, either via a LAN (local area network), or via a VPN (virtual private network) usually over a WAN (wide area network) such as the Internet.
There are several considerations that make it harder to maintain data centrally, including (1) the proliferation of remote sites, (2) the presence of mobile users, and (3) the proliferation of smart phones and other mobile devices. First, there are many remote sites in a company from which there is a need to access data that may be stored centrally. These sites may be connected to the central site either via a dedicated WAN connection or via a VPN over the Internet. However, given the latency of WAN connections, it may be difficult or slow to access data over the WAN from the central site. Second, there may be mobile and remote users in a corporation, who, while connected to the Internet, are not necessarily connected to the central site via a VPN connection. Third, many of these remote users may utilize mobile devices such as smart phones and tablets that may not have the ability to connect via a VPN, or for whom such connections are intermittent.
The methods and systems described here can be used to provide secure, reliable, efficient, and ubiquitous access to centrally-stored data behind one or more firewalls, e.g., in a corporate data center from devices which are not directly connected to the corporate network via VPN or LAN.
Some embodiments described herein have two main components: a Constant Access Gateway and a De-duplicated Data Cache Server.
The Constant Access Gateway (CAG) can provide the following benefits:
The De-duplicated Data Cache Server (hereinafter, “the Cache Server”) includes a de-duplicated repository of data stored in the form of unique objects or blocks of data. The data is a cache that is intelligently built and managed based on the access needs of the site which is served by the Cache Server. Some of the features of the Cache Server are:
For a more complete understanding of disclosure, reference is now made to the following descriptions taken in conjunction with the accompanying drawings in which:
As shown in
Mobile or remote devices 106 are connected to the Internet 108. These may include portable digital assistants (PDAs), laptop computers, cellular telephones, tablets, servers at remote sites and other computing devices. The mobile or remote devices are outside firewall 102, and hence cannot directly access the data store 104 without opening incoming ports on the firewall 102, which would pose a security risk. Instead, CAG 100 acts as a broker between mobile devices 106 and data store 104. CAG 100 has a private interface to data store 104, and also has an interface to the Internet 108. This setup allows the CAG to create a “virtual connection” between a mobile device and data store 104 as follows:
When a mobile device initiates a connection, Constant Access Gateway 100 performs authentication and authorization operations. Initially, while the mobile device is connected to the corporate network via a LAN or a VPN, the mobile device is given a secure token. The mobile device includes this secure token when making a connection request to CAG 100 to “prove” the mobile device's identity.
CAG 100 validates the token with a token authority to ensure that it is still valid. A variety of token management schemes may be used to determine when secure tokens become invalid. For example, secure tokens may automatically expire after a specified amount of time. A secure token may also be explicitly invalidated by the system for a variety of reasons. Token management may be handled by the CAG 100, or by an entity behind the firewall 102 (e.g. data store 104 or some other server).
After it has been determined that the token included in the device is valid, CAG 100 determines whether the mobile device is authorized to access the requested data service.
Constant Access Gateway 100 allows granular configuration of logical data flow between data store 104 and mobile devices 106. For example, global, per-device, and per-user security policies may be configured to allow any of the following modes of data transmission:
CAG 100 supports limiting access to data (e.g. preventing data access entirely, or imposing limits on logical data flow such as those described above) on a per-user and/or a per-device basis. Data access may be based on one or more of the following properties of the mobile device and its user:
This configurability of CAG 100 provides organizations full control over data access and flow based on a variety of traits of the accessing user, device and the data being accessed.
The systems and methods described here allow access without requiring VPN or LAN access. Providing secure access to corporate data stores behind one or more firewalls without requiring a VPN is a challenge for most organizations. For example, mobile users can have devices containing data that has been created while the users are disconnected from the corporate network. The mobile user copy might be the only copy of the data that has been created, so the data needs to be backed up. However, lack of a consistent VPN connection can results in backups happening infrequently. In another example, end users may want to access their corporate data using their mobile devices even when they are not connected via VPN. Accessing this corporate data—which may be behind a corporate firewall—can be challenging. This issue can lead users to resort to methods for accessing data that might not be approved by the corporation (or other data manager or owner). Such users may synchronize data to public cloud-based solutions to allow them to access their data from anywhere. This approach can be a security concern for corporations, as their confidential data exists on computing assets not owned by the corporation, and may even present concerns about corporate compliance with regulatory requirements.
Providing reliable and high performance access to centrally stored data can also be a problem. Because of network latency issues, companies may resort to storing data in multiple sites. This can cause several issues:
As shown in
Cache Server 200 may, for example, be deployed behind a firewall 222 to provide efficient access to users in a remote site 212 in order to back up data stored on the remote site to data store 104. Another Cache Server 201 may be placed behind firewall 221 to provide read-only access to users within site 211 to de-duplicated copies of data stored centrally in data store 104 without introducing the additional network latency that would otherwise be involved in site 211 accessing that data through the internet. Users at main site 210 may, of course, access data store 104 directly through LAN 211, including users with mobile devices 106 who have LAN access directly to data store 104. Mobile devices 106 without direct LAN access to data store 104 may also access the data store through the Internet 108 using the Constant Access Gateway 100 as discussed above. Access to Cache Servers 200 or 201, or to data store 104 through Gateway 100 may also be obtained through a web-based self-service recovery system 230.
Data store 104 can include management and reporting systems 240, metering and chargeback systems 242, a key management system 244, and one or more active directory systems 246. Key management system 244 can create and manage tokens for users of Constant Access Gateway 100. Storage within data store 104 may be accomplished using a private cloud 254 within which one or more servers 254 provide access to de-duplicated object repositories and associated catalogs 252.
One or more servers 254 are responsible for maintaining a catalog, of de-duplicated objects. Without de-duplication, multiple copies of these objects would be stored in various places throughout the data store. In a de-duplicated data store, each of these objects is stored in the catalog only once and indexed according to a unique identifier. Other locations in the data store may include a reference to a de-duplicated object using that object's unique identifier. Servers 254 are also responsible for reconstructing and providing access to the original files (which may be reconstructed using the de-duplicated objects), including providing the files to an active directory service 246.
The data in the Cache Server 200 is intelligently built and managed based on the local access needs of users or devices dependent on that instance of the Cache Server. There can be multiple Cache Servers in an overall system. Some of the features of the Cache Server 200 are:
It will be appreciated that the scope of the present inventions is not limited to the above-described embodiments, but rather is defined by the appended claims, and that these claims will encompass modifications of and improvements to what has been described. For example, different types of processors and memory may be used to implement the Constant Access Gateway. There are many references to maintaining data in storage; this storage may be any suitable form of memory, such as digital disks, optical disks, or semiconductor memory. The processing acts that are described may be performed using any suitable hardware and/or software logic or combination thereof, and implemented using any suitable processor, such as a general-purpose processor or an application-specific processor. Many of the acts described above may be performed by software stored in computer-readable memory as instructions that, when executed, perform the described steps (e.g., establishing a connection, authentication, authorization, etc.).
This application claims the benefit under 35 U.S.C. §119(e) to U.S. Provisional Application No. 61/376,433, entitled Constant Access Gateway and De-Duplicated Data Cache Server, filed on Aug. 24, 2010.
Number | Name | Date | Kind |
---|---|---|---|
5590810 | Wehbi | Jan 1997 | A |
5754765 | Danneels | May 1998 | A |
5790789 | Suarez | Aug 1998 | A |
5826014 | Coley | Oct 1998 | A |
5826024 | Higashimura | Oct 1998 | A |
5832514 | Norin | Nov 1998 | A |
5850517 | Verkler | Dec 1998 | A |
5857201 | Wright, Jr. | Jan 1999 | A |
5873104 | Tremblay et al. | Feb 1999 | A |
5878056 | Black | Mar 1999 | A |
5895471 | King | Apr 1999 | A |
5987463 | Draaijer | Nov 1999 | A |
5990810 | Williams | Nov 1999 | A |
6065046 | Feinberg et al. | May 2000 | A |
6078948 | Podgorny | Jun 2000 | A |
6134432 | Holmes | Oct 2000 | A |
6185598 | Farber | Feb 2001 | B1 |
6196846 | Berger | Mar 2001 | B1 |
6226649 | Bodamer | May 2001 | B1 |
6289382 | Bowman-Amuah | Sep 2001 | B1 |
6351771 | Craddock | Feb 2002 | B1 |
6397246 | Wolfe | May 2002 | B1 |
6424841 | Gustafsson | Jul 2002 | B1 |
6463463 | Godfrey | Oct 2002 | B1 |
6473794 | Guheen | Oct 2002 | B1 |
6510550 | Hightower | Jan 2003 | B1 |
6526493 | Ding | Feb 2003 | B1 |
6563800 | Salo | May 2003 | B1 |
6704730 | Moulton et al. | Mar 2004 | B2 |
6742081 | Talagala et al. | May 2004 | B2 |
6782419 | Tobita | Aug 2004 | B2 |
6792085 | Rigaldies | Sep 2004 | B1 |
6802068 | Guruprasad | Oct 2004 | B1 |
6871236 | Fishman et al. | Mar 2005 | B2 |
6877023 | Maffeis | Apr 2005 | B1 |
6922725 | Lamming | Jul 2005 | B2 |
6941436 | Lee et al. | Sep 2005 | B2 |
6947761 | Hutcheson | Sep 2005 | B2 |
6947943 | DeAnna | Sep 2005 | B2 |
6954714 | Suzuki | Oct 2005 | B2 |
6959291 | Armstrong et al. | Oct 2005 | B1 |
6959436 | Peng | Oct 2005 | B2 |
6976146 | Aiello et al. | Dec 2005 | B1 |
6981029 | Menditto | Dec 2005 | B1 |
6983312 | O'Neil | Jan 2006 | B1 |
6990513 | Belfiore | Jan 2006 | B2 |
6993137 | Fransdonk | Jan 2006 | B2 |
7010581 | Brown | Mar 2006 | B2 |
7020697 | Mesoy | Mar 2006 | B1 |
7020783 | Vange | Mar 2006 | B2 |
7028049 | Shelton | Apr 2006 | B1 |
7035828 | Ketonen | Apr 2006 | B2 |
7051180 | Downer et al. | May 2006 | B2 |
7065619 | Zhu et al. | Jun 2006 | B1 |
7085834 | Delany | Aug 2006 | B2 |
7130885 | Chandra | Oct 2006 | B2 |
7136645 | Hanson | Nov 2006 | B2 |
7269173 | Iyer | Sep 2007 | B2 |
7272602 | Moulton | Sep 2007 | B2 |
7305532 | Zhu et al. | Dec 2007 | B2 |
7356494 | Ehrman | Apr 2008 | B2 |
7363349 | Friedman | Apr 2008 | B2 |
7373464 | Zhu et al. | May 2008 | B2 |
7382758 | Silverman et al. | Jun 2008 | B2 |
7460857 | Roach | Dec 2008 | B2 |
7472242 | Deshmukh et al. | Dec 2008 | B1 |
7477166 | McCanne et al. | Jan 2009 | B2 |
7504969 | Patterson et al. | Mar 2009 | B2 |
7562147 | Cohen | Jul 2009 | B1 |
7562186 | Li et al. | Jul 2009 | B2 |
7590644 | Matsakis et al. | Sep 2009 | B2 |
7624335 | Maheshwari et al. | Nov 2009 | B1 |
7631084 | Thomas | Dec 2009 | B2 |
7653815 | Godfrey | Jan 2010 | B2 |
7739412 | Hall | Jun 2010 | B2 |
7792933 | Butts | Sep 2010 | B2 |
7827406 | Brown | Nov 2010 | B2 |
7925683 | Jain et al. | Apr 2011 | B2 |
7958245 | Thomas | Jun 2011 | B2 |
7979569 | Eisner et al. | Jul 2011 | B2 |
8255573 | Kawamoto et al. | Aug 2012 | B2 |
8261057 | Sundarrajan et al. | Sep 2012 | B2 |
8798084 | Pratt | Aug 2014 | B2 |
20020049841 | Johnson | Apr 2002 | A1 |
20020078198 | Buchbinder | Jun 2002 | A1 |
20020095487 | Day | Jul 2002 | A1 |
20020116472 | Kalish | Aug 2002 | A1 |
20020169972 | Tanaka et al. | Nov 2002 | A1 |
20030054810 | Chen | Mar 2003 | A1 |
20030115200 | Anthony | Jun 2003 | A1 |
20030131154 | Downer et al. | Jul 2003 | A1 |
20030177171 | Brown | Sep 2003 | A1 |
20030212873 | Lee et al. | Nov 2003 | A1 |
20030227892 | Cabana | Dec 2003 | A1 |
20040073835 | Kim | Apr 2004 | A1 |
20040082315 | Aoki | Apr 2004 | A1 |
20040139097 | Farber et al. | Jul 2004 | A1 |
20040172453 | De Mendonca | Sep 2004 | A1 |
20050050459 | Qu et al. | Mar 2005 | A1 |
20050060328 | Suhonen | Mar 2005 | A1 |
20050216669 | Zhu et al. | Sep 2005 | A1 |
20060047855 | Gurevich et al. | Mar 2006 | A1 |
20060059171 | Borthakur et al. | Mar 2006 | A1 |
20060069719 | McCanne et al. | Mar 2006 | A1 |
20060069733 | Antonoff et al. | Mar 2006 | A1 |
20060109909 | Chang et al. | May 2006 | A1 |
20060120526 | Boucher et al. | Jun 2006 | A1 |
20060206669 | Zhu et al. | Sep 2006 | A1 |
20060212439 | Field | Sep 2006 | A1 |
20070028110 | Brennan | Feb 2007 | A1 |
20070061544 | Uppala | Mar 2007 | A1 |
20070136801 | Le | Jun 2007 | A1 |
20070143359 | Uppala | Jun 2007 | A1 |
20070239945 | Li et al. | Oct 2007 | A1 |
20070239946 | Zhu | Oct 2007 | A1 |
20070244966 | Stoyanov et al. | Oct 2007 | A1 |
20080013830 | Patterson et al. | Jan 2008 | A1 |
20080043760 | Venkatraman et al. | Feb 2008 | A1 |
20080050025 | Bashyam et al. | Feb 2008 | A1 |
20080050026 | Bashyam et al. | Feb 2008 | A1 |
20080050027 | Bashyam et al. | Feb 2008 | A1 |
20080050029 | Bashyam et al. | Feb 2008 | A1 |
20080050047 | Bashyam et al. | Feb 2008 | A1 |
20080052769 | Leone et al. | Feb 2008 | A1 |
20080075097 | Kitada | Mar 2008 | A1 |
20080082525 | Cha et al. | Apr 2008 | A1 |
20080133835 | Zhu et al. | Jun 2008 | A1 |
20080159331 | Mace et al. | Jul 2008 | A1 |
20080177997 | Morais | Jul 2008 | A1 |
20080183767 | Zhu et al. | Jul 2008 | A1 |
20080256143 | Reddy et al. | Oct 2008 | A1 |
20080263215 | Schnellbaecher | Oct 2008 | A1 |
20080270729 | Reddy et al. | Oct 2008 | A1 |
20080281908 | McCanne et al. | Nov 2008 | A1 |
20080294660 | Patterson et al. | Nov 2008 | A1 |
20080320106 | McCanne et al. | Dec 2008 | A1 |
20080320151 | McCanne et al. | Dec 2008 | A1 |
20090063528 | Yueh | Mar 2009 | A1 |
20090063795 | Yueh | Mar 2009 | A1 |
20090079597 | McCanne et al. | Mar 2009 | A1 |
20090083563 | Murase | Mar 2009 | A1 |
20090216774 | Rao et al. | Aug 2009 | A1 |
20090216788 | Rao et al. | Aug 2009 | A1 |
20090240718 | Rao et al. | Sep 2009 | A1 |
20090265397 | Williams | Oct 2009 | A1 |
20090287725 | von Praun | Nov 2009 | A1 |
20090289819 | Mahoney | Nov 2009 | A1 |
20100011007 | Bettger et al. | Jan 2010 | A1 |
20100027552 | Hill | Feb 2010 | A1 |
20100070634 | Ranjan | Mar 2010 | A1 |
20100131659 | Narayana et al. | May 2010 | A1 |
20100161608 | Jain et al. | Jun 2010 | A1 |
20100161685 | Jain et al. | Jun 2010 | A1 |
20110225141 | Chaudhry et al. | Sep 2011 | A1 |
20110231374 | Jain et al. | Sep 2011 | A1 |
20130067098 | Litovski et al. | Mar 2013 | A1 |
Number | Date | Country |
---|---|---|
0993165 | Apr 2000 | EP |
10-2004-0091392 | Oct 2004 | KR |
9746939 | Dec 1997 | WO |
0177815 | Oct 2001 | WO |
0193033 | Dec 2001 | WO |
0206964 | Jan 2002 | WO |
02065280 | Aug 2002 | WO |
WO-2009087028 | Jul 2009 | WO |
WO-2010080591 | Jul 2010 | WO |
WO-2011113042 | Sep 2011 | WO |
WO-2011116087 | Sep 2011 | WO |
WO-2012027472 | Mar 2012 | WO |
Entry |
---|
International Search Report and Written Opinion of the International Searching Authority the Korean Intellectual Property Office for PCT/US2009/068687, mailing date of Aug. 3, 2010, 7 pages. |
International Search Report and Written Opinion of the International Searching Authority, the Korean Intellectual Property Office, for International Application No. PCT/US2011/028318, date of mailing Sep. 27, 2011, 7 pages. |
International Search Report and Written Opinion of the International Searching Authority, the Korean Intellectual Property Office, for International Application No. PCT/US2011/028656, dated Oct. 26, 2011, 6 pages. |
Vipin Samar. “Single Sign-On Using Cookies for Web Applications”, IEEE, 1999, pp. 158-163. |
George Apostolopoulos, et al., “Design, Implementation and Performance of a Content-Based Switch”, IEEE INFOCOM 2000, pp. 1117-1126. |
Steffen Lipperts, Anthony Sang-Bum Park, An Agent-Based Middleware—A Solution for Terminal and User Mobility, 1999, Computer Networks. |
John Lamb, Peter Lew, Lotus Notes and Domino 5—Scalable Network Design—Web Server Network Infrastructure, 1999, McGraw-Hili. |
A. Freier, P. Karlton, and P. Kocher, The SSL 3.0 Protocol, Nov. 18, 1996, Netscape Communicatios Corp. |
“Java Message Service”, Sun Microsystems Corp., Mountain View, CA, Nov. 9, 1999. |
Mark R. Brown, Using Netscape™ 2, Special Edition, The Most Complete Reference (Chapter 33): 1995: 25 Pgs. (RIMV00055304-RIMVOO055328). |
Microsoft Exchange 2000 Server, Customizing Microsoft® Outlook® Web Access White Paper: Published Nov. 2001: 106 Pgs. (RIMVOO055329-RIMVOO055434). |
Microsoft Exchange 2000 Server, Microsoft® Outlook Web Access in Microsoft Exchange 2000 Server: Published Mar. 2000 (Updated May 2002: 18 Pgs. (RIMVOO055435-RIMVOO055452). |
KC Lemson, et al.: Using Microsoft® Exchange 2000, Front End Servers: Published Jun. 2000 (Updated Oct. 2002: 95 Pgs. (R IMV00055453-R I MV00055541 ). |
Klensin, J., et al., Simple Mail Transfer Protocol, Apr. 2001. AT&T Laboratories, pp. 1-79. |
Crispin, M., Internet Message Access Protcol—Version 4, Sep. 2002, University of Washington, pp. 1-97. |
Meyers, J., Post Office Protocol—Version 3, May 1996, Dover Beach Consulting, Inc., pp. 1-23. |
GLOMOP Group: “GloMop: Global Mobile Computing by Proxy” GloMop, Sep. 13, 1995. |
Extended European Search Report issued in European Application No. 11820595.4 on Oct. 26, 2016. |
Number | Date | Country | |
---|---|---|---|
20120054296 A1 | Mar 2012 | US |
Number | Date | Country | |
---|---|---|---|
61376433 | Aug 2010 | US |