Operating a cluster of peer-to-peer devices
First Claim
1. A device, comprising:
- a processor; and
a memory configured to store;
an identity of a current master of the device; and
synchronization parameters to facilitate synchronization with one or more peer devices, wherein the synchronization parameters comprise information configured to allow a listening device to learn of a sequence of discovery windows that has been imposed by the current master, wherein the synchronization parameters were included in one or more beacons transmitted by the current master of the device and comprise at least one of;
a channel on which one or more of the discovery windows will occur, a period of the discovery windows, a starting time of a next discovery window, or a duration of the discovery windows;
wherein the processor is configured to;
utilize the synchronization parameters to attend a rendezvous of the one or more peer devices;
synchronize with the one or more peer devices to form a cluster of devices;
detect one or more parameters of a foreign cluster of devices, wherein the one or more parameters from the foreign cluster of devices were included in one or more beacons transmitted by a master of the foreign cluster of devices that is different from the current master of the device;
inform at least one peer device of the one or more parameters of the foreign cluster of devices; and
receive adjusted synchronization parameters to resolve a conflict with the one or more parameters of the foreign cluster of devices.
1 Assignment
0 Petitions
Accused Products
Abstract
A system, apparatus, and method are provided for operating a peer-to-peer communication environment. The environment includes one or more clusters of peer devices, wherein devices in a single cluster are organized into a logical hierarchy under an anchor master (at the root of the hierarchy) and any number of synchronization masters; other devices are non-master devices. Synchronization parameters established by the anchor master and disseminated throughout the hierarchy enable the clusters'"'"' devices to rendezvous, discover peers and services, and communicate among themselves. The anchor master may adjust the synchronization parameters to avoid conflict with another hierarchy. Each device issues beacons (e.g., heartbeats, discovery beacons) that identify the number of devices synchronized with the reporting device, which allows the anchor master to calculate the total number of cluster members. Devices may also report details of a neighboring cluster (e.g., its synchronization parameters) via a beacon or some other communication.
27 Citations
30 Claims
-
1. A device, comprising:
-
a processor; and a memory configured to store; an identity of a current master of the device; and synchronization parameters to facilitate synchronization with one or more peer devices, wherein the synchronization parameters comprise information configured to allow a listening device to learn of a sequence of discovery windows that has been imposed by the current master, wherein the synchronization parameters were included in one or more beacons transmitted by the current master of the device and comprise at least one of;
a channel on which one or more of the discovery windows will occur, a period of the discovery windows, a starting time of a next discovery window, or a duration of the discovery windows;wherein the processor is configured to; utilize the synchronization parameters to attend a rendezvous of the one or more peer devices; synchronize with the one or more peer devices to form a cluster of devices; detect one or more parameters of a foreign cluster of devices, wherein the one or more parameters from the foreign cluster of devices were included in one or more beacons transmitted by a master of the foreign cluster of devices that is different from the current master of the device; inform at least one peer device of the one or more parameters of the foreign cluster of devices; and receive adjusted synchronization parameters to resolve a conflict with the one or more parameters of the foreign cluster of devices. - View Dependent Claims (2, 3)
-
-
4. A method of operating a synchronized cluster of peer devices, the method comprising, at a first peer device:
-
applying synchronization parameters of the cluster of peer devices to maintain synchronization with one or more peer devices of the cluster of peer devices, wherein the synchronization parameters comprise information configured to allow a listening device to learn of a sequence of discovery windows that has been imposed by the first peer device, wherein the synchronization parameters were included in one or more beacons transmitted by the first peer device within the cluster of peer devices and comprise at least one of;
a channel on which one or more of the discovery windows will occur, a period of the discovery windows, a starting time of a next discovery window, or a duration of the discovery windows;utilize the synchronization parameters to attend a rendezvous of the one or more peer devices; detecting parameters of a foreign cluster of devices wherein the parameters from the foreign cluster of devices were included in one or more beacons transmitted by a master of the foreign cluster of devices that is different from the first peer device within the cluster of peer devices; reporting the parameters of the foreign cluster of devices to the one or more peer devices; adjusting the synchronization parameters to resolve a conflict with the parameters of the foreign cluster of devices; and transmitting a beacon to the one or more peer devices wherein the adjusted synchronization parameters are included into the beacon. - View Dependent Claims (5, 6, 7, 8, 9)
-
-
10. A non-transitory computer-readable medium storing instructions that, when executed by a computer, cause the computer to perform a method of operating a synchronized cluster of peer devices, the method comprising, at a first peer device:
-
applying synchronization parameters of the cluster of peer devices to maintain synchronization with one or more peer devices of the cluster of peer devices, wherein the synchronization parameters comprise information configured to allow a listening device to learn of a sequence of discovery windows that has been imposed by the first peer device, wherein the synchronization parameters were included in one or more beacons transmitted by the first peer device within the cluster of peer devices and comprise at least one of;
a channel on which one or more of the discovery windows will occur, a period of the discovery windows, a starting time of a next discovery window, or a duration of the discovery windows;utilize the synchronization parameters to attend a rendezvous of the one or more peer devices; detecting parameters of a foreign cluster of devices wherein the parameters from the foreign cluster of devices were included in one or more beacons transmitted by a master of the foreign cluster of devices that is different from the master device within the cluster of peer devices; reporting the parameters of the foreign cluster of devices to the one or more peer devices; adjusting the synchronization parameters to resolve a conflict with the parameters of the foreign cluster of devices; and transmitting a beacon to the one or more peer devices wherein the adjusted synchronization parameters are included into the beacon.
-
-
11. A device, comprising:
-
a processor; a memory configured to store synchronization parameters to facilitate synchronization with one or more peer devices; and a wireless transceiver for conducting wireless communications, wherein the processor and the wireless transceiver are configured to; synchronize the device with the one or more subordinate peer devices to form a synchronized cluster of devices, wherein synchronizing the device uses synchronization parameters that comprise information configured to allow a listening device to learn of a sequence of discovery windows, wherein the synchronization parameters are included in one or more beacons transmitted by the device to the one or more subordinate peer devices and comprise at least one of a channel on which one or more of the discovery windows will occur, a period of the discovery windows, a starting time of a next discovery window, or a duration of the discovery windows; utilize the synchronization parameters to attend a rendezvous of the one or more subordinate peer devices; determine that the one or more subordinate peer devices satisfy a predetermined condition, wherein the predetermined condition includes an indication in two or more successive beacons from the subordinate devices that the device is their master; in response to the determination, tally a number of the one or more subordinate peer devices within the cluster of devices; increment the tally to account for the device; report the incremented tally, wherein a beacon is generated comprising the tally and the synchronization parameters; and transmit the beacon to at least one of a superior device and the one or more subordinate peer devices. - View Dependent Claims (12, 13, 14)
-
-
15. A method of operating a synchronized cluster of peer devices, the method comprising, at a first peer device:
-
synchronizing with a plurality of subordinate peer devices to form the synchronized cluster of peer devices using synchronization parameters that comprise information configured to allow a listening device to learn of a sequence of discovery windows, wherein the synchronization parameters are included in one or more beacons transmitted by the first peer device to the one or more subordinate peer devices and comprise at least one of;
a channel on which one or more of the discovery windows will occur, a period of the discovery windows, a starting time of a next discovery window, or a duration of the discovery windows;utilize the synchronization parameters to attend a rendezvous of the one or more subordinate peer devices; receiving, from each subordinate peer device, a first value identifying a number of peer devices synchronized with the subordinate peer device; determining that the subordinate peer devices satisfy a predetermined condition, wherein the predetermined condition includes an indication in two or more successive beacons from the subordinate devices that the first peer device is their master; in response to the determination, summing the first values received from the subordinate peer devices; incrementing the sum of the first values by one; reporting the incremented sum, wherein a beacon is generated comprising the incremented sum and the synchronization parameters; and transmit the beacon to a superior peer device with which the first peer device is synchronized. - View Dependent Claims (16, 17, 18, 19, 20, 21, 22)
-
-
23. A network of peer communication devices, comprising:
-
an anchor master having a highest master preference value among the peer communication devices in a logical hierarchy; a first stratum comprising a sync master having a master preference value lower than the highest master preference value of the anchor master, wherein the anchor master and the sync master are configured to transmit discovery beacons to identify the highest master preference value of the anchor master and to synchronize the logical hierarchy, wherein a discovery beacon transmitted by the anchor master comprises a sum of number of peer communication devices synchronized with the anchor master; wherein a discovery beacon transmitted by the sync master comprises a sum of number of peer communication devices synchronized with the sync master; wherein the discovery beacons each comprise synchronization parameters comprising information configured to allow a listening device to learn of a sequence of discovery windows, and wherein the information comprises at least one of;
a channel on which one or more of the discovery windows will occur, a period of the discovery windows, a starting time of a next discovery window, or a duration of the discovery windows; anda second stratum comprising a non-master peer communication device configured to transmit a heartbeat beacon, wherein the sync master is configured to determine that the non-master peer communication device satisfies a predetermined condition, wherein the predetermined condition includes an indication in two or more successive heartbeat beacons from the non-master peer communication device that the sync master is its master, and in response to the determination, increase a number of peer devices that are synchronized with the sync master, and wherein upon detecting parameters of a foreign cluster of devices, the anchor master is configured to determine a priority between the anchor master of a foreign cluster of devices and adjust the synchronization parameters to resolve a conflict with the parameters of the foreign cluster of devices. - View Dependent Claims (24, 25, 26, 27, 28, 29, 30)
-
Specification