Methods and apparatus for synchronizing devices in a wireless data communication system

Information

  • Patent Grant
  • 9736801
  • Patent Number
    9,736,801
  • Date Filed
    Monday, May 19, 2014
    10 years ago
  • Date Issued
    Tuesday, August 15, 2017
    7 years ago
Abstract
The present disclosure describes methods and apparatus for synchronizing devices in a wireless data communication system. A wireless transceiver device of the wireless data communication system transmits a beacon at various intervals that includes both a timestamp indicating a current time and date of the transmitting wireless transceiver device, and a time quality indication indicating a quality of the time source of the transmitting wireless transceiver device. A wireless transceiver device receiving the beacon evaluates the time quality indication included in the beacon. If the time quality indication included in the beacon indicates the transmitting wireless transceiver device has a higher quality time source than the receiving wireless transceiver device, then the receiving wireless transceiver device adjusts its clock based on the timestamp in the beacon, otherwise the receiving wireless transceiver device need not adjust its clock based on the timestamp in the beacon.
Description
BACKGROUND

As the number and types of computing and other electronic devices that are available has increased, it has become increasingly important for devices to be able to communicate with one another. This communication oftentimes involves sending (or transmitting) data from one device to another via a wireless network. Although wireless networks allow data to be communicated among various devices, wireless networks are not without their problems. One such problem is that each device can have its own clock that operates slightly faster or slower than the clocks of other devices in the network. These differences in clock speed can make it difficult for devices to know when they are supposed to send data on the network and when they are supposed to listen for data sent by other devices.


SUMMARY

This summary is provided to introduce subject matter that is further described below in the Detailed Description and Drawings. Accordingly, this Summary should not be considered to describe essential features nor used to limit the scope of the claimed subject matter.


In general, in one aspect, this specification describes a method implemented in a first wireless transceiver device of a wireless data communication system. The method includes receiving, from a second wireless transceiver device of the wireless data communication system, a first beacon that identifies (i) when the first wireless transceiver device is to listen for data and (ii) when the first wireless transceiver device is to send data, wherein the first beacon further includes a timestamp. The method also includes obtaining, from the first beacon, a time quality of a time source of the second wireless transceiver device, wherein the time quality of the time source of the second wireless transceiver device indicates how accurately the time source of the second wireless transceiver device reflects real time, and determining a time quality of a time source of the first wireless transceiver device, wherein the time quality of the time source of the first wireless transceiver device indicates how accurately the time source of the first wireless transceiver device reflects real time. The method further includes adjusting, based on the timestamp in the first beacon, a clock of the first wireless transceiver device in response to the time source of the second wireless transceiver device reflecting real time more accurately than the time source of the first wireless transceiver device, and leaving the clock of the first wireless transceiver device unadjusted in response to the time source of the first wireless transceiver device reflecting real time more accurately than the time source of the second wireless transceiver device.


In general, in another aspect, this specification describes a first wireless transceiver device of a wireless data communication system, the first wireless transceiver device including a transceiver and a beacon based clock system. The transceiver is configured to receive, from a second wireless transceiver device of the wireless data communication system, a first beacon that identifies (i) when the first wireless transceiver device is to listen for data and (ii) when the first wireless transceiver device is to send data, wherein the first beacon further includes a timestamp. The beacon based clock system is configured to obtain, from the first beacon, a time quality of a time source of the second wireless transceiver device, wherein the time quality of the time source of the second wireless transceiver device indicates how accurately the time source of the second wireless transceiver device reflects real time, and determine a time quality of a time source of the first wireless transceiver device, wherein the time quality of the time source of the first wireless transceiver device indicates how accurately the time source of the first wireless transceiver device reflects real time. The beacon based clock system is further configured to adjust, based on the timestamp in the first beacon, a clock of the first wireless transceiver device in response to the time source of the second wireless transceiver device reflecting real time more accurately than the time source of the first wireless transceiver device, and leave the clock of the first wireless transceiver device unadjusted in response to the time source of the first wireless transceiver device reflecting real time more accurately than the time source of the second wireless transceiver device.


In general, in another aspect, this specification describes a computer-readable memory device comprising computer-executable instructions that, when executed, implement a system in a first wireless transceiver device of a wireless data communication system to receive, from a second wireless transceiver device of the wireless data communication system, a first beacon that identifies (i) when the first wireless transceiver device is to listen for data and (ii) when the first wireless transceiver device is to send data, wherein the first beacon further includes a timestamp. The system is also to obtain, from the first beacon, a time quality of a time source of the second wireless transceiver device, wherein the time quality of the time source of the second wireless transceiver device indicates how accurately the time source of the second wireless transceiver device reflects real time, and determine a time quality of a time source of the first wireless transceiver device, wherein the time quality of the time source of the first wireless transceiver device indicates how accurately the time source of the first wireless transceiver device reflects real time. The system is further to adjust, based on the timestamp in the first beacon, a clock of the first wireless transceiver device in response to the time source of the second wireless transceiver device reflecting real time more accurately than the time source of the first wireless transceiver device, and leave the clock of the first wireless transceiver device unadjusted in response to the time source of the first wireless transceiver device reflecting real time more accurately than the time source of the second wireless transceiver device.


The details of one or more implementations are set forth in the accompanying drawings and the description below. Other features and advantages will be apparent from the description and drawings.





BRIEF DESCRIPTION OF THE DRAWINGS

In the figures, the left-most digit of a reference number identifies the figure in which the reference number first appears. The use of the same reference numbers in different instances in the description and the figures indicate like elements.



FIG. 1 illustrates an example wireless data communication system in which the methods and apparatus for synchronizing devices in a wireless data communication system can be used in accordance with one or more embodiments.



FIG. 2 illustrates an example beacon based clock system in accordance with one or more embodiments.



FIG. 3 illustrates an example frame of a beacon in accordance with one or more embodiments.



FIG. 4 is a flowchart illustrating an example process for transmitting a beacon in accordance with one or more embodiments.



FIG. 5 is a flowchart illustrating an example process for determining whether to adjust a clock based on a received beacon in accordance with one or more embodiments.



FIG. 6 illustrates an example system that can implement various aspects of the techniques described herein.





DETAILED DESCRIPTION

Methods and apparatus for synchronizing devices in a wireless data communication system are discussed herein. A wireless data communication system includes multiple wireless transceiver devices each capable of operating as both a transmitter device and a receiver device. One or more of the wireless transceiver devices transmits a beacon at various intervals that includes both a timestamp indicating a current time and date of the transmitting wireless transceiver device, and a time quality indication indicating a quality of the time source of the transmitting wireless transceiver device. In one or more embodiments, the quality of a time source of a particular wireless transceiver device refers to how accurately an internal clock of the wireless transceiver device reflects real time.


Other wireless transceiver devices in the wireless data communication system receive the beacon, and each wireless transceiver device receiving the beacon evaluates the time quality indication included in the beacon relative to the quality of the time source of the receiving wireless transceiver device. If the time quality indication included in the beacon indicates the transmitting wireless transceiver device has a higher quality time source than the receiving wireless transceiver device, then the receiving wireless transceiver device adjusts its clock based on the timestamp in the beacon. However, if the time quality indication included in the beacon indicates the transmitting wireless transceiver device does not have a higher quality time source than the receiving wireless transceiver device, then the receiving wireless transceiver device need not adjust its clock based on the timestamp in the beacon.



FIG. 1 illustrates an example wireless data communication system 100 in which the methods and apparatus for synchronizing devices in a wireless data communication system can be used in accordance with one or more embodiments. The wireless data communication system 100 includes a wireless transceiver device 102, a wireless transceiver device 104, a wireless transceiver device 106, and a wireless transceiver device 108. The wireless transceiver device 102 includes a transceiver 112 that transmits data that can be received by other devices in the wireless data communication system 100, and also receives data transmitted by other devices in the wireless data communication system 100. The wireless transceiver device 104 includes a transceiver 114 that transmits data that can be received by other devices in the wireless data communication system 100, and also receives data transmitted by other devices in the wireless data communication system 100. The wireless transceiver device 106 includes a transceiver 116 that transmits data that can be received by other devices in the wireless data communication system 100, and also receives data transmitted by other devices in the wireless data communication system 100. The wireless transceiver device 108 includes a transceiver 118 that transmits data that can be received by other devices in the wireless data communication system 100, and also receives data transmitted by other devices in the wireless data communication system 100.


One or more of the transceivers 112, 114, 116, and 118 also transmit beacons for the wireless data communication system 100, which are used by other devices in the wireless data communication system 100 to determine when to listen for data and when to send data as discussed in more detail below.


The wireless transceiver device 102 includes a beacon based clock system 122 that is updated based at least in part on beacons received by the wireless transceiver device 102. The wireless transceiver device 104 includes a beacon based clock system 124 that is updated based at least in part on beacons received by the wireless transceiver device 104. The wireless transceiver device 106 includes a beacon based clock system 126 that is updated based at least in part on beacons received by the wireless transceiver device 106. The wireless transceiver device 108 includes a beacon based clock system 128 that is updated based at least in part on beacons received by the wireless transceiver device 108.


The devices in the wireless data communication system 100 use a communication protocol that is asynchronous, and thus the wireless data communication system 100 is also referred to as being an asynchronous system. The devices in a wireless data communication system employing a synchronous communication protocol having common knowledge of the exact time at any given moment, and the devices can use this knowledge to know when to transmit or receive data. In contrast, the devices in an asynchronous system do not have common knowledge of the exact time at any given moment, and thus rely on the beacon to determine when to transmit or receive data. The beacons can thus be viewed as the mechanism for synchronizing devices in an asynchronous system, so each device knows when to transmit or receive data.


Furthermore, the wireless data communication system 100 is a distributed synchronization wireless data communication system, which refers to beacons used to synchronize the devices in the wireless data communication system being transmitted by various different ones of wireless transceiver devices 102, 104, 106, and 108. Absent from the wireless data communication system 100 is a single synchronous time source or point. Multiple different ones of wireless transceiver devices 102, 104, 106, and 108 can transmit beacons, and no single one of the wireless transceiver devices 102, 104, 106, or 108 is responsible for being a single synchronous time source or point.


In one or more embodiments, the wireless data communication system 100 uses a communication protocol that is compliant with Wi-Fi networks, such as networks implementing the IEEE 802.11 standard (e.g., as discussed in the IEEE Std 802.11-2012, Mar. 29, 2012). The wireless data communication system 100 operates in one of various modes of operation that are compliant with the IEEE 802.11 standard, such as BSS (Basic Service Set), IBSS (Independent Basic Service Set), NAN (Neighbor Awareness Networking), and so forth. Although reference is made herein to the IEEE 802.11 standard, it should be noted that the techniques discussed herein are also usable with other standards and signaling technologies that are generally asynchronous and not based on a single synchronous time source or point.


The beacon transmitted by one or more of the wireless transceiver devices 102, 104, 106, and 108 is a frame used for synchronizing the devices in the wireless data communication system 100. The beacon identifies when devices in the wireless data communication system 100 are to listen for (receive) data and when the devices in the wireless data communication system 100 are to send data. For example, each device in the wireless data communication system 100 can know that the device is to receive data during one particular range of microseconds after receipt of a beacon, and that the device can send data during another particular range of microseconds after the beacon.


Which of the wireless transceiver devices 102, 104, 106, and 108 transmits a beacon at any given time can be determined using any of a variety of public or proprietary techniques. For example, a beacon can be transmitted by the first of the wireless transceiver devices 102, 104, 106, and 108 that identifies a beacon window (e.g., a time range during which the wireless transceiver device is expecting to receive or transmit a beacon) and since the beginning of the beacon window has not received a beacon from another of the wireless transceiver devices 102, 104, 106, and 108.


It should be noted that although the wireless data communication system 100 is discussed as including multiple wireless transceiver devices, the wireless data communication system 100 can alternatively include one or more transmitter devices that transmit data that can be received by other devices in the wireless data communication system 100 but that do not receive data transmitted by other devices in the wireless data communication system 100. The wireless data communication system 100 can also alternatively include one or more receiver devices that receive data transmitted by other devices in the wireless data communication system 100 but that do not transmit data that can be received by other devices in the wireless data communication system 100.



FIG. 2 illustrates an example beacon based clock system 200 in accordance with one or more embodiments. The beacon based clock system 200 is a beacon based clock system of a wireless transceiver device in a wireless data communication system. The beacon based clock system 200 can be any one of beacon based clock systems 122, 124, 126, or 128 of FIG. 1. The beacon based clock system 200 includes a clock 202, a time source 204, a time quality indication 206, and a time quality evaluator 208.


The clock 202 is an internal clock of the wireless transceiver device that implements the beacon based clock system 200 and maintains a current date and time for the beacon based clock system 200. The current date and time can be updated automatically using any of a variety of public and/or proprietary techniques, such as using a timer chip or other time sources.


The time source 204 is a source of the current date and time, and is used to update the clock 202. The time source can be the timer chip, or can be any of a variety of other hardware or software mechanisms, and the beacon based clock system 200 can include any number of time sources 204. The timer chip or other mechanism used to automatically update the clock 202 can drift over time, and this drift can be corrected by updating the clock 202 to reflect the current time and date provided by one or more additional time sources 204. Such additional time sources can be take various forms, such as components (hardware or software) receiving signals from devices or services external to the wireless transceiver device that includes the clock 202, such as signals from a GPS (Global Positioning System), signals from a cellular phone system, or other signal source.


The time quality indication 206 is an indication of the quality (e.g., accuracy) of the time source used to update the clock 202, the quality of the time source referring to how accurately the time source reflects (e.g., identifies) the actual or real time. Different time sources are associated with particular quality levels indicating the accuracy of the time and date provided by such time sources. Higher quality levels indicate more accurate time and date (time and date that is closer to or that more accurately reflects the actual or real time) than lower quality levels. The quality levels can be represented in any of a variety of different manners, such as numerically, alphabetically, other ordered list, and so forth. These quality levels are also referred to as a time quality of the clock 202 or of the wireless transceiver device that includes the beacon based clock system 200.


The quality levels of the time sources can also vary based on other state or characteristics of the wireless transceiver device implementing the beacon based clock system 200. For example, the quality levels of the time sources can vary based on how long the wireless transceiver device has been in a low power mode such as a sleep mode (e.g., the quality level being decreased more the longer the wireless transceiver device is in the low power mode). By way of another example, the quality levels of the time sources can vary based on whether the wireless transceiver device is operating on battery power or AC (e.g., plugged-in) power (e.g., the quality level being lower when operating on battery power than when operating on AC power).


For example, a beacon based clock system 200 having a time source that is a timer chip in a battery powered wireless transceiver device that has been asleep (in a sleep mode) for at least a threshold amount of time can be associated with a lower quality level (e.g., a quality level value of 0) than a beacon based clock system 200 having a time source that is a timer chip in a battery powered wireless transceiver device that has been in a higher power mode (not asleep) for at least the threshold amount of time (e.g., which may be associated with a quality level value of 1). By way of another example, a beacon based clock system 200 having a time source that is a timer chip in a battery powered wireless transceiver device can be associated with a lower quality level (e.g., a quality level value of 1) than a beacon based clock system 200 having a time source that is a timer chip in a plugged-in (e.g., AC) powered wireless transceiver device (e.g., which may be associated with a quality level value of 2). By way of yet another example, a beacon based clock system 200 having a time source that is a timer chip in a plugged-in (e.g., AC) powered wireless transceiver device can be associated with a lower quality level (e.g., a quality level value of 2) than a beacon based clock system 200 having a time source that is a GPS signal (e.g., which may be associated with a quality level value of 3).


It should be noted that the time source of the beacon based clock system 200 can change over time, and thus the time quality indication 206 can change over time. In one or more embodiments, the time quality indication 206 at a particular time is a highest quality level associated with a time source being used by the beacon based clock system 200 at that particular time. For example, assume the beacon based clock system 200 is included in a wireless transceiver device that is not plugged in to AC power and that includes GPS functionality. The time source of the wireless transceiver device including the beacon based clock system 200 is a GPS signal while the GPS functionality is activated (e.g., powered on) and is receiving signals from at least a threshold number of satellites. However, the time source of the wireless transceiver device including the beacon based clock system 200 is a timer chip in a battery powered wireless transceiver device while the GPS functionality is not activated or is not receiving signals from at least a threshold number of satellites.


When a wireless transceiver device sends a beacon, the beacon is a frame of various data. FIG. 3 illustrates an example frame 300 of a beacon in accordance with one or more embodiments. The frame 300 includes a timestamp 302 and a time quality indication 304. The frame can optionally include various additional data or information based on the communication protocol used by the wireless data communication system. The timestamp 302 is an indication of the current time and date of the clock 202 of the beacon based clock system 200 of the wireless transceiver device transmitting the beacon. The timestamp 302 can take various forms, such as an encoding of the current time and date of the clock 202, an offset (indicated by the current time and date of the clock 202) from some time or date known by the devices in the wireless data communication system, and so forth.


The time quality indication 304 is an indication of the time quality indication 206 of the beacon based clock system 200 of the wireless transceiver device transmitting the beacon. The time quality indication 304 can take various forms, such as the same form as the time quality indication 206, an encoding of the time quality indication 206, and so forth. The time quality indication 206 can be a separate field in the frame 300, or can be inherent in other data in the frame 300. For example, the frame 300 can include a field identifying a type of wireless transceiver device implementing the beacon based clock system 200, and the time quality indication can be inherent in the type of wireless transceiver device implementing the beacon based clock system 200.


In one or more embodiments, the timestamp 302 is used as the TSF (Timing Synchronization Function) value in a beacon, such as a beacon compliant with the IEEE 802.11 standard. However, it should be noted that the timestamp 302 differs from traditional TSF values in that traditional TSF value are simply monotonically increasing counters, whereas the timestamp 302 is an indication of the current time and date of the clock 202.


Returning to FIG. 2, in response to a beacon received from another wireless transceiver device, the time quality evaluator 208 evaluates the time quality indication 304 in the received beacon. In response to the time quality indication 304 in the received beacon not being a higher quality level (e.g., being a lower quality level or the same quality level) than the time quality indication 206, no adjustment is made to the clock 202 based on the timestamp 302. However, in response to the time quality indication 304 in the received beacon being a higher quality level than the time quality indication 206, the clock 202 is adjusted based on the timestamp 302. The clock 202 can be adjusted based on the timestamp 302 in various manners. For example, the current date and time of the clock 202 can be updated to be the same as (or within a particular threshold amount of) the date and time indicated by the timestamp 302. By way of another example, the current date and time of the clock can be changed to be closer to the date and time indicated by the timestamp 302 (e.g., update the current date and time of the clock 202 to be half-way between the current date and time of the clock 202 and the date and time indicated by the timestamp 302).


Thus, each time a wireless transceiver device transmits a beacon, that beacon includes a timestamp indicating the current date and time of the clock of the transmitting wireless transceiver device. Each other wireless transceiver device that receives the beacon compares the time quality indication in the beacon to the time quality indication of its own time source. If the time quality indication in the beacon is a higher quality level (indicating that the transmitting wireless transceiver device has a higher quality time source than the receiving wireless transceiver device), then the receiving wireless transceiver device adjusts its clock based on the received timestamp. However, if the time quality indication in the beacon is not a higher quality level (indicating that the transmitting wireless transceiver device does not have a higher quality time source than the receiving wireless transceiver device), then the receiving wireless transceiver device does not adjust its clock based on the received timestamp.



FIG. 4 is a flowchart illustrating an example process 400 for transmitting a beacon in accordance with one or more embodiments. Process 400 is described in the form of a set of blocks that specify operations to be performed, however the operations are not necessarily limited to the order shown. The operations performed by the set of blocks in process 400 are performed by a wireless transceiver device, such as a wireless transceiver device 102, 104, 106, or 108 of FIG. 1. The wireless transceiver device implementing process 400 is also referred to as the transmitting wireless transceiver device.


At block 402, a determination is made by the transmitting wireless transceiver device to transmit a beacon. The determination can be made based on various different criteria, such as whether another wireless transceiver device has already transmitted a beacon in a current beacon window, an amount of time since the transmitting wireless transceiver device last transmitted a beacon, and so forth.


At block 404, a beacon is generated. The beacon includes a timestamp of the transmitting wireless transceiver device indicating the current date and time when the beacon is generated and transmitted, and a time quality indication indicating a quality of the time source of the transmitting wireless transceiver device. Various additional information related to the wireless data communication system of which the transmitting wireless transceiver device is a part is also optionally included in the beacon.


At block 406, the beacon is transmitted. The beacon includes the timestamp of the transmitting wireless transceiver device, and a time quality indication indicating a quality of the time source of the transmitting wireless transceiver device. The beacon is received by one or more other wireless transceiver devices in the wireless data communication system.



FIG. 5 is a flowchart illustrating an example process 500 for determining whether to adjust a clock based on a received beacon in accordance with one or more embodiments. Process 500 is described in the form of a set of blocks that specify operations to be performed, however the operations are not necessarily limited to the order shown. The operations performed by the set of blocks in process 500 are performed by a wireless transceiver device, such as a wireless transceiver device 102, 104, 106, or 108 of FIG. 1. The wireless transceiver device implementing process 500 is also referred to as the receiving wireless transceiver device.


At block 502, a beacon is received from a transmitting wireless transceiver device. The beacon includes a timestamp of the transmitting wireless transceiver device, and a time quality indication indicating a quality of the time source of the transmitting wireless transceiver device at the time the beacon was generated.


At block 504, the time quality indication in the beacon is compared to a time quality indication of the receiving wireless transceiver device. The time quality in the beacon indicates the quality of the time source of the transmitting wireless transceiver device at the time the beacon was transmitted (and thus the accuracy of the timestamp in the beacon), and the time quality in the of the receiving wireless transceiver device indicates a quality of the time source of the receiving wireless transceiver device.


At block 506, a determination is made as to whether the time quality indication in the beacon indicates a higher time quality than a time quality indication of the receiving wireless transceiver device.


At block 508, in response to the time quality indication in the beacon indicating a higher time quality than the time quality indication of the receiving wireless transceiver device, the clock of the receiving wireless transceiver device is adjusted based on the timestamp in the beacon. The clock can be adjusted in various manners as discussed above.


At block 510, in response to the time quality indication in the beacon not indicating a higher time quality than the time quality indication of the receiving wireless transceiver device, the clock of the receiving wireless transceiver device is left unadjusted. No adjustment of the clock of the receiving wireless transceiver device need be performed based on the timestamp in the beacon. It should be noted that the clock being left unadjusted at block 510 refers to the clock not being adjusted based on the timestamp in the beacon—the clock is still automatically updated based on the time source of the beacon based clock system.


The techniques discussed herein support various different usage scenarios. For example, even though the wireless data communication system uses an asynchronous communication protocol, using the techniques discussed herein the wireless transceiver devices in a wireless data communication system will be close (e.g., within a threshold amount of time) of being synchronized to the same date and time. This remains true even for devices moving among wireless data communication systems. E.g., using the techniques discussed herein a wireless transceiver device can move from one wireless data communication system to another and be synchronized to the same time and date as the wireless transceiver devices in each wireless data communication system.


By way of another example, the techniques discussed herein allow different wireless transceiver devices to operate in conjunction with one another in a wireless data communication system. Each wireless transceiver device is synchronized to the same time and date, and thus can coordinate with each other more easily to determine which is to transmit beacons or when beacons are transmitted.


Although the beacon is discussed herein as including a timestamp and time quality indication, alternatively the beacon need not include the time quality indication. Rather, the beacon can include the timestamp and the beacon based clock system of the receiving wireless transceiver device can use other criteria or rules to determine whether to adjust the clock of the receiving wireless transceiver device based on the timestamp. For example, the receiving wireless transceiver device may make an assumption regarding the quality of the time source of the wireless transceiver device from which the beacon is received, such as determining that the quality of the time source of the wireless transceiver device from which the beacon is received is likely to be higher than that of the time source of the receiving wireless transceiver device and thus the clock of the receiving wireless transceiver device is adjusted based on the timestamp in the beacon.


Additionally, although the beacon based clock system is discussed as including a time source, in some situations a wireless transceiver device includes no time source. Rather, the beacon based clock system of the receiving wireless transceiver device can simply adjust the clock of the receiving wireless transceiver device based on the timestamp in a beacon each time a beacon is received.



FIG. 6 illustrates an example system 600 that can implement various aspects of the techniques described herein. System 600 can be implemented in a variety of different devices, such as one or a combination of a media device, computer device, television set-top box, video processing and/or rendering device, Ethernet interface, switch, appliance device, gaming device, electronic device, vehicle, workstation, smart phone, tablet, and/or in any other type of computing device. System 600 can be implemented as a System-on-Chip (SoC).


System 600 can include electronic circuitry, a microprocessor, memory, input-output (I/O) logic control, communication interfaces and components, other hardware, firmware, and/or software needed to run a device. System 600 can also include an integrated data bus (not shown) that couples the various components of the system for data communication between the components. A wireless communication device that includes system 600 can also be implemented with many combinations of differing components.


In this example, system 600 includes various components such as an input-output (I/O) logic control 602 (e.g., to include electronic circuitry) and a microprocessor 604 (e.g., any of a microcontroller or digital signal processor). System 600 also includes a memory 606, which can be any type and/or combination of RAM, low-latency nonvolatile memory (e.g., Flash memory), ROM, one-time programmable memory, and/or other suitable electronic data storage. Alternately or additionally, system 600 may comprise a memory interface for accessing additional or expandable off-chip memory, such as an external Flash memory module. System 600 can also include various firmware and/or software, such as an operating system 608, which can be computer-executable instructions maintained by memory 606 and executed by microprocessor 604. System 600 may also include other various communication interfaces and components, communication components, other hardware, firmware, and/or software, and so forth.


System 600 also includes a beacon based clock system 610 that evaluates time quality indications of received beacons as discussed herein. The beacon based clock system 610 can be, for example, a beacon based clock system 122, 124, 126, or 128 of FIG. 1, or a beacon based clock system 200 of FIG. 2. The beacon based clock system 610 can be implemented in hardware, firmware, software, or combinations thereof.


One or more of the methods or techniques described above can take the form of a computer program product accessible from a computer-usable or computer-readable medium providing program code for use by or in connection with a computer or any instruction execution system. For the purposes of this description, a computer-usable or computer-readable medium can be any apparatus that can tangibly store the program for use by or in connection with the instruction execution system, apparatus, or device. The medium can be an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system (or apparatus or device). Examples of a computer-readable medium 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. The computer-readable medium can include computer-readable memory devices, which can be any of the devices or mediums discussed above, although excludes signals, signal transmission, and carrier waves.


Although the subject matter has been described in language specific to structural features and/or methodological operations, it is to be understood that the subject matter defined in the appended claims is not necessarily limited to the specific features or operations described above, including orders in which they are performed.

Claims
  • 1. A method implemented in a first wireless transceiver device of a wireless data communication system, the method comprising: receiving, from a second wireless transceiver device of the wireless data communication system, a first beacon that identifies (i) when the first wireless transceiver device is to listen for data and (ii) when the first wireless transceiver device is to send data, wherein the first beacon further includes a timestamp;obtaining, from the first beacon, a time quality of a time source of the second wireless transceiver device, wherein the time quality of the time source of the second wireless transceiver device indicates how accurately the time source of the second wireless transceiver device reflects real time, the time quality of the time source of the second wireless transceiver device based at least in part on state characteristics of the second wireless transceiver device, the state characteristics of the second wireless transceiver device including: whether the second wireless transceiver device has been asleep for at least a threshold amount of time;whether the second wireless transceiver device has been in a low-power mode for at least a threshold amount of time;whether the second wireless transceiver device is plugged in; orwhether the second wireless transceiver device is operating on battery power;determining a time quality of a time source of the first wireless transceiver device, wherein the time quality of the time source of the first wireless transceiver device indicates how accurately the time source of the first wireless transceiver device reflects real time;adjusting, based on the timestamp in the first beacon, a clock of the first wireless transceiver device in response to the time source of the second wireless transceiver device reflecting real time more accurately than the time source of the first wireless transceiver device; andleaving the clock of the first wireless transceiver device unadjusted in response to the time source of the first wireless transceiver device reflecting real time more accurately than the time source of the second wireless transceiver device.
  • 2. The method of claim 1, further comprising: at a predetermined time subsequent to receiving the first beacon, generating a second beacon that includes a timestamp indicating a current time and date of the first wireless transceiver device as well as an indication of the time quality of the time source of the first wireless transceiver device; andtransmitting the second beacon in the wireless data communication system.
  • 3. The method of claim 1, wherein the adjusting comprises updating the clock of the first wireless transceiver device to be the same as the date and time indicated in the timestamp in the first beacon.
  • 4. The method of claim 1, wherein the wireless data communication system includes a Wi-Fi network, and the timestamp is included as a Timing Synchronization Function value in the first beacon.
  • 5. The method of claim 1, wherein the timestamp comprises a current date and time of the second wireless transceiver device when the first beacon was transmitted.
  • 6. The method of claim 1, wherein the time quality of the time source of the first wireless transceiver device is based at least in part on whether the time source of the first wireless transceiver device is a component receiving signals from devices external to the first wireless transceiver device.
  • 7. The method of claim 6, wherein the signals from devices external to the first wireless transceiver device comprise Global Positioning System signals received from one or more satellites or signals from a cellular phone system.
  • 8. The method of claim 1, wherein the state characteristics of the second wireless transceiver device comprises whether the second wireless transceiver device has been in a low-power mode for at least a threshold amount of time.
  • 9. The method of claim 1, wherein the state characteristics of the second wireless transceiver device comprises whether the second wireless transceiver device is plugged in.
  • 10. The method of claim 1, wherein the state characteristics of the second wireless transceiver device comprises whether the second wireless device has been asleep for at least a threshold amount of time.
  • 11. The method of claim 1, wherein the state characteristics of the second wireless transceiver device comprises whether the second wireless transceiver device is operating on battery power.
  • 12. A first wireless transceiver device of a wireless data communication system, the first wireless transceiver device comprising: a transceiver configured to receive, from a second wireless transceiver device of the wireless data communication system, a first beacon that identifies (i) when the first wireless transceiver device is to listen for data and (ii) when the first wireless transceiver device is to send data, wherein the first beacon further includes a timestamp; anda beacon based clock system configured to: obtain, from the first beacon, a time quality of a time source of the second wireless transceiver device, wherein the time quality of the time source of the second wireless transceiver device indicates how accurately the time source of the second wireless transceiver device reflects real time, the time quality of the time source of the second wireless transceiver device based at least in part on state characteristics of the second wireless transceiver device, the state characteristics of the second wireless transceiver device including: whether the second wireless transceiver device has been asleep for at least a threshold amount of time;whether the second wireless transceiver device has been in a low-power mode for at least a threshold amount of time;whether the second wireless transceiver device is plugged in; orwhether the second wireless transceiver device is operating on battery power;determine a time quality of a time source of the first wireless transceiver device, wherein the time quality of the time source of the first wireless transceiver device indicates how accurately the time source of the first wireless transceiver device reflects real time;adjust, based on the timestamp in the first beacon, a clock of the first wireless transceiver device in response to the time source of the second wireless transceiver device reflecting real time more accurately than the time source of the first wireless transceiver device; andleave the clock of the first wireless transceiver device unadjusted in response to the time source of the first wireless transceiver device reflecting real time more accurately than the time source of the second wireless transceiver device.
  • 13. The first wireless transceiver device of claim 12, the beacon based clock system being further configured to generate, at a predetermined time subsequent to receiving the first beacon, a second beacon that includes a timestamp indicating a current time and date of the first wireless transceiver device as well as an indication of the time quality of the time source of the first wireless transceiver device; andthe transceiver being further configured to transmit the second beacon in the wireless data communication system.
  • 14. The first wireless transceiver device of claim 12, wherein to adjust the clock is to update the clock of the first wireless transceiver device to be the same as the date and time indicated in the timestamp in the first beacon.
  • 15. The first wireless transceiver device of claim 12, wherein the wireless data communication system includes a Wi-Fi network, and the timestamp is included as a Timing Synchronization Function value in the first beacon.
  • 16. The first wireless transceiver device of claim 12, wherein the timestamp comprises a current date and time of the second wireless transceiver device when the first beacon was transmitted.
  • 17. The first wireless transceiver device of claim 12, wherein the state characteristics of the second wireless transceiver device comprises whether the second wireless transceiver device has been in a low-power mode for at least a threshold amount of time.
  • 18. The first wireless transceiver device of claim 12, wherein the state characteristics of the second wireless transceiver device comprises whether the second wireless transceiver device is plugged in.
  • 19. The first wireless transceiver device of claim 12, wherein the state characteristics of the second wireless transceiver device comprises whether the second wireless device has been asleep for at least a threshold amount of time.
  • 20. The first wireless transceiver device of claim 12, wherein the state characteristics of the second wireless transceiver device comprises whether the second wireless transceiver device is operating on battery power.
  • 21. A non-transitory computer-readable memory device comprising computer-executable instructions that, when executed, implement a system in a first wireless transceiver device of an wireless data communication system to: receive, from a second wireless transceiver device of the wireless data communication system, a first beacon that identifies (i) when the first wireless transceiver device is to listen for data and (ii) when the first wireless transceiver device is to send data, wherein the first beacon further includes a timestamp;obtain, from the first beacon, a time quality of a time source of the second wireless transceiver device, wherein the time quality of the time source of the second wireless transceiver device indicates how accurately the time source of the second wireless transceiver device reflects real time, the time quality of the time source of the second wireless transceiver device based at least in part on state characteristics of the second wireless transceiver device, the state characteristics of the second wireless transceiver device including: whether the second wireless transceiver device has been asleep for at least a threshold amount of time;whether the second wireless transceiver device has been in a low-power mode for at least a threshold amount of time;whether the second wireless transceiver device is plugged in; orwhether the second wireless transceiver device is operating on battery power;determine a time quality of a time source of the first wireless transceiver device, wherein the time quality of the time source of the first wireless transceiver device indicates how accurately the time source of the first wireless transceiver device reflects real time;adjust, based on the timestamp in the first beacon, a clock of the first wireless transceiver device in response to the time source of the second wireless transceiver device reflecting real time more accurately than the time source of the first wireless transceiver device; andleave the clock of the first wireless transceiver device unadjusted in response to the time source of the first wireless transceiver device reflecting real time more accurately than the time source of the second wireless transceiver device.
  • 22. The non-transitory computer-readable memory device of claim 21, wherein to adjust the clock is to update the clock of the first wireless transceiver device to be the same as the date and time indicated in the timestamp in the first beacon.
  • 23. The non-transitory computer-readable memory device of claim 21, wherein the wireless data communication system includes a Wi-Fi network, and the timestamp is included as a Timing Synchronization Function value in the first beacon.
  • 24. The non-transitory computer-readable memory device of claim 21, wherein the timestamp comprises a current date and time of the second wireless transceiver device when the first beacon was transmitted.
CROSS-REFERENCE TO RELATED APPLICATION

This present disclosure claims priority to U.S. Provisional Patent Application Ser. No. 61/825,318 filed May 20, 2013, the disclosure of which is incorporated herein by reference in its entirety.

US Referenced Citations (254)
Number Name Date Kind
5155833 Cullison et al. Oct 1992 A
5390165 Tuch Feb 1995 A
5467398 Pierce et al. Nov 1995 A
5469506 Berson et al. Nov 1995 A
5479514 Klonowski Dec 1995 A
5481733 Douglis et al. Jan 1996 A
5617118 Thompson Apr 1997 A
5673416 Chee et al. Sep 1997 A
5696989 Miura et al. Dec 1997 A
5771356 Leger et al. Jun 1998 A
5828835 Isfeld et al. Oct 1998 A
5884099 Klingelhofer Mar 1999 A
5991519 Benhammou et al. Nov 1999 A
6006018 Burnett et al. Dec 1999 A
6014722 Rudin et al. Jan 2000 A
6058188 Chandersekaran et al. May 2000 A
6092108 DiPlacido et al. Jul 2000 A
6145069 Dye Nov 2000 A
6167514 Matsui et al. Dec 2000 A
6216230 Rallis et al. Apr 2001 B1
6230277 Nakaoka et al. May 2001 B1
6330626 Dennin et al. Dec 2001 B1
6389538 Gruse et al. May 2002 B1
6463509 Teoman et al. Oct 2002 B1
6473861 Stokes Oct 2002 B1
6564318 Gharda et al. May 2003 B1
6601167 Gibson et al. Jul 2003 B1
6614985 Tokunaka et al. Sep 2003 B1
6678790 Kumar Jan 2004 B1
6704872 Okada Mar 2004 B1
6711447 Saeed Mar 2004 B1
6756988 Wang et al. Jun 2004 B1
6799271 Kugai Sep 2004 B2
6823472 DeKoning et al. Nov 2004 B1
6832280 Malik et al. Dec 2004 B2
6901298 Govindaraj et al. May 2005 B1
7010808 Leung et al. Mar 2006 B1
7035827 Ezaki Apr 2006 B2
7036018 Horvat et al. Apr 2006 B2
7069439 Chen et al. Jun 2006 B1
7089419 Foster et al. Aug 2006 B2
7103788 Souza et al. Sep 2006 B1
7117352 Giles et al. Oct 2006 B1
7126913 Patel et al. Oct 2006 B1
7194638 Larky Mar 2007 B1
7206940 Evans et al. Apr 2007 B2
7210038 Walmsley Apr 2007 B2
7266842 Foster et al. Sep 2007 B2
7299365 Evans Nov 2007 B2
7308591 Dubinsky Dec 2007 B2
7333464 Yang et al. Feb 2008 B2
7356707 Foster et al. Apr 2008 B2
7370349 Holvey et al. May 2008 B2
7373506 Asano et al. May 2008 B2
7376976 Fierstein et al. May 2008 B2
7496952 Edwards et al. Feb 2009 B2
7499548 Meandzija et al. Mar 2009 B2
7511636 Takahashi Mar 2009 B2
7516325 Willey Apr 2009 B2
7522726 Ishiguro et al. Apr 2009 B2
7536558 Neble et al. May 2009 B2
7549056 Carr Jun 2009 B2
7571216 McRae et al. Aug 2009 B1
7596614 Saunderson et al. Sep 2009 B2
7606230 Cohen et al. Oct 2009 B1
7620784 Panabaker Nov 2009 B2
7676040 Augenstein et al. Mar 2010 B2
7725738 Langhammer et al. May 2010 B1
7743260 Fetik Jun 2010 B2
7774635 Shiota Aug 2010 B2
7788670 Bodas et al. Aug 2010 B2
7813326 Kelm et al. Oct 2010 B1
7818389 Chiang et al. Oct 2010 B1
7835725 Suzuki et al. Nov 2010 B2
7865733 Goto et al. Jan 2011 B2
7873841 Mullis, II et al. Jan 2011 B2
7898857 Kirsch et al. Mar 2011 B2
7900060 Hodzic Mar 2011 B2
7916594 Yang Mar 2011 B2
7991943 Berenbaum et al. Aug 2011 B2
7995596 Kuila et al. Aug 2011 B2
8000284 Lott et al. Aug 2011 B2
8001592 Hatakeyama Aug 2011 B2
8094822 Suzuki Jan 2012 B2
8095816 Chan Jan 2012 B1
8117478 Liu et al. Feb 2012 B2
8139521 Mukherjee et al. Mar 2012 B2
8166309 Muralidharan et al. Apr 2012 B2
8171309 Poo May 2012 B1
8296555 Chu Oct 2012 B2
8321706 Zhang Nov 2012 B2
8327056 Chan Dec 2012 B1
8418242 Zhang et al. Apr 2013 B2
8423789 Poo et al. Apr 2013 B1
8437290 Kalhan May 2013 B2
8443187 Orr May 2013 B1
8443211 Zhao et al. May 2013 B2
8483718 Hwang Jul 2013 B2
8510560 Lambert et al. Aug 2013 B1
8576961 Zhu et al. Nov 2013 B1
8645716 Dujari et al. Feb 2014 B1
8688968 Chu et al. Apr 2014 B2
8694782 Lambert Apr 2014 B2
8839016 Zhang et al. Sep 2014 B2
8843686 Chan et al. Sep 2014 B1
9009778 Pearce et al. Apr 2015 B2
9141394 Sakarda Sep 2015 B2
9220012 Inamdar Dec 2015 B1
9253175 Orr Feb 2016 B1
9363249 Lambert et al. Jun 2016 B2
9398455 Lambert Jul 2016 B2
9402270 Lambert Jul 2016 B2
9521635 Lambert Dec 2016 B1
20020065834 Wiggen et al. May 2002 A1
20020069354 Fallon et al. Jun 2002 A1
20020087816 Atkinson et al. Jul 2002 A1
20020103930 Kamentsky et al. Aug 2002 A1
20030014368 Leurig et al. Jan 2003 A1
20030188162 Candelore et al. Oct 2003 A1
20030200453 Foster et al. Oct 2003 A1
20030200454 Foster et al. Oct 2003 A1
20030208675 Burokas et al. Nov 2003 A1
20030236991 Letsinger Dec 2003 A1
20040015621 Tanaka Jan 2004 A1
20040030909 Sako et al. Feb 2004 A1
20040054898 Chao et al. Mar 2004 A1
20040103272 Zimmer et al. May 2004 A1
20040125679 Kwean Jul 2004 A1
20040158669 Weng et al. Aug 2004 A1
20040158708 Peyravian et al. Aug 2004 A1
20040184343 Roohparvar et al. Sep 2004 A1
20040187001 Bousis Sep 2004 A1
20040193875 Aura Sep 2004 A1
20040257462 Goris et al. Dec 2004 A1
20040264699 Meandzija et al. Dec 2004 A1
20040266386 Kuo Dec 2004 A1
20050015602 Rees Jan 2005 A1
20050033869 Cline Feb 2005 A1
20050055547 Kawamura Mar 2005 A1
20050086551 Wirasinghe et al. Apr 2005 A1
20050088980 Olkkonen et al. Apr 2005 A1
20050089005 Sakoda et al. Apr 2005 A1
20050108171 Bajikar et al. May 2005 A1
20050114686 Ball et al. May 2005 A1
20050138365 Bellipady et al. Jun 2005 A1
20050144468 Northcutt et al. Jun 2005 A1
20050156925 Fong et al. Jul 2005 A1
20050177674 Ober et al. Aug 2005 A1
20050185596 Kamentsky et al. Aug 2005 A1
20050210290 Ono et al. Sep 2005 A1
20050278523 Fortin et al. Dec 2005 A1
20060004946 Shah et al. Jan 2006 A1
20060019653 Stamoulis Jan 2006 A1
20060036897 Lin et al. Feb 2006 A1
20060059372 Fayar et al. Mar 2006 A1
20060072748 Buer Apr 2006 A1
20060075259 Bajikar et al. Apr 2006 A1
20060090084 Buer Apr 2006 A1
20060104243 Park May 2006 A1
20060117177 Buer Jun 2006 A1
20060123248 Porter et al. Jun 2006 A1
20060136735 Plotkin et al. Jun 2006 A1
20060142906 Brozovich et al. Jun 2006 A1
20060156390 Baugher Jul 2006 A1
20060200670 Kuffel et al. Sep 2006 A1
20060209595 Newell Sep 2006 A1
20060233149 Rustagi et al. Oct 2006 A1
20060253704 Kempf et al. Nov 2006 A1
20060253716 Dhiman et al. Nov 2006 A1
20060259656 Sullivan Nov 2006 A1
20060285686 Van Den Heuvel et al. Dec 2006 A1
20070005824 Howard Jan 2007 A1
20070011445 Waltermann et al. Jan 2007 A1
20070022469 Cooper et al. Jan 2007 A1
20070038866 Bardsley et al. Feb 2007 A1
20070073915 Go et al. Mar 2007 A1
20070097904 Mukherjee et al. May 2007 A1
20070098178 Raikar May 2007 A1
20070136792 Ting et al. Jun 2007 A1
20070150756 Kudelski Jun 2007 A1
20070174602 Kao Jul 2007 A1
20070180271 Hatakeyama et al. Aug 2007 A1
20070186105 Bailey et al. Aug 2007 A1
20070189249 Gurevich et al. Aug 2007 A1
20070220501 Yanagawa et al. Sep 2007 A1
20070234028 Rothman et al. Oct 2007 A1
20070242643 Chandra et al. Oct 2007 A1
20070260905 Marsden et al. Nov 2007 A1
20070277051 Reece et al. Nov 2007 A1
20070297606 Tkacik et al. Dec 2007 A1
20080005549 Ke Jan 2008 A1
20080016313 Murotake et al. Jan 2008 A1
20080028243 Morisawa Jan 2008 A1
20080034411 Aoyama Feb 2008 A1
20080043508 Chao et al. Feb 2008 A1
20080046732 Fu et al. Feb 2008 A1
20080066075 Nutter et al. Mar 2008 A1
20080072311 Mullick et al. Mar 2008 A1
20080082837 Mattsson Apr 2008 A1
20080091944 von Mueller et al. Apr 2008 A1
20080104422 Mullis et al. May 2008 A1
20080108322 Upp May 2008 A1
20080120717 Shakkarwar May 2008 A1
20080165952 Smith et al. Jul 2008 A1
20080181154 Sherman Jul 2008 A1
20080295157 Wong et al. Nov 2008 A1
20080298289 Jeyaseelan Dec 2008 A1
20080313462 Zhao et al. Dec 2008 A1
20090006658 Gough Jan 2009 A1
20090019250 Rofougaran et al. Jan 2009 A1
20090024846 Ganesan et al. Jan 2009 A1
20090049222 Lee et al. Feb 2009 A1
20090059841 Laroia et al. Mar 2009 A1
20090077618 Pearce et al. Mar 2009 A1
20090080389 Messerges et al. Mar 2009 A1
20090131061 Palanki et al. May 2009 A1
20090199031 Zhang Aug 2009 A1
20090217043 Metke et al. Aug 2009 A1
20090254771 So et al. Oct 2009 A1
20090296866 Hsieh Dec 2009 A1
20090323972 Kohno et al. Dec 2009 A1
20090327608 Eschmann et al. Dec 2009 A1
20100023747 Asnaashari et al. Jan 2010 A1
20100039864 Sarin et al. Feb 2010 A1
20100058045 Borras et al. Mar 2010 A1
20100070751 Chue Mar 2010 A1
20100174934 Zhao Jul 2010 A1
20100217935 Cho et al. Aug 2010 A1
20110039592 Haddad et al. Feb 2011 A1
20110211564 Yoneyama et al. Sep 2011 A1
20110231649 Bollay et al. Sep 2011 A1
20110231652 Bollay et al. Sep 2011 A1
20120284517 Lambert Nov 2012 A1
20120287337 Kumar et al. Nov 2012 A1
20130031346 Sakarda Jan 2013 A1
20130046966 Chu Feb 2013 A1
20130124844 Baratam May 2013 A1
20130132502 Stacey et al. May 2013 A1
20130143499 Ando et al. Jun 2013 A1
20130148639 Gao Jun 2013 A1
20130246792 Lambert Sep 2013 A1
20130329620 Kim Dec 2013 A1
20130346777 Zhang Dec 2013 A1
20140045536 Sydir et al. Feb 2014 A1
20140092877 Kazmi et al. Apr 2014 A1
20140171109 Segev Jun 2014 A1
20140200044 Kimura et al. Jul 2014 A1
20140258724 Lambert et al. Sep 2014 A1
20150006633 Vandwalle et al. Jan 2015 A1
20150036540 Kasslin et al. Feb 2015 A1
20150071438 Lambert Mar 2015 A1
20150131571 Fodor et al. May 2015 A1
20150200811 Kasslin et al. Jul 2015 A1
20160209200 Kanayama Jul 2016 A1
Foreign Referenced Citations (18)
Number Date Country
88102647 Dec 1988 CN
1140272 Jan 1997 CN
101097522 Jan 2008 CN
102272734 Sep 2014 CN
1847911 Oct 2007 EP
2493230 Aug 2012 EP
2605170 Jun 2013 EP
2407239 Apr 2005 GB
08076872 Mar 1996 JP
09044418 Feb 1997 JP
10320302 Dec 1998 JP
2002099502 Apr 2002 JP
2002215409 Aug 2002 JP
2004005254 Jan 2004 JP
2005011120 Jan 2005 JP
5565778 Jun 2014 JP
WO-2013019423 Feb 2013 WO
WO-2013074797 May 2013 WO
Non-Patent Literature Citations (140)
Entry
“IEEE Standard for Information Technology—Telecommunications and Information Exchange between Systems—Local and Metropolitan Area Networks—Specific Requirements”, Part 11: Wireless LAN Medium Access Control (MAC) and Physical Layer (PHY) Specifications; IEEE Std. 802.11-2012, Mar. 29, 2012, 2793 pages.
“Notice of Allowance”, U.S. Appl. No. 14/281,693, Aug. 8, 2016, 7 pages.
“Advisory Action”, U.S. Appl. No. 13/804,425, Dec. 26, 2014, 3 pages.
“Amendment 3: Enhancements for Very High Throughput in the 50 GHz Band”, Sponsor IEEE 802.11 Committee of the IEEE Computer Society, IEEE P802.11ad/D5.0 (Draft Amendment Based on IEEE P802.11REVmb D10.0) (Amendment to IEEE 802.11REVmb D10.0 as amended by IEEE 802.11ae D5.0 and IEEE 802.11aa 06.0); Draft Standard for Information Technology Telecommunications and Information Exchange, Sep. 2011, 601 pages.
“Amendment 3: Enhancements for Very High Throughput in the 60 GHz Band”, IEEE Standard for Information technology; Telecommunications and information exchange between systems; Local and metropolitan area networks; Specific requirements; Part 11: Wireless LAN Medium Access Control (MAC) and Physical Layer (PHY) Specifications, Jul. 2012, 628 pages.
“Amendment 4: Enhancements for Very High Throughput for Operation in Bands below 6 GHz”, IEEE Standard for Information technology; Telecommunications and information exchange between systems; Local and metropolitan area networks; Specific requirements; Part 11: Wireless LAN Medium Access Control (MAC) and Physical Layer (PHY) Specifications, Sep. 2011, 425 pages.
“Amendment 4: TV White Spaces Operation”, The Institute of Electrical and Electronics Engineers, Inc., IEEE Std P802.11af/D1.05 Draft Standard for Information Technology—Telecommunications and Information Exchange Between Systems—Local and Metropolitan area networks—Specific Requirements, Part 11: Wireless LAN Medium Access Control (MAC) and Physical Layer, Nov. 2011, 123 Pages.
“Amendment 6: Sub 1 GHz License Exempt Operation”, 802.11 Working Group of the LAN/MAN Standards Committee of the IEEE Computer Society, IEEE P802.11ah/D1.0 Draft Standard for Information Technology—Telecommunications and Information exchange between systems Local and Metropolitan Area Networks—Specific Requirements Part 11: Wireless LAN Medium Access Control (MAC) and Physical Layer (PH, Oct. 2013, 394 Pages.
“Amendment 8: IEEE 802.11 Wireless Network Management”, Prepared by the LAN/MAN Standards Committee of the IEEE Computer Society, Draft Standard for Information technology Telecommunications and information exchange between systems—Local and metropolitan area networks Specific requirements—Part 11: Wireless LAN Medium Access Control (MAC) and Physical Layer (PHY) specifications, Aug. 2010, 426 Pages.
“Board Opinion”, CN Application No. 200980136849.9, Aug. 28, 2015, 18 Pages.
“Corrected Notice of Allowance”, U.S. Appl. No. 13/676,701, May 18, 2016, 2 pages.
“Examiner's Answer to Appeal Brief”, U.S. Appl. No. 13/958,101, Apr. 8, 2016, 9 pages.
“Extensions to Direct Link Setup (DLS) Comments”, IEEE, P802.11z, Jul. 2009, pp. 1-3.
“Final Office Action”, U.S. Appl. No. 12/098,254, May 18, 2011, 11 pages.
“Final Office Action”, U.S. Appl. No. 12/101,668, May 10, 2012, 8 pages.
“Final Office Action”, U.S. Appl. No. 12/125,670, May 24, 2011, 11 pages.
“Final Office Action”, U.S. Appl. No. 12/125,693, Jun. 9, 2011, 9 pages.
“Final Office Action”, U.S. Appl. No. 12/178,268, May 25, 2011, 13 pages.
“Final Office Action”, U.S. Appl. No. 12/541,731, May 31, 2012, 11 pages.
“Final Office Action”, U.S. Appl. No. 13/552,421, Mar. 16, 2015, 10 pages.
“Final Office Action”, U.S. Appl. No. 13/804,425, Nov. 6, 2015, 9 pages.
“Final Office Action”, U.S. Appl. No. 13/804,425, Nov. 21, 2014, 17 pages.
“Final Office Action”, U.S. Appl. No. 13/863,079, Jan. 15, 2015, 7 pages.
“Final Office Action”, U.S. Appl. No. 13/863,079, May 7, 2014, 7 pages.
“Final Office Action”, U.S. Appl. No. 13/958,101, Dec. 19, 2014, 17 pages.
“Foreign Office Action”, CN Application No. 200980136849.9, May 24, 2013, 20 Pages.
“Foreign Decision to Grant”, JP Application No. 2011-544456, May 20, 2014, 2 pages.
“Foreign Notice of Allowance”, CN Application No. 200980153758.6, Jul. 15, 2014, 4 Pages.
“Foreign Notice of Allowance”, JP Application No. 2011-527899, Jan. 28, 2014, 1 Page.
“Foreign Office Action”, CN Application No. 201280033662.8, May 3, 2016, 13 pages.
“Foreign Office Action”, CN Application No. 200980136849.9, Feb. 7, 2014, 15 Pages.
“Foreign Office Action”, CN Application No. 200980136849.9, May 19, 2014, 11 Pages.
“Foreign Office Action”, CN Application No. 200980153758.6, Apr. 27, 2013, 14 pages.
“Foreign Office Action”, CN Application No. 200980153758.6, Dec. 30, 2013, 8 pages.
“Foreign Office Action”, European Patent Application No. 09803951.4, May 24, 2012, 3 pages.
“Foreign Office Action”, European Patent Application No. 09803951.4, Dec. 13, 2012, 6 pages.
“Foreign Office Action”, JP Application No. 2011-527899, Apr. 16, 2013, 5 pages.
“Foreign Office Action”, JP Application No. 2011-527899, Nov. 6, 2012, 4 pages.
“Foreign Office Action”, JP Application No. 2011-527899, Aug. 13, 2013, 2 pages.
“Foreign Office Action”, JP Application No. 2011-544456, Jan. 29, 2013, 7 pages.
“Foreign Office Action”, JP Application No. 2011-544456, Dec. 3, 2013, 2 pages.
“Foreign Office Action”, JP Application No. 2011-544456, Jul. 9, 2013, 6 pages.
“Foreign Office Action”, KR Application No. 10-2011-7008700, Jun. 16, 2015, 13 Pages.
“IEEE Standard for Information Technology—Telecommunications and Information Exchange between Systems—Local and Metropolitan Area Networks—Specific Requirements”, IEEE Std. 802.11-2007, Jun. 12, 2007, 1232 pages.
“Information Technology—Telecommunications and Information Exchange Between Systems—Local and Metropolitan Area Networks—Specific Requirements”, IEEE, Wireless LAN Medium Access Control (MAC) and Physical Layer (PHY) Specifications, Aug. 20, 1999, 531 pages.
“Intent to Grant”, EP Application No. 09803951.4, May 14, 2013, 13 Pages.
“International Search Report and Written Opinion”, Application No. PCT/US2009/067767, Mar. 26, 2010, 12 pages.
“International Search Report and Written Opinion”, Application No. PCT/US2009/056973, Nov. 4, 2009, 13 pages.
“International Search Report and Written Opinion”, Application No. PCT/US2012/047426, Oct. 19, 2012, 7 pages.
“International Search Report and Written Opinion”, Application No. PCT/US2012/065290, May 2, 2013, 9 pages.
“International Search Report and Written Opinion”, PCT Application No. PCT/US2013/031545, Mar. 14, 2015, 11 pages.
“International Search Report and Written Opinion”, PCT Application No. PCT/US2014/0211295, Nov. 24, 2014, 16 pages.
“International Search Report and Written Opinion”, PCT Application No. PCT/US2014/054885, Dec. 4, 2014, 8 pages.
“International Search Report and Written Opinion”, PCT Application PCT/US2012/036236, Jul. 6, 2012, 9 pages.
“International Search Report”, Application No. PCT/US2008/078343, May 18, 2009, 5 pages.
“International Search Report”, Application No. PCT/US2008/078343, Partial International Search, Mar. 5, 2009, 2 pages.
“Invitation to Pay Additional Fees and Partial International Search Report”, PCT Application No. PCT/US2014/021295, Aug. 13, 2014, 5 pages.
“Marketing Requirements Document for Interoperability Testing & Certification of Device Provisioning Protocol”, Wi-Fi Alliance Device Provisioning Protocol Marketing Task Group; Version 1.2, 2012, 34 pages.
“Non-Final Office Action”, U.S. Appl. No. 12/098,254, Jan. 14, 2011, 8 pages.
“Non-Final Office Action”, U.S. Appl. No. 12/101,668, Apr. 5, 2011, 7 pages.
“Non-Final Office Action”, U.S. Appl. No. 12/101,668, Aug. 9, 2012, 8 pages.
“Non-Final Office Action”, U.S. Appl. No. 12/125,670, Dec. 13, 2011, 11 pages.
“Non-Final Office Action”, U.S. Appl. No. 12/125,670, Dec. 7, 2010, 9 pages.
“Non-Final Office Action”, U.S. Appl. No. 12/125,670, Jun. 4, 2012, 12 pages.
“Non-Final Office Action”, U.S. Appl. No. 12/125,693, Oct. 3, 2011, 7 pages.
“Non-Final Office Action”, U.S. Appl. No. 12/125,693, Dec. 20, 2010, 7 pages.
“Non-Final Office Action”, U.S. Appl. No. 12/178,268, Dec. 21, 2011, 13 pages.
“Non-Final Office Action”, U.S. Appl. No. 12/178,268, Dec. 22, 2010, 10 pages.
“Non-Final Office Action”, U.S. Appl. No. 12/271,761, Oct. 3, 2011, 6 pages.
“Non-Final Office Action”, U.S. Appl. No. 12/541,731, Oct. 21, 2011, 9 pages.
“Non-Final Office Action”, U.S. Appl. No. 12/541,731, Sep. 4, 2012, 11 pages.
“Non-Final Office Action”, U.S. Appl. No. 12/559,987, Nov. 9, 2011, 10 pages.
“Non-Final Office Action”, U.S. Appl. No. 12/636,558, Jan. 10, 2012, 6 pages.
“Non-Final Office Action”, U.S. Appl. No. 12/636,558, May 29, 2012, 8 pages.
“Non-Final Office Action”, U.S. Appl. No. 13/252,416, Mar. 13, 2013, 16 pages.
“Non-Final Office Action”, U.S. Appl. No. 13/333,551, Apr. 6, 2012, 5 pages.
“Non-Final Office Action”, U.S. Appl. No. 13/462,972, May 22, 2013, 10 pages.
“Non-Final Office Action”, U.S. Appl. No. 13/552,421, Sep. 30, 2014, 23 pages.
“Non-Final Office Action”, U.S. Appl. No. 13/598,282, Oct. 16, 2013, 6 pages.
“Non-Final Office Action”, U.S. Appl. No. 13/657,511, Mar. 28, 2013, 13 pages.
“Non-Final Office Action”, U.S. Appl. No. 13/676,701, Jul. 31, 2015, 12 pages.
“Non-Final Office Action”, U.S. Appl. No. 13/683,056, Nov. 8, 2013, 5 pages.
“Non-Final Office Action”, U.S. Appl. No. 13/804,425, May 4, 2015, 15 pages.
“Non-Final Office Action”, U.S. Appl. No. 13/804,425, Jul. 18, 2014, 14 pages.
“Non-Final Office Action”, U.S. Appl. No. 13/863,079, Apr. 9, 2015, 7 pages.
“Non-Final Office Action”, U.S. Appl. No. 13/863,079, Jun. 20, 2013, 10 pages.
“Non-Final Office Action”, U.S. Appl. No. 13/863,079, Aug. 27, 2014, 6 pages.
“Non-Final Office Action”, U.S. Appl. No. 13/863,079, Oct. 1, 2013, 9 pages.
“Non-Final Office Action”, U.S. Appl. No. 13/874,201, Jun. 5, 2015, 10 pages.
“Non-Final Office Action”, U.S. Appl. No. 13/958,101, Apr. 8, 2015, 16 pages.
“Non-Final Office Action”, U.S. Appl. No. 13/958,101, Jun. 6, 2014, 14 pages.
“Non-Final Office Action”, U.S. Appl. No. 14/198,994, Jul. 31, 2015, 12 pages.
“Non-Final Office Action”, U.S. Appl. No. 14/205,196, Feb. 5, 2016, 14 pages.
“Non-Final Office Action”, U.S. Appl. No. 14/482,072, Nov. 19, 2015, 5 pages.
“Notice of Allowance”, U.S. Appl. No. 12/098,254, Dec. 14, 2011, 4 pages.
“Notice of Allowance”, U.S. Appl. No. 12/098,254, Sep. 28, 2011, 4 pages.
“Notice of Allowance”, U.S. Appl. No. 12/101,668, Jan. 11, 2013, 6 pages.
“Notice of Allowance”, U.S. Appl. No. 12/125,670, Dec. 11, 2012, 8 pages.
“Notice of Allowance”, U.S. Appl. No. 12/178,268, Jul. 2, 2012, 4 pages.
“Notice of Allowance”, U.S. Appl. No. 12/271,761, Jan. 3, 2012, 6 pages.
“Notice of Allowance”, U.S. Appl. No. 12/541,731, Apr. 2, 2013, 8 pages.
“Notice of Allowance”, U.S. Appl. No. 12/559,987, Jun. 15, 2012, 5 pages.
“Notice of Allowance”, U.S. Appl. No. 12/636,558, Jan. 9, 2013, 4 pages.
“Notice of Allowance”, U.S. Appl. No. 13/252,416, Sep. 27, 2013, 10 pages.
“Notice of Allowance”, U.S. Appl. No. 13/333,551, May 30, 2012, 4 pages.
“Notice of Allowance”, U.S. Appl. No. 13/552,421, May 12, 2015, 4 pages.
“Notice of Allowance”, U.S. Appl. No. 13/552,421, Jun. 10, 2015, 5 pages.
“Notice of Allowance”, U.S. Appl. No. 13/598,282, May 6, 2014, 4 pages.
“Notice of Allowance”, U.S. Appl. No. 13/657,511, Nov. 4, 2013, 9 pages.
“Notice of Allowance”, U.S. Appl. No. 13/676,701, Feb. 10, 2016, 5 pages.
“Notice of Allowance”, U.S. Appl. No. 13/683,056, May 9, 2014, 4 pages.
“Notice of Allowance”, U.S. Appl. No. 13/804,425, Mar. 21, 2016, 9 pages.
“Notice of Allowance”, U.S. Appl. No. 13/874,201, Sep. 25, 2015, 6 pages.
“Notice of Allowance”, U.S. Appl. No. 14/198,994, Jan. 29, 2016, 10 pages.
“Notice of Allowance”, U.S. Appl. No. 14/482,072, Mar. 22, 2016, 5 pages.
“Notification Concerning Transmittal of International Preliminary Report on Patentability”, PCT Application No. PCT/US2014/021295, Sep. 17, 2015, 12 pages.
“Part 11—Wireless LAN Medium Access Control (MAC) and Physical Layer (PHY) Specifications”, Information Technology—Telecommunications & Information Exchange Between Systems . . . International Standard, ISO/IEC 8802-11, First Ed., 1999, pp. 1-531.
“Part 16: Air Interface for Broadband Wireless Access Systems”, IEEE Standard for Local and Metropolitan Area Networks, May 29, 2009, 2082 pages.
“Public Key Cryptography for the Financial Services Industry: Elliptic Curve Key Agreement and Key Transport Schemes”, Working Draft; Version 2.0, Jul. 5, 1998, 125 pages.
“Restriction Requirement”, U.S. Appl. No. 12/101,668, Sep. 22, 2011, 6 pages.
“Restriction Requirement”, U.S. Appl. No. 13/676,701, Feb. 12, 2015, 7 pages.
“Specification of the Bluetooth System, Version 2.0: vol. 0”, Master Table of Contents & Compliance Requirements; pp. 1-74; vol. 1, “Architecture & Terminology Overview”, pp. 1-92; vol. 2, “Core System Package [Controller Volume]”, pp. 1-814; vol. 4, “Core System Package [Host Volume]”; pp. 1-250, Nov. 4, 2004, 1230 pages.
“Specification Requirements Document (SRD) for Devise Provisioning Protocol”, Wi-Fi Alliance Device Provisioning Protocol Marketing Task Group; Version 1.1, 2013, 13 pages.
“Supplemental Notice of Allowance”, U.S. Appl. No. 12/101,668, Feb. 8, 2013, 4 Pages.
“Supplemental Notice of Allowance”, U.S. Appl. No. 13/333,551, Oct. 23, 2012, 2 pages.
“Wi-Fi Peer-to-Peer (P2P) Technical Specification”, Wi-Fi Alliance Technical Committee P2P Task Group; Draft Version 1.14, Jun. 25, 2010, 154 pages.
“Wi-Fi Peer-to-Peer (P2P) Technical Specification”, WiFi Alliance; Version 1.5, 2014, 183 pages.
Anderson, “HDD Based Full Disc Encryption”, In Proceedings of THIC Conference 2006, Mar. 2006, 12 pages.
Chen, “Home Network Basis: Transmission Environments and Wired/Wireless Protocols”, Prentice Hall, Jul. 2003, 19 pages.
Cooper, “Internet X.509 Public Key Infrastructure Certificate and Certificate Revocation List (SRL) Profile”, Network Working Group; RFC 5280, May 2008, 152 pages.
Harada, “Project: IEEE P802.15 Working Group for Wireless Personal Area Network (WPANs)”, IEEE 802.15-07-0693-003c; Slides 24-33 as provided in U.S. Appl. No. 14/198,994 in an IDS submission filed Feb. 24, 2015, May 2007, 10 pages.
Harkins, “Synthetic Initialization Vecor (SIV) Authenticated Encryption Using the Advanced Encryption Standard (AES)”, Network Working Group; RFC 5297; Aruba Networks, Oct. 2008, 27 pages.
Hiertz, “The IEEE 802.11 Universe”, IEEE Standards in Communications and Networking; IEEE Communications Magazine, Jan. 2010, 9 pages.
Krawczyk, “HMAC-based Extract-and-Expand Key Derivation Function (HKDF)”, Internet Engineering Task Forct (IETF); RFC 5869, May 2010, 15 pages.
McGrew, “Fundamental Elliptic Curve Cryptography Algorithms”, Internet Engineering Task Force (IETF); RFC 6090; Fundamental Elliptic Cryptography Algorithms, Feb. 2011, 35 pages.
Perahia, “Gigabit Wireless LANs: an overview of IEEE 802.11ac and 802.11ad”, ACM SIGMOBILE Mobile Computing and Communications Review; vol. 15, No. 3, 11 pages, pp. 23-33.
Robinson, “Wi-Fi Simple Configuration Protocol and Usability Best Practices for the Wi-Fi Protected Setup Program”, Wi-Fi Alliance; Version 2.0.1, Apr. 2011, 30 pages.
Van Beijnum “Crypto Based Host Identifiers”, Internet Draft; draft-van-beijnum-multi6-cbhi-00.txt; ISSN: 0000-0004; XP15036389A, Jan. 1, 2004, 9 pages.
“Non-Final Office Action”, U.S. Appl. No. 14/281,693, Feb. 18, 2016, 4 pages.
“Non-Final Office Action”, U.S. Appl. No. 14/693,744, Dec. 16, 2016, 24 pages.
Provisional Applications (1)
Number Date Country
61825318 May 2013 US