PROVIDING STORAGE AND SECURITY SERVICES WITH A SMART PERSONAL GATEWAY DEVICE
Embodiments provide storage, security, and other services to smart personal devices (SPDs) in a personal area network (PAN) via a smart personal gateway device (SPGD). The SPGD caches and shares data among SPDs having support for heterogeneous communication modalities. The SPGD acts as an offline cache or other common storage location for the SPDs in the PAN.
1 . A system for caching and sharing data among smart personal devices (SPDs) having heterogeneous communication modalities, said system comprising:
a memory area associated with a smart personal gateway device (SPGD), the memory area storing an SPGD cache maintained by the SPGD and accessible to a plurality of SPDs, the SPGD and the plurality of SPDs being connected by a personal area network (PAN); and
an SPGD processor programmed to:
receive data from a cloud service over a first communication modality;
store the received data in the SPGD cache in the memory area;
share the stored data in the SPGD cache with one or more of the SPDs over a second communication modality, at least one of the one or more of the SPDs lacking support for the first communication modality;
store, in the SPGD cache, data received from a first one of the SPDs; and
provide, from the SPGD cache, at least a portion of the stored data received from the first one of the SPDs with a second one of the SPDs to maintain a consistent state between the first one of the SPDs and the second one of the SPDs.
2 . The system of claim 1 , wherein the first communication modality includes cellular radio transmissions, wherein the second communication modality includes wireless fidelity (Wi-Fi) radio transmissions, and wherein the SPGD processor is programmed to receive movie data from the cloud service and subsequently share the received movie data with the one or more of the SPDs on demand.
3 . The system of claim 1 , wherein the data received from the first one of the SPDs comprises user data, and wherein the user data comprises at least one of: search history, web site favorites, copy-and-paste data, undo/redo data, electronic mail address completion data, and previous map destinations.
4 . The system of claim 1 , wherein the data received from the first one of the SPDs includes user interface personalization information comprising at least one of: data indicating whether a user of the first one of the SPDs is right- or left-handed, a screen brightness value for an ambient light sensor (ALS), data describing preferred gestures, speech recognition hints, or language selections.
5 . The system of claim 1 , wherein the SPGD processor is programmed to receive data relating to asynchronous services from the cloud service over the first communication modality, wherein the asynchronous services include at least one of voicemail, electronic mail, or video messaging.
6 . The system of claim 1 , wherein the SPGD processor is programmed to delay requests, from the plurality of SPDs, for data from the cloud service until the SPGD establishes a low-cost connection via the first communication modality.
7 . A method comprising:
requesting, by one of a plurality of smart personal devices (SPDs), data from a cloud service, the plurality of SPDs being connected to a smart personal gateway device (SPGD) by a personal area network (PAN), wherein the SPGD obtains the requested data over a first communication modality and stores the obtained data in an SPGD cache associated with the SPGD; and
obtaining, by the one of the plurality of SPDs, the requested data from the SPGD cache over a second communication modality, the one of the plurality of SPDs lacking support for the first communication modality.
8 . The method of claim 7 , further comprising providing, by a first one of the plurality of SPDs, state data to the SPGD for storage by the SPGD in the SPGD cache, wherein a second one of the plurality of SPDs obtains at least a portion of the stored state data from the SPGD cache via the SPGD to maintain a consistent state between the first one of the plurality of SPDs and the second one of the plurality of SPDs.
9 . The method of claim 8 , wherein providing the state data comprises providing task data describing a partially-completed task.
10 . The method of claim 8 , wherein providing the state date comprises providing a pointer to a location within content stored in the SPGD cache, wherein the second one of the plurality of SPDs obtains the pointer from the SPGD cache to resume display of the content on the second one of the plurality of SPDs.
11 . The method of claim 10 , wherein the second one of the plurality of SPDs resumes display of the content when the first one of the plurality of SPDs is no longer connected to the PAN.
12 . The method of claim 7 , further comprising receiving, by the one of the plurality of SPDs, the requested data from the SPGD cache.
13 . The method of claim 7 , wherein obtaining the requested data from the SPGD cache comprises obtaining the requested data when the first communication modality is unavailable.
14 . The method of claim 7 , wherein the SPGD is one of a plurality of SPGDs available to the one of the plurality of SPDs, and further comprising selecting at least one of the plurality of SPGDs from which to obtain the requested data.
15 . The method of claim 7 , wherein requesting the data from the cloud service comprises requesting at least one of: music, images, videos, a news feed, an application update, an operating system update, an electronic mail attachment, or social networking feed content.
16 . A smart personal gateway device (SPGD) comprising:
one or more security modules;
a memory area associated with a smart personal gateway device (SPGD), the memory area storing an SPGD cache maintained by the SPGD and accessible to a plurality of smart personal devices (SPDs), the SPGD and the plurality of SPDs being connected by a personal area network (PAN); and
an SPGD processor programmed to:
obtain a first set of credentials via at least one of the security modules, the first set of credentials providing access to a resource;
receive, from at least one of the plurality of SPDs, a request for the resource, the at least one of the plurality of SPDs lacking the at least one of the security modules for obtaining the first set of credentials;
authenticate the at least one of the plurality of SPDs; and
provide the first set of credentials to the at least one of the plurality of SPDs based on the authentication, wherein the at least one of the plurality of SPDs accesses the resource via the first of credentials provided by the SPGD.
17 . The smart personal gateway device of claim 16 , wherein the at least one of the security modules allows access to the resource otherwise not accessible by the at least one of the plurality of SPDs.
18 . The smart personal gateway device of claim 16 , wherein the one or more security modules comprise a trusted platform module (TPM) storing login information corresponding to one or more of the plurality of SPDs, and wherein the SPGD processor is further programmed to offer the login information from the TPM on behalf of the corresponding one or more of the plurality of SPDs when the corresponding one or more of the plurality of SPDs attempt to connect to a cloud service.
19 . The smart personal gateway device of claim 16 , wherein the SPGD further comprises a near field communication (NFC) radio and coil, the SPGD processor further being programmed to perform financial transactions on behalf of the plurality of SPDs using the NFC radio and coil.
20 . The smart personal gateway device of claim 16 , wherein the SPGD processor is further programmed to perform packet inspection on incoming data packets to the PAN to implement a firewall.