US20190098482A1 - Nan discovery window selection - Google Patents
Nan discovery window selection Download PDFInfo
- Publication number
- US20190098482A1 US20190098482A1 US16/025,034 US201816025034A US2019098482A1 US 20190098482 A1 US20190098482 A1 US 20190098482A1 US 201816025034 A US201816025034 A US 201816025034A US 2019098482 A1 US2019098482 A1 US 2019098482A1
- Authority
- US
- United States
- Prior art keywords
- nan
- discovery
- window
- windows
- frames
- 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.)
- Abandoned
Links
- 238000000034 method Methods 0.000 claims abstract description 74
- 238000004891 communication Methods 0.000 claims description 79
- 230000005540 biological transmission Effects 0.000 claims description 18
- 230000015654 memory Effects 0.000 claims description 9
- 238000009827 uniform distribution Methods 0.000 abstract 1
- 230000004043 responsiveness Effects 0.000 description 63
- 230000006855 networking Effects 0.000 description 11
- 230000008569 process Effects 0.000 description 10
- 230000006870 function Effects 0.000 description 8
- 238000012545 processing Methods 0.000 description 5
- 241000207875 Antirrhinum Species 0.000 description 2
- 230000006399 behavior Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000000295 complement effect Effects 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000005404 monopole Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W8/00—Network data management
- H04W8/005—Discovery of network devices, e.g. terminals
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/27—Evaluation or update of window size, e.g. using information derived from acknowledged [ACK] packets
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
- H04L67/1061—Peer-to-peer [P2P] networks using node-based peer discovery mechanisms
- H04L67/1065—Discovery involving distributed pre-established resource-based relationships among peers, e.g. based on distributed hash tables [DHT]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W52/00—Power management, e.g. TPC [Transmission Power Control], power saving or power classes
- H04W52/04—TPC
- H04W52/38—TPC being performed in particular situations
- H04W52/383—TPC being performed in particular situations power control in peer-to-peer links
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W84/00—Network topologies
- H04W84/02—Hierarchically pre-organised networks, e.g. paging networks, cellular networks, WLAN [Wireless Local Area Network] or WLL [Wireless Local Loop]
- H04W84/10—Small scale networks; Flat hierarchical networks
- H04W84/12—WLAN [Wireless Local Area Networks]
Definitions
- Embodiments pertain to wireless networks. Some embodiments relate to wireless networks that operate in accordance with one of the Institute of Electrical and Electronics Engineers (IEEE) 802.11 standards including the IEEE 802.11-2012 standards. Some embodiments relate to Neighbor Awareness Networking (NAN) in accordance with the Wi-Fi Alliance® Wi-Fi NAN Technical Specification Version 0.0.
- IEEE Institute of Electrical and Electronics Engineers
- NAN Neighbor Awareness Networking
- Telecommunication networks are a collection of nodes that are interconnected for the purpose of carrying communication data between terminals.
- various telecommunication networks exist which enable this type of communication. Examples of such networks include Wireless Local Area Networks (WLAN), Wide Area Networks (WAN), and most recently Neighbor Awareness Networks (NAN).
- Neighbor Awareness Networking is a network protocol developed by the Wi-Fi Alliance® for pre-associated service discovery. The purpose of the protocol is to synchronize Wi-Fi Stations (STA) in a STA to STA (S2S) environment such that STAs are able to discover and trigger connectivity and other interaction based on services published or subscribed to by the STA.
- the first discovery window (DW 0 ) only appears once approximately every 8.3 seconds; this leads to intervals that can be too large for some applications running on the NAN device. Too large of an interval can lead to a missed advertisement that was to be presented as a client neared a venue, a light switch which has an 8.3 second responsiveness delay, or other applications which would be degraded by a delayed responsiveness. These intervals would be unacceptable.
- FIG. 1 illustrates an exemplary NAN communication environment
- FIG. 2 illustrates an exemplary NAN device
- FIG. 3 illustrates an exemplary NAN device discovery timeline
- FIG. 4 illustrates an exemplary Discovery Window Distribution
- FIG. 6 illustrates flowchart illustrating NAN device communication using Discovery Window Subset Allocation.
- Embodiments may be implemented as part of Wi-Fi Alliance® Technical Committee Hotspot 2.0 Technical Task Group Hotspot 2.0 (Release 2) Technical Specification, Version 2.04, Jan. 2, 2013. Embodiments may also be implemented as Wi-Fi Alliance® Technical Specification for Wi-Fi Neighbor Awareness Networking (NAN) Version 0.0.
- Embodiments may be implemented as part of the IEEE 802.11 standard.
- the IEEE 802.11 standard specifies a common Medium Access Control (MAC) Layer which provides a variety of functions that support the operation of 802.11-based wireless LANs (WLANs).
- the MAC Layer manages and maintains communications between 802.11 stations (such as between radio network cards (NIC) in a PC or other wireless devises or stations (STA) and access points (APs)) by coordinating access to a shared radio channel and utilizing protocols that enhance communications over a wireless medium.
- NIC radio network cards
- STA stations
- APs access points
- the embodiments described are not limited to 802.11 standards, NAN, or Hotspot 2.0 standards. Embodiments can also be used in implementation with other wireless communications standards and the like.
- the terms “plurality” and “a plurality” as used herein may include, for example, “multiple” or “two or more”.
- the terms “plurality” or “a plurality” may be used throughout the specification to describe two or more components, devices, elements, units, parameters, circuits, or the like.
- a plurality of stations may include two or more stations.
- the exemplary embodiments will be described in relation to communications systems, as well as protocols, techniques, means and methods for performing communications, such as in a wireless network, or in general in any communications network operating using any communications protocol(s). Examples of such are home or access networks, wireless home networks, wireless corporate networks, and the like. It should be appreciated however that in general, the systems, methods and techniques disclosed herein will work equally well for other types of communications environments, networks and/or protocols.
- a NAN device can also be used to refer to any device, system or module that manages and/or configures or communicates with any one or more aspects of the network or communications environment and/or transceiver(s) and/or stations and/or access point(s) described herein.
- the components of the system can be combined into one or more devices, or split between devices, such as a transceiver, an access point, a station, a mobile device, a network operation or management device, a node or collocated on a particular node of a distributed network, such as a communications network.
- devices such as a transceiver, an access point, a station, a mobile device, a network operation or management device, a node or collocated on a particular node of a distributed network, such as a communications network.
- the various links including the communications channel(s) connecting the elements can be wired or wireless links or any combination thereof, or any other known or later developed element(s) capable of supplying and/or communicating data to and from the connected elements.
- module as used herein can refer to any known or later developed hardware, circuitry, software, firmware, or combination thereof, that is capable of performing the functionality associated with that element.
- determine, calculate, and compute and variations thereof, as used herein are used interchangeable and include any type of methodology, process, technique, mathematical operational or protocol.
- the embodiments may relate to a communication device and/or communication system.
- the communication system can include Neighbor Awareness Networking.
- Neighbor Awareness Networking can include various devices communicating with one another within a NAN cluster. Communication between the devices occurs at transmission and/or reception of a frame during a common discovery window.
- the overall design and functionality of the system described herein is to provide a client with an adaptable means for increasing responsiveness between devices while still meeting the power requirements of the device.
- Embodiments provide novel discovery window mechanisms that facilitate a faster and more efficient process for identifying and synchronizing between NAN devices.
- the embodiments alternatively or additionally provide a means for increasing the likelihood of sharing a common discovery window leading to a shorten average time interval to discovery.
- the embodiments alternatively or additionally provide a method for generally reducing the number of messages required to establish a connection, thus reducing the expected medium usage.
- the embodiments further alternatively or additionally, provide a way to enable communication with other NAN devices without the need to understand NAN MAC timing.
- one exemplary embodiment is faster device discovery which is more power efficient and is expandable to future responsiveness levels. Other advantages exist as well as will be discussed herein.
- the NAN communication environment 100 can be a Neighbor Awareness Network (NAN) which includes a NAN cluster 112 .
- the NAN cluster 112 is formed when NAN enabled devices 104 , 108 communicate and share a common set of NAN parameters.
- the NAN enabled devices 104 can include devices such as, but not limited to, mobile communication devices 104 a , hand-held wireless devices, stationary communication devices 104 b , access points 104 c , and other embedded computing devices that can be part of an Internet of Things (IoT) interconnection.
- IoT Internet of Things
- the NAN enabled devices 104 can operate in a NAN Network alone or concurrently with other networks such as Bluetooth, WLAN, etc.
- FIG. 1 further illustrates NAN enabled devices 104 a - 104 c communicating within a NAN cluster 112 .
- a NAN enabled device 104 can support Master and Non-master roles.
- a NAN master 108 is a communication device that is part of the NAN cluster 112 .
- the NAN master 108 can be a NAN enabled device 104 .
- All NAN enabled devices 104 are capable of being a cluster NAN master 108 .
- a key difference in NAN enabled device 104 and a NAN master 108 is that the NAN master 108 transmits Synchronization, Service Discovery and Discovery Beacons frames.
- a NAN enabled device 104 not operating in a NAN master 108 state, will either only transmit service discovery frames or not transmit frames at all. Further details explaining beacon and service discovery frame transmission are discussed below and in conjunction with FIG. 3 .
- the NAN device 104 may comprise hardware circuitry and/or software that conduct various operations.
- the operations can include, but are not limited, to conducting calls, synchronizing with other devices, opening multiple applications, presenting information through audio and/or video means, taking pictures, communicating with other NAN devices, etc.
- the NAN enabled device 104 can be any type of computing system operable to conduct any type of operation described here.
- the NAN enabled device 104 can be a mobile phone which includes and interacts with various modules and components 204 - 240 as shown in FIG. 2 .
- the NAN enabled device 104 can have one more antennas 204 , for use in wireless communications such as multi-input multi-output (MIMO) communications, Bluetooth®, NAN, etc.
- the antennas 204 can include, but are not limited to directional antennas, omnidirectional antennas, monopoles, patch antennas, loop antennas, microstrip antennas, dipoles, and any other suitable for communication transmission.
- transmission using MIMO may require particular antenna spacing.
- MIMO transmission can enable spatial diversity allowing for different channel characteristics at each of the antennas.
- MIMO transmission can be used to distribute resources to multiple users.
- Antennas 204 generally interact with an Analog Front End (AFE) module 208 , which is needed to enable the correct processing of the received modulated signal.
- AFE Analog Front End
- the AFE 208 can sit between the antenna and a digital baseband system in order to convert the analog signal into a digital signal for processing.
- the NAN enabled device 104 can also include a controller/microprocessor 228 and a memory/storage 224 .
- the NAN device 104 can interact with the memory/storage 224 which may store information and operations necessary for configuring and transmitting or receiving the message frames described herein.
- the memory/storage 224 may also be used in connection with the execution of application programming or instructions by the controller/microprocessor 228 , and for temporary or long term storage of program instructions and/or data.
- the memory/storage 224 may comprise a computer-readable device, RAM, ROM, DRAM, SDRAM or other storage devices and media.
- the controller/microprocessor 228 may comprise a general purpose programmable processor or controller for executing application programming or instructions related to the NAN enabled device 104 . Further, controller/microprocessor 228 can perform operations for configuring and transmitting message frames as described herein.
- the controller/microprocessor 228 may include multiple processor cores, and/or implement multiple virtual processors.
- the controller/microprocessor 228 may include multiple physical processors.
- the controller/microprocessor 228 may comprise a specially configured Application Specific Integrated Circuit (ASIC) or other integrated circuit, a digital signal processor, a controller, a hardwired electronic or logic circuit, a programmable logic device or gate array, a special purpose computer, or the like.
- ASIC Application Specific Integrated Circuit
- the NAN enabled device 104 can further include a transmitter 220 and receiver 236 which can transmit and receive signals, respectively, to and from other NAN enabled devices 104 using one or more antennas, 204 .
- the medium access control or MAC Circuitry 212 includes the medium access control or MAC Circuitry 212 .
- MAC circuitry 212 provides the medium for controlling access to the wireless medium.
- the MAC circuitry 212 may be arranged to contend for a wireless medium and configure frames or packets for communicating over the wireless medium.
- NAN Beacon and Service Discovery frames can be processed by the MAC circuitry 212 .
- the MAC circuitry 212 can assist with NAN synchronization either between NAN devices, within a cluster, or both.
- the MAC circuitry 212 can work together or independently of a NAN discovery engine 240 , which can aid in the discovery and communication with services and applications available.
- the NAN discovery engine 240 can work as an interface between the MAC circuitry 212 and applications and services available.
- the NAN discovery engine 240 can carry information useful for connectivity such as P2P operation attributes, NAN connection capability, etc.
- Responsiveness level selection module 216 can also form part of the architecture of the NAN enabled device 104 .
- the responsiveness level selection module 216 can be a module that performs the operations necessary for discovery window selection. Such operations can include, but are not limited to, discovery window subset generation, responsiveness level creation, power management determination, and proper responsiveness level preference selection. Further details on discovery window selection are discussed below and in conjunction with FIG. 5 and FIG. 6 .
- the NAN enabled device 104 can also contain a security module 214 .
- This security module 214 can contain information regarding but not limited to, security parameters required to connect the NAN enabled device 104 to other NAN enabled devices 104 or other available networks, and can include WEP or WPA security access keys, network keys, etc.
- the network access unit 232 is also part of the NAN device architecture and can be used for connectivity with the local area network.
- the connectivity can include synchronization between devices.
- connectivity can include device discovery.
- the network access unit 232 can work as a medium which provides support to the NAN enabled device 104 for communication with Hotspots.
- the network access unit 232 can work in conjunction with at least the MAC circuitry 212 .
- the network access unit 232 can also work and interact with one or more of the modules described herein.
- the modules described and others known in the art can be used with the NAN enabled device 104 and can be configured to perform the operations described herein in conjunction with FIG. 1 and FIGS. 3-6 .
- NAN enabled devices 104 that share common attributes, including a NAN device discovery timeline 300 such as the one illustrated in FIG. 3 .
- the NAN device discovery timeline 300 include a series of discovery windows 324 a , 324 b , which are the windows in a certain time and channel in which the NAN enabled devices 104 can join the NAN cluster 112 .
- the discovery windows 324 span between discovery window beginning 316 a, b and discovery window end 320 a, b .
- the discovery windows 324 a , 324 b repeat every 512 milliseconds, i.e the discovery windows 324 a , 324 b have a time interval between windows 328 of 512 milliseconds.
- the time interval between discovery windows 328 can be more or less than 512 milliseconds.
- NAN devices 104 are able to sleep or communicate using other networks such as WLAN, Bluetooth, Hotspot, etc. Further details describing window timing and intervals are included below and in conjunction with FIG. 4 .
- NAN enabled devices 104 receive and/or transmit a series of beacon frames 304 a , 304 b , 304 c , 308 a , 308 b , 312 a and 312 b .
- These beacon frames 304 , 308 , 312 are transmitted by other NAN devices such as, but not limited to, access points, NAN master devices, etc.
- Synchronization beacons frames 308 a , 308 b for example, are frames transmitted by at least one NAN enabled device 104 for synchronizing with a common clock within a NAN cluster 112 .
- NAN enabled devices 104 can also transmit NAN service discovery frames 312 a , 312 b as an indication that, that NAN enabled device 104 wishes to participate in the NAN cluster 112 . Further, NAN service discovery frames 312 a , 312 b can also be transmitted to assist in connection post NAN discovery. If a NAN enabled device 104 wishes to join a NAN cluster 112 , but misses the synchronization beacon frames 308 , the NAN enabled device 104 can still do so without having to wait for a new discovery window 324 that is sending the synchronization beacon frames 308 .
- the device can use NAN discovery beacon frames 304 a , 304 b , 304 sent by the NAN master 108 . These frames can only be sent by a NAN master and are generally transmitted during the interval between discovery windows 328 . As mentioned above and in conjunction with FIG. 1 , the NAN master 104 is the only device capable of transmitting synchronization beacon frames 308 , service discovery frames 312 and discovery beacon frames 304 .
- discovery windows 404 - 428 are generally transmitted in sets of 16 repeating windows. These windows can be designated discovery window 0 (DW 0 ) 404 a , discovery window 1 (DW 1 ) 408 , discovery window 2 (DW 2 ) 412 , discovery window 3 (DW 3 ) 416 , discovery window 14 (DW 14 ) 424 , and discovery window 15 (DW 15 ) 428 , with intermediate windows ranging from DW 4 to DW 13 represented by ellipses 420 .
- the window sets repeat and begin back at discovery window 404 , with the repeated window designated DW 0 404 b . This repetition is illustrated in FIG. 4 with DW 0 404 a repeating as DW 0 404 b , after DW 15 428 (i.e. after 16 windows).
- Time and spacing between discovery windows can be specified by the protocol. Additionally or alternatively, time interval between windows, time interval of an entire sequence and/or transmission time of one discovery window may be varied. Additionally, or alternatively, the number of windows in a sequence can also be specified by the protocol, set by a user and/or vary in time and channel. This can be possible if changes to the time interval, duration, cluster parameters, and/or other special variable behavior are pre-defined if not pre-specified by the protocol.
- each discovery window time interval 432 is about 16 milliseconds long and the time interval 436 between the beginning of a first window and the beginning of the second window is about 512 milliseconds.
- sixteen discovery windows (DW 0 404 to DW 14 428 ) at 16 milliseconds long 432 each, yields a discovery window sequence time interval 440 that is approximately 8.3 seconds long.
- NAN enabled devices 104 are synchronized or services discovered. Therefore, it is mandated by the NAN protocol that all Wi-Fi Stations (STA) or NAN enabled devices 104 within a cluster receive DW 0 404 so that there is at least one instance when two NAN enabled devices 104 can communicate. However, beyond DW 0 404 , NAN enabled devices 104 can decide to transmit and/or receive frames on any of the remaining discovery windows 404 - 428 without agreement and/or behavior by which the NAN enabled device 104 can indicate which additional discovery window it will transmit on. Therefore, it is one embodiment of present disclosure to maximize the likelihood that two independent NAN enabled devices 104 share the same DW by introducing discovery window sets that NAN enabled devices 104 can select from.
- STA Wi-Fi Stations
- These sets can form part of the discovery window subset allocation 500 as exemplified in FIG. 5 .
- MAC efficiency is improved. That is to say, if a set inclusion relationship exists between two devices, then there is a decrease in the number of messages required to establish connection and/or discovery. For example, in the current protocol, there is no designation as to what discovery windows the frames are transmitting on other than DW 0 . Therefore, the NAN enabled device 104 would require a new message at each window until it identifies a window that the other NAN enabled device 104 in the NAN cluster 112 is currently transmitting and/or receiving at.
- the NAN enabled device 104 is locally presented with a discovery window set from which it can select.
- the subset is based on the following criteria:
- subsets which include the second criteria with elements ranging from 0 to 15 can include the following: ⁇ 0 ⁇ , ⁇ 0,8 ⁇ , ⁇ 0, 4, 8, 12 ⁇ , ⁇ 0, 2, 4, 6, 8, 10, 12, 14 ⁇ , and ⁇ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 ⁇ .
- This relationship is presented in FIG. 5 in the form of discovery windows with each subset designated a different responsiveness level. Therefore, subset ⁇ 0 ⁇ or equivalently ⁇ DW 0 ⁇ is designated responsiveness level 0 504 .
- responsiveness level 1 508 includes ⁇ DW 0 , DW 8 ⁇
- responsiveness level 2 512 includes ⁇ DW 0 , DW 4 , DW 8 , DW 12 ⁇
- responsiveness level 3 516 includes ⁇ DW 0 , DW 2 , DW 4 , DW 6 , DW 8 , DW 10 , DW 12 , DW 14 ⁇
- responsiveness level 4 includes ⁇ DW 0 . . . DW 15 ⁇ .
- the time interval between repeating discovery windows 440 remains the same, at approximately 8.3 ms
- the discovery window time interval 432 is 16 ms long and the time between the beginning of two consecutive windows 436 in a set with all 16 discovery windows remains at 512 ms.
- the NAN enabled device 104 selects the discovery window set or corresponding responsiveness level that best meets its needs. For example, a NAN enabled device 104 with a low power level can select a lower responsiveness level over a different NAN device 104 that is fully powered and can select a higher responsiveness level.
- responsiveness levels can also be selected based on the application it is trying to support. For example, a device with a light switch application would be more likely to have a higher responsiveness level over a client who simply needs to set the thermostat upon arrival at the home. Thus, responsiveness levels can power level based, application based, and/or a combination of those or other constraints.
- NAN enabled devices 104 can provide their own power level preference which the MAC Circuitry 212 can map to the corresponding responsiveness level (RL) meeting power limitations and assuring that the NAN enabled device 104 is able to discover other NAN enabled devices 104 within the NAN cluster 112 .
- RL responsiveness level
- the first NAN enabled device can select RL 2 512 , while a second NAN enabled device selects RL 1 508 . If the first NAN enabled device wishes to communicate with a second NAN enabled device, it can send NAN service discovery frames 312 during ⁇ DW 0 , DW 4 , DW 8 , DW 12 ⁇ . A second NAN device being part RL 1 508 will then have the opportunity to receive the frames transmitted during ⁇ DW 0 , DW 8 ⁇ .
- the first NAN enabled device 104 only has to send 2 messages outside the required DW 0 before synchronizing with a second NAN enabled device in the NAN cluster 112 .
- the introduction of the subset therefore, greatly reduced MAC processing minimizing the number of messages that need to be transmitted needed when every discovery window had to be considered.
- FIG. 6 outlines an exemplary methodology that outlines NAN enabled device communication using discovery window subset allocation.
- the methodology begins with a start operation 604 , 608 from two independent NAN enabled devices 104 , a first NAN enabled device and a second NAN enabled device respectively.
- Each of the NAN enabled devices 104 continue to step 612 , 616 , where a responsiveness level, based on one or more of device power level and constraints is locally selected.
- the responsiveness level selected is a member of discovery window set similar to that presented above and in conjunction with FIG. 5 , wherein the first NAN enabled device discovery window subset is a proper subset of the second NAN enabled device discovery window subset or vice versa.
- a service discovery beacon frame 312 is transmitted during DW 0 .
- the service discovery beacon frame 312 is transmitted during at least one of the 15 other discovery windows available.
- the second NAN enabled device after having selected the appropriate RL in step 616 , remains idle in step 620 until it is time to wake for one of its discovery windows in its selected responsiveness level discovery window subset. Once awake, the second NAN enabled device looks to discover a service discovery beacon frame 312 sent by the first NAN enabled device in step 628 . Alternatively or in addition, the second NAN enabled device can also transmit NAN synchronization beacon frames 308 as described above and in conjunction with FIG. 3 . If, the second NAN enabled device fails to receive the service discovery beacon frame 312 , then the second NAN enable device will return to step 620 where it will continue to idle until the next DW in its RL selected. Alternatively, if the a service discovery beacon frame 312 is received, then the second NAN enabled device will move forward in the process to step 644 where it will begin communicating with the first NAN enabled device.
- the device will idle until the next DW in its responsiveness level.
- the first NAN enabled device is only transmitting and/or receiving frames during the discovery windows within its subset. Therefore, if sufficient time has passed (i.e. 512 ms), such that a new discovery window beginning is reached, then the first NAN enabled device must determine if the window reached is a member of the subset in step 636 . To determine if the window is a member of the subset, the criteria explained above and in conjunction with FIG. 5 must be met.
- the second NAN enabled device will transmit data and commence communicating with the first NAN enabled device.
- the first NAN enabled device receives the data transmitted at step 648 .
- Steps 652 and 656 end the process for both the first NAN enabled device and the second NAN enabled device respectively.
- the method 600 described herein can have more or fewer steps and can be arranged in steps differently than those shown in FIG. 6 .
- the method 600 can also be executed as a set of computer-executable instructions executed on a computer system or processor and encoded or stored on a computer medium. The method 600 is described above and in conjunction with FIGS. 1-5 .
- a technique for providing a subset of windows are proper subsets of each other is presented.
- discovery window sets with set inclusion is described.
- responsiveness level selection is presented.
- a device is presented which selects the visited discovery window subsets independently of other NAN devices is explained.
- Embodiments are thus directed toward a communication device for transmitting frames, comprising: a responsiveness level module, the responsiveness level module configured to: create a plurality of window subsets from a set of windows, wherein any two window subsets of the plurality of window subsets are governed by set inclusion; and select one of the plurality of window subsets for transmission of service discovery frames on the windows within the selected window subset; and a transceiver, the transceiver configured to transmit the service discovery frames on the windows within the selected window subset.
- any two window subsets governed by set inclusion include a first window subset and a second window subset, wherein the first window subset is a proper subset of the second window subset, or wherein the second window subset is the proper subset of the first window subset.
- the window subsets have a uniform time interval between any two of the windows.
- the window subsets are specified within a specification and the communication device selects one of the window subsets specified within the specification for transmission of the service discovery frames.
- aspects of the above communication device include wherein the window subsets follow modulo 2 arithmetic, wherein the windows in the window subsets are discovery windows (DWs), and wherein the discovery windows in the window subsets include at least one of DW 0 , DW 4 , DW 8 , and DW 12 .
- selecting the window subset corresponds to a responsiveness level selection, wherein the responsiveness level selection is based on a responsiveness preference determined by one or more of an application and a power level of the communication device.
- aspects of the above communication device include wherein the responsiveness level selection is chosen by a MAC (Medium Access Control) which aggregates and selects a responsiveness level that yields a preferred responsiveness.
- MAC Medium Access Control
- aspects of the above communication device include wherein the service discovery frames assist in the communication device discovery and connection. Aspects of the above communication device include wherein the service discovery frames are transmitted when a modulo arithmetic between a window subset value and a powered value equal zero, wherein the powered value is a function of the windows in a cycle. Aspects of the above communication device include wherein the communication device is Neighbor Awareness Networking (NAN) enabled.
- NAN Neighbor Awareness Networking
- Embodiments include a method for transmitting frames, the method comprising: obtaining, by a transceiver, from a network a time and channel information identifying a set of windows available for communication; creating, by a responsiveness level module, a plurality of window subsets from the set of windows, wherein any two window subsets within the plurality of window subsets, are governed by set inclusion; selecting, by the responsiveness level module, one of the plurality of window subsets for transmission of service discovery frames; and transmitting, by the transceiver, the service discovery frames on the windows within the selected window subset.
- any two window subsets governed by set inclusion include a first window subset and a second window subset, wherein the first window subset is a proper subset of the second window subset, or wherein the second window subset is the proper subset of the first window subset.
- the window subsets have a uniform time interval between any two of the windows.
- the window subsets are pre-defined and a device can select from the pre-defined window subsets.
- the window subsets are specified within a specification and the communication device selects one of the window subsets specified within the specification for transmission of the service discovery frames.
- aspects of the above method include wherein the window subsets follow modulo 2 arithmetic, wherein the windows in the window subsets are discovery windows (DWs), and wherein the discovery windows in the window subset include at least one of DW 0 , DW 4 , DW 8 , and DW 12 .
- selecting the window subset corresponds to a responsiveness level selection, wherein responsiveness level selection is based on a responsiveness preference determined by at least one of a plurality of applications and a power level of the transceiver.
- aspects of the above method include wherein the responsiveness preference is indicated by a time interval or a responsiveness level.
- aspects of the above method include wherein the responsiveness level selection is chosen by a MAC (Medium Access Control) which aggregates and selects the responsiveness level that yields a preferred responsiveness.
- the responsiveness level selection is at least partly based on responsiveness level requests generated by the at least one of a plurality of applications at a higher layer and by an operating system.
- the preferred responsiveness is measured by the ability of the device to meet the power level of the transceiver and assure connectivity with another device.
- aspects of the above method include wherein the at least one of a plurality of applications is an object in an internet of things.
- aspects of the above method include wherein the service discovery frames assist in the device discovery and connection.
- aspects of the above method include wherein the service discovery frames are transmitted when a modulo arithmetic between a window subset value and a powered value equal zero, wherein the powered value is a function of the windows in a cycle.
- aspects of the above method include wherein the device is Neighbor Awareness Networking (NAN) enabled.
- NAN Neighbor Awareness Networking
- Embodiments include a non-transitory computer readable medium having instructions stored thereon that when executed by at least one processor of a communication device perform a method comprising: obtaining, by a transceiver, from a network a time and channel information identifying a set of windows available for communication; creating, by a responsiveness level module, a plurality of window subsets from the set of windows, wherein any two window subsets of the plurality of window subsets, are governed by set inclusion; selecting, by the responsiveness level module, one of the plurality of window subsets for transmission of service discovery frames; and transmitting, by the transceiver, the service discovery frames on the windows within the selected window subset.
- any two window subsets governed by set inclusion include a first window subset and a second window subset, wherein the first window subset is a proper subset of the second window subset, or wherein the second window subset is the proper subset of the first window subset.
- the window subsets have a uniform time interval between any two of the windows.
- the window subsets follow modulo 2 arithmetic, wherein the windows in the window subsets are discovery windows (DWs), and wherein the discovery windows in the window subset include at least one of DW 0 , DW 4 , DW 8 , and DW 12 .
- aspects of the above media include wherein selecting the window subset corresponds to a responsiveness level selection, wherein responsiveness level selection is based on a responsiveness preference determined by one or more of an application and power level of the communication device.
- aspects of the above media include wherein the responsiveness level selection is chosen by a MAC (Medium Access Control) which aggregates and selects the responsiveness level that yields a preferred responsiveness.
- aspects of the above media include wherein the preferred responsiveness is measured by the ability of the communication device to meet the power level of the communication device and assure connectivity with another communication device.
- aspects of the above media include wherein the service discovery frames assist in the communication device discovery and connection.
- aspects of the above media include wherein the service discovery frames are transmitted when a modulo arithmetic between a window subset value and a powered value equal zero, wherein the powered value is a function of the windows in a cycle.
- aspects of the above media include wherein the communication device is Neighbor Awareness Networking (NAN) enabled.
- NAN Neighbor Awareness Networking
- Embodiments include a system for transmitting frames, comprising: means for, obtaining from a network, time and channel information identifying a set of windows available for communication; means for creating a plurality of window subsets from the set of windows, wherein any two window subsets of the plurality of window subsets, are governed by set inclusion; means for selecting one of the plurality of window subsets for transmission of service discovery frames; and means for transmitting the service discovery frames on the windows within the selected window subset.
- any two window subsets governed by set inclusion include a first window subset and a second window subset, wherein the first window subset is a proper subset of the second window subset, or wherein the second window subset is the proper subset of the first window subset.
- the window subsets have a uniform time interval between any two of the windows.
- the window subsets are pre-defined and the system can select from the pre-defined window subsets.
- aspects of the above system include wherein the window subsets follow modulo 2 arithmetic, wherein the windows in the window subsets are discovery windows (DWs), and wherein the discovery windows in the window subset include at least one of DW 0 , DW 4 , DW 8 , and DW 12 .
- selecting the window subset corresponds to a responsiveness level selection, wherein responsiveness level selection is based on a responsiveness preference determined by one or more of an application and power level of the transceiver.
- aspects of the above system include wherein the responsiveness preference is indicated by a time interval or a responsiveness level.
- aspects of the above system include wherein the service discovery frames assist in a communication device discovery and connection.
- aspects of the above system include wherein the service discovery frames are transmitted when a modulo arithmetic between a window subset value and a powered value equal zero, wherein the powered value is a function of the windows in a cycle.
- aspects of the above system wherein the communication device is Neighbor Awareness Networking (NAN) enabled.
- NAN Neighbor Awareness Networking
- aspects of the above system include wherein the communication device selects the window subset independent of other communication devices in a NAN network.
- Embodiments include a communication device for transmitting frames, comprising: a responsiveness level module, the responsiveness level module configured to: create a plurality of window subsets from a set of windows, wherein any two window subsets of the plurality of window subsets are governed by set inclusion, wherein the window subsets within the set of windows are pre-defined; and select one of the plurality of window subsets for transmission of service discovery frames on the windows within the selected window subset; and a transceiver, the transceiver configured to transmit the service discovery frames on the windows within the selected window subset.
- any two window subsets governed by set inclusion include a first window subset and a second window subset, wherein the first window subset is a proper subset of the second window subset, or wherein the second window subset is the proper subset of the first window subset.
- the various components of the system can be located at distant portions of a distributed network, such as a communications network and/or the Internet, or within a dedicated secure, unsecured and/or encrypted system.
- a distributed network such as a communications network and/or the Internet
- the components of the system can be combined into one or more devices, such as an access point or station, or collocated on a particular node/element(s) of a distributed network, such as a telecommunications network.
- the components of the system can be arranged at any location within a distributed network without affecting the operation of the system.
- the various components can be located in a transceiver, an access point, a station, a management device, or some combination thereof.
- one or more functional portions of the system could be distributed between a transceiver, such as an access point(s) or station(s) and an associated computing device.
- the various links including communications channel(s), connecting the elements (which may not be not shown) can be wired or wireless links, or any combination thereof, or any other known or later developed element(s) that is capable of supplying and/or communicating data and/or signals to and from the connected elements.
- module as used herein can refer to any known or later developed hardware, software, firmware, or combination thereof that is capable of performing the functionality associated with that element.
- determine, calculate and compute, and variations thereof, as used herein are used interchangeably and include any type of methodology, process, mathematical operation or technique.
- the above-described system can be implemented on a wireless telecommunications device(s)/system, such an 802.11 transceiver, or the like.
- wireless protocols that can be used with this technology include 802.11a, 802.11b, 802.11g, 802.11n, 802.11ac, 802.11ad, 802.11af, 802.11ah, 802.11ai, 802.11aj, 802.11aq, 802.11ax, 802.11u, WiFi, LTE, LTE Unlicensed, 4G, Bluetooth®, WirelessHD, WiGig, 3GPP, Wireless LAN, WiMAX.
- transceiver as used herein can refer to any device that comprises hardware, software, firmware, or combination thereof and is capable of performing any of the methods described herein.
- the systems, methods and protocols can be implemented on one or more of a special purpose computer, a programmed microprocessor or microcontroller and peripheral integrated circuit element(s), an ASIC or other integrated circuit, a digital signal processor, a hard-wired electronic or logic circuit such as discrete element circuit, a programmable logic device such as PLD, PLA, FPGA, PAL, a modem, a transmitter/receiver, any comparable means, or the like.
- any device capable of implementing a state machine that is in turn capable of implementing the methodology illustrated herein can be used to implement the various communication methods, protocols and techniques according to the disclosure provided herein.
- Examples of the processors as described herein may include, but are not limited to, at least one of Qualcomm® Qualcomm® Qualcomm® 800 and 801, Qualcomm® Qualcomm® Qualcomm® 610 and 615 with 4G LTE Integration and 64-bit computing, Apple® A7 processor with 64-bit architecture, Apple® M7 motion coprocessors, Samsung® Exynos® series, the Intel® CoreTM family of processors, the Intel® Xeon® family of processors, the Intel® AtomTM family of processors, the Intel Itanium® family of processors, Intel® Core® i5-4670K and i7-4770K 22 nm Haswell, Intel® Core® i5-3570K 22 nm Ivy Bridge, the AMD® FXTM family of processors, AMD® FX-4300, FX-6300, and FX-8350 32 nm Vishera, AMD® Kaveri processors, Texas Instruments® Jacinto C6000TM automotive infotainment processors, Texas Instruments® OMAPTM automotive-grade mobile processors, ARM® Cor
- the disclosed methods may be readily implemented in software using object or object-oriented software development environments that provide portable source code that can be used on a variety of computer or workstation platforms.
- the disclosed system may be implemented partially or fully in hardware using standard logic circuits or VLSI design. Whether software or hardware is used to implement the systems in accordance with the embodiments is dependent on the speed and/or efficiency requirements of the system, the particular function, and the particular software or hardware systems or microprocessor or microcomputer systems being utilized.
- the communication systems, methods and protocols illustrated herein can be readily implemented in hardware and/or software using any known or later developed systems or structures, devices and/or software by those of ordinary skill in the applicable art from the functional description provided herein and with a general basic knowledge of the computer and telecommunications arts.
- the disclosed methods may be readily implemented in software and/or firmware that can be stored on a storage medium, executed on programmed general-purpose computer with the cooperation of a controller and memory, a special purpose computer, a microprocessor, or the like.
- the systems and methods can be implemented as program embedded on personal computer such as an applet, JAVA® or CGI script, as a resource residing on a server or computer workstation, as a routine embedded in a dedicated communication system or system component, or the like.
- the system can also be implemented by physically incorporating the system and/or method into a software and/or hardware system, such as the hardware and software systems of a communications transceiver.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Databases & Information Systems (AREA)
- Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
Techniques for presenting discovery window selection in a NAN environment are provided. Specifically, methods that when taken alone or together, provide a device or group of devices with an efficient way of synchronizing and communicating with other devices is presented. The present disclosure includes a method that provides a device with the capability of locally selecting a discovery window subset that meets the current device power and application constraints. The discovery window subset is created based on a uniform distribution of discovery window selection within the set. The method describes the generation of the subsets such that set inclusion exits between any two sets.
Description
- Embodiments pertain to wireless networks. Some embodiments relate to wireless networks that operate in accordance with one of the Institute of Electrical and Electronics Engineers (IEEE) 802.11 standards including the IEEE 802.11-2012 standards. Some embodiments relate to Neighbor Awareness Networking (NAN) in accordance with the Wi-Fi Alliance® Wi-Fi NAN Technical Specification Version 0.0.
- Telecommunication networks are a collection of nodes that are interconnected for the purpose of carrying communication data between terminals. Currently, various telecommunication networks exist which enable this type of communication. Examples of such networks include Wireless Local Area Networks (WLAN), Wide Area Networks (WAN), and most recently Neighbor Awareness Networks (NAN). Neighbor Awareness Networking is a network protocol developed by the Wi-Fi Alliance® for pre-associated service discovery. The purpose of the protocol is to synchronize Wi-Fi Stations (STA) in a STA to STA (S2S) environment such that STAs are able to discover and trigger connectivity and other interaction based on services published or subscribed to by the STA.
- STAs eligible for this connectivity must be NAN enabled and can include devices such as mobile phones, access points, light switches, and other smart devices that are forming part of the internet of things. Connectivity occurs when one or more NAN devices transmit and/or receive synchronization frames, during discovery windows, from other NAN devices located within a NAN cluster. However, the current NAN protocol does not specify which of the discovery windows other than the first window, in which frame transmission should occur.
- A number of issues arise from this scenario. For example, the first discovery window (DW0) only appears once approximately every 8.3 seconds; this leads to intervals that can be too large for some applications running on the NAN device. Too large of an interval can lead to a missed advertisement that was to be presented as a client neared a venue, a light switch which has an 8.3 second responsiveness delay, or other applications which would be degraded by a delayed responsiveness. These intervals would be unacceptable.
- Also, if discovery windows are randomly selected by the device, two STAs could possibly not intersect or have a common window until DW0 repeats. By only having one designated common window, the MAC would become less efficient, as it would have to transmit possibly at every discovery window until a correlation is achieved. Therefore, it is with respect to these and other considerations that the present improvements have been developed.
- For a more complete understanding of the present disclosure and its advantages, reference is now made to the following description taken in conjunction with the accompanying drawings, in which like reference numerals represent like parts:
-
FIG. 1 illustrates an exemplary NAN communication environment; -
FIG. 2 illustrates an exemplary NAN device; -
FIG. 3 illustrates an exemplary NAN device discovery timeline; -
FIG. 4 illustrates an exemplary Discovery Window Distribution; -
FIG. 5 illustrates an exemplary Discovery Window Subset Allocation; and -
FIG. 6 illustrates flowchart illustrating NAN device communication using Discovery Window Subset Allocation. - Embodiments may be implemented as part of Wi-Fi Alliance® Technical Committee Hotspot 2.0 Technical Task Group Hotspot 2.0 (Release 2) Technical Specification, Version 2.04, Jan. 2, 2013. Embodiments may also be implemented as Wi-Fi Alliance® Technical Specification for Wi-Fi Neighbor Awareness Networking (NAN) Version 0.0.
- Embodiments may be implemented as part of the IEEE 802.11 standard. The IEEE 802.11 standard specifies a common Medium Access Control (MAC) Layer which provides a variety of functions that support the operation of 802.11-based wireless LANs (WLANs). The MAC Layer manages and maintains communications between 802.11 stations (such as between radio network cards (NIC) in a PC or other wireless devises or stations (STA) and access points (APs)) by coordinating access to a shared radio channel and utilizing protocols that enhance communications over a wireless medium. The embodiments described are not limited to 802.11 standards, NAN, or Hotspot 2.0 standards. Embodiments can also be used in implementation with other wireless communications standards and the like.
- In the following detailed description, numerous specific details are set forth in order to provide a thorough understanding of the disclosed techniques. However, it will be understood by those skilled in the art that the present embodiments may be practiced without these specific details. In other instances, well-known methods, procedures, components and circuits have not been described in detail so as not to obscure the present disclosure.
- Although embodiments are not limited in this regard, discussions utilizing terms such as, for example, “processing,” “computing,” “calculating,” “determining,” “establishing”, “analyzing”, “checking”, or the like, may refer to operation(s) and/or process(es) of a computer, a computing platform, a computing system, a communication system or subsystem, or other electronic computing device, that manipulate and/or transform data represented as physical (e.g., electronic) quantities within the computer's registers and/or memories into other data similarly represented as physical quantities within the computer's registers and/or memories or other information storage medium that may store instructions to perform operations and/or processes.
- Although embodiments are not limited in this regard, the terms “plurality” and “a plurality” as used herein may include, for example, “multiple” or “two or more”. The terms “plurality” or “a plurality” may be used throughout the specification to describe two or more components, devices, elements, units, parameters, circuits, or the like. For example, “a plurality of stations” may include two or more stations.
- Before undertaking the description of embodiments below, it may be advantageous to set forth definitions of certain words and phrases used throughout this document: the terms “include” and “comprise,” as well as derivatives thereof, mean inclusion without limitation; the term “or,” is inclusive, meaning and/or; the phrases “associated with” and “associated therewith,” as well as derivatives thereof, may mean to include, be included within, interconnect with, interconnected with, contain, be contained within, connect to or with, couple to or with, be communicable with, cooperate with, interleave, juxtapose, be proximate to, be bound to or with, have, have a property of, or the like; and the term “controller” means any device, system or part thereof that controls at least one operation, such a device may be implemented in hardware, circuitry, firmware or software, or some combination of at least two of the same. It should be noted that the functionality associated with any particular controller may be centralized or distributed, whether locally or remotely. Definitions for certain words and phrases are provided throughout this document and those of ordinary skill in the art should understand that in many, if not most instances, such definitions apply to prior, as well as future uses of such defined words and phrases.
- The exemplary embodiments will be described in relation to communications systems, as well as protocols, techniques, means and methods for performing communications, such as in a wireless network, or in general in any communications network operating using any communications protocol(s). Examples of such are home or access networks, wireless home networks, wireless corporate networks, and the like. It should be appreciated however that in general, the systems, methods and techniques disclosed herein will work equally well for other types of communications environments, networks and/or protocols.
- For purposes of explanation, numerous details are set forth in order to provide a thorough understanding of the present techniques. It should be appreciated however, that the present disclosure may be practiced in a variety of ways beyond the specific details set forth herein. Furthermore, while the exemplary embodiments illustrated herein show various components of the system collocated, it is to be appreciated that the various components of the system can be located at distant portions of a distributed network, such as a communications network, node, within a NAN cluster and/or the Internet, or within a dedicated secured, unsecured, and/or encrypted system and/or within a network operation or management device that is located inside or outside the network. As an example, a NAN device can also be used to refer to any device, system or module that manages and/or configures or communicates with any one or more aspects of the network or communications environment and/or transceiver(s) and/or stations and/or access point(s) described herein.
- Thus, it should be appreciated that the components of the system can be combined into one or more devices, or split between devices, such as a transceiver, an access point, a station, a mobile device, a network operation or management device, a node or collocated on a particular node of a distributed network, such as a communications network.
- Furthermore, it should be appreciated that the various links, including the communications channel(s) connecting the elements can be wired or wireless links or any combination thereof, or any other known or later developed element(s) capable of supplying and/or communicating data to and from the connected elements. The term module as used herein can refer to any known or later developed hardware, circuitry, software, firmware, or combination thereof, that is capable of performing the functionality associated with that element. The terms determine, calculate, and compute and variations thereof, as used herein are used interchangeable and include any type of methodology, process, technique, mathematical operational or protocol.
- Moreover, while some of the exemplary embodiments described herein are directed toward a transmitter portion of a transceiver performing certain functions, this disclosure is intended to include corresponding and complementary receiver-side functionality in both the same transceiver and/or another transceiver(s), and vice versa.
- Presented herein are embodiments of systems, processes, user interfaces, etc. The embodiments may relate to a communication device and/or communication system. The communication system can include Neighbor Awareness Networking. Neighbor Awareness Networking can include various devices communicating with one another within a NAN cluster. Communication between the devices occurs at transmission and/or reception of a frame during a common discovery window. The overall design and functionality of the system described herein is to provide a client with an adaptable means for increasing responsiveness between devices while still meeting the power requirements of the device.
- Embodiments provide novel discovery window mechanisms that facilitate a faster and more efficient process for identifying and synchronizing between NAN devices. The embodiments alternatively or additionally provide a means for increasing the likelihood of sharing a common discovery window leading to a shorten average time interval to discovery. The embodiments alternatively or additionally provide a method for generally reducing the number of messages required to establish a connection, thus reducing the expected medium usage. The embodiments further alternatively or additionally, provide a way to enable communication with other NAN devices without the need to understand NAN MAC timing. As a result, one exemplary embodiment is faster device discovery which is more power efficient and is expandable to future responsiveness levels. Other advantages exist as well as will be discussed herein.
- A
NAN communication environment 100 that may communicate information between two or more devices is shown inFIG. 1 . TheNAN communication environment 100 can be a Neighbor Awareness Network (NAN) which includes aNAN cluster 112. TheNAN cluster 112 is formed when NAN enableddevices 104, 108 communicate and share a common set of NAN parameters. The NAN enabled devices 104 can include devices such as, but not limited to,mobile communication devices 104 a, hand-held wireless devices, stationary communication devices 104 b, access points 104 c, and other embedded computing devices that can be part of an Internet of Things (IoT) interconnection. The NAN enabled devices 104 can operate in a NAN Network alone or concurrently with other networks such as Bluetooth, WLAN, etc. -
FIG. 1 further illustrates NAN enabled devices 104 a-104 c communicating within aNAN cluster 112. A NAN enabled device 104 can support Master and Non-master roles. ANAN master 108 is a communication device that is part of theNAN cluster 112. TheNAN master 108 can be a NAN enabled device 104. All NAN enabled devices 104 are capable of being acluster NAN master 108. A key difference in NAN enabled device 104 and aNAN master 108, is that theNAN master 108 transmits Synchronization, Service Discovery and Discovery Beacons frames. A NAN enabled device 104, not operating in aNAN master 108 state, will either only transmit service discovery frames or not transmit frames at all. Further details explaining beacon and service discovery frame transmission are discussed below and in conjunction withFIG. 3 . - An example of a NAN device 104 architecture is shown in
FIG. 2 . The NAN device 104 may comprise hardware circuitry and/or software that conduct various operations. The operations can include, but are not limited, to conducting calls, synchronizing with other devices, opening multiple applications, presenting information through audio and/or video means, taking pictures, communicating with other NAN devices, etc. The NAN enabled device 104 can be any type of computing system operable to conduct any type of operation described here. As an example, the NAN enabled device 104 can be a mobile phone which includes and interacts with various modules and components 204-240 as shown inFIG. 2 . - The NAN enabled device 104 can have one
more antennas 204, for use in wireless communications such as multi-input multi-output (MIMO) communications, Bluetooth®, NAN, etc. Theantennas 204 can include, but are not limited to directional antennas, omnidirectional antennas, monopoles, patch antennas, loop antennas, microstrip antennas, dipoles, and any other suitable for communication transmission. In an exemplary embodiment, transmission using MIMO may require particular antenna spacing. In another exemplary embodiment, MIMO transmission can enable spatial diversity allowing for different channel characteristics at each of the antennas. In yet another embodiment, MIMO transmission can be used to distribute resources to multiple users. -
Antennas 204 generally interact with an Analog Front End (AFE)module 208, which is needed to enable the correct processing of the received modulated signal. TheAFE 208 can sit between the antenna and a digital baseband system in order to convert the analog signal into a digital signal for processing. - The NAN enabled device 104 can also include a controller/
microprocessor 228 and a memory/storage 224. The NAN device 104 can interact with the memory/storage 224 which may store information and operations necessary for configuring and transmitting or receiving the message frames described herein. The memory/storage 224 may also be used in connection with the execution of application programming or instructions by the controller/microprocessor 228, and for temporary or long term storage of program instructions and/or data. As examples, the memory/storage 224 may comprise a computer-readable device, RAM, ROM, DRAM, SDRAM or other storage devices and media. - The controller/
microprocessor 228 may comprise a general purpose programmable processor or controller for executing application programming or instructions related to the NAN enabled device 104. Further, controller/microprocessor 228 can perform operations for configuring and transmitting message frames as described herein. The controller/microprocessor 228 may include multiple processor cores, and/or implement multiple virtual processors. Optionally, the controller/microprocessor 228 may include multiple physical processors. By way of example, the controller/microprocessor 228 may comprise a specially configured Application Specific Integrated Circuit (ASIC) or other integrated circuit, a digital signal processor, a controller, a hardwired electronic or logic circuit, a programmable logic device or gate array, a special purpose computer, or the like. - The NAN enabled device 104 can further include a
transmitter 220 and receiver 236 which can transmit and receive signals, respectively, to and from other NAN enabled devices 104 using one or more antennas, 204. Included in the NAN enable device 104 architecture is the medium access control orMAC Circuitry 212.MAC circuitry 212 provides the medium for controlling access to the wireless medium. TheMAC circuitry 212 may be arranged to contend for a wireless medium and configure frames or packets for communicating over the wireless medium. In one example, NAN Beacon and Service Discovery frames can be processed by theMAC circuitry 212. In another example, theMAC circuitry 212 can assist with NAN synchronization either between NAN devices, within a cluster, or both. - The
MAC circuitry 212 can work together or independently of a NAN discovery engine 240, which can aid in the discovery and communication with services and applications available. The NAN discovery engine 240 can work as an interface between theMAC circuitry 212 and applications and services available. As an example, the NAN discovery engine 240 can carry information useful for connectivity such as P2P operation attributes, NAN connection capability, etc. - Responsiveness level selection module 216 can also form part of the architecture of the NAN enabled device 104. The responsiveness level selection module 216 can be a module that performs the operations necessary for discovery window selection. Such operations can include, but are not limited to, discovery window subset generation, responsiveness level creation, power management determination, and proper responsiveness level preference selection. Further details on discovery window selection are discussed below and in conjunction with
FIG. 5 andFIG. 6 . - The NAN enabled device 104 can also contain a security module 214. This security module 214 can contain information regarding but not limited to, security parameters required to connect the NAN enabled device 104 to other NAN enabled devices 104 or other available networks, and can include WEP or WPA security access keys, network keys, etc.
- The network access unit 232, is also part of the NAN device architecture and can be used for connectivity with the local area network. In one example, the connectivity can include synchronization between devices. In another example, connectivity can include device discovery. In yet another example, the network access unit 232 can work as a medium which provides support to the NAN enabled device 104 for communication with Hotspots. In still another example, the network access unit 232 can work in conjunction with at least the
MAC circuitry 212. The network access unit 232 can also work and interact with one or more of the modules described herein. - The modules described and others known in the art can be used with the NAN enabled device 104 and can be configured to perform the operations described herein in conjunction with
FIG. 1 andFIGS. 3-6 . - Members of a
NAN cluster 112 include NAN enabled devices 104 that share common attributes, including a NAN device discovery timeline 300 such as the one illustrated inFIG. 3 . The NAN device discovery timeline 300 include a series ofdiscovery windows NAN cluster 112. The discovery windows 324 span between discovery window beginning 316 a, b anddiscovery window end 320 a, b. Thediscovery windows discovery windows windows 328 of 512 milliseconds. Alternatively, the time interval betweendiscovery windows 328 can be more or less than 512 milliseconds. During the time interval betweendiscovery windows 328, NAN devices 104 are able to sleep or communicate using other networks such as WLAN, Bluetooth, Hotspot, etc. Further details describing window timing and intervals are included below and in conjunction withFIG. 4 . - In order to synchronize to a
NAN cluster 112, NAN enabled devices 104 receive and/or transmit a series of beacon frames 304 a, 304 b, 304 c, 308 a, 308 b, 312 a and 312 b. These beacon frames 304, 308, 312 are transmitted by other NAN devices such as, but not limited to, access points, NAN master devices, etc. Synchronization beacons frames 308 a, 308 b for example, are frames transmitted by at least one NAN enabled device 104 for synchronizing with a common clock within aNAN cluster 112. These frames can enable connectivity between NAN enabled devices 104 when received by other NAN enabled device 104 looking to join theNAN cluster 112. NAN enabled device 104 can also transmit NAN service discovery frames 312 a, 312 b as an indication that, that NAN enabled device 104 wishes to participate in theNAN cluster 112. Further, NAN service discovery frames 312 a, 312 b can also be transmitted to assist in connection post NAN discovery. If a NAN enabled device 104 wishes to join aNAN cluster 112, but misses the synchronization beacon frames 308, the NAN enabled device 104 can still do so without having to wait for a new discovery window 324 that is sending the synchronization beacon frames 308. Instead, the device can use NAN discovery beacon frames 304 a, 304 b, 304 sent by theNAN master 108. These frames can only be sent by a NAN master and are generally transmitted during the interval betweendiscovery windows 328. As mentioned above and in conjunction withFIG. 1 , the NAN master 104 is the only device capable of transmitting synchronization beacon frames 308, service discovery frames 312 and discovery beacon frames 304. - An exemplary embodiment of a
discovery window distribution 400 is presented inFIG. 4 . In a NAN system, discovery windows 404-428 are generally transmitted in sets of 16 repeating windows. These windows can be designated discovery window 0 (DW0) 404 a, discovery window 1 (DW1) 408, discovery window 2 (DW2) 412, discovery window 3 (DW3) 416, discovery window 14 (DW14) 424, and discovery window 15 (DW15) 428, with intermediate windows ranging from DW4 to DW13 represented byellipses 420. The window sets repeat and begin back at discovery window 404, with the repeated window designatedDW0 404 b. This repetition is illustrated inFIG. 4 withDW0 404 a repeating asDW0 404 b, after DW15 428 (i.e. after 16 windows). - Time and spacing between discovery windows can be specified by the protocol. Additionally or alternatively, time interval between windows, time interval of an entire sequence and/or transmission time of one discovery window may be varied. Additionally, or alternatively, the number of windows in a sequence can also be specified by the protocol, set by a user and/or vary in time and channel. This can be possible if changes to the time interval, duration, cluster parameters, and/or other special variable behavior are pre-defined if not pre-specified by the protocol.
- In one exemplary example, each discovery
window time interval 432 is about 16 milliseconds long and thetime interval 436 between the beginning of a first window and the beginning of the second window is about 512 milliseconds. Thus, sixteen discovery windows (DW0 404 to DW14 428) at 16 milliseconds long 432 each, yields a discovery windowsequence time interval 440 that is approximately 8.3 seconds long. - As previously explained, it is during these discovery windows that NAN enabled devices 104 are synchronized or services discovered. Therefore, it is mandated by the NAN protocol that all Wi-Fi Stations (STA) or NAN enabled devices 104 within a cluster receive DW0 404 so that there is at least one instance when two NAN enabled devices 104 can communicate. However, beyond DW0 404, NAN enabled devices 104 can decide to transmit and/or receive frames on any of the remaining discovery windows 404-428 without agreement and/or behavior by which the NAN enabled device 104 can indicate which additional discovery window it will transmit on. Therefore, it is one embodiment of present disclosure to maximize the likelihood that two independent NAN enabled devices 104 share the same DW by introducing discovery window sets that NAN enabled devices 104 can select from.
- These sets can form part of the discovery window subset allocation 500 as exemplified in
FIG. 5 . By introducing a discovery window subset allocation 500, MAC efficiency is improved. That is to say, if a set inclusion relationship exists between two devices, then there is a decrease in the number of messages required to establish connection and/or discovery. For example, in the current protocol, there is no designation as to what discovery windows the frames are transmitting on other than DW0. Therefore, the NAN enabled device 104 would require a new message at each window until it identifies a window that the other NAN enabled device 104 in theNAN cluster 112 is currently transmitting and/or receiving at. - To obviate this problem, the NAN enabled device 104 is locally presented with a discovery window set from which it can select. The subset is based on the following criteria:
-
- 1. For any two sets A & B, A is a proper subset of B or B is a proper subset of A, i.e:
-
A⊆B -
B⊆A -
- 2. The allowed set within the group has a uniform interval between any two DWs, and
-
DW # mod 2#ofsets-RL=0 - An example of subsets which include the second criteria with elements ranging from 0 to 15 can include the following: {0}, {0,8}, {0, 4, 8, 12}, {0, 2, 4, 6, 8, 10, 12, 14}, and {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15}. This relationship is presented in
FIG. 5 in the form of discovery windows with each subset designated a different responsiveness level. Therefore, subset {0} or equivalently {DW0} is designated responsiveness level 0 504. Similarly,responsiveness level 1 508 includes {DW0, DW8},responsiveness level 2 512 includes {DW0, DW4, DW8, DW12}, responsiveness level 3 516 includes {DW0, DW2, DW4, DW6, DW8, DW10, DW12, DW14} and responsiveness level 4 includes {DW0 . . . DW15}. In addition, the time interval between repeatingdiscovery windows 440 remains the same, at approximately 8.3 ms, the discoverywindow time interval 432 is 16 ms long and the time between the beginning of twoconsecutive windows 436 in a set with all 16 discovery windows remains at 512 ms. The NAN enabled device 104 selects the discovery window set or corresponding responsiveness level that best meets its needs. For example, a NAN enabled device 104 with a low power level can select a lower responsiveness level over a different NAN device 104 that is fully powered and can select a higher responsiveness level. In addition, responsiveness levels can also be selected based on the application it is trying to support. For example, a device with a light switch application would be more likely to have a higher responsiveness level over a client who simply needs to set the thermostat upon arrival at the home. Thus, responsiveness levels can power level based, application based, and/or a combination of those or other constraints. - By using a discovery window subset allocation 500 such as the one illustrated in
FIG. 5 , NAN enabled devices 104 can provide their own power level preference which theMAC Circuitry 212 can map to the corresponding responsiveness level (RL) meeting power limitations and assuring that the NAN enabled device 104 is able to discover other NAN enabled devices 104 within theNAN cluster 112. - In one example where a first and a second NAN enabled device select from the same discovery window set, the first NAN enabled device can select
RL 2 512, while a second NAN enabled device selectsRL 1 508. If the first NAN enabled device wishes to communicate with a second NAN enabled device, it can send NAN service discovery frames 312 during {DW0, DW4, DW8, DW12}. A second NAN device beingpart RL 1 508 will then have the opportunity to receive the frames transmitted during {DW0, DW8}. Again, unlike the current NAN protocol in which the NAN enabled device 104 can send a message up to 15 times before being received, the first NAN enabled device 104 only has to send 2 messages outside the required DW0 before synchronizing with a second NAN enabled device in theNAN cluster 112. The introduction of the subset, therefore, greatly reduced MAC processing minimizing the number of messages that need to be transmitted needed when every discovery window had to be considered. -
FIG. 6 outlines an exemplary methodology that outlines NAN enabled device communication using discovery window subset allocation. The methodology begins with astart operation FIG. 5 , wherein the first NAN enabled device discovery window subset is a proper subset of the second NAN enabled device discovery window subset or vice versa. The process continues to step 624, where the first NAN enabled device 104 transmits a service discovery beacon frame 312, as explained above and in conjunction withFIG. 3 . In one example, a service discovery beacon frame 312 is transmitted during DW0. In another embodiment, the service discovery beacon frame 312 is transmitted during at least one of the 15 other discovery windows available. - Concurrently, the second NAN enabled device after having selected the appropriate RL in
step 616, remains idle instep 620 until it is time to wake for one of its discovery windows in its selected responsiveness level discovery window subset. Once awake, the second NAN enabled device looks to discover a service discovery beacon frame 312 sent by the first NAN enabled device instep 628. Alternatively or in addition, the second NAN enabled device can also transmit NAN synchronization beacon frames 308 as described above and in conjunction withFIG. 3 . If, the second NAN enabled device fails to receive the service discovery beacon frame 312, then the second NAN enable device will return to step 620 where it will continue to idle until the next DW in its RL selected. Alternatively, if the a service discovery beacon frame 312 is received, then the second NAN enabled device will move forward in the process to step 644 where it will begin communicating with the first NAN enabled device. - Back at
step 624, once the first NAN enabled device has transmitted the service discovery beacon frame 312, instep 632, the device will idle until the next DW in its responsiveness level. The first NAN enabled device is only transmitting and/or receiving frames during the discovery windows within its subset. Therefore, if sufficient time has passed (i.e. 512 ms), such that a new discovery window beginning is reached, then the first NAN enabled device must determine if the window reached is a member of the subset instep 636. To determine if the window is a member of the subset, the criteria explained above and in conjunction withFIG. 5 must be met. That is, the NAN enabled device will visit windows for which the following is met:DW# mod 2#of sets-RL=0, where DW# is the window number and # of sets equal the square root of the discovery windows in a cycle. If, the current discovery window does not lie in the subset selected, the process returns to idle instep 632. Alternatively, if the current discovery window is a member of the subset, then the first NAN enabled device proceeds to step 640, where the device will transmit the service discovery beacon frame 312. The frame reachesstep 628 in the second NAN enabled device, as previously indicated, if the service discovery beacon frame 312 is received, the second NAN enabled device moves forward to step 644. Atstep 644, the second NAN enabled device will transmit data and commence communicating with the first NAN enabled device. The first NAN enabled device receives the data transmitted atstep 648.Steps - The
method 600, described herein can have more or fewer steps and can be arranged in steps differently than those shown inFIG. 6 . Themethod 600 can also be executed as a set of computer-executable instructions executed on a computer system or processor and encoded or stored on a computer medium. Themethod 600 is described above and in conjunction withFIGS. 1-5 . - Current embodiments provide solutions that remove the cost associated with no correlation type frame transmission and discovery window selection. In one embodiment, a technique for providing a subset of windows are proper subsets of each other is presented. In another embodiment, discovery window sets with set inclusion is described. Still in another embodiment, responsiveness level selection is presented. Still yet in another embodiment, a device is presented which selects the visited discovery window subsets independently of other NAN devices is explained.
- Embodiments are thus directed toward a communication device for transmitting frames, comprising: a responsiveness level module, the responsiveness level module configured to: create a plurality of window subsets from a set of windows, wherein any two window subsets of the plurality of window subsets are governed by set inclusion; and select one of the plurality of window subsets for transmission of service discovery frames on the windows within the selected window subset; and a transceiver, the transceiver configured to transmit the service discovery frames on the windows within the selected window subset. Aspects of the above communication device include wherein the any two window subsets governed by set inclusion include a first window subset and a second window subset, wherein the first window subset is a proper subset of the second window subset, or wherein the second window subset is the proper subset of the first window subset. Aspects of the above communication device include wherein the window subsets have a uniform time interval between any two of the windows. Aspects of the above communication device include wherein the window subsets are specified within a specification and the communication device selects one of the window subsets specified within the specification for transmission of the service discovery frames. Aspects of the above communication device include wherein the window subsets follow modulo 2 arithmetic, wherein the windows in the window subsets are discovery windows (DWs), and wherein the discovery windows in the window subsets include at least one of DW0, DW4, DW8, and DW12. Aspects of the above communication device include wherein selecting the window subset corresponds to a responsiveness level selection, wherein the responsiveness level selection is based on a responsiveness preference determined by one or more of an application and a power level of the communication device. Aspects of the above communication device include wherein the responsiveness level selection is chosen by a MAC (Medium Access Control) which aggregates and selects a responsiveness level that yields a preferred responsiveness. Aspects of the above communication device include wherein the service discovery frames assist in the communication device discovery and connection. Aspects of the above communication device include wherein the service discovery frames are transmitted when a modulo arithmetic between a window subset value and a powered value equal zero, wherein the powered value is a function of the windows in a cycle. Aspects of the above communication device include wherein the communication device is Neighbor Awareness Networking (NAN) enabled.
- Embodiments include a method for transmitting frames, the method comprising: obtaining, by a transceiver, from a network a time and channel information identifying a set of windows available for communication; creating, by a responsiveness level module, a plurality of window subsets from the set of windows, wherein any two window subsets within the plurality of window subsets, are governed by set inclusion; selecting, by the responsiveness level module, one of the plurality of window subsets for transmission of service discovery frames; and transmitting, by the transceiver, the service discovery frames on the windows within the selected window subset. Aspects of the above method include wherein the any two window subsets governed by set inclusion include a first window subset and a second window subset, wherein the first window subset is a proper subset of the second window subset, or wherein the second window subset is the proper subset of the first window subset. Aspects of the above method include wherein the window subsets have a uniform time interval between any two of the windows. Aspects of the above method include wherein the window subsets are pre-defined and a device can select from the pre-defined window subsets. Aspects of the above method include wherein the window subsets are specified within a specification and the communication device selects one of the window subsets specified within the specification for transmission of the service discovery frames. Aspects of the above method include wherein the window subsets follow modulo 2 arithmetic, wherein the windows in the window subsets are discovery windows (DWs), and wherein the discovery windows in the window subset include at least one of DW0, DW4, DW8, and DW12. Aspects of the above method include wherein selecting the window subset corresponds to a responsiveness level selection, wherein responsiveness level selection is based on a responsiveness preference determined by at least one of a plurality of applications and a power level of the transceiver. Aspects of the above method include wherein the responsiveness preference is indicated by a time interval or a responsiveness level. Aspects of the above method include wherein the responsiveness level selection is chosen by a MAC (Medium Access Control) which aggregates and selects the responsiveness level that yields a preferred responsiveness. Aspects of the above method include wherein the responsiveness level selection is at least partly based on responsiveness level requests generated by the at least one of a plurality of applications at a higher layer and by an operating system. Aspects of the above method include wherein the preferred responsiveness is measured by the ability of the device to meet the power level of the transceiver and assure connectivity with another device. Aspects of the above method include wherein the at least one of a plurality of applications is an object in an internet of things. Aspects of the above method include wherein the service discovery frames assist in the device discovery and connection. Aspects of the above method include wherein the service discovery frames are transmitted when a modulo arithmetic between a window subset value and a powered value equal zero, wherein the powered value is a function of the windows in a cycle. Aspects of the above method include wherein the device is Neighbor Awareness Networking (NAN) enabled.
- Embodiments include a non-transitory computer readable medium having instructions stored thereon that when executed by at least one processor of a communication device perform a method comprising: obtaining, by a transceiver, from a network a time and channel information identifying a set of windows available for communication; creating, by a responsiveness level module, a plurality of window subsets from the set of windows, wherein any two window subsets of the plurality of window subsets, are governed by set inclusion; selecting, by the responsiveness level module, one of the plurality of window subsets for transmission of service discovery frames; and transmitting, by the transceiver, the service discovery frames on the windows within the selected window subset. Aspects of the above media include wherein the any two window subsets governed by set inclusion include a first window subset and a second window subset, wherein the first window subset is a proper subset of the second window subset, or wherein the second window subset is the proper subset of the first window subset. Aspects of the above media include wherein the window subsets have a uniform time interval between any two of the windows. Aspects of the above media include wherein the window subsets follow modulo 2 arithmetic, wherein the windows in the window subsets are discovery windows (DWs), and wherein the discovery windows in the window subset include at least one of DW0, DW4, DW8, and DW12. Aspects of the above media include wherein selecting the window subset corresponds to a responsiveness level selection, wherein responsiveness level selection is based on a responsiveness preference determined by one or more of an application and power level of the communication device. Aspects of the above media include wherein the responsiveness level selection is chosen by a MAC (Medium Access Control) which aggregates and selects the responsiveness level that yields a preferred responsiveness. Aspects of the above media include wherein the preferred responsiveness is measured by the ability of the communication device to meet the power level of the communication device and assure connectivity with another communication device. Aspects of the above media include wherein the service discovery frames assist in the communication device discovery and connection. Aspects of the above media include wherein the service discovery frames are transmitted when a modulo arithmetic between a window subset value and a powered value equal zero, wherein the powered value is a function of the windows in a cycle. Aspects of the above media include wherein the communication device is Neighbor Awareness Networking (NAN) enabled.
- Embodiments include a system for transmitting frames, comprising: means for, obtaining from a network, time and channel information identifying a set of windows available for communication; means for creating a plurality of window subsets from the set of windows, wherein any two window subsets of the plurality of window subsets, are governed by set inclusion; means for selecting one of the plurality of window subsets for transmission of service discovery frames; and means for transmitting the service discovery frames on the windows within the selected window subset. Aspects of the above system include wherein the any two window subsets governed by set inclusion include a first window subset and a second window subset, wherein the first window subset is a proper subset of the second window subset, or wherein the second window subset is the proper subset of the first window subset. Aspects of the above system include wherein the window subsets have a uniform time interval between any two of the windows. Aspects of the above system include wherein the window subsets are pre-defined and the system can select from the pre-defined window subsets. Aspects of the above system include wherein the window subsets follow modulo 2 arithmetic, wherein the windows in the window subsets are discovery windows (DWs), and wherein the discovery windows in the window subset include at least one of DW0, DW4, DW8, and DW12. Aspects of the above system include wherein selecting the window subset corresponds to a responsiveness level selection, wherein responsiveness level selection is based on a responsiveness preference determined by one or more of an application and power level of the transceiver. Aspects of the above system include wherein the responsiveness preference is indicated by a time interval or a responsiveness level. Aspects of the above system include wherein the service discovery frames assist in a communication device discovery and connection. Aspects of the above system include wherein the service discovery frames are transmitted when a modulo arithmetic between a window subset value and a powered value equal zero, wherein the powered value is a function of the windows in a cycle. Aspects of the above system wherein the communication device is Neighbor Awareness Networking (NAN) enabled. Aspects of the above system include wherein the communication device selects the window subset independent of other communication devices in a NAN network.
- Embodiments include a communication device for transmitting frames, comprising: a responsiveness level module, the responsiveness level module configured to: create a plurality of window subsets from a set of windows, wherein any two window subsets of the plurality of window subsets are governed by set inclusion, wherein the window subsets within the set of windows are pre-defined; and select one of the plurality of window subsets for transmission of service discovery frames on the windows within the selected window subset; and a transceiver, the transceiver configured to transmit the service discovery frames on the windows within the selected window subset. Aspects of the above communication device include wherein the any two window subsets governed by set inclusion include a first window subset and a second window subset, wherein the first window subset is a proper subset of the second window subset, or wherein the second window subset is the proper subset of the first window subset.
- The exemplary embodiments are described in relation to Neighbor Awareness Networking. However, it should be appreciated, that in general, the systems and methods herein will work equally well for any type of communication system in any environment utilizing any one or more protocols including wired communications, wireless communications, powerline communications, coaxial cable communications, fiber optic communications and the like.
- The exemplary systems and methods are described in relation to IEEE 802.11 transceivers and associated communication hardware, software and communication channels. However, to avoid unnecessarily obscuring the present disclosure, the following description omits well-known structures and devices that may be shown in block diagram form or otherwise summarized.
- For purposes of explanation, numerous details are set forth in order to provide a thorough understanding of the present embodiments. It should be appreciated however that the techniques herein may be practiced in a variety of ways beyond the specific details set forth herein.
- Furthermore, while the exemplary embodiments illustrated herein show the various components of the system collocated, it is to be appreciated that the various components of the system can be located at distant portions of a distributed network, such as a communications network and/or the Internet, or within a dedicated secure, unsecured and/or encrypted system. Thus, it should be appreciated that the components of the system can be combined into one or more devices, such as an access point or station, or collocated on a particular node/element(s) of a distributed network, such as a telecommunications network. As will be appreciated from the following description, and for reasons of computational efficiency, the components of the system can be arranged at any location within a distributed network without affecting the operation of the system. For example, the various components can be located in a transceiver, an access point, a station, a management device, or some combination thereof. Similarly, one or more functional portions of the system could be distributed between a transceiver, such as an access point(s) or station(s) and an associated computing device.
- Furthermore, it should be appreciated that the various links, including communications channel(s), connecting the elements (which may not be not shown) can be wired or wireless links, or any combination thereof, or any other known or later developed element(s) that is capable of supplying and/or communicating data and/or signals to and from the connected elements. The term module as used herein can refer to any known or later developed hardware, software, firmware, or combination thereof that is capable of performing the functionality associated with that element. The terms determine, calculate and compute, and variations thereof, as used herein are used interchangeably and include any type of methodology, process, mathematical operation or technique.
- While the above-described flowcharts have been discussed in relation to a particular sequence of events, it should be appreciated that changes to this sequence can occur without materially effecting the operation of the embodiment(s). Additionally, the exact sequence of events need not occur as set forth in the exemplary embodiments, but rather the steps can be performed by one or the other transceiver in the communication system provided both transceivers are aware of the technique being used for initialization. Additionally, the exemplary techniques illustrated herein are not limited to the specifically illustrated embodiments but can also be utilized with the other exemplary embodiments and each described feature is individually and separately claimable.
- The above-described system can be implemented on a wireless telecommunications device(s)/system, such an 802.11 transceiver, or the like. Examples of wireless protocols that can be used with this technology include 802.11a, 802.11b, 802.11g, 802.11n, 802.11ac, 802.11ad, 802.11af, 802.11ah, 802.11ai, 802.11aj, 802.11aq, 802.11ax, 802.11u, WiFi, LTE, LTE Unlicensed, 4G, Bluetooth®, WirelessHD, WiGig, 3GPP, Wireless LAN, WiMAX.
- The term transceiver as used herein can refer to any device that comprises hardware, software, firmware, or combination thereof and is capable of performing any of the methods described herein.
- Additionally, the systems, methods and protocols can be implemented on one or more of a special purpose computer, a programmed microprocessor or microcontroller and peripheral integrated circuit element(s), an ASIC or other integrated circuit, a digital signal processor, a hard-wired electronic or logic circuit such as discrete element circuit, a programmable logic device such as PLD, PLA, FPGA, PAL, a modem, a transmitter/receiver, any comparable means, or the like. In general, any device capable of implementing a state machine that is in turn capable of implementing the methodology illustrated herein can be used to implement the various communication methods, protocols and techniques according to the disclosure provided herein.
- Examples of the processors as described herein may include, but are not limited to, at least one of Qualcomm® Snapdragon® 800 and 801, Qualcomm® Snapdragon® 610 and 615 with 4G LTE Integration and 64-bit computing, Apple® A7 processor with 64-bit architecture, Apple® M7 motion coprocessors, Samsung® Exynos® series, the Intel® Core™ family of processors, the Intel® Xeon® family of processors, the Intel® Atom™ family of processors, the Intel Itanium® family of processors, Intel® Core® i5-4670K and i7-4770K 22 nm Haswell, Intel® Core® i5-3570K 22 nm Ivy Bridge, the AMD® FX™ family of processors, AMD® FX-4300, FX-6300, and FX-8350 32 nm Vishera, AMD® Kaveri processors, Texas Instruments® Jacinto C6000™ automotive infotainment processors, Texas Instruments® OMAP™ automotive-grade mobile processors, ARM® Cortex™-M processors, ARM® Cortex-A and ARM926EJ-S™ processors, Broadcom® AirForce BCM4704/BCM4703 wireless networking processors, the AR7100 Wireless Network Processing Unit, other industry-equivalent processors, and may perform computational functions using any known or future-developed standard, instruction set, libraries, and/or architecture.
- Furthermore, the disclosed methods may be readily implemented in software using object or object-oriented software development environments that provide portable source code that can be used on a variety of computer or workstation platforms. Alternatively, the disclosed system may be implemented partially or fully in hardware using standard logic circuits or VLSI design. Whether software or hardware is used to implement the systems in accordance with the embodiments is dependent on the speed and/or efficiency requirements of the system, the particular function, and the particular software or hardware systems or microprocessor or microcomputer systems being utilized. The communication systems, methods and protocols illustrated herein can be readily implemented in hardware and/or software using any known or later developed systems or structures, devices and/or software by those of ordinary skill in the applicable art from the functional description provided herein and with a general basic knowledge of the computer and telecommunications arts.
- Moreover, the disclosed methods may be readily implemented in software and/or firmware that can be stored on a storage medium, executed on programmed general-purpose computer with the cooperation of a controller and memory, a special purpose computer, a microprocessor, or the like. In these instances, the systems and methods can be implemented as program embedded on personal computer such as an applet, JAVA® or CGI script, as a resource residing on a server or computer workstation, as a routine embedded in a dedicated communication system or system component, or the like. The system can also be implemented by physically incorporating the system and/or method into a software and/or hardware system, such as the hardware and software systems of a communications transceiver.
- It is therefore apparent that there has been provided systems and methods for discovery window selection based on NAN technologies. While the embodiments have been described in conjunction with a number of embodiments, it is evident that many alternatives, modifications and variations would be or are apparent to those of ordinary skill in the applicable arts. Accordingly, it is intended to embrace all such alternatives, modifications, equivalents and variations that are within the spirit and scope of this disclosure.
Claims (21)
1-25. (canceled)
26. A wireless NAN enabled device to synchronize with a NAN (Neighbor Awareness Network) comprising:
a memory storing instructions; and
a media access control circuitry coupled to the memory and a controller to implement instructions to:
generate for transmission or adapted to receive a plurality of beacon frames to and/or from one or more other wireless NAN devices;
transmit at least one synchronization beacon frame, the at least one synchronization beacon frame for synchronization to a common clock; and
transmit at least one service discovery frame, the at least one service discovery frame indicating the wireless NAN enabled device wishes to participate in a NAN cluster, wherein the at least one synchronization beacon frame and the at least one service discovery frame are transmitted during a discovery window.
27. The device of claim 26 , wherein the instructions further cause to be transmitted a respective plurality of synchronization beacon frames and service discovery frames within each of the plurality of discovery windows.
28. The device of claim 26 , wherein at least a portion of the device is able to sleep during an interval which is present between each discovery window.
29. The device of claim 28 , wherein the instructions further cause to be transmitted one beacon frame in the interval.
30. The device of claim 27 , wherein the plurality of discovery windows are sets of repeating windows.
31. The device of claim 26 , wherein the instructions cause at least a portion of the device to sleep during the time interval between discovery windows and wake at other times.
32. The device of claim 26 , wherein the controller is configured to discover one or more services.
33. The device of claim 26 , further comprising a NAN discovery engine to select the discovery window from a discovery window set.
34. The device of claim 28 , wherein there are a plurality of discovery windows spaced 512 milliseconds apart.
35. The device of claim 26 , further comprising a NAN discovery engine.
36. The device of claim 26 , wherein the device is a NAN master device.
37. The device of claim 26 , further comprising, and coupled to the controller, one or more of a network access unit, one or more antennas, an analog front end, a transmitter and a receiver.
38. A wireless NAN enabled communications method for device synchronization with a NAN (Neighbor Awareness Network) comprising:
generating for transmission or receiving a plurality of beacon frames to and/or from one or more other wireless NAN devices;
transmitting at least one synchronization beacon frame, the at least one synchronization beacon frame for synchronization to a common clock; and
transmitting at least one service discovery frame, the at least one service discovery frame indicating the wireless NAN enabled device wishes to participate in a NAN cluster, wherein the at least one synchronization beacon frame and the at least one service discovery frame are transmitted during a discovery window.
39. The method of claim 38 , further comprising transmitting a respective plurality of synchronization beacon frames and service discovery frames within each of the plurality of discovery windows.
40. The method of claim 38 , further comprising sleeping at least a portion of the device during an interval which is present between each discovery window.
41. The method of claim 15, further comprising transmitting one beacon frame in the interval.
42. The method of claim 14, wherein the plurality of discovery windows are sets of repeating windows.
43. The method of claim 38 , further comprising discovering one or more services.
44. The method of claim 38 , further comprising selecting the discovery window from a discovery window set.
45. The method of claim 14, wherein one or more of:
the plurality of discovery windows spaced 512 milliseconds apart, and/or
the device is a NAN master device.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US16/025,034 US20190098482A1 (en) | 2015-01-28 | 2018-07-02 | Nan discovery window selection |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/607,929 US10015660B2 (en) | 2015-01-28 | 2015-01-28 | NAN discovery window selection |
US16/025,034 US20190098482A1 (en) | 2015-01-28 | 2018-07-02 | Nan discovery window selection |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US14/607,929 Continuation US10015660B2 (en) | 2015-01-28 | 2015-01-28 | NAN discovery window selection |
Publications (1)
Publication Number | Publication Date |
---|---|
US20190098482A1 true US20190098482A1 (en) | 2019-03-28 |
Family
ID=56432991
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US14/607,929 Active 2035-07-24 US10015660B2 (en) | 2015-01-28 | 2015-01-28 | NAN discovery window selection |
US16/025,034 Abandoned US20190098482A1 (en) | 2015-01-28 | 2018-07-02 | Nan discovery window selection |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US14/607,929 Active 2035-07-24 US10015660B2 (en) | 2015-01-28 | 2015-01-28 | NAN discovery window selection |
Country Status (1)
Country | Link |
---|---|
US (2) | US10015660B2 (en) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10791514B2 (en) * | 2017-08-22 | 2020-09-29 | Avago Technologies International Sales Pte. Limited | Neighbor awareness networking tethering |
EP3573355A1 (en) * | 2018-05-24 | 2019-11-27 | Koninklijke Philips N.V. | Device for wireless communication with other devices |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160150465A1 (en) * | 2014-11-25 | 2016-05-26 | Samsung Electronics Co., Ltd. | Method for transmitting and receiving signals in proximity network and electronic device thereof |
US20170111849A1 (en) * | 2014-05-07 | 2017-04-20 | Lg Electronics Inc. | Method and apparatus for receiving signal by nan device in wireless communication system |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AU2013352177A1 (en) | 2012-11-27 | 2015-06-11 | Chevron U.S.A. Inc. | System and method for generating 3D images of non-linear properties of rock formation using surface seismic or surface to borehole seismic or both |
WO2014123566A1 (en) * | 2013-02-11 | 2014-08-14 | Minyoung Park | Methods, wireless communication stations, and system for time synchronization and discovery |
US10863431B2 (en) * | 2014-11-06 | 2020-12-08 | Qualcomm Incorporated | Systems and methods for synchronization within a neighborhood aware network |
-
2015
- 2015-01-28 US US14/607,929 patent/US10015660B2/en active Active
-
2018
- 2018-07-02 US US16/025,034 patent/US20190098482A1/en not_active Abandoned
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170111849A1 (en) * | 2014-05-07 | 2017-04-20 | Lg Electronics Inc. | Method and apparatus for receiving signal by nan device in wireless communication system |
US20160150465A1 (en) * | 2014-11-25 | 2016-05-26 | Samsung Electronics Co., Ltd. | Method for transmitting and receiving signals in proximity network and electronic device thereof |
Also Published As
Publication number | Publication date |
---|---|
US20160219422A1 (en) | 2016-07-28 |
US10015660B2 (en) | 2018-07-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11696222B2 (en) | Method and device for searching for access point in wireless LAN | |
US9736779B2 (en) | Techniques for mobile platform power management using low-power wake-up signals | |
US9749955B2 (en) | Connectivity management for mobile wireless low-power wake-up radios | |
US9826482B2 (en) | Method of fine grained wake-up modes for Wi-Fi/BT utilizing wake-up receiver | |
US10455401B2 (en) | Neighbor awareness networking datapath—reciprocation and coexistence | |
US10298674B2 (en) | Enhancing Wi-Fi aware protocol and algorithms for drone cluster formation | |
US9686071B2 (en) | Opportunistic full-duplex communications | |
US20180184233A1 (en) | 5g mb connectivity acknowledgement aggregation | |
US20180092117A1 (en) | Triggering scheme for waking up and scheduling uplink transmission of iot devices | |
US20140328234A1 (en) | Systems and methods for power save during initial link setup | |
US20170170946A1 (en) | Selective participation on full-duplex communications | |
US20180184392A1 (en) | Adding position and aoa information to ftm procedure | |
EP3171642B1 (en) | Discovery signal transmission method and device | |
US20180184377A1 (en) | Method for extending wur packet to multiple devices/technologies and enable wur packet aggregation | |
US20180092078A1 (en) | Multiple access point channel coding transmission technique for cell-edge throughput enhancement | |
KR20140111513A (en) | Method and appratus for wireless communication | |
US20180092034A1 (en) | Low power enhancement with service proxy and low power wake up radio | |
US20160143072A1 (en) | Support for peer-to-peer discovery in 5 ghz band | |
US20180035387A1 (en) | Frame structure design for ofdma based power control in 802.11ax standards and system | |
US20190098482A1 (en) | Nan discovery window selection | |
US20180176921A1 (en) | Report for inter-bss interference avoidance | |
WO2016090635A1 (en) | An adaptive block ack mechanism for a-mdpu | |
US9351122B1 (en) | Location grouping | |
US20140098744A1 (en) | Method for controlling transmission of protocol data units | |
US20180184314A1 (en) | Enhanced measurement procedure |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
STPP | Information on status: patent application and granting procedure in general |
Free format text: DOCKETED NEW CASE - READY FOR EXAMINATION |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: NON FINAL ACTION MAILED |
|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION |
|
AS | Assignment |
Owner name: INTEL CORPORATION, CALIFORNIA Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:INTEL IP CORPORATION;REEL/FRAME:057363/0617 Effective date: 20210512 |