US9270755B2 - Managing inventory data for a distributed cache provided by a plurality of wireless mobile devices - Google Patents

Managing inventory data for a distributed cache provided by a plurality of wireless mobile devices Download PDF

Info

Publication number
US9270755B2
US9270755B2 US14/122,322 US201214122322A US9270755B2 US 9270755 B2 US9270755 B2 US 9270755B2 US 201214122322 A US201214122322 A US 201214122322A US 9270755 B2 US9270755 B2 US 9270755B2
Authority
US
United States
Prior art keywords
mobile communication
communication device
wireless mobile
data
inventory data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related, expires
Application number
US14/122,322
Other versions
US20140089378A1 (en
Inventor
Patrick Daniel Forrest
Ivan Patrick Murray
Ken Murray
Patrick O'Neill
Ted Whooley
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Assigned to INTERNATIONAL BUSINESS MACHINES CORPORATION reassignment INTERNATIONAL BUSINESS MACHINES CORPORATION ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: FORREST, PATRICK DANIEL, MURRAY, IVAN PATRICK, MURRAY, KEN, O'NEILL, PATRICK, WHOOLEY, Ted
Publication of US20140089378A1 publication Critical patent/US20140089378A1/en
Application granted granted Critical
Publication of US9270755B2 publication Critical patent/US9270755B2/en
Expired - Fee Related legal-status Critical Current
Adjusted expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • H04L67/1074Peer-to-peer [P2P] networks for supporting data block transmission mechanisms
    • H04L67/1076Resource dissemination mechanisms or network resource keeping policies for optimal resource availability in the overlay network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/568Storing data temporarily at an intermediate stage, e.g. caching
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/568Storing data temporarily at an intermediate stage, e.g. caching
    • H04L67/5683Storage of data provided by user terminals, i.e. reverse caching
    • H04W76/023
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W76/00Connection management
    • H04W76/10Connection setup
    • H04W76/14Direct-mode setup
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W8/00Network data management
    • H04W8/005Discovery of network devices, e.g. terminals

Definitions

  • the present disclosure relates to an apparatus or computer program product for managing inventory data of a distributed cache provided by a plurality of wireless mobile communication devices.
  • Mobile devices such as mobile telephones are commonly used for data intensive activities such as information retrieval. Such intensive data activities have a negative effect on a mobile communications network since data transmission capacity of the mobile communications network may be limited or expensive.
  • One such solution comprises caching data in a distributed cache provided by the mobile devices themselves such that each mobile device provides part of the storage required for the cache, and that the cache is shared among a group of mobile devices.
  • Different caching policies are provided, each aimed at improving effectiveness of the distributed cache.
  • problems arise with some mobile caching systems because of their intrinsically opportunistic nature. Each mobile device must discover relevant data by scanning the caches of all neighboring devices. Periodically scanning all neighboring devices to determine if relevant data exists in the neighboring devices uses a significant amount of power.
  • the computer program product comprises program instructions for: receiving first inventory data from a first wireless mobile communication device, the first inventory data identifying one or more data resources associated with the first wireless mobile communication device; receiving second inventory data from a second wireless mobile communication device, the second inventory data identifying one or more data resources associated with the second wireless mobile communication device; comparing the first inventory data and the second inventory data to identify one or more matching data resources; and in response to identifying one or more matching data resources, sending, to the first wireless mobile communication device, a matching inventory data that identifies the one or more matching data resources, wherein the matching inventory data enables the first wireless mobile communication device to access each of the one or more matching data resources stored on the second wireless mobile communication device.
  • the matching inventory data may further comprise an identification of the second device so as to enable the first wireless mobile communication device to initiate a connection directly with the second device.
  • Receiving and sending of the inventory data may be performed using a first wireless communications network.
  • the first and second devices create a peer-to-peer network to enable the access by the first wireless mobile communication device to the matching data resource stored on the second device.
  • the method may comprise determining the location of the first and second devices.
  • the sending of the matching inventory data may only be performed if the first and second devices are within a predetermined proximity.
  • the location may be a predicted proximity determined for a predetermined future time period.
  • the one or more data resources may comprise one or more of a data subscription, a data topic, a data category, a data item, a search term, a user preference, and a user interest.
  • the first wireless mobile communication device may further compile the first inventory data, send the first inventory data to a distributed cache (DC) server application program that is further configured to identify one or more other wireless mobile communication devices of the plurality of mobile devices having the one or more matching data resources, and receive the matching inventory data identifying the second device.
  • DC distributed cache
  • a user alert may be triggered.
  • the first inventory data may identify any resources available from the first device to the second device or any resources required by the first device and/or may identify resources required by the first device that are available from the second device.
  • FIG. 1 is a block diagram of a communications network according to an embodiment of the present disclosure
  • FIG. 2 is a schematic illustration of a client application program of one of the wireless mobile communication devices of FIG. 1 according to an embodiment of the present disclosure
  • FIG. 3 is an illustration of a user profile comprising a user-defined inventory of data resources used by the client application program of FIG. 2 according to an embodiment of the present disclosure
  • FIG. 4 is a block diagram of a server application program according to an embodiment of the present disclosure.
  • FIG. 5 is an illustration of a table of user profile data used by the server application program of FIG. 4 according to an embodiment of the present disclosure
  • FIG. 6 is a flow diagram of a method performed by a client application program according to an embodiment of the present disclosure
  • FIG. 7 is a flow diagram of a method performed by the server application program according to an embodiment of the present disclosure.
  • FIG. 8 is a flow diagram of a method performed by the client application program in response to receiving a notification from a distributed cache (DC) server application program, according to an embodiment of the present disclosure.
  • DC distributed cache
  • Described herein is a system, method, and computer program product for distributing inventory data in a distributed cache by a plurality of wireless mobile communication devices.
  • a system, method, and computer program product for distributing inventory data in a distributed cache by a plurality of wireless mobile communication devices.
  • a communications system comprises a computer 102 connected to a mobile communications core network 103 , which in turn is connected to a mobile communications access network comprising a set of communications masts 104 .
  • Network 103 in combination with communications masts 104 provides mobile communications services to a plurality of mobile communications devices 105 .
  • mobile communications devices 105 are mobile and/or cellular telephones.
  • each of the mobile communications devices 105 is further configured with a secondary wireless communications means, such as WiFiTM, which enables connection to WiFiTM hub 106 or a secondary wireless communications hub.
  • WiFiTM hub 106 enables network communications between mobile communications devices 105 as an alternative to network 103 and communications masts 104 .
  • mobile communications devices 105 need to be within a predetermined proximity 107 of WiFiTM hub 106 in order to use WiFiTM hub 106 to connect to other mobile communications devices 105 .
  • a mobile communications device 105 comprising an operating system 201 that provides a processing platform for a distributed cache (DC) client application program 202 (also referred to herein as DC client 202 ).
  • DC client 202 uses two main sets of data: a user profile 203 and distributed cache (DC) data 204 .
  • DC client 202 is further configured to communicate with other DC clients 202 of the other mobile communications devices 105 to enable sharing of respective DC data 204 between DC clients 202 of the other mobile communications devices 105 .
  • the sharing of the data occurs in accordance with user preferences defined in user profile 203 of each mobile communication device 105 .
  • user profile 203 which comprises a user-defined inventory of the data resources that DC client 202 ( FIG. 2 ) is permitted to make available within the distributed cache.
  • user profile 203 also comprises an inventory of those data resources that a user wishes to obtain from the distributed cache. That is, user profile 203 comprises an inventory of both DC data 204 available to other participating mobile communication devices 105 in addition to the data resources required or requested by the user from the distributed cache and supplied from one or more other mobile communications devices 105 ( FIG. 2 ).
  • DC data 204 is defined in the user profile 203 by a set of user selected DC data identifiers. In the present embodiment, the DC data identifiers are dependent on the type of the data resource.
  • a data resource may comprise one or more data subscriptions, data topics, data categories, data items, search term, user preferences or user interests. Any suitable data resource may be defined (including by a user) to be included in DC data 204 , or may be retrieved from one or more other mobile communications devices 105 .
  • DC server 402 comprises at least two distinct modules: a subscriber location module 403 and a data correlation module 404 .
  • DC server 402 also stores a set of user profile data 405 , which is in part collected from the DC client 202 of each of the mobile communications devices 105 ( FIG. 2 ).
  • Subscriber location module 403 is configured to determine the current location of each of the mobile communications devices 105 .
  • subscriber location module 403 is configured to determine the current location of each other mobile communications device(s) 105 every 10 minutes.
  • Data correlation module 404 is configured to analyze user profile data 405 to determine any matches between DC data 204 defined in user profiles 203 collected from each of the mobile communications devices 105 ( FIG. 2 ).
  • a user profile data table comprising a user identifier (ID) for identifying other mobile communications devices 105 , the location of each other mobile communications device 105 for the current time period as calculated by the subscriber location module 403 , and the user profile 203 or inventory data received from each other mobile communications device 105 .
  • the data correlation module 404 is configured to determine, for a given mobile communication device 105 , other mobile communications device(s) 105 within a predetermined proximity 107 that have matching DC data definitions. In response to detecting a match, DC server 402 notifies each mobile communication device 105 within the predetermined proximity 107 having matching DC data definitions.
  • This notification provides an indication, and/or informs a user of a mobile communication device 105 receiving the notification, of available data resources in the distributed cache.
  • the receiving mobile communication device may then, via the DC client 202 , negotiate the retrieval of any such data of interest from other mobile communication device(s) 105 within predetermined proximity 107 having relevant available data resources.
  • the retrieval of the data is negotiated by the DC clients 202 of each respective mobile communications device 105 .
  • the retrieval is performed over a peer-to-peer network established via a secondary wireless communication means or a secondary wireless communications hub (e.g. via WiFiTM hub 106 ). Any other available secondary wireless communications means may be utilized.
  • other available secondary wireless peer-to-peer mechanisms and communications means for communicating between DC clients on the mobile communication devices for sharing DC data may include, for example, BluetoothTM WiMaxTM, or any other local wireless underlay network.
  • processing of the DC client 202 is initiated in response to the start-up of the DC client 202 .
  • a data selection interface is presented to enable selection and identification of data resources for user profile 203 .
  • the identified data resources are logged in the user profile 203 .
  • a connection to the DC server 402 is established.
  • user profile 203 is uploaded to DC server 402 .
  • processing pauses until user profile 203 is again updated. In response to the user profile 203 being updated, the processing returns to step 605 to upload the updated user profile 203 .
  • DC server application program 402 there is depicted a flow chart of a processing method performed by DC server application program 402 .
  • processing of DC server 402 is initiated in response to the start-up of DC server 402 on a mobile communication device 105 .
  • processing awaits the upload of a first user profile 203 .
  • the uploaded user profile 203 is logged in user profile data 405 (step 703 ).
  • steps 702 - 703 may repeat until two or more user profiles have been uploaded into the user profile data 405 and may also further continue for additional user profiles even while processing further continues as provided below.
  • subscriber location module 403 is utilized to determine the locations of each mobile communication device 105 logged into user profile data 405 .
  • data correlation module 404 is utilized to determine matches between user profile data 405 and mobile communications devices 105 within a predetermined proximity 107 .
  • a notification is compiled for each mobile communication device 105 .
  • the notification comprises a list of the relevant data resources available from corresponding identified mobile communication devices 105 within the predetermined proximity 107 .
  • the compiled notifications are sent to each of the identified mobile communication devices 105 . Processing then waits for completion of a refresh period (step 708 ). Once the refresh period has been reached/completed, the processing returns to step 704 and proceeds as described above to further refresh the proximity and correlation data before issuing updated notifications to mobile communications devices 105 within a predetermined proximity 107 .
  • processing is initiated in response to the receipt of a notification from DC server 402 .
  • an alert is issued to signal the receipt of the notification and processing waits for user interaction (step 803 ).
  • the process terminates (end step 808 ).
  • the processing moves to step 804 where the sources for the selected DC data are identified from the notification.
  • a connection is negotiated with each available source mobile communications device 105 having the DC data.
  • the selected data is retrieved from at least one connected source of the available source mobile communications devices 105 .
  • a notification is then issued, which provides an indication of the retrieval of the selected DC data (step 807 ). The processing then terminates at step 808 .
  • the user profile is further configured to enable defining of two sets of inventory data.
  • the first set of inventory data defines the data resources available for sharing via the distributed cache.
  • the second set of inventory data defines data resources that the user wishes to source from the distributed cache.
  • the second set of data defines the requested data resources and/or the data to be sourced from the distributed cache.
  • the notifications received from the DC server comprise an identification of the resources for the requested data such as an identification of the other mobile communication devices within the distributed cache that may provide the requested data resource.
  • the DC client may be further configured to provide only the first set of inventory data where only data sharing is required. Alternatively, the DC client may be configured to provide only the second set of inventory data to the DC server where only data acquisition or sourcing is required.
  • the DC server application is provided with data identifying the locations of suitable nodes for secondary wireless communication between the mobile communication devices, such as available WiFiTM nodes.
  • the location of such available nodes is taken into account when determining proximity of devices for a given notification. For example, the measure of relative proximity may be centered on a WiFiTM node so as to ensure that all relevant mobile communication devices contributing to the distributed cache are within operational range.
  • the DC server may be further configured to use any suitable location technique for determining the positions of the relevant mobile communication devices.
  • the DC server may utilize network based systems, such as mobile signal triangulation, or device based systems, such as Global Positioning Satellites (GPS).
  • GPS Global Positioning Satellites
  • the mobile communication devices are configured to determine their own respective positions which may then be transmitted to the DC server.
  • the DC client application program is configured to perform part or all of the determination of which other mobile communication devices are within suitable proximity.
  • the DC server may supply only the positions of other mobile communication devices in a notification.
  • the DC clients then individually determine which other mobile communication devices are within a suitable proximity based on their own self-calculated position.
  • the location of mobile communication devices performed by either the DC server or DC client are predictive such that positions of mobile communication devices are calculated for a future time slot.
  • any suitable correlation technique may be employed for determining correlations between user profiles.
  • the data correlation method is predictive.
  • User subscriptions or other data sources may be monitored to determine data likely to be available on a given mobile communication device.
  • Embodiments of the disclosure provide a system in which mobile communication devices within the distributed cache gain prior knowledge from the network on the availability and proximity of relevant data in neighboring devices. With this knowledge, mobile communication devices within the distributed cache passively engage in sharing subscribed content that is relevant to a user, thus conserving power.
  • Embodiments of the disclosure provide a deterministic content retrieval system in which participating mobile communication devices share targeted content classes.
  • Embodiments of the disclosure enable autonomous information sharing between anonymous neighboring mobile communication devices, minimally assisted by the network through the use of optionally predictive location and optionally predictive content of the targeted mobile communication devices.
  • the participating mobile communication devices are able to acquire knowledge of content that the network has determined to exist within a local area. By utilizing prediction techniques for mobile location and content, the need for wide-spread scanning is removed thus reducing the overhead on the network.
  • Embodiments of the disclosure differ from opportunistic distributed content sharing systems by enabling devices to independently acquire knowledge of nearby relevant data and target the acquisition of this data, thus conserving energy and enabling targeted content retrieval.
  • the apparatus that embodies a part or all of the present disclosure may be a general purpose device having at least one processor, a memory, and a software executing on the at least one processor that is further configured to provide a part or all of an embodiment of the disclosure.
  • the device may be a single device or a group of devices.
  • the software may be a single program or a set of programs.
  • any or all of the software used to implement the disclosure can be communicated via any suitable transmission or storage means so that the software can be loaded onto one or more devices.
  • a computer usable or computer-readable storage device can be any tangible apparatus that contains, stores, communicates, propagates, or transports the program for use by or in connection with the instruction execution system, apparatus, or device.
  • the device can be an electronic, magnetic, optical, electromagnetic, or semiconductor system (or apparatus or device).
  • Examples of a computer-readable storage device include a semiconductor or solid state memory, magnetic tape, a removable computer diskette, a random access memory (RAM), a read only memory (ROM), a rigid magnetic disk and an optical disk. Current examples of optical disks include compact disk read only memory (CD-ROM), compact disk read/write (CD-R/W), and DVD.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

An apparatus and computer program product are disclosed for distributing inventory data for a distributed cache provided by a plurality of wireless mobile communication devices. A first inventory data is received from a first wireless mobile communication device, and a second inventory data is received from a second wireless mobile communication device. The first inventory data and the second inventory data are compared to identify one or more matching data resources. In response to identifying one or more matching data resources, a matching inventory data that identifies the one or more matching data resources is sent to the first wireless mobile communication device. The matching inventory data enables the first wireless mobile communication device to access each of the one or more matching data resources stored on the second wireless mobile communication device.

Description

TECHNICAL FIELD
The present disclosure relates to an apparatus or computer program product for managing inventory data of a distributed cache provided by a plurality of wireless mobile communication devices.
DESCRIPTION OF THE RELATED ART
Mobile devices such as mobile telephones are commonly used for data intensive activities such as information retrieval. Such intensive data activities have a negative effect on a mobile communications network since data transmission capacity of the mobile communications network may be limited or expensive.
There are several potential solutions to this problem. One such solution comprises caching data in a distributed cache provided by the mobile devices themselves such that each mobile device provides part of the storage required for the cache, and that the cache is shared among a group of mobile devices. Different caching policies are provided, each aimed at improving effectiveness of the distributed cache. However, problems arise with some mobile caching systems because of their intrinsically opportunistic nature. Each mobile device must discover relevant data by scanning the caches of all neighboring devices. Periodically scanning all neighboring devices to determine if relevant data exists in the neighboring devices uses a significant amount of power.
SUMMARY
Disclosed are an apparatus and computer program product for distributing inventory data for a distributed cache provided by a plurality of wireless mobile communication devices. The computer program product comprises program instructions for: receiving first inventory data from a first wireless mobile communication device, the first inventory data identifying one or more data resources associated with the first wireless mobile communication device; receiving second inventory data from a second wireless mobile communication device, the second inventory data identifying one or more data resources associated with the second wireless mobile communication device; comparing the first inventory data and the second inventory data to identify one or more matching data resources; and in response to identifying one or more matching data resources, sending, to the first wireless mobile communication device, a matching inventory data that identifies the one or more matching data resources, wherein the matching inventory data enables the first wireless mobile communication device to access each of the one or more matching data resources stored on the second wireless mobile communication device.
The matching inventory data may further comprise an identification of the second device so as to enable the first wireless mobile communication device to initiate a connection directly with the second device. Receiving and sending of the inventory data may be performed using a first wireless communications network. The first and second devices create a peer-to-peer network to enable the access by the first wireless mobile communication device to the matching data resource stored on the second device. The method may comprise determining the location of the first and second devices. In another embodiment the sending of the matching inventory data may only be performed if the first and second devices are within a predetermined proximity. The location may be a predicted proximity determined for a predetermined future time period. The one or more data resources may comprise one or more of a data subscription, a data topic, a data category, a data item, a search term, a user preference, and a user interest.
The first wireless mobile communication device may further compile the first inventory data, send the first inventory data to a distributed cache (DC) server application program that is further configured to identify one or more other wireless mobile communication devices of the plurality of mobile devices having the one or more matching data resources, and receive the matching inventory data identifying the second device. In response to the first wireless mobile communication device receiving the matching inventory data, a user alert may be triggered. The first inventory data may identify any resources available from the first device to the second device or any resources required by the first device and/or may identify resources required by the first device that are available from the second device.
BRIEF DESCRIPTION OF THE DRAWINGS
The present disclosure can be better understood by referring to the following description when read in conjunction with the accompanying drawings, in which same or similar reference numerals are used to denote same or similar components. The drawings, together with the following detailed description, are included in the specification and form part thereof, and are used to further illustrate, by way of example, embodiments of the present disclosure and to explain principles and advantages of the present disclosure.
FIG. 1 is a block diagram of a communications network according to an embodiment of the present disclosure;
FIG. 2 is a schematic illustration of a client application program of one of the wireless mobile communication devices of FIG. 1 according to an embodiment of the present disclosure;
FIG. 3 is an illustration of a user profile comprising a user-defined inventory of data resources used by the client application program of FIG. 2 according to an embodiment of the present disclosure;
FIG. 4 is a block diagram of a server application program according to an embodiment of the present disclosure;
FIG. 5 is an illustration of a table of user profile data used by the server application program of FIG. 4 according to an embodiment of the present disclosure;
FIG. 6 is a flow diagram of a method performed by a client application program according to an embodiment of the present disclosure;
FIG. 7 is a flow diagram of a method performed by the server application program according to an embodiment of the present disclosure; and
FIG. 8 is a flow diagram of a method performed by the client application program in response to receiving a notification from a distributed cache (DC) server application program, according to an embodiment of the present disclosure.
DETAILED DESCRIPTION OF AN ILLUSTRATIVE EMBODIMENT
Described herein is a system, method, and computer program product for distributing inventory data in a distributed cache by a plurality of wireless mobile communication devices. Although an illustrative implementation of one or more embodiments is provided below, the disclosed systems and/or methods may be implemented using any number of techniques. This disclosure should in no way be limited to the illustrative implementations, drawings, and techniques illustrated below, including the exemplary designs and implementations illustrated and described herein, but may be modified within the scope of the appended claims along with their full scope of equivalents.
It will be appreciated that for simplicity and clarity of illustration, elements shown in the figures have not necessarily been drawn to scale. For example, the dimensions of some of the elements may be exaggerated relative to other elements for clarity. Further, where considered appropriate, reference numbers may be repeated among the figures to indicate corresponding or analogous features.
In the following detailed description, numerous specific details are set forth in order to provide a thorough understanding of the present disclosure. However, it will be understood by those skilled in the art that the present disclosure may be practiced without these specific details. In other instances, well-known methods, procedures, and components have not been described in detail so as not to obscure the present disclosure.
With reference to FIG. 1, a communications system comprises a computer 102 connected to a mobile communications core network 103, which in turn is connected to a mobile communications access network comprising a set of communications masts 104. Network 103 in combination with communications masts 104 provides mobile communications services to a plurality of mobile communications devices 105. In one embodiment mobile communications devices 105 are mobile and/or cellular telephones. In the present embodiment, each of the mobile communications devices 105 is further configured with a secondary wireless communications means, such as WiFi™, which enables connection to WiFi™ hub 106 or a secondary wireless communications hub. WiFi™ hub 106 enables network communications between mobile communications devices 105 as an alternative to network 103 and communications masts 104. As will be understood by those skilled in the art, mobile communications devices 105 need to be within a predetermined proximity 107 of WiFi™ hub 106 in order to use WiFi™ hub 106 to connect to other mobile communications devices 105.
With reference to FIG. 2, there is depicted a mobile communications device 105 comprising an operating system 201 that provides a processing platform for a distributed cache (DC) client application program 202 (also referred to herein as DC client 202). In the present embodiment, DC client 202 uses two main sets of data: a user profile 203 and distributed cache (DC) data 204. DC client 202 is further configured to communicate with other DC clients 202 of the other mobile communications devices 105 to enable sharing of respective DC data 204 between DC clients 202 of the other mobile communications devices 105. The sharing of the data occurs in accordance with user preferences defined in user profile 203 of each mobile communication device 105.
With reference to FIG. 3, there is depicted user profile 203 which comprises a user-defined inventory of the data resources that DC client 202 (FIG. 2) is permitted to make available within the distributed cache. In the present embodiment, user profile 203 also comprises an inventory of those data resources that a user wishes to obtain from the distributed cache. That is, user profile 203 comprises an inventory of both DC data 204 available to other participating mobile communication devices 105 in addition to the data resources required or requested by the user from the distributed cache and supplied from one or more other mobile communications devices 105 (FIG. 2). DC data 204 is defined in the user profile 203 by a set of user selected DC data identifiers. In the present embodiment, the DC data identifiers are dependent on the type of the data resource. A data resource may comprise one or more data subscriptions, data topics, data categories, data items, search term, user preferences or user interests. Any suitable data resource may be defined (including by a user) to be included in DC data 204, or may be retrieved from one or more other mobile communications devices 105.
With reference to FIG. 4, there is illustrated a block diagram of computer 102 which comprises an operating system 401 configured to provide a processing platform for a distributed cache (DC) server application program 402 (also referred to herein as DC server 402). In the present embodiment, DC server 402 comprises at least two distinct modules: a subscriber location module 403 and a data correlation module 404. DC server 402 also stores a set of user profile data 405, which is in part collected from the DC client 202 of each of the mobile communications devices 105 (FIG. 2). Subscriber location module 403 is configured to determine the current location of each of the mobile communications devices 105. In one embodiment, subscriber location module 403 is configured to determine the current location of each other mobile communications device(s) 105 every 10 minutes. Data correlation module 404 is configured to analyze user profile data 405 to determine any matches between DC data 204 defined in user profiles 203 collected from each of the mobile communications devices 105 (FIG. 2).
With reference to FIG. 5, there is depicted a user profile data table comprising a user identifier (ID) for identifying other mobile communications devices 105, the location of each other mobile communications device 105 for the current time period as calculated by the subscriber location module 403, and the user profile 203 or inventory data received from each other mobile communications device 105. The data correlation module 404 is configured to determine, for a given mobile communication device 105, other mobile communications device(s) 105 within a predetermined proximity 107 that have matching DC data definitions. In response to detecting a match, DC server 402 notifies each mobile communication device 105 within the predetermined proximity 107 having matching DC data definitions. This notification provides an indication, and/or informs a user of a mobile communication device 105 receiving the notification, of available data resources in the distributed cache. The receiving mobile communication device may then, via the DC client 202, negotiate the retrieval of any such data of interest from other mobile communication device(s) 105 within predetermined proximity 107 having relevant available data resources. The retrieval of the data is negotiated by the DC clients 202 of each respective mobile communications device 105. The retrieval is performed over a peer-to-peer network established via a secondary wireless communication means or a secondary wireless communications hub (e.g. via WiFi™ hub 106). Any other available secondary wireless communications means may be utilized. As will be understood by those skilled in the art, other available secondary wireless peer-to-peer mechanisms and communications means for communicating between DC clients on the mobile communication devices for sharing DC data may include, for example, Bluetooth™ WiMax™, or any other local wireless underlay network.
With reference to FIG. 6, there is depicted a flow chart of the processing method performed by DC client application program 202 on initialization, in accordance with one embodiment of the disclosure. At step 601 processing of the DC client 202 is initiated in response to the start-up of the DC client 202. At step 602 a data selection interface is presented to enable selection and identification of data resources for user profile 203. At step 603 the identified data resources are logged in the user profile 203. At step 604 a connection to the DC server 402 is established. At step 605 user profile 203 is uploaded to DC server 402. At step 606 processing pauses until user profile 203 is again updated. In response to the user profile 203 being updated, the processing returns to step 605 to upload the updated user profile 203.
With reference to the flow chart of FIG. 7, there is depicted a flow chart of a processing method performed by DC server application program 402. At step 701 processing of DC server 402 is initiated in response to the start-up of DC server 402 on a mobile communication device 105. At step 702 processing awaits the upload of a first user profile 203. In response to receiving the first user profile, the uploaded user profile 203 is logged in user profile data 405 (step 703). In one embodiment steps 702-703 may repeat until two or more user profiles have been uploaded into the user profile data 405 and may also further continue for additional user profiles even while processing further continues as provided below. At step 704 subscriber location module 403 is utilized to determine the locations of each mobile communication device 105 logged into user profile data 405. At step 705 data correlation module 404 is utilized to determine matches between user profile data 405 and mobile communications devices 105 within a predetermined proximity 107. At step 706 a notification is compiled for each mobile communication device 105. The notification comprises a list of the relevant data resources available from corresponding identified mobile communication devices 105 within the predetermined proximity 107. At step 707 the compiled notifications are sent to each of the identified mobile communication devices 105. Processing then waits for completion of a refresh period (step 708). Once the refresh period has been reached/completed, the processing returns to step 704 and proceeds as described above to further refresh the proximity and correlation data before issuing updated notifications to mobile communications devices 105 within a predetermined proximity 107.
With reference to the flow chart of FIG. 8, there is depicted the processing performed by a DC client application program 202 in response to receiving a notification from DC server 402. At step 801 processing is initiated in response to the receipt of a notification from DC server 402. At step 802 an alert is issued to signal the receipt of the notification and processing waits for user interaction (step 803). If, at step 803, DC data is not selected, the process terminates (end step 808). In response to receiving a selected DC data in response to the notification (step 803), the processing moves to step 804 where the sources for the selected DC data are identified from the notification. At step 805 a connection is negotiated with each available source mobile communications device 105 having the DC data. At step 806 the selected data is retrieved from at least one connected source of the available source mobile communications devices 105. A notification is then issued, which provides an indication of the retrieval of the selected DC data (step 807). The processing then terminates at step 808.
In another embodiment, the user profile is further configured to enable defining of two sets of inventory data. The first set of inventory data defines the data resources available for sharing via the distributed cache. The second set of inventory data defines data resources that the user wishes to source from the distributed cache. Thus, the second set of data defines the requested data resources and/or the data to be sourced from the distributed cache. In the present embodiment, the notifications received from the DC server comprise an identification of the resources for the requested data such as an identification of the other mobile communication devices within the distributed cache that may provide the requested data resource. The DC client may be further configured to provide only the first set of inventory data where only data sharing is required. Alternatively, the DC client may be configured to provide only the second set of inventory data to the DC server where only data acquisition or sourcing is required.
In another embodiment, the DC server application is provided with data identifying the locations of suitable nodes for secondary wireless communication between the mobile communication devices, such as available WiFi™ nodes. The location of such available nodes is taken into account when determining proximity of devices for a given notification. For example, the measure of relative proximity may be centered on a WiFi™ node so as to ensure that all relevant mobile communication devices contributing to the distributed cache are within operational range.
As will be understood by those skilled in the art, the DC server may be further configured to use any suitable location technique for determining the positions of the relevant mobile communication devices. For example, to locate mobile communication devices the DC server may utilize network based systems, such as mobile signal triangulation, or device based systems, such as Global Positioning Satellites (GPS). In another embodiment the mobile communication devices are configured to determine their own respective positions which may then be transmitted to the DC server.
In another embodiment, the DC client application program is configured to perform part or all of the determination of which other mobile communication devices are within suitable proximity. For example, the DC server may supply only the positions of other mobile communication devices in a notification. The DC clients then individually determine which other mobile communication devices are within a suitable proximity based on their own self-calculated position. In another embodiment the location of mobile communication devices performed by either the DC server or DC client are predictive such that positions of mobile communication devices are calculated for a future time slot.
As will be understood by those skilled in the art, any suitable correlation technique may be employed for determining correlations between user profiles. In another embodiment, the data correlation method is predictive. User subscriptions or other data sources may be monitored to determine data likely to be available on a given mobile communication device.
Embodiments of the disclosure provide a system in which mobile communication devices within the distributed cache gain prior knowledge from the network on the availability and proximity of relevant data in neighboring devices. With this knowledge, mobile communication devices within the distributed cache passively engage in sharing subscribed content that is relevant to a user, thus conserving power. Embodiments of the disclosure provide a deterministic content retrieval system in which participating mobile communication devices share targeted content classes.
Embodiments of the disclosure enable autonomous information sharing between anonymous neighboring mobile communication devices, minimally assisted by the network through the use of optionally predictive location and optionally predictive content of the targeted mobile communication devices. The participating mobile communication devices are able to acquire knowledge of content that the network has determined to exist within a local area. By utilizing prediction techniques for mobile location and content, the need for wide-spread scanning is removed thus reducing the overhead on the network. Embodiments of the disclosure differ from opportunistic distributed content sharing systems by enabling devices to independently acquire knowledge of nearby relevant data and target the acquisition of this data, thus conserving energy and enabling targeted content retrieval.
It will be understood by those skilled in the art that the apparatus that embodies a part or all of the present disclosure may be a general purpose device having at least one processor, a memory, and a software executing on the at least one processor that is further configured to provide a part or all of an embodiment of the disclosure. The device may be a single device or a group of devices. The software may be a single program or a set of programs. Furthermore, any or all of the software used to implement the disclosure can be communicated via any suitable transmission or storage means so that the software can be loaded onto one or more devices.
The present disclosure can take the form of a computer program product accessible from a computer-usable or computer-readable storage device providing program code for use by or in connection with a computer or any instruction execution system. For the purposes of this disclosure, a computer usable or computer-readable storage device can be any tangible apparatus that contains, stores, communicates, propagates, or transports the program for use by or in connection with the instruction execution system, apparatus, or device. The device can be an electronic, magnetic, optical, electromagnetic, or semiconductor system (or apparatus or device). Examples of a computer-readable storage device include a semiconductor or solid state memory, magnetic tape, a removable computer diskette, a random access memory (RAM), a read only memory (ROM), a rigid magnetic disk and an optical disk. Current examples of optical disks include compact disk read only memory (CD-ROM), compact disk read/write (CD-R/W), and DVD.
While the present disclosure has been described with reference to exemplary embodiments, and while the embodiments have been described in considerable detail, it will be understood by those skilled in the art that various changes may be made and equivalents may be substituted for elements thereof without departing from the scope of the disclosure. Additional advantages and modifications will readily appear to those skilled in the art. The description of the present disclosure has been presented for purposes of illustration and description, but is not intended to be exhaustive or limited to the disclosure in the form disclosed. Many improvements, modifications, and variations will be apparent to those of ordinary skill in the art without departing from the scope and spirit of the present disclosure. In addition, many modifications may be made to adapt a particular system, device or component thereof to the teachings of the disclosure without departing from the essential scope thereof. The embodiment was chosen and described in order to best explain the principles of the disclosure and the practical application, and to enable others of ordinary skill in the art to understand the disclosure for various embodiments with various modifications as are suited to the particular use contemplated. Therefore, it is intended that the disclosure not be limited to the particular embodiments disclosed for carrying out this disclosure, but that the disclosure will include all embodiments falling within the scope of the appended claims.

Claims (19)

What is claimed is:
1. An apparatus for distributing inventory data for a distributed cache provided by a plurality of wireless mobile communication devices, the apparatus comprising:
a processor;
a system memory coupled to the processor; and
program code that when executed by said processor provides a distributed cache (DC) server that:
receives first inventory data from a first wireless mobile communication device, said first inventory data identifying one or more data resources associated with said first wireless mobile communication device;
receives second inventory data from a second wireless mobile communication device, said second inventory data identifying one or more data resources associated with said second wireless mobile communication device;
compares said first inventory data and said second inventory data to identify one or more matching data resources; and
in response to identifying one or more matching data resources, sends, to said first wireless mobile communication device, a matching inventory data that identifies said one or more matching data resources, wherein said matching inventory data enables said first wireless mobile communication device to access each of said one or more matching data resources stored on said second wireless mobile communication device.
2. The apparatus according to claim 1, wherein said matching inventory data further comprises an identification of said second wireless mobile communication device, and wherein said matching inventory data enables said first wireless mobile communication device to initiate a connection directly with said second wireless mobile communication device.
3. The apparatus according to claim 1, wherein said sending of said matching inventory data to said first wireless mobile communication device is performed using a first wireless communication network, and wherein said first wireless mobile communication device and second wireless mobile communication device create a peer-to-peer network that enables said access by said first wireless mobile communication device to said one or more matching data resources stored on said second wireless mobile communication device.
4. The apparatus according to claim 1, wherein the DC server:
determines a location of said first wireless mobile communication device and said second wireless mobile communication device;
wherein said matching inventory data is sent to said first wireless mobile communication device only if said first wireless mobile communication device and said second wireless mobile communication device are within a predetermined proximity.
5. The apparatus according to claim 4, wherein said location is a predicted proximity determined for a predetermined future time period.
6. The apparatus according to claim 1, wherein an inventory data of data resources comprises one or more of: a data subscription, a data topic, a data category, a data item, a search term, a user preference, or a user interest.
7. The apparatus according to claim 1, wherein said first wireless mobile communication device:
compiles said first inventory data on said first wireless mobile communication device;
sends said first inventory data to said DC server;
receives, from said DC server, said matching inventory data; and
in response to said first wireless mobile communication device receiving said matching inventory data, triggers an alert.
8. The apparatus according to claim 7, wherein said first inventory data is further configured to identify at least one of: one or more resources available of said first wireless mobile communication device to said second wireless mobile communication device and one or more resources required by said first wireless mobile communication device.
9. The apparatus according to claim 8, wherein said matching inventory data identifies said one or more resources required by said first wireless mobile communication device that are available from said second wireless mobile communication device.
10. A computer program product comprising software code and stored on a non-transitory computer-readable storage medium that is loadable into an internal memory of a data processing system, and that when run on the data processing system, causes the data processing system to perform a method for distributing inventory data for a distributed cache provided by a plurality of wireless mobile communication devices, said method comprising:
receiving, at a distributed cache (DC) server, first inventory data from a first wireless mobile communication device, said first inventory data identifying one or more data resources associated with said first wireless mobile communication device;
receiving, at the DC server, second inventory data from a second wireless mobile communication device, said second inventory data identifying one or more data resources associated with said second wireless mobile communication device;
the DC server comparing said first inventory data and said second inventory data to identify one or more matching data resources; and
in response to identifying one or more matching data resources, the DC server sending, to said first wireless mobile communication device, a matching inventory data that identifies said one or more matching data resources, wherein said matching inventory data enables said first wireless mobile communication device to access each of said one or more matching data resources stored on said second wireless mobile communication device.
11. The computer program product according to claim 10, wherein said matching inventory data further comprises an identification of said second wireless mobile communication device, and wherein said matching inventory data enables said first wireless mobile communication device to initiate a connection directly with said second wireless mobile communication device.
12. The computer program product according to claim 10, wherein said sending of said matching inventory data to said first wireless mobile communication device is performed using a first wireless communication network, and wherein said first wireless mobile communication device and second wireless mobile communication device create a peer-to-peer network that enables said access by said first wireless mobile communication device to said one or more matching data resources stored on said second wireless mobile communication device.
13. The computer program product according to claim 10, wherein the software code further comprising code that causes the data processing system to perform the method comprising
the DC server determining a location of said first wireless mobile communication device and said second wireless mobile communication device;
wherein said matching inventory data is sent to said first wireless mobile communication device only if said first wireless mobile communication device and said second wireless mobile communication device are within a predetermined proximity.
14. The computer program product according to claim 13, wherein said location is a predicted proximity determined for a predetermined future time period.
15. The computer program product according to claim 10, wherein an inventory data of data resources comprises one or more of: a data subscription, a data topic, a data category, a data item, a search term, a user preference, or a user interest.
16. The computer program product according to claim 10, wherein said first wireless mobile communication device:
compiles said first inventory data on said first wireless mobile communication device;
sends said first inventory data to said DC server; and
receives said matching inventory data from said DC server.
17. The computer program product according to claim 16, wherein said first wireless mobile communication device:
in response to receiving said matching inventory data, triggers a alert.
18. The computer program product according to claim 16, wherein said first inventory data is further configured to identify at least one of one or more resources available of said first wireless mobile communication device to said second wireless mobile communication device and one or more resources required by said first wireless mobile communication device.
19. The computer program product according to claim 18, wherein said matching inventory data identifies said one or more resources required by said first wireless mobile communication device that are available from said second wireless mobile communication device.
US14/122,322 2011-05-27 2012-05-02 Managing inventory data for a distributed cache provided by a plurality of wireless mobile devices Expired - Fee Related US9270755B2 (en)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
EP11167843 2011-05-27
EP11167843.9 2011-05-27
EP11167843 2011-05-27
PCT/IB2012/052190 WO2012164414A1 (en) 2011-05-27 2012-05-02 Managing inventory data for a distributed cache provided by a plurality of wireless mobile devices

Publications (2)

Publication Number Publication Date
US20140089378A1 US20140089378A1 (en) 2014-03-27
US9270755B2 true US9270755B2 (en) 2016-02-23

Family

ID=47258456

Family Applications (1)

Application Number Title Priority Date Filing Date
US14/122,322 Expired - Fee Related US9270755B2 (en) 2011-05-27 2012-05-02 Managing inventory data for a distributed cache provided by a plurality of wireless mobile devices

Country Status (5)

Country Link
US (1) US9270755B2 (en)
CN (1) CN103609072B (en)
DE (1) DE112012001817B4 (en)
GB (1) GB2505815B (en)
WO (1) WO2012164414A1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11972668B2 (en) 2021-05-28 2024-04-30 Invue Security Products Inc. Merchandise display security systems and methods
US12012776B2 (en) 2021-05-28 2024-06-18 Invue Security Products Inc. Merchandise display security systems and methods
US12012777B2 (en) 2021-05-28 2024-06-18 Invue Security Products, Inc. Merchandise display security systems and methods

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8875254B2 (en) * 2012-08-07 2014-10-28 International Business Machines Corporation Cache sharing of enterprise data among peers via an enterprise server
US9344515B2 (en) 2013-12-10 2016-05-17 Cisco Technology, Inc. Social-driven precaching of accessible objects
CN105704837B (en) 2014-11-28 2020-02-14 华为终端有限公司 Method and equipment for establishing wireless connection
US10341423B2 (en) 2015-07-31 2019-07-02 Motorola Mobility Llc Method and apparatus for distributing content using a mobile device

Citations (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040264471A1 (en) 2003-04-30 2004-12-30 Jean-Christophe Boulay Method and system for accessing a peer-to-peer network
US6851049B1 (en) 2000-10-02 2005-02-01 Pgp Corporation Method and apparatus for facilitating secure anonymous email recipients
US20050113076A1 (en) 2003-11-20 2005-05-26 Tae-Hee Lee Method and apparatus for searching for expected caller by matching caller ID to phone book
GB2415854A (en) 2004-07-01 2006-01-04 Ericsson Telefon Ab L M Email Spam reduction
WO2007046101A2 (en) 2005-10-19 2007-04-26 Netbarrage Ltd. Method and system for sharing content among mobile devices and purchasing online
US20080084982A1 (en) 2006-09-25 2008-04-10 Embarq Holdings Company Llc System and method for anonymizing a telephone number
US20090094317A1 (en) 2007-10-03 2009-04-09 General Instrument Corporation Method, apparatus and system for sharing multimedia content within a peer-to-peer network
US20090111378A1 (en) 2007-10-31 2009-04-30 Motorola, Inc. Devices and methods for content sharing
US20090276540A1 (en) * 2008-04-30 2009-11-05 Jae-Min Ahn Peer-to-peer (p2p) network system and method of operating the same based on region
US20100023585A1 (en) 2008-07-25 2010-01-28 International Business Machines Corporation Privileged and restricted email processing to multiple recipients based on sender definded visibility settings
US7664242B2 (en) 2006-03-30 2010-02-16 Tel-Tech Systems, Inc. System and method for anonymous telephone communication
US20100046507A1 (en) 2007-07-20 2010-02-25 Cisco Technology, Inc. Using pstn reachability in anonymous verification of voip call routing information
CN101848236A (en) 2010-05-06 2010-09-29 北京邮电大学 Real-time data distribution system with distributed network architecture and working method thereof
US20100291909A1 (en) 2009-05-17 2010-11-18 Nagendra Nagaraja Method and apparatus for providing caller recognition based on biometric data and biometric mobile device address book
US7849135B2 (en) 2004-04-09 2010-12-07 At&T Mobility Ii Llc Sharing content on mobile devices
US20110145397A1 (en) * 2009-12-15 2011-06-16 Qualcomm Incorporated Apparatus and method of peer-to-peer communication
WO2011136708A1 (en) 2010-04-29 2011-11-03 Telefonaktiebolaget Lm Ericsson (Publ) A method and apparatus for handling anonymous calls
US8688148B2 (en) * 2005-10-25 2014-04-01 Qualcomm Incorporated Dynamic resource matching system

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060167985A1 (en) * 2001-04-26 2006-07-27 Albanese Michael J Network-distributed data routing
WO2004100493A1 (en) 2003-05-09 2004-11-18 Telefonaktiebolaget Lm Ericsson (Publ) Distributed caching and redistribution system and method in a wireless data network

Patent Citations (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6851049B1 (en) 2000-10-02 2005-02-01 Pgp Corporation Method and apparatus for facilitating secure anonymous email recipients
US20040264471A1 (en) 2003-04-30 2004-12-30 Jean-Christophe Boulay Method and system for accessing a peer-to-peer network
US20050113076A1 (en) 2003-11-20 2005-05-26 Tae-Hee Lee Method and apparatus for searching for expected caller by matching caller ID to phone book
US7849135B2 (en) 2004-04-09 2010-12-07 At&T Mobility Ii Llc Sharing content on mobile devices
GB2415854A (en) 2004-07-01 2006-01-04 Ericsson Telefon Ab L M Email Spam reduction
WO2007046101A2 (en) 2005-10-19 2007-04-26 Netbarrage Ltd. Method and system for sharing content among mobile devices and purchasing online
US8688148B2 (en) * 2005-10-25 2014-04-01 Qualcomm Incorporated Dynamic resource matching system
US7664242B2 (en) 2006-03-30 2010-02-16 Tel-Tech Systems, Inc. System and method for anonymous telephone communication
US20080084982A1 (en) 2006-09-25 2008-04-10 Embarq Holdings Company Llc System and method for anonymizing a telephone number
US20100046507A1 (en) 2007-07-20 2010-02-25 Cisco Technology, Inc. Using pstn reachability in anonymous verification of voip call routing information
US20090094317A1 (en) 2007-10-03 2009-04-09 General Instrument Corporation Method, apparatus and system for sharing multimedia content within a peer-to-peer network
US20090111378A1 (en) 2007-10-31 2009-04-30 Motorola, Inc. Devices and methods for content sharing
US20090276540A1 (en) * 2008-04-30 2009-11-05 Jae-Min Ahn Peer-to-peer (p2p) network system and method of operating the same based on region
US20100023585A1 (en) 2008-07-25 2010-01-28 International Business Machines Corporation Privileged and restricted email processing to multiple recipients based on sender definded visibility settings
US20100291909A1 (en) 2009-05-17 2010-11-18 Nagendra Nagaraja Method and apparatus for providing caller recognition based on biometric data and biometric mobile device address book
US20110145397A1 (en) * 2009-12-15 2011-06-16 Qualcomm Incorporated Apparatus and method of peer-to-peer communication
WO2011136708A1 (en) 2010-04-29 2011-11-03 Telefonaktiebolaget Lm Ericsson (Publ) A method and apparatus for handling anonymous calls
CN101848236A (en) 2010-05-06 2010-09-29 北京邮电大学 Real-time data distribution system with distributed network architecture and working method thereof

Non-Patent Citations (9)

* Cited by examiner, † Cited by third party
Title
"A Churn-Resistant Peer-to-Peer Web Caching System"-Linga et al, Cornell University, Jun. 2003 https://www.cs.cornell.edu/~linga/public-pdfs/kelips-churn.pdf. *
"A Churn-Resistant Peer-to-Peer Web Caching System"-Linga et al, Cornell University, Jun. 2003 https://www.cs.cornell.edu/˜linga/public-pdfs/kelips-churn.pdf. *
Allow Hidden (BCCed) Email Recipients Who Know Each Other to See Each Other, The IP.com Prior Art Database, IP.com Disclosure No. IPCOM000211540D, Oct. 11, 2011.
Ball, Rudi, Content Sharing for Mobile Devices, Imperial College London Department of Computing, MSc in Advanced Computing Individual Project Report, Sep. 2007.
Chang et al., "Efficient End-to-End Authentication Protocols for Mobile Networks," Personal, Indoor and Mobile Radio Communications, 1996. PIMRC'96., Seventh IEEE International Symposium on (vol. 3), pp. 1252-1256 vol. 3.
GB Application No. GB1211919.4, Intellectual Property Office Search Report, Nov. 1, 2012.
International Application No. PCT/IB2012/052190, International Search Report, Sep. 13, 2012.
Kwong et al., Improving Cache Performance in Mobile Computing Networks Through Dynamic Object Relocation, 10th International Conference on Parallel and Distributed Systems, Jul. 7-9, 2004, Newport Beach, California.
Nordstrom et al., "A Search-Based Network Architecture for Mobile Devices," Technical report / Department of Information Technology, Uppsala University, 2009.

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11972668B2 (en) 2021-05-28 2024-04-30 Invue Security Products Inc. Merchandise display security systems and methods
US12012776B2 (en) 2021-05-28 2024-06-18 Invue Security Products Inc. Merchandise display security systems and methods
US12012777B2 (en) 2021-05-28 2024-06-18 Invue Security Products, Inc. Merchandise display security systems and methods

Also Published As

Publication number Publication date
WO2012164414A1 (en) 2012-12-06
CN103609072A (en) 2014-02-26
DE112012001817B4 (en) 2019-04-04
US20140089378A1 (en) 2014-03-27
DE112012001817T5 (en) 2014-01-30
GB201321931D0 (en) 2014-01-22
GB2505815B (en) 2016-08-03
GB2505815A (en) 2014-03-12
CN103609072B (en) 2017-07-28

Similar Documents

Publication Publication Date Title
US9270755B2 (en) Managing inventory data for a distributed cache provided by a plurality of wireless mobile devices
US11212742B2 (en) UPF selection method and device
CN109673037B (en) Network function discovery method and equipment
US20200104526A1 (en) Dynamic filtering and precision alteration of query responses responsive to request load
US9019945B2 (en) Service-assisted network access point selection
KR102289235B1 (en) Private content distribution network
US10440069B2 (en) System and method for acquiring, processing, and updating global information
US20160182639A1 (en) Internet of things network system using fog computing network
JP2017531223A (en) Computing device and method for exchanging metadata with peer devices to obtain media playback resources from network services
US9473891B2 (en) Mechanism for facilitating dynamic detection and communication of geo-locations for devices
JP2014507850A (en) Dynamic wireless network detection system, method and apparatus
JP7359372B2 (en) Validation within a decentralized network
WO2014130958A1 (en) Identifying computer devices in proximity to a given origin
KR20210119504A (en) Communication method and apparatus, entity and computer readable storage medium
US9883472B1 (en) Methods and apparatus for beaconing within a wireless network based on an indication of distance
US20150142980A1 (en) Context-Based Selection of Instruction Sets for Connecting Through Captive Portals
CN105245500A (en) Multimedia resource sharing method and device
WO2021041279A1 (en) Anonymization and randomization of device identities
US9749416B2 (en) Managing inventory data for a distributed cache provided by a plurality of wireless mobile devices
AU2011358857B2 (en) Method and apparatus for managing content in a processing device
CN103107944A (en) Content locating method and route equipment
US20140073370A1 (en) Method of mobile device resource reuse in mobile cloud
US20140341200A1 (en) Apparatus, system, and method for reducing signal interference in a highly dense wireless environment
US20140297843A1 (en) Apparatus and method for managing presence information
US9270772B2 (en) System and method for providing access to presence status for mobile devices

Legal Events

Date Code Title Description
AS Assignment

Owner name: INTERNATIONAL BUSINESS MACHINES CORPORATION, NEW Y

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:FORREST, PATRICK DANIEL;MURRAY, IVAN PATRICK;MURRAY, KEN;AND OTHERS;REEL/FRAME:031678/0664

Effective date: 20131007

STCF Information on status: patent grant

Free format text: PATENTED CASE

FEPP Fee payment procedure

Free format text: MAINTENANCE FEE REMINDER MAILED (ORIGINAL EVENT CODE: REM.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

LAPS Lapse for failure to pay maintenance fees

Free format text: PATENT EXPIRED FOR FAILURE TO PAY MAINTENANCE FEES (ORIGINAL EVENT CODE: EXP.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

STCH Information on status: patent discontinuation

Free format text: PATENT EXPIRED DUE TO NONPAYMENT OF MAINTENANCE FEES UNDER 37 CFR 1.362

FP Lapsed due to failure to pay maintenance fee

Effective date: 20200223