WO2018156194A1 - Simultaneous transmission over neighbor awareness networking data link - Google Patents

Simultaneous transmission over neighbor awareness networking data link Download PDF

Info

Publication number
WO2018156194A1
WO2018156194A1 PCT/US2017/040110 US2017040110W WO2018156194A1 WO 2018156194 A1 WO2018156194 A1 WO 2018156194A1 US 2017040110 W US2017040110 W US 2017040110W WO 2018156194 A1 WO2018156194 A1 WO 2018156194A1
Authority
WO
WIPO (PCT)
Prior art keywords
nan
channel
ndp
ndl
packets
Prior art date
Application number
PCT/US2017/040110
Other languages
French (fr)
Inventor
Po-Kai Huang
Elad OREN
Emily H. Qi
Andrei Otcheretianski
Original Assignee
Intel IP Corporation
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Intel IP Corporation filed Critical Intel IP Corporation
Publication of WO2018156194A1 publication Critical patent/WO2018156194A1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W40/00Communication routing or communication path finding
    • H04W40/24Connectivity information management, e.g. connectivity discovery or connectivity update
    • H04W40/32Connectivity information management, e.g. connectivity discovery or connectivity update for defining a routing cluster membership
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W84/00Network topologies
    • H04W84/18Self-organising networks, e.g. ad-hoc networks or sensor networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W8/00Network data management
    • H04W8/005Discovery of network devices, e.g. terminals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W8/00Network data management
    • H04W8/22Processing or transfer of terminal data, e.g. status or physical capabilities

Definitions

  • This disclosure generally relates to systems, methods, and devices for wireless communications and, more particularly, to simultaneous transmissions over a neighbor awareness networking data link (NDL).
  • NDL neighbor awareness networking data link
  • NAN Neighbor awareness networking
  • NAN may refer to a Wi-Fi specification for device and/or service discovery and peer-to-peer communication.
  • NAN may describe the formation of a cluster of devices (referred to as a NAN cluster) for devices in physical proximity to one another.
  • FIG. 1 depicts a diagram illustrating an example network environment of a simultaneous transmissions over a neighbor awareness networking data link (NDL), in accordance with one or more example embodiments of the present disclosure.
  • NDL neighbor awareness networking data link
  • FIG. 2 depicts an illustrative schematic diagram for a neighbor awareness networking (NAN) discovery window, in accordance with one or more example embodiments of the present disclosure.
  • NAN neighbor awareness networking
  • FIG. 3 depicts an illustrative schematic diagram of an established NDL between two NAN devices, in accordance with one or more example embodiments of the present disclosure.
  • FIG. 4 depicts an illustrative schematic diagram for a packet transmission between two NAN devices, in accordance with one or more example embodiments of the present disclosure.
  • FIG. 5 depicts an illustrative schematic diagram for an NDL over two channels in accordance with one or more example embodiments of the present disclosure.
  • FIGs. 6A-6D depict illustrative schematic diagrams for simultaneous transmissions over an NDL, in accordance with one or more example embodiments of the present disclosure.
  • FIG. 7 depicts an illustrative schematic diagram for simultaneous transmissions over an NDL, in accordance with one or more example embodiments of the present disclosure.
  • FIG. 8 A depicts a flow diagram of an illustrative process for simultaneous transmissions over an NDL, in accordance with one or more example embodiments of the present disclosure.
  • FIG. 8B depicts a flow diagram of an illustrative process for simultaneous transmissions over an NDL, in accordance with one or more example embodiments of the present disclosure.
  • FIG. 9 depicts a functional diagram of an example communication station that may be suitable for use as a user device, in accordance with one or more example embodiments of the present disclosure.
  • FIG. 10 depicts a block diagram of an example machine upon which any of one or more techniques (e.g., methods) may be performed, in accordance with one or more example embodiments of the present disclosure.
  • Wi-Fi alliance ensures that Wi-Fi products (e.g., user devices) from multiple manufacturers work well together.
  • NAN device is allowed to indicate availability on two different channels simultaneously due to the capability of simultaneous operation on multiple bands. For example, more than one Further Availability Map attribute can be included in one NAN service discovery frame to enable a NAN device capable of concurrent multi-band operations to indicate further availability on more than one channel for the same time intervals. Each further availability attribute is identified by the value of the map ID field.
  • One or more NAN devices may establish a NAN data link (NDL).
  • NDL NAN data link
  • the established NDL may allow for the exchange of one or more services between different NAN devices.
  • Each service may have different requirements, such as security and address requirements.
  • specific NAN data paths (NDPs) may be provided for different services.
  • these devices may have a video service, a printing service, or other service between them. All of these services may be transmitted on one NDL.
  • a device is capable of conveying information associated with a service using an NDP.
  • a NAN data interface (NDI) address may then be associated with one or more NDPs.
  • NDI NAN management interface
  • NAN NAN management interface
  • the NAN device may have different hardware processing circuitry for different bands.
  • a NAN device then needs to handle one BA session in different processing circuitry. Generally this is difficult because a NAN device then needs to coordinate different processing circuitry to understand which packet has been sent by which band. Further, a NAN device also needs to prepare the BA bitmap in the BA response based on the reception in different processing circuitry in different bands simultaneously. It is possible that the NAN device still just treats the channel in each band separately and simply sends the same data in each band, which is not very efficient.
  • Example embodiments of the present disclosure relate to systems, methods, and devices for simultaneous transmissions over an NDL.
  • a device in a NAN cluster may agree when a discovery window (DW) occurs.
  • a DW may be periodic and may have a predetermined length of time.
  • a periodic DW allows devices to determine when a new DW will occur based on the DW interval.
  • one or more time slots (slots) may be allocated that may be available for NAN devices in the NAN cluster to set up data paths and exchange data. These slots may have a predetermined length and may be assigned based on availability and usage.
  • NAN devices may publish or broadcast their capabilities and services that they can perform using, for example, service discovery frames. Other NAN devices in the NAN cluster may then listen and determine which NAN device is offering a needed service.
  • the NAN devices in a NAN cluster may select a NAN device as an anchor master.
  • the other NAN devices in the NAN cluster would then follow the time synchronization of the anchor master.
  • the anchor master would, for example, determine and set the DW duration and the DW interval and periodicity.
  • the other NAN devices would then follow that schedule in order to wake up (if they are powered off) to listen to what services are being advertised during a DW. It should be understood that there may be more than one anchor master in a NAN cluster.
  • a data path between two NAN devices may be set in order to exchange data associated with a service.
  • This data path is referred to as a NAN data link (NDL).
  • NDL NAN data link
  • This NDL may be set up during one of the slots that were allocated for data exchanges.
  • There may be one or more channels that may be used for the NDL.
  • the NDL may be one or more negotiated resource blocks between a pair of NAN devices used for NAN operations.
  • one or more NDLs may form one or more slots (or resource blocks) agreed to between NAN devices in order to use a data link.
  • the NDL may cover one or more slots that can be used to exchange data packets between NAN devices.
  • the data may even be split between multiple channels.
  • NAN devices may negotiate to determine and share their capabilities and services. Negotiation may occur either within a DW or outside that window, for example, in one of the slots.
  • a NAN device may have a number of services that it may offer. Each service may be associated with one NDP. Each NDP may be associated with a pair of NDI addresses from the transmitter and the receiver sides. It should be understood that the pair of NDI addresses may be the same for one or more NDPs.
  • NAN2 introduced the support for announcing a simultaneous availability of NDLs over multiple channels. That is a NAN2 device is capable of utilizing one or more channels for the same NDL.
  • a simultaneous transmissions over an NDL system may facilitate one or more simultaneous allocations of slots available for an NDL such that a NAN device is able to choose between multiple channels when communicating and exchanging data with another NAN device in a NAN cluster. This may be possible even when using different processing circuitry for different channels. That is one processing circuitry may be used for one channel independently of another processing circuitry used for another channel.
  • a simultaneous transmissions over an NDL system may facilitate the use of a capability bit to indicate if a device can handle the reception of simultaneous transmissions for packets of NDPs belonging to the same NDI pair. If a device indicates that it can handle the reception of simultaneous transmissions for packets of NDPs belonging to the same NDI pair in different channels, then the device may need to respond with a BA based on the reception in two different bands simultaneously.
  • a receiving device indicates that it cannot handle the reception of simultaneous transmissions for packets of NDPs belonging to the same NDI pair in different channels, then specific requirements may be imposed on the transmitting device that may want to utilize the simultaneous transmissions in different channels to transmit to the receiving device, where the transmitting device and the receiving device have established NDL and NDP between them.
  • the transmitting device which transmits a first data packet of NDPs belonging to one NDI pair on channel X in an NDL time slot that is available in more than one channel may not transmit another data packet of NDPs belonging to the same NDI pair on a different channel Y in the NDL time slot until it receives the acknowledgment for the first data packet, or the first data packet is discarded for retransmission.
  • this rule may allow the packets of NDPs belonging to the same NDI pair to be transmitted at a first slot on a first channel at a first time, then the packets of NDPs belonging to the same NDI pair to be transmitted at the first slot on a second channel at a second time.
  • the transmitting device may transmit the data packets of NDPs belonging to the same NDI pair to the receiving device in only one channel of the NDL time slot.
  • this rule may allow the packets of NDPs belonging to the same NDI pair to be transmitted at a first slot on a first channel, on a second slot on a second channel, and on a third slot on the first channel.
  • the transmitting device may transmit the data packets of NDPs belonging to the same NDI pair to device A in only one channel of the NDL CRB.
  • a CRB may indicate contiguous time slots in one channel.
  • a transmitting device has to aggregate the BA responses from multiple bands simultaneously for the next transmission in different channels.
  • the proposed rule of transmitting NDP packets over NDL accommodates the need of a dual-band device with time slots available on two different channels simultaneously to prepare the BA based on the reception in the two different channels.
  • the capability bit may be introduced, and specific rule is proposed when the device indicates it cannot handle simultaneous reception of NDPs belonging to the same NDI pair in different channels.
  • FIG. 1 is a network diagram illustrating an example wireless network 100 of a simultaneous transmissions over an NDL, in accordance with one or more example embodiments of the present disclosure.
  • Wireless network 100 can include one or more user devices 120 (e.g., 122, 124, 126, or 128), which may communicate in accordance with wireless standards, such as the IEEE 802.11 communication standards.
  • wireless standards such as the IEEE 802.11 communication standards.
  • two or more wireless devices may perform connectivity procedures with one another in order to set up Wi-Fi data sessions, according to some example embodiments of the present disclosure.
  • FIG. 1 is a network diagram illustrating an example wireless network 100 of a simultaneous transmissions over an NDL, in accordance with one or more example embodiments of the present disclosure.
  • wireless standards such as the IEEE 802.11 communication standards.
  • two or more wireless devices may perform connectivity procedures with one another in order to set up Wi-Fi data sessions, according to some example embodiments of the present disclosure.
  • FIG. 1 is a network diagram illustrating an example wireless network 100 of
  • a wireless communication channel may be established between two or more wireless devices (e.g., user device(s) 120), where a first user device 120 may correspond to a service seeker, and a second user device 120 may correspond to a service advertiser.
  • a service advertiser may be a wireless device that may advertise and provide one or more of these services over a wireless communication channel.
  • the user device(s) 120 may be wireless devices that are non-stationary and do not have fixed locations.
  • a service seeker may be a wireless device that is seeking certain services, such as printing, playing content, sending, docking, etc.
  • the user devices 120 can include one or more computer systems similar to that of the functional diagram of FIG. 9 and/or the example machine/system of FIG. 10.
  • One or more illustrative user device(s) 120 may be operable by one or more user(s) 110.
  • the user device(s) 120 may include any suitable processor-driven user device including, but not limited to, a desktop user device, a laptop user device, a server, a router, a switch, an access point, a smartphone, a tablet, a wearable wireless device (e.g., a bracelet, a watch, glasses, a ring, etc.), and so forth.
  • Any of the user devices 120 may be configured to communicate with each other and any other component of the wireless network 100 directly and/or via one or more communications networks 130, wirelessly or wired.
  • Any of the communications networks 130 may include, but not be limited to, any one of a combination of different types of suitable communications networks such as, for example, broadcasting networks, cable networks, public networks (e.g., the Internet), private networks, wireless networks, cellular networks, or any other suitable private and/or public networks.
  • any of the communications networks 130 may have any suitable communication range associated therewith and may include, for example, global networks (e.g., the Internet), metropolitan area networks (MANs), wide area networks (WANs), local area networks (LANs), or personal area networks (PANs).
  • any of the communications networks 130 may include any type of medium over which network traffic may be carried including, but not limited to, coaxial cable, twisted-pair wire, optical fiber, a hybrid fiber coaxial (HFC) medium, microwave terrestrial transceivers, radio frequency communication mediums, white space communication mediums, ultra-high frequency communication mediums, satellite communication mediums, or any combination thereof.
  • coaxial cable twisted-pair wire
  • optical fiber a hybrid fiber coaxial (HFC) medium
  • microwave terrestrial transceivers microwave terrestrial transceivers
  • radio frequency communication mediums white space communication mediums
  • ultra-high frequency communication mediums satellite communication mediums, or any combination thereof.
  • Any of the user devices 120 may include one or more communications antennas.
  • Communications antennas may be any suitable type of antenna corresponding to the communications protocols used by the user device(s) 120.
  • suitable communications antennas include Wi-Fi antennas, IEEE 802.11 family of standards compatible antennas, directional antennas, non-directional antennas, dipole antennas, folded dipole antennas, patch antennas, MIMO antennas, or the like.
  • the communications antenna may be communicatively coupled to a radio component to transmit and/or receive signals, such as communications signals, to and/or from the user devices 120 (e.g., 122, 124, 126, or 128).
  • Any of the user devices 120 may include any suitable radio and/or transceiver for transmitting and/or receiving radio frequency (RF) signals in the bandwidth and/or channels corresponding to the communications protocols utilized by any of the user device(s) 120 to communicate with each other.
  • the radio components may include hardware and/or software to modulate and/or demodulate communications signals according to pre-established transmission protocols.
  • the radio components may further have hardware and/or software instructions to communicate via one or more Wi-Fi and/or Wi-Fi Direct protocols, as standardized by the Institute of Electrical and Electronics Engineers (IEEE) 802.11 standards.
  • the radio component in cooperation with the communications antennas, may be configured to communicate via 2.4 GHz channels (e.g., 802.11b, 802.11g, 802.11 ⁇ ), 5 GHz channels (e.g., 802.11 ⁇ , 802.1 lac), or 60 GHz channels (e.g., 802.1 lad, 802. Hay).
  • non- Wi-Fi protocols may be used for communications between devices, such as Bluetooth, dedicated short-range communication (DSRC), ultra-high frequency (UHF) (e.g., IEEE 802.1 laf, IEEE 802.22), white band frequency (e.g., white spaces), or other packetized radio communications.
  • the radio component may include any known receiver and baseband suitable for communicating via the communications protocols.
  • the radio component may further include a low noise amplifier (LNA), additional signal amplifiers, an analog-to-digital (A/D) converter, one or more buffers, and a digital baseband.
  • LNA low noise amplifier
  • A/D analog-to-digital
  • wireless devices may communicate with each other without the need for an AP. Without an AP to transmit information that facilitates communication among the wireless devices, however, the wireless devices may not know when they will communicate with another device and with which device they will communicate. Therefore, a device may be required to use power and processing resources to listen for data packets and to determine if those data packets are meant for the device. Instead of a device constantly listening for and receiving data packets without knowing if they are meant for the device, the device may need to be woken up to establish communication with another device.
  • NAN data path may be a data connection established between a pair of NAN devices for a service instance.
  • NAN2 enhancements to the NAN standard may include the establishment of a dedicated NDP between NAN2 devices in a NAN data cluster (NDC), which may allow for improved management of device resources.
  • the dedicated NDP may be specific to connected NAN2 devices in an NDC, and the NDC may be a collection of NAN data links with a same NAN data cluster base schedule.
  • NAN2 devices may communicate in very high throughput environments that may include significant communication traffic, NAN2 devices may benefit from the communication and use of channel protection information to reduce interference, for example.
  • a NAN network comprises all NAN devices that share a common set of NAN parameters that include: the time period between consecutive discovery windows, the time duration of the discovery windows, the beacon interval, and the NAN discovery channel(s).
  • a NAN cluster is a collection of NAN devices that share a common set of NAN parameters and are synchronized to the same discovery window schedule.
  • a NAN device may send multicast NAN service discovery frames directly to other NAN devices within range in the same NAN cluster during the discovery window.
  • a NAN device may send unicast NAN service discovery frames directly to any other NAN device within range in the same NAN cluster during the discovery window.
  • a NAN2 device may be capable of operating in a NAN2 network and other types of networks, including a NAN network, a WLAN infrastructure, Independent Base Service Set (IBSS), Wi-Fi Direct, Bluetooth, and the like.
  • a NAN2 device may send multicast NAN2 service discovery frames directly to other NAN2 devices within range in the same NAN2 cluster during the discovery window (DW).
  • a NAN2 device may also send unicast NAN2 service discovery frames directly to any other NAN2 device within range in the same NAN2 cluster during the DW.
  • 802.11 data frames/packets carry protocols and data from higher layers within the frame/packet body.
  • a data frame/packet could be carrying the data associated with a video that a user is viewing.
  • Other frames/packets that stations may use for management and control may carry specific information regarding the wireless link in the frame/packet body.
  • a beacon frame may contain the service set identifier (SSID), the timestamp, and other pertinent information regarding the access point.
  • SSID service set identifier
  • the user devices 120 may be NAN2 devices that may perform connectivity procedures with one another in order to set up a NAN2 data path (NDP).
  • NDP does not exist in the existing NAN standard.
  • An established NAN data link (NDL) may allow for the exchange of multiple services between different NAN devices. Each service may have different requirements, such as security and address requirements. As a result, specific NDPs may be provided for different services.
  • the user devices 120 may utilize an NDP negotiation procedure defined to enable data transmission between two NAN2 devices. This negotiation procedure may be an association process (similar to an access point-station (AP-STA) process in a typical Wi-Fi infrastructure.
  • API-STA access point-station
  • a station which exchanges data e.g., a transmitting station
  • another station e.g., receiving station
  • a protection mechanism may be deployed by the transmitting station to defer any transmission by an interferer for a known period of time.
  • FIG. 2 depicts an illustrative schematic diagram for a NAN discovery window.
  • NAN is a peer-to-peer discovery and communication protocol, which builds a synchronized timing and slots among stations such that stations can discover each other and perform data communication in specific slots. For example, the stations can first discover each other in a discovery window (e.g., DW 204) then two stations can set up a NAN data path (NDP) and agree on one or more slots that may be established for a NAN data ink (NDL) to facilitate data communication between the two NAN devices.
  • a DW may be periodic and may have a predetermined length of time. Further, a DW may be periodic such that the devices are able to determine when a new DW will occur based on the DW interval.
  • the NDL may be one or more negotiated resource blocks (slots) between a pair of NAN devices used for NAN operations. For example, one or more NDLs may form one or more slots (or resource blocks) agreed to between NAN devices in order to use a data link
  • a DW interval 212 between a DW pair (e.g., DW 204 and DW 208).
  • DW 204 and DW 208 may have a predetermined length that may be set by an 802.11 standard or may be set by a system administrator or based on a user preference. In other embodiments, the DW may be configurable. In one example, a DW length may be equal to 16 time units in the time domain.
  • a time unit (TU) may be a unit of time equal to 1024 microseconds.
  • a slot may also have a length that may be set by an 802.11 standard, or may be set by a system administrator or based on a user preference. In other embodiments, the slot may be configurable. In one example, a slot length may be equal to 16 TUs.
  • FIG. 3 depicts an illustrative schematic diagram of an established NDL between two NAN devices.
  • two channels (e.g., channel 1 and channel 2) that may be available for two NAN devices that may be exchanging data associated with one or more services. These two devices may have performed discovery of their respective services during a discovery window 304, which may be repeated periodically with a DW interval 312. That is, DW 304 may be followed by a DW 308 after the passage of the DW interval 312.
  • DW 304 may be followed by a DW 308 after the passage of the DW interval 312.
  • a NAN device may have different hardware processing circuitry for different bands. If an NDP is established over the NDL, then due to the fixed NDI address used on both sides for one NDP there is only one block acknowledgment (BA) session between device A and device B for the established NDP. As a result, a NAN device then needs to handle one BA session in different processing circuitry. Generally this is difficult because a NAN device then needs to coordinate different processing circuitry to understand which packet has been sent by which band.
  • BA block acknowledgment
  • FIG. 4 depicts an illustrative schematic diagram for a packet transmission between two NAN devices.
  • NDL 406 there is shown an established NDL 406 between a first NAN device (e.g., NAN Dl 402) and a second NAN device (e.g., NAN D2 404).
  • a first NAN device e.g., NAN Dl 402
  • a second NAN device e.g., NAN D2 404
  • An established NDL may be used for multiple services (e.g., service 1, service 2, and service 3) between the two NAN devices. Different services may have different requirements like security and addresses. As a result, specific NDPs can be built for different services (e.g., NDP1, NDP2, and NDP3 associated with service 1, service 2, and service 3, respectively).
  • the address that is used for an NDP is called a NAN data interface (NDI) address.
  • NDI 1.1 and NDI 2.1 are addresses used for NDP1 (for service 1) and NDP2 (for service 2).
  • NDI 1.2 and NDI 2.2 are addresses used for NDP3 (for service 3).
  • NAN management interface address The address that is used for discovery before setting up the NDP is called the NAN management interface address (NMI).
  • a NAN device may maintain an NMI address, and may maintain one or more NDI addresses. Each interface address, either an NMI or an NDI address, is not required to be globally unique and may be locally managed.
  • a NAN device may use the NMI or the NDI as the transmitter address (TA) for all management frames sent within a NAN cluster.
  • TA transmitter address
  • a NAN device may use the NMI or NDI of the intended recipient NAN device as the receiver address (RA) for all unicast management frames sent within a NAN cluster, and may use the broadcast address as the receiver address (RA) for management frames destined for all NAN devices within a NAN cluster.
  • RA receiver address
  • a NAN device When a NAN device sets up an NDP with a peer NAN device, it may select an NDI for the NDP.
  • the NAN device may use the NDI as the transmitter address (TA) for all data frames associated with the NDP.
  • a NAN device may use the same NDI for multiple different NDPs. or it may use different NDIs for different NDPs. For example, a NAN device may use different NDIs for NDPs with different security requirements.
  • An NDI may be the same as the NMI.
  • An NDL is uniquely identified by the NMIs of the two NAN devices that established the NDL. In the example of FIG. 4, NMI 1 is shown to be established on the transmitting device side for NAN Dl 402, and NMI 2 is shown to be established on the receiving device side for NAN D2 404.
  • the NDL may one or more negotiated resource blocks (slots) between a pair of NAN devices used for NAN operations.
  • one or more NDLs may form one or more slots (or resource blocks) agreed to between the NAN devices in order to use a data link.
  • FIG. 5 depicts an illustrative schematic diagram for an NDL over two channels.
  • NAN devices e.g., user device 522 and user device 524 that may be communicating within a NAN cluster to exchange data associated with one or more services.
  • the user device 522 is shown to comprise processing circuitries 503 and 505
  • the user device 524 is shown to comprise processing circuitries 507 and 509.
  • the processing circuities 503 and 507 are associated with the channel 504, and the processing circuitries 505 and 509 are associated with the channel 506.
  • These two devices e.g., user device 522 and user device 524) may have performed discovery of their respective services during a discovery window 508, which may be repeated periodically at a DW interval 510. That is, DW 508 may be followed by another DW after the passage of the DW interval 510.
  • the NDLs may be allocated simultaneously on channel 504 and channel 506, during time slots 512, 514, 515, etc.
  • the NDL may cover one or more slots that can be used to exchange data packets between NAN devices. Between two NAN devices, there may be only one NDL and within each NDL, there may be one or more NDPs to be used for one or more services between the NAN devices.
  • a slot is defined on a per channel basis.
  • a NAN station may be capable of transmitting data streams on two channels simultaneously.
  • a block acknowledgement is used by a device to acknowledge the receipt of a data packet.
  • BA block acknowledgement
  • the reason for having only one BA session is that the BA is tied to a transmitter address and a receiver address.
  • There is only pair of addresses e.g., NDI addresses associated with an NDP from the transmitter and the receiver NAN devices
  • There is only pair of addresses e.g., NDI addresses associated with an NDP from the transmitter and the receiver NAN devices
  • the problem is that if there is only one BA session, however, the NAN devices are available on multiple channels simultaneously. When a device is available on two channels simultaneously, the device will need additional hardware such as additional processing circuitry to maintain and manage communication on each channel.
  • an NDL may be available on two different channels between two NAN devices.
  • the transmitter may send a first set of packets on the first channel, which may be handled by a first processing circuitry on the transmitting device and a first processing circuitry on the receiving device, and second set of packets on the second channel, which may be handled by a second processing circuitry on the transmitting device and a second processing circuitry on the receiving device.
  • the problem arises when the block acknowledgment to the first set of packets is received by the transmitting device on the first processing circuitry, leaving the second processing circuitry unaware of this first set of packets being received.
  • the block acknowledgment to the second set of packets may be received by the second processing circuitry of the transmitting device, leaving the first processing circuitry unaware of the second set of packets being received.
  • FIG. 5 shows only two channels, it should be understood that an NDL may be available on additional channels simultaneously, resulting in the problem outlined above being exacerbated.
  • FIGs. 6A-6D depict illustrative schematic diagrams for simultaneous transmissions over an NDL, in accordance with one or more example embodiments of the present disclosure.
  • FIG. 6 A there is shown two NAN devices (e.g., user device 622 and user device 624) that may be communicating within a NAN cluster to exchange data associated with one or more services.
  • the user device 622 is shown to comprise processing circuitries 603 and 605
  • the user device 624 is shown to comprise processing circuitries 607 and 609.
  • the processing circuities 603 and 607 are associated with the channel 604, and the processing circuitries 605 and 609 are associated with the channel 606.
  • a simultaneous transmissions over an NDL system may introduce a capability bit to indicate if a receiving device can handle the reception of simultaneous transmissions for packets of NDPs belonging to the same NDI pair.
  • a simultaneous transmissions over an NDL system may determine how to handle the packets (e.g., data packets or management packets) of NDPs belonging to the same NDI pair that may need to be transmitted from the user device 622 to the user device 624 on an NDL time slot that is available in more than one channel when the device 624 indicates, using the capability bit, that it cannot handle the reception of simultaneous transmissions for packets of NDPs belonging to the same NDI pair in different channels.
  • packets e.g., data packets or management packets
  • a simultaneous transmissions over the NDL system may facilitate that the user device 622 that transmits packet 608 (or a group of packets) for NDPs belonging to one NDI pair on a channel 604 in an NDL time slot (e.g., slot 611) that is available in more than one channel (e.g., channels 604 and 606) may not transmit packet 612 (or a group of packets) for NDPs belonging to the same NDI pair on channel 606 in the NDL time slot 611 until it receives the acknowledgment (e.g., BA 610) for the packet 608, or the packet 608 is discarded for retransmission.
  • an NDL time slot e.g., slot 611
  • the acknowledgment e.g., BA 610
  • a slot (e.g., slot 611) may be divided into various portions of time.
  • time slot 611 is divided into a time portion 613 and a time portion 615.
  • this rule allows the packets 608 of the NDPs belonging to the same NDI pair to be transmitted at slot 611 on channel 604 during the time portion 613, then the packets 612 of the NDPs belonging to the same NDI pair to be transmitted at slot 611 on channel 606 at the time portion 615.
  • the user device 622 may transmit the packets 608 for the NDPs belonging to the same NDI pair to the user device 624 in only one channel of the NDL time slot. That is, although the opportunity exists for the user device 622 to transmit some of its packets on channel 604 and the rest of its packets on channel 606, during the NDL time slot 631 that is available simultaneously on channels 604 and 606, the user device 622 is required to send packet 608 during the time slot 631 only on channel 604.
  • packets 612 may only be sent on channel 606 without the opportunity to split these packets over channels 604 and 606 during the time slot 632, which is available simultaneously for user device 222 to transmit on. This forces the BA 610 associated with packet 608 to be received by the user device 222 on the same channel 604. Similarly, the BA 614 associated with packet 612 will be received by the user device 222 on the same channel 606. It should be noted that although the BA 610 is shown to be received by the user device 222 during the time slot 631 , there may be situations where the BA 610 is received in a different time slot. The same is true for BA 614. It should also be understood that this rule disallows the example in option 1.
  • the transmitting device may transmit the packets of NDPs belonging to the same NDI pair to the receiving device in only one channel of the NDL common resource block (CRB).
  • An NDL may be allocated one or more CRBs in order to accommodate the NDP between the two NAN devices (e.g., the user device 622 and the user device 624).
  • the NAN devices may establish an NDL to ensure they share sufficient NDL CRBs to accommodate the NDP.
  • a CRB may comprise contiguous time slots in one channel.
  • the CRBs on one channel may overlap with CRBs on another channel. That is, the NAN devices may be allocated to a CRB on two or more channels simultaneously.
  • CRBs 641 and 642 may be allocated for an NDL.
  • CRBs 641 and 642 may be available in channel 604 and channel 606 simultaneously between the user device 622 and the user device 624.
  • CRB 641 may be comprised of two time slots 643 and 644 while CRB 642 may be comprised of one time slot 645.
  • packet 608 (which may be comprised of one or more packets) is associated with an NDP belonging to the same NDI pair.
  • the user device 622 may transmit packet 608 using CRB 641 only on channel 604, even though CRB 641 spans over two time slots 643 and 644.
  • the user device 622 may transmit packet 612 using CRB 642 only on channel 606.
  • the acknowledgments e.g., BA 610 and BA 614
  • for packet 608 and packet 612 may then be received on their respective channels.
  • this rule may allow the packets of NDPs belonging to the same NDI pair to be transmitted in CRB at slots 643 and 644 on channel 604 and slot 645 on channel 606. It should be understood that this rule disallows the examples in options 1 and 2.
  • the user device 622 may aggregate the BA responses from multiple bands simultaneously for next transmission in different channels.
  • a simultaneous transmissions over an NDL system may facilitate that if a device (e.g., user device 624) indicates (e.g., using the capability bit) that it can handle the reception of simultaneous transmissions for packets of NDPs belonging to the same NDI pair in different channels from a transmitting device (e.g., the user device 622), then the receiving device (e.g., the user device 624) may report a BA bitmap (e.g., BA bitmaps 656 and 658 during time slot 653) based on the simultaneous reception in different channels for packets of NDPs (e.g., packets 652 on channel 604 and packets 654 on channel 606 during time slot 651) belonging to the same NDI pair.
  • a BA bitmap e.g., BA bitmaps 656 and 658 during time slot 653
  • FIG. 7 depicts an illustrative schematic diagram for simultaneous transmissions over an NDL, in accordance with one or more example embodiments of the present disclosure.
  • NAN devices e.g., user device 722 and user device 724 that may be communicating within a NAN cluster to exchange data associated with one or more services.
  • the user device 722 is shown to comprise processing circuitries 703 and 705, and the user device 724 is shown to comprise processing circuitries 707 and 709.
  • the processing circuities 703 and 707 are associated with the channel 704, and the processing circuitries 705 and 709 are associated with the channel 706.
  • the various options for capability indications outlined in FIGs. 6A-6D may be relaxed by limiting the rules to only simultaneous transmissions for data packets of NDPs belonging to the same NDI pair as opposed to other types of packets. The reason is that only one BA session is associated with the transmissions of data packets and acknowledgments of data packets. Since management frames are not in the same category as data frames, there is no need to apply the above limitations to management packets. Further, a management frame will need an acknowledgment to the frame as opposed to a block acknowledgment to one or more packets.
  • the processing circuitry 703 of the user device 722 receives a management frame
  • the management frame may be entirely received by that processing circuitry 703 and may not need to be split between channels 704 and 706. Therefore, the above options in FIGs. 6A-6D may be limited to data packets.
  • a receiving device may report a BA bitmap based on the simultaneous reception in different channels for data packets of NDPs belonging to the same NDI pair.
  • the above capability indication may be further relaxed by limiting the rule to only simultaneous transmissions for data packets of NDPs belonging to the same NDI pair and the same unicast traffic identifier (TID).
  • TID unicast traffic identifier
  • the user device 724 if the user device 724 indicates that it cannot handle the reception of simultaneous transmissions for packets of NDPs belonging to the same NDI pair and same TID in different channels, one or more options may be implemented.
  • a transmitting device which transmits a data packet of NDPs belonging to one NDI pair and one TID on a channel (e.g., channel 704) in an NDL time slot that is available in more than one channel (e.g., channels 704 and 706) may not transmit another data packet of NDPs belonging to the same NDI pair and the same TID on a different channel (e.g., channel 706) in the NDL time slot until it receives the ACK/BA for the packet, or in case the packet is discarded for retransmission.
  • a transmitting device e.g., user device 722 which transmits a data packet of NDPs belonging to one NDI pair and one TID on a channel (e.g., channel 704) in an NDL time slot that is available in more than one channel (e.g., channels 704 and 706) may not transmit another data packet of NDPs belonging to the same NDI pair and the same TID on a different channel (e.g., channel 706) in the N
  • the transmitting device may transmit the data packets of NDPs belonging to the same NDI pair and the same TID to the transmitting device in only one channel of the NDL time slot.
  • the user device 722 may transmit the data packets of NDPs belonging to the same NDI pair and the same TID (e.g., packets 708) to the user device 724 in only one channel of the NDL CRB.
  • NDL CRB e.g., CRB 711
  • TID e.g., packets 708
  • the user device 722 may establish an NDL with the user device 724 such that the packets of NDPs belonging to a same NDI pair and the same TID (e.g., packet 708 made up of packets 1, 2, 3, and 4 having a TID 1) may be sent on channel 704 of the CRB 711.
  • the packets of NDPs belonging to a same NDI pair and the same TID e.g., packet 708 made up of packets 1, 2, 3, and 4 having a TID 1
  • packet 708 made up of packets 1, 2, 3, and 4 having a TID 1
  • packet 716 which may be made up of packets 5, 6, 7, and 8 associated with TID 1 may be sent on channel 706 of the CRB 713.
  • packet 712 may be sent on a different channel simultaneously with packet 708.
  • packet 712 may be sent simultaneously on channel 706 of the CRB 711.
  • the transmitting device may have to aggregate the BA responses from multiple bands simultaneously for next transmission in different channels. If the receiving device indicates that it can handle the reception of simultaneous transmissions for data packets of NDPs belonging to the same NDI pair and the same TID in different channels from the transmitting device, then the receiving device may report the BA bitmap based on the simultaneous reception in different channels for data packets of NDPs belonging to the same NDI pair and the same TID. For example, the user device 724 may send a BA 710 in response to packets 708 for TID 1, where the BA 710 is sent on channel 704 during CRB 711.
  • the user device 724 may send BA 714 to acknowledge the reception of packets 712 for TID 2 on channel 706 during the CRB 711.
  • the BA 718 for TID 1 acknowledging packets 716 for TID1 may be sent in a different CRB (e.g., CRB 713). It is understood that the above descriptions are for purposes of illustration and are not meant to be limiting.
  • the capability bit may be set to 1 to indicate that the device is capable of receiving simultaneous transmissions for packets of NDPs belonging to the same NDI pair in different channels. Otherwise, the capability bit may be set to 0.
  • the indication of capability can be put in the device capability attribute.
  • An example is shown in Table 1.
  • One bit in an operation mode field may be used for this purpose.
  • An example is shown in Table 2.
  • One bit in a capabilities field can be used for this purpose.
  • An example is shown in Table 1. It should be noted that the example only elaborates the case for the restriction not limited to the same TID.
  • FIG. 8 A illustrates a flow diagram of an illustrative process 800 for simultaneous transmissions over an NDL system, in accordance with one or more example embodiments of the present disclosure.
  • a device may identify a first NAN device within a NAN cluster, wherein the first NAN device is capable of performing a service.
  • the device in a NAN cluster may agree when a DW occurs.
  • a DW may be periodic and may have a predetermined length of time.
  • a periodic DW allows devices to determine when a new DW will occur based on the DW interval.
  • one or more time slots may be allocated that may be available for NAN devices in the NAN cluster to set up data paths and exchange data. These slots may have a predetermined length and may be assigned based on availability and usage.
  • the NAN devices may publish or broadcast their capabilities and services that they can perform using, for example, service discovery frames. Other NAN devices in the NAN cluster may then listen and determine which NAN device is offering a needed service.
  • the device may determine an NDL that is simultaneously available on a first channel and a second channel with the first NAN device.
  • a data path between the two NAN devices may be set in order to exchange data associated with a service. This data path is referred to as an NDL.
  • This NDL may be set up during one of the slots that were allocated for data exchanges.
  • the NDL may be one or more negotiated resource blocks between a pair of NAN devices used for NAN operations. For example, one or more NDLs may form one or more slots (or resource blocks) agreed to between the NAN devices in order to use a data link.
  • the NDL may cover one or more slots that can be used to exchange data packets between NAN devices. The data may even be split between multiple channels.
  • NAN devices may negotiate to determine and share their capabilities and services. Negotiation may occur either within a DW or outside that window, for example, in one of the slots.
  • the device may determine a NAN data path (NDP) of the NDL, wherein the NDP is associated with the service.
  • NDP NAN data path
  • a NAN device may have a number of services to offer. Each service may be associated with one NDP.
  • Each NDP may be associated with a pair of NDI addresses from the transmitter and the receiver sides. It should be understood that the pair of NDI addresses may be the same for one or more NDPs.
  • the device may cause to allocate a first NDI address associated with the NDP.
  • a NAN device may have a number of services to offer.
  • the device may identify a capability indication of the first NAN device to receive simultaneous transmissions.
  • a capability bit may be used to indicate if a device can handle the reception of simultaneous transmissions for packets of NDPs belonging to the same NDI pair. If a device indicates that it can handle the reception of simultaneous transmissions for packets of NDPs belonging to the same NDI pair in different channels, then the device may need to respond with a BA based on the reception in two different bands simultaneously.
  • a receiving device indicates that it cannot handle the reception of simultaneous transmissions for packets of NDPs belonging to the same NDI pair in different channels, then specific requirements may be imposed on the transmitting device that may want to utilize the simultaneous transmissions in different channels to transmit to the receiving device, where the transmitting device and the receiving device have established an NDL and NDP between them.
  • the device may cause to send a first packet based on the capability indication. If a receiving device indicates that it cannot handle the reception of simultaneous transmissions for packets of NDPs belonging to the same NDI pair in different channels, then specific requirements may be imposed on the transmitting device that may want to utilize the simultaneous transmissions in different channels to transmit to the receiving device, where the transmitting device and the receiving device have established an NDL and NDP between them.
  • the transmitting device which transmits a first data packet of NDPs belonging to one NDI pair on channel X in an NDL time slot that is available in more than one channel (e.g., channel X and/or Y) may not transmit another data packet of NDPs belonging to the same NDI pair on a different channel Y in the NDL time slot until it receives the acknowledgment for the first data packet, or the first data packet is discarded for retransmission.
  • this rule may allow the packets of NDPs belonging to the same NDI pair to be transmitted at a first slot on a first channel at a first time, then the packets of NDPs belonging to the same NDI pair to be transmitted at the first slot on a second channel at a second time.
  • the transmitting device may transmit the data packets of NDPs belonging to the same NDI pair to the receiving device in only one channel of the NDL time slot. For example, this rule may allow the packets of NDPs belonging to the same NDI pair to be transmitted at a first slot on a first channel, on a second slot on a second channel, and on a third slot on the first channel.
  • the transmitting device may transmit the data packets of NDPs belonging to the same NDI pair to device A in only one channel of the NDL CRB.
  • a CRB may indicate contiguous time slots in one channel.
  • a transmitting device has to aggregate the BA responses from multiple bands simultaneously for the next transmission in different channels. It is understood that the above descriptions are for purposes of illustration and are not meant to be limiting.
  • FIG. 8B illustrates a flow diagram of illustrative process 850 for simultaneous transmissions over an NDL system, in accordance with one or more example embodiments of the present disclosure.
  • a device e.g., the user device(s) 120 of FIG. 1 may identify a request to set a capability bit to indicate support for receiving simultaneous transmissionss of packets in an NDP.
  • the NAN devices may publish or broadcast their capabilities and services that they can perform using, for example, service discovery frames. Other NAN devices in the NAN cluster may then listen and determine which NAN device is offering a needed service.
  • the device may cause to send the capability bit to a NAN device.
  • a data path between two NAN devices may be set up in order to exchange data associated with a service. This data path is referred to as an NDL. This NDL may be set up during one of the slots that were allocated for data exchanges.
  • the NDL may be one or more negotiated resource blocks between a pair of NAN devices used for NAN operations. For example, one or more NDLs may form one or more slots (or resource blocks) agreed to between the NAN devices in order to use a data link. The NDL may cover one or more slots that can be used to exchange data packets between NAN devices. The data may even be split between multiple channels. NAN devices may negotiate to determine and share their capabilities and services. Negotiation may occur either within a DW or outside that window, for example, in one of the slots.
  • the device may cause to allocate an NDI address associated with the NDP.
  • Each service may be associated with one NDP.
  • Each NDP may be associated with a pair of NDI addresses from the transmitter and the receiver sides. It should be understood that the pair of NDI addresses may be the same for one or more NDPs.
  • the device may identify packets received from the NAN device based on the capability bit. If a receiving device indicates that it cannot handle the reception of simultaneous transmissions for packets of NDPs belonging to the same NDI pair in different channels, then specific requirements may be imposed on the transmitting device that may want to utilize the simultaneous transmissions in different channels to transmit to the receiving device, where the transmitting device and the receiving device have established an NDL and NDP between them.
  • the transmitting device which transmits a first data packet of NDPs belonging to one NDI pair on channel X in an NDL time slot that is available in more than one channel (e.g., channel X and/or channel Y) may not transmit another data packet of NDPs belonging to the same NDI pair on a different channel Y in the NDL time slot until it receives the acknowledgment for the first data packet, or the first data packet is discarded for retransmission.
  • this rule may allow the packets of NDPs belonging to the same NDI pair to be transmitted at a first slot on a first channel at a first time, then the packets of NDPs belonging to the same NDI pair to be transmitted at the first slot on a second channel at a second time.
  • the transmitting device may transmit the data packets of NDPs belonging to the same NDI pair to the receiving device in only one channel of the NDL time slot. For example, this rule may allow the packets of NDPs belonging to the same NDI pair to be transmitted at a first slot on a first channel, on a second slot on a second channel, and on a third slot on the first channel.
  • the transmitting device may transmit the data packets of NDPs belonging to the same NDI pair to device A in only one channel of the NDL CRB.
  • a CRB may indicate contiguous time slots in one channel.
  • a transmitting device has to aggregate the BA responses from multiple bands simultaneously for the next transmission in different channels.
  • FIG. 9 shows a functional diagram of an exemplary communication station 900 in accordance with some embodiments.
  • FIG. 9 illustrates a functional block diagram of a communication station that may be suitable for use as a user device(s) 120 (FIG. 1) in accordance with some embodiments.
  • the communication station 900 may also be suitable for use as a handheld device, a mobile device, a cellular telephone, a smartphone, a tablet, a netbook, a wireless terminal, a laptop computer, a wearable computer device, a femtocell, a high data rate (HDR) subscriber station, an access point, an access terminal, or other personal communication system (PCS) device.
  • HDR high data rate
  • PCS personal communication system
  • the communication station 900 may include communications circuitry 902 and a transceiver 910 for transmitting and receiving signals to and from other communication stations using one or more antennas 901.
  • the communications circuitry 902 may include circuitry that can operate the physical layer (PHY) communications and/or media access control (MAC) communications for controlling access to the wireless medium, and/or any other communications layers for transmitting and receiving signals.
  • the communication station 900 may also include processing circuitry 906 and memory 908 arranged to perform the operations described herein. In some embodiments, the communications circuitry 902 and the processing circuitry 906 may be configured to perform operations detailed in FIGs. 2- 8.
  • the communications circuitry 902 may be arranged to contend for a wireless medium and configure frames or packets for communicating over the wireless medium.
  • the communications circuitry 902 may be arranged to transmit and receive signals.
  • the communications circuitry 902 may also include circuitry for modulation/demodulation, upconversion/downconversion, filtering, amplification, etc.
  • the processing circuitry 906 of the communication station 900 may include one or more processors.
  • two or more antennas 901 may be coupled to the communications circuitry 902 arranged for sending and receiving signals.
  • the memory 908 may store information for configuring the processing circuitry 906 to perform operations for configuring and transmitting message frames and performing the various operations described herein.
  • the memory 908 may include any type of memory, including non-transitory memory, for storing information in a form readable by a machine (e.g., a computer).
  • the memory 908 may include a computer-readable storage device, read-only memory (ROM), random-access memory (RAM), magnetic disk storage media, optical storage media, flash-memory devices and other storage devices and media.
  • the communication station 900 may be part of a portable wireless communication device, such as a personal digital assistant (PDA), a laptop or portable computer with wireless communication capability, a web tablet, a wireless telephone, a smartphone, a wireless headset, a pager, an instant messaging device, a digital camera, an access point, a television, a medical device (e.g., a heart rate monitor, a blood pressure monitor, etc.), a wearable computer device, or another device that may receive and/or transmit information wirelessly.
  • PDA personal digital assistant
  • laptop or portable computer with wireless communication capability such as a personal digital assistant (PDA), a laptop or portable computer with wireless communication capability, a web tablet, a wireless telephone, a smartphone, a wireless headset, a pager, an instant messaging device, a digital camera, an access point, a television, a medical device (e.g., a heart rate monitor, a blood pressure monitor, etc.), a wearable computer device, or another device that may receive and/or transmit information wirelessly.
  • the communication station 900 may include one or more antennas 901.
  • the antennas 901 may include one or more directional or omnidirectional antennas, including, for example, dipole antennas, monopole antennas, patch antennas, loop antennas, microstrip antennas, or other types of antennas suitable for transmission of RF signals.
  • a single antenna with multiple apertures may be used instead of two or more antennas.
  • each aperture may be considered a separate antenna.
  • MIMO multiple-input multiple-output
  • the antennas may be effectively separated for spatial diversity and the different channel characteristics that may result between each of the antennas and the antennas of a transmitting station.
  • the communication station 900 may include one or more of a keyboard, a display, a non-volatile memory port, multiple antennas, a graphics processor, an application processor, speakers, and other mobile device elements.
  • the display may be an LCD screen including a touch screen.
  • the communication station 900 is illustrated as having several separate functional elements, two or more of the functional elements may be combined and may be implemented by combinations of software-configured elements, such as processing elements including digital signal processors (DSPs), and/or other hardware elements.
  • processing elements including digital signal processors (DSPs), and/or other hardware elements.
  • DSPs digital signal processors
  • some elements may include one or more microprocessors, DSPs, field-programmable gate arrays (FPGAs), application specific integrated circuits (ASICs), radio-frequency integrated circuits (RFICs) and combinations of various hardware and logic circuitry for performing at least the functions described herein.
  • the functional elements of the communication station 900 may refer to one or more processes operating on one or more processing elements.
  • Certain embodiments may be implemented in one or a combination of hardware, firmware, and software. Other embodiments may also be implemented as instructions stored on a computer-readable storage device, which may be read and executed by at least one processor to perform the operations described herein.
  • a computer-readable storage device may include any non-transitory memory mechanism for storing information in a form readable by a machine (e.g., a computer).
  • a computer-readable storage device may include read-only memory (ROM), random-access memory (RAM), magnetic disk storage media, optical storage media, flash- memory devices, and other storage devices and media.
  • the communication station 900 may include one or more processors and may be configured with instructions stored on a computer-readable storage device memory.
  • FIG. 10 illustrates a block diagram of an example of a machine 1000 or system upon which any one or more of the techniques (e.g., methodologies) discussed herein may be performed.
  • the machine 1000 may operate as a standalone device or may be connected (e.g., networked) to other machines.
  • the machine 1000 may operate in the capacity of a server machine, a client machine, or both in server-client network environments.
  • the machine 1000 may act as a peer machine in peer-to-peer (P2P) (or other distributed) network environments.
  • P2P peer-to-peer
  • the machine 1000 may be a personal computer (PC), a tablet PC, a set- top box (STB), a personal digital assistant (PDA), a mobile telephone, a wearable computer device, a web appliance, a network router, a switch or bridge, or any machine capable of executing instructions (sequential or otherwise) that specify actions to be taken by that machine, such as a base station.
  • PC personal computer
  • PDA personal digital assistant
  • STB set- top box
  • mobile telephone a wearable computer device
  • web appliance e.g., a web appliance
  • network router e.g., a router, or bridge
  • switch or bridge any machine capable of executing instructions (sequential or otherwise) that specify actions to be taken by that machine, such as a base station.
  • machine shall also be taken to include any collection of machines that individually or jointly execute a set (or multiple sets) of instructions to perform any one or more of the methodologies discussed herein, such as cloud computing, software as a service (SaaS), or other computer
  • Examples, as described herein, may include or may operate on logic or a number of components, modules, or mechanisms.
  • Modules are tangible entities (e.g., hardware) capable of performing specified operations when operating.
  • a module includes hardware.
  • the hardware may be specifically configured to carry out a specific operation (e.g., hardwired).
  • the hardware may include configurable execution units (e.g., transistors, circuits, etc.) and a computer readable medium containing instructions where the instructions configure the execution units to carry out a specific operation when in operation. The configuring may occur under the direction of the executions units or a loading mechanism. Accordingly, the execution units are communicatively coupled to the computer-readable medium when the device is operating.
  • the execution units may be a member of more than one module.
  • the execution units may be configured by a first set of instructions to implement a first module at one point in time and reconfigured by a second set of instructions to implement a second module at a second point in time.
  • the machine 1000 may include a hardware processor 1002 (e.g., a central processing unit (CPU), a graphics processing unit (GPU), a hardware processor core, or any combination thereof), a main memory 1004 and a static memory 1006, some or all of which may communicate with each other via an interlink (e.g., bus) 1008.
  • the machine 1000 may further include a power management device 1032, a graphics display device 1010, an alphanumeric input device 1012 (e.g., a keyboard), and a user interface (UI) navigation device 1014 (e.g., a mouse).
  • a hardware processor 1002 e.g., a central processing unit (CPU), a graphics processing unit (GPU), a hardware processor core, or any combination thereof
  • main memory 1004 e.g., main memory
  • static memory 1006 e.g., static memory
  • the machine 1000 may further include a power management device 1032, a graphics display device 1010, an alphanumeric input device 1012 (e.
  • the graphics display device 1010, alphanumeric input device 1012, and UI navigation device 1014 may be a touch screen display.
  • the machine 1000 may additionally include a storage device (i.e., drive unit) 1016, a signal generation device 1018 (e.g., a speaker), a simultaneous transmissions over NDL device 1019, a network interface device/transceiver 1020 coupled to antenna(s) 1030, and one or more sensors 1028, such as a global positioning system (GPS) sensor, a compass, an accelerometer, or other sensor.
  • GPS global positioning system
  • the machine 1000 may include an output controller 1034, such as a serial (e.g., universal serial bus (USB), parallel, or other wired or wireless (e.g., infrared (IR), near field communication (NFC), etc.) connection to communicate with or control one or more peripheral devices (e.g., a printer, a card reader, etc.)).
  • a serial e.g., universal serial bus (USB), parallel, or other wired or wireless (e.g., infrared (IR), near field communication (NFC), etc.) connection to communicate with or control one or more peripheral devices (e.g., a printer, a card reader, etc.)).
  • USB universal serial bus
  • IR infrared
  • NFC near field communication
  • the storage device 1016 may include a machine readable medium 1022 on which is stored one or more sets of data structures or instructions 1024 (e.g., software) embodying or utilized by any one or more of the techniques or functions described herein.
  • the instructions 1024 may also reside, completely or at least partially, within the main memory 1004, within the static memory 1006, or within the hardware processor 1002 during execution thereof by the machine 1000.
  • one or any combination of the hardware processor 1002, the main memory 1004, the static memory 1006, or the storage device 1016 may constitute machine-readable media.
  • the simultaneous transmissions over NDL device 1019 may carry out or perform any of the operations and processes (e.g., the processes 800 and 850) described and shown above.
  • the simultaneous transmissions over NDL device 1019 may facilitate a capability bit to indicate if a device can handle the reception of simultaneous transmissions for packets of NDPs belonging to the same NDI pair. If a device indicates that it can handle the reception of simultaneous transmissions for packets of NDPs belonging to the same NDI pair in different channels, then the device may need to respond to the BA based on the reception in two different bands simultaneously.
  • a device e.g., device A
  • specific requirements may be imposed on the transmitter (e.g., device B) that may want to utilize the simultaneous transmissions in different channels to transmit to device A, where device A and device B have established an NDL and NDP.
  • the simultaneous transmissions over NDL device 1019 may facilitate that device B which transmits a data packet (e.g., a packet 1) of NDPs belonging to one NDI pair on channel X in an NDL time slot that is available in more than one channel (e.g., channel X and/or channel Y) may not transmit another data packet of NDPs belonging to the same NDI pair on a different channel Y in the NDL time slot until it receives the ACK/BA for packet 1, or packet 1 is discarded for retransmission.
  • the simultaneous transmissions over NDL device 1019 may facilitate that for an NDL time slot that is available in more than one channel simultaneously between device A and device B, device B may transmit the data packets of NDPs belonging to the same NDI pair to device A in only one channel of the NDL time slot.
  • the simultaneous transmissions over NDL device 1019 may facilitate that for an NDL CRB of a NAN device that is available in more than one channel simultaneously between device A and device B, device B shall transmit the data packets of NDPs belonging to the same NDI pair to device A in only one channel of the NDL CRB.
  • CRB means common resource blocks, which are the contiguous time slots in one channel.
  • the simultaneous transmissions over NDL device 1019 may facilitate that a device B has to aggregate the BA responses from multiple bands simultaneously for the next transmission in different channels.
  • the simultaneous transmissions over NDL device 1019 may accommodate the need of a dual-band device with time slots available on two different channels simultaneously to prepare the BA based on the reception in two different channels.
  • the capability bit may be introduced, and a specific rule is proposed when the device indicates it cannot handle simultaneous reception of NDPs belonging to the same NDI pair in different channels.
  • machine-readable medium 1022 is illustrated as a single medium, the term “machine-readable medium” may include a single medium or multiple media (e.g., a centralized or distributed database, and/or associated caches and servers) configured to store the one or more instructions 1024.
  • machine-readable medium may include a single medium or multiple media (e.g., a centralized or distributed database, and/or associated caches and servers) configured to store the one or more instructions 1024.
  • Various embodiments may be implemented fully or partially in software and/or firmware.
  • This software and/or firmware may take the form of instructions contained in or on a non-transitory computer-readable storage medium. Those instructions may then be read and executed by one or more processors to enable performance of the operations described herein.
  • the instructions may be in any suitable form, such as but not limited to source code, compiled code, interpreted code, executable code, static code, dynamic code, and the like.
  • Such a computer-readable medium may include any tangible non-transitory medium for storing information in a form readable by one or more computers, such as but not limited to read only memory (ROM); random access memory (RAM); magnetic disk storage media; optical storage media; a flash memory, etc.
  • machine-readable medium may include any medium that is capable of storing, encoding, or carrying instructions for execution by the machine 1000 and that cause the machine 1000 to perform any one or more of the techniques of the present disclosure, or that is capable of storing, encoding, or carrying data structures used by or associated with such instructions.
  • Non-limiting machine-readable medium examples may include solid-state memories and optical and magnetic media.
  • a massed machine -readable medium includes a machine-readable medium with a plurality of particles having resting mass.
  • massed machine-readable media may include non-volatile memory, such as semiconductor memory devices (e.g., electrically programmable read-only memory (EPROM), or electrically erasable programmable read- only memory (EEPROM)) and flash memory devices; magnetic disks, such as internal hard disks and removable disks; magneto-optical disks; and CD-ROM and DVD- ROM disks.
  • semiconductor memory devices e.g., electrically programmable read-only memory (EPROM), or electrically erasable programmable read- only memory (EEPROM)
  • EPROM electrically programmable read-only memory
  • EEPROM electrically erasable programmable read- only memory
  • the instructions 1024 may further be transmitted or received over a communications network 1026 using a transmission medium via the network interface device/transceiver 1020 utilizing any one of a number of transfer protocols (e.g., frame relay, internet protocol (IP), transmission control protocol (TCP), user datagram protocol (UDP), hypertext transfer protocol (HTTP), etc.).
  • transfer protocols e.g., frame relay, internet protocol (IP), transmission control protocol (TCP), user datagram protocol (UDP), hypertext transfer protocol (HTTP), etc.
  • Example communications networks may include a local area network (LAN), a wide area network (WAN), a packet data network (e.g., the Internet), mobile telephone networks (e.g., cellular networks), plain old telephone (POTS) networks, wireless data networks (e.g., Institute of Electrical and Electronics Engineers (IEEE) 802.11 family of standards known as Wi-Fi®, IEEE 802.16 family of standards known as WiMax®), IEEE 802.15.4 family of standards, and peer-to-peer (P2P) networks, among others.
  • the network interface device/transceiver 1020 may include one or more physical jacks (e.g., Ethernet, coaxial, or phone jacks) or one or more antennas to connect to the communications network 1026.
  • the network interface device/transceiver 1020 may include a plurality of antennas to wirelessly communicate using at least one of single-input multiple-output (SIMO), multiple-input multiple-output (MIMO), or multiple-input single-output (MISO) techniques.
  • transmission medium shall be taken to include any intangible medium that is capable of storing, encoding, or carrying instructions for execution by the machine 1000 and includes digital or analog communications signals or other intangible media to facilitate communication of such software.
  • the operations and processes described and shown above may be carried out or performed in any suitable order as desired in various implementations. Additionally, in certain implementations, at least a portion of the operations may be carried out in parallel. Furthermore, in certain implementations, less than or more than the operations described may be performed.
  • the word "exemplary” is used herein to mean “serving as an example, instance, or illustration.” Any embodiment described herein as “exemplary” is not necessarily to be construed as preferred or advantageous over other embodiments.
  • the terms “computing device,” “user device,” “communication station,” “station,” “handheld device,” “mobile device,” “wireless device” and “user equipment” (UE) as used herein refers to a wireless communication device such as a cellular telephone, a smartphone, a tablet, a netbook, a wireless terminal, a laptop computer, a femtocell, a high data rate (HDR) subscriber station, an access point, a printer, a point of sale device, an access terminal, or other personal communication system (PCS) device.
  • the device may be either mobile or stationary.
  • the term "communicate” is intended to include transmitting, or receiving, or both transmitting and receiving. This may be particularly useful in claims when describing the organization of data that is being transmitted by one device and received by another, but only the functionality of one of those devices is required to infringe the claim. Similarly, the bidirectional exchange of data between two devices (both devices transmit and receive during the exchange) may be described as “communicating,” when only the functionality of one of those devices is being claimed.
  • the term “communicating” as used herein with respect to a wireless communication signal includes transmitting the wireless communication signal and/or receiving the wireless communication signal.
  • a wireless communication unit which is capable of communicating a wireless communication signal, may include a wireless transmitter to transmit the wireless communication signal to at least one other wireless communication unit, and/or a wireless communication receiver to receive the wireless communication signal from at least one other wireless communication unit.
  • the term "access point" (AP) as used herein may be a fixed station.
  • An access point may also be referred to as an access node, a base station, an evolved node B (eNodeB), or some other similar terminology known in the art.
  • An access terminal may also be called a mobile station, user equipment (UE), a wireless communication device, or some other similar terminology known in the art.
  • Embodiments disclosed herein generally pertain to wireless networks. Some embodiments may relate to wireless networks that operate in accordance with one of the IEEE 802.11 standards.
  • Some embodiments may be used in conjunction with various devices and systems, for example, a personal computer (PC), a desktop computer, a mobile computer, a laptop computer, a notebook computer, a tablet computer, a server computer, a handheld computer, a handheld device, a personal digital assistant (PDA) device, a handheld PDA device, an onboard device, an off-board device, a hybrid device, a vehicular device, a non-vehicular device, a mobile or portable device, a consumer device, a non-mobile or non-portable device, a wireless communication station, a wireless communication device, a wireless access point (AP), a wired or wireless router, a wired or wireless modem, a video device, an audio device, an audio- video (A/V) device, a wired or wireless network, a wireless area network, a wireless video area network (WVAN), a local area network (LAN), a wireless LAN (WLAN), a personal area network (PAN), a wireless PAN
  • Some embodiments may be used in conjunction with one way and/or two-way radio communication systems, cellular radio-telephone communication systems, a mobile phone, a cellular telephone, a wireless telephone, a personal communication system (PCS) device, a PDA device which incorporates a wireless communication device, a mobile or portable global positioning system (GPS) device, a device which incorporates a GPS receiver or transceiver or chip, a device which incorporates an RFID element or chip, a multiple-input multiple-output (MIMO) transceiver or device, a single-input multiple-output (SIMO) transceiver or device, a multiple-input single-output (MISO) transceiver or device, a device having one or more internal antennas and/or external antennas, digital video broadcast (DVB) devices or systems, multi-standard radio devices or systems, a wired or wireless handheld device, e.g., a smartphone, a wireless application protocol (WAP) device, or the like.
  • WAP wireless application
  • Some embodiments may be used in conjunction with one or more types of wireless communication signals and/or systems following one or more wireless communication protocols, for example, radio frequency (RF), infrared (IR), frequency- division multiplexing (FDM), orthogonal FDM (OFDM), time-division multiplexing (TDM), time-division multiple access (TDMA), extended TDMA (E-TDMA), general packet radio service (GPRS), extended GPRS, code-division multiple access (CDMA), wideband CDMA (WCDMA), CDMA 2000, single-carrier CDMA, multi-carrier CDMA, multi-carrier modulation (MDM), discrete multi-tone (DMT), Bluetooth®, global positioning system (GPS), Wi-Fi, Wi-Max, ZigBee, ultra-wideband (UWB), global system for mobile communications (GSM), 2G, 2.5G, 3G, 3.5G, 4G, fifth generation (5G) mobile networks, 3GPP, long term evolution (LTE), LTE advanced, enhanced data rates for
  • the device may include memory and processing circuitry configured to identify a first NAN device within a NAN cluster, wherein the first NAN device is capable of performing a service; determine a NAN datalink (NDL) that is simultaneously available on a first channel and a second channel with the first NAN device; determine a NAN data path (NDP) of the NDL, wherein the NDP is associated with the service; cause to allocate a first NAN data interface (NDI) address associated with the NDP; identify a capability indication of the first NAN device to receive simultaneous transmissions; and cause to send, based on the capability indication, a first packet.
  • NDL NAN datalink
  • NDP NAN data path
  • NDI NAN data interface
  • the implementations may include one or more of the following features.
  • the capability indication may be set to 1 to indicate that the first NAN device is capable of receiving simultaneous transmissions for packets of the NDP belonging to an NDI of the NAN device.
  • the capability indication may be set to 0 to indicate that the first NAN device does not support receiving simultaneous transmissions for packets of the NDP.
  • the capability indication may be included in at least one of a device capability attribute, or an operation mode field.
  • the processing circuitry is further configured to determine a first time slot allocated for the NDL on the first channel and on the second channel; determine a second time slot allocated for the NDL on the first channel and on the second channel; and determine a common resource block (CRB) may include the first time slot and the second time slot.
  • CRB common resource block
  • To cause to send the first packet comprises the processing circuitry being further configured to identify the capability indication set to 0; and cause to send the first packet to the first NAN device on one of the first channel or the second channel within the CRB.
  • To cause to send the first packet comprises the processing circuitry being further configured to: identify the capability indication set to 0; and cause to send the first packet to the first NAN device on one of the first channel or the second channel within the first time slot.
  • To cause to send the first packet comprises the processing circuitry being further configured to: identify the capability indication set to 0; determine a traffic identifier (TID) associated with a block acknowledgment session of the NDP; and cause to send the first packet to the first NAN device on one of the first channel or the second channel within the CRB.
  • TID traffic identifier
  • the device may further include a transceiver configured to transmit and receive wireless signals.
  • the device may further include one or more antennas coupled to the transceiver.
  • a non- transitory computer-readable medium storing computer-executable instructions which when executed by one or more processors result in performing operations.
  • the operations may include identifying a request to set a capability bit to indicate support receiving simultaneous transmissions for packets of a NAN data path (NDP); causing to send the capability bit to a NAN device; causing to allocate a NAN data interface (NDI) address associated with the NDP; and identifying a packets received from the NAN device based on the capability bit.
  • NDP NAN data path
  • NDI NAN data interface
  • the implementations may include one or more of the following features.
  • the capability bit may be set to 1 to indicate a capability of receiving simultaneous transmissions for packets of the NDP belonging to the NDL
  • the capability bit may be set to 0 to indicate a no support for simultaneous transmissions for packets of the NDP.
  • the capability bit may be included in at least one of a device capability attribute, or an operation mode field.
  • the method may comprise identifying, by one or more processors, a NAN device within a NAN cluster, wherein the NAN device is capable of performing a service; determining a NAN datalink (NDL) that is simultaneously available on a first channel and a second channel with the NAN device; determining a NAN data path (NDP) of the NDL, wherein the NDP is associated with the service; causing to allocate a NAN data interface (NDI) address associated with the NDP; identifying a capability indication of the NAN device to receive simultaneous transmissions; and causing to send, based on the capability indication, a first packet.
  • NDL NAN datalink
  • NDP NAN data path
  • NDI NAN data interface
  • the implementations may include one or more of the following features.
  • the capability indication may be set to 1 to indicate that the NAN device is capable of receiving simultaneous transmissions for packets of the NDP belonging to an NDI of the NAN device.
  • the capability indication may be set to 0 to indicate that the NAN device does not support receiving simultaneous transmissions for packets of the NDP.
  • the capability indication may be included in at least one of a device capability attribute, or an operation mode field.
  • Causing to send the first packet comprises: identifying the capability indication set to 0; and causing to send the first packet to the first NAN device on one of the first channel or the second channel within the CRB.
  • the method may further comprise identifying the capability indication set to 0; and causing to send the first packet to the first NAN device on one of the first channel or the second channel within the first time slot.
  • the method may further comprise identifying the capability indication set to 0;determining a traffic identifier (TID) associated with a block acknowledgment session of the NDP; and causing to send the first packet to the first NAN device on one of the first channel or the second channel within the CRB.
  • TID traffic identifier
  • a non- transitory computer-readable medium storing computer-executable instructions which when executed by one or more processors result in performing operations.
  • the operations may include identifying, by one or more processors, a NAN device within a NAN cluster, wherein the NAN device is capable of performing a service; determining a NAN datalink (NDL) that is simultaneously available on a first channel and a second channel with the NAN device; determining a NAN data path (NDP) of the NDL, wherein the NDP is associated with the service; causing to allocate a NAN data interface (NDI) address associated with the NDP; identifying a capability indication of the NAN device to receive simultaneous transmissions; and causing to send, based on the capability indication, a first packet.
  • NDL NAN datalink
  • NDP NAN data path
  • NDI NAN data interface
  • the implementations may include one or more of the following features.
  • the capability indication may be set to 1 to indicate that the NAN device is capable of receiving simultaneous transmissions for packets of the NDP belonging to an NDI of the NAN device.
  • the capability indication may be set to 0 to indicate that the NAN device does not support receiving simultaneous transmissions for packets of the NDP.
  • the capability indication may be included in at least one of a device capability attribute, or an operation mode field.
  • Causing to send the first packet comprises the operations further may include identify the capability indication set to 0; and cause to send the first packet to the first NAN device on one of the first channel or the second channel within the CRB.
  • the operations may further comprise determining a first time slot allocated for the NDL on the first channel and on the second channel; determining a second time slot allocated for the NDL on the first channel and on the second channel; and determining a common resource block (CRB) may include the first time slot and the second time slot.
  • the operations may further comprise: identifying the capability indication set to 0; and causing to send the first packet to the first NAN device on one of the first channel or the second channel within the first time slot.
  • the operations may further comprise: identifying the capability indication set to 0; determining a traffic identifier (TID) associated with a block acknowledgment session of the NDP; and causing to send the first packet to the first NAN device on one of the first channel or the second channel within the CRB.
  • TID traffic identifier
  • the apparatus may comprise means for identifying, by one or more processors, a NAN device within a NAN cluster, wherein the NAN device is capable of performing a service; means for determining a NAN datalink (NDL) that is simultaneously available on a first channel and a second channel with the NAN device; means for determining a NAN data path (NDP) of the NDL, wherein the NDP is associated with the service; means for causing to allocate a NAN data interface (NDI) address associated with the NDP; means for identifying a capability indication of the NAN device to receive simultaneous transmissions; and causing to send, based on the capability indication, a first packet.
  • NDL NAN datalink
  • NDP NAN data path
  • NDI NAN data interface
  • the implementations may include one or more of the following features.
  • the capability indication may be set to 1 to indicate that the NAN device is capable of receiving simultaneous transmissions for packets of the NDP belonging to an NDI of the NAN device.
  • the capability indication may be set to 0 to indicate that the NAN device does not support receiving simultaneous transmissions for packets of the NDP.
  • the capability indication may be included in at least one of a device capability attribute, or an operation mode field.
  • Means for causing further comprises: means for identifying the capability indication set to 0; and means for cause to send the first packet to the first NAN device on one of the first channel or the second channel within the CRB.
  • the apparatus may further include means for determining a first time slot allocated for the NDL on the first channel and on the second channel; means for determining a second time slot allocated for the NDL on the first channel and on the second channel; and means for determining a common resource block (CRB) may include the first time slot and the second time slot.
  • the apparatus may further comprise means for identifying the capability indication set to 0; and means for causing to send the first packet to the first NAN device on one of the first channel or the second channel within the first time slot.
  • the apparatus may further comprise means for identifying the capability indication set to 0; means for determining a traffic identifier (TID) associated with a block acknowledgment session of the NDP; and means for causing to send the first packet to the first NAN device on one of the first channel or the second channel within the CRB.
  • TID traffic identifier
  • the device may include memory and processing circuitry configured to identify a request to set a capability bit to indicate support receiving simultaneous transmissions for packets of a NAN data path (NDP); cause to send the capability bit to a NAN device; cause to allocate a NAN data interface (NDI) address associated with the NDP; and identify a packets received from the NAN device based on the capability bit.
  • NDP NAN data path
  • NDI NAN data interface
  • the implementations may include one or more of the following features.
  • the capability bit may be set to 1 to indicate a capability of receiving simultaneous transmissions for packets of the NDP belonging to the NDI.
  • the capability bit may be set to 0 to indicate a no support for simultaneous transmissions for packets of the NDP.
  • the capability bit may be included in at least one of a device capability attribute, or an operation mode field.
  • the device may further include a transceiver configured to transmit and receive wireless signals.
  • the device may further include one or more antennas coupled to the transceiver.
  • the method may comprise identifying a request to set a capability bit to indicate support receiving simultaneous transmissions for packets of a NAN data path (NDP); causing to send the capability bit to a NAN device; causing to allocate a NAN data interface (NDI) address associated with the NDP; and identify a packets received from the NAN device based on the capability bit.
  • NDP NAN data path
  • NDI NAN data interface
  • the implementations may include one or more of the following features.
  • the capability bit may be set to 1 to indicate a capability of receiving simultaneous transmissions for packets of the NDP belonging to the NDI.
  • the capability bit may be set to 0 to indicate a no support for simultaneous transmissions for packets of the NDP.
  • the capability bit may be included in at least one of a device capability attribute, or an operation mode field.
  • the apparatus may comprise means for identifying a request to set a capability bit to indicate support receiving simultaneous transmissions for packets of a NAN data path (NDP); means for causing to send the capability bit to a NAN device; means for causing to allocate a NAN data interface (NDI) address associated with the NDP; and means for identify a packets received from the NAN device based on the capability bit.
  • NDP NAN data path
  • NDI NAN data interface
  • the implementations may include one or more of the following features.
  • the capability bit may be set to 1 to indicate a capability of receiving simultaneous transmissions for packets of the NDP belonging to the NDI.
  • the capability bit may be set to 0 to indicate a no support for simultaneous transmissions for packets of the NDP.
  • the capability bit may be included in at least one of a device capability attribute, or an operation mode field.
  • These computer-executable program instructions may be loaded onto a special- purpose computer or other particular machine, a processor, or other programmable data processing apparatus to produce a particular machine, such that the instructions that execute on the computer, processor, or other programmable data processing apparatus create means for implementing one or more functions specified in the flow diagram block or blocks.
  • These computer program instructions may also be stored in a computer-readable storage media or memory that may direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable storage media produce an article of manufacture including instruction means that implement one or more functions specified in the flow diagram block or blocks.
  • certain implementations may provide for a computer program product, comprising a computer- readable storage medium having a computer-readable program code or program instructions implemented therein, said computer-readable program code adapted to be executed to implement one or more functions specified in the flow diagram block or blocks.
  • the computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational elements or steps to be performed on the computer or other programmable apparatus to produce a computer-implemented process such that the instructions that execute on the computer or other programmable apparatus provide elements or steps for implementing the functions specified in the flow diagram block or blocks.
  • blocks of the block diagrams and flow diagrams support combinations of means for performing the specified functions, combinations of elements or steps for performing the specified functions and program instruction means for performing the specified functions. It will also be understood that each block of the block diagrams and flow diagrams, and combinations of blocks in the block diagrams and flow diagrams, may be implemented by special-purpose, hardware-based computer systems that perform the specified functions, elements or steps, or combinations of special-purpose hardware and computer instructions.
  • Conditional language such as, among others, “can,” “could,” “might,” or “may,” unless specifically stated otherwise, or otherwise understood within the context as used, is generally intended to convey that certain implementations could include, while other implementations do not include, certain features, elements, and/or operations. Thus, such conditional language is not generally intended to imply that features, elements, and/or operations are in any way required for one or more implementations or that one or more implementations necessarily include logic for deciding, with or without user input or prompting, whether these features, elements, and/or operations are included or are to be performed in any particular implementation.

Landscapes

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

Abstract

This disclosure describes systems, methods, and devices related to simultaneous transmission over a neighbor awareness networking data link (NDL). A device may identify a first NAN device within a NAN cluster, wherein the first NAN device is capable of performing a service. The device may determine a NAN datalink (NDL) that is simultaneously available on a first channel and a second channel with the first NAN device. The device may determine a NAN data path (NDP) of the NDL, wherein the NDP is associated with the service. The device may cause to allocate a first NAN data interface (NDI) address associated with the NDP. The device may identify a capability indication of the first NAN device to receive simultaneous transmissions. The device may cause to send a first packet based on the capability indication.

Description

SIMULTANEOUS TRANSMISSIONS OVER NEIGHBOR AWARENESS
NETWORKING DATA LINK
CROSS-REFERENCE TO RELATED APPLICATIONS
[0001] This application claims the benefit of U.S. Provisional Application No. 62/463,360, filed February 24, 2017, the disclosure of which is incorporated herein by reference as if set forth in full.
TECHNICAL FIELD
[0002] This disclosure generally relates to systems, methods, and devices for wireless communications and, more particularly, to simultaneous transmissions over a neighbor awareness networking data link (NDL).
BACKGROUND
[0003] Wireless devices are becoming widely prevalent. Recently, there has been a shift in technology to support direct wireless communications between wireless devices. Neighbor awareness networking (NAN) may refer to a Wi-Fi specification for device and/or service discovery and peer-to-peer communication. NAN may describe the formation of a cluster of devices (referred to as a NAN cluster) for devices in physical proximity to one another.
BRIEF DESCRIPTION OF THE DRAWINGS
[0004] FIG. 1 depicts a diagram illustrating an example network environment of a simultaneous transmissions over a neighbor awareness networking data link (NDL), in accordance with one or more example embodiments of the present disclosure.
[0005] FIG. 2 depicts an illustrative schematic diagram for a neighbor awareness networking (NAN) discovery window, in accordance with one or more example embodiments of the present disclosure.
[0006] FIG. 3 depicts an illustrative schematic diagram of an established NDL between two NAN devices, in accordance with one or more example embodiments of the present disclosure.
[0007] FIG. 4 depicts an illustrative schematic diagram for a packet transmission between two NAN devices, in accordance with one or more example embodiments of the present disclosure.
[0008] FIG. 5 depicts an illustrative schematic diagram for an NDL over two channels in accordance with one or more example embodiments of the present disclosure.
[0009] FIGs. 6A-6D depict illustrative schematic diagrams for simultaneous transmissions over an NDL, in accordance with one or more example embodiments of the present disclosure.
[0010] FIG. 7 depicts an illustrative schematic diagram for simultaneous transmissions over an NDL, in accordance with one or more example embodiments of the present disclosure.
[0011] FIG. 8 A depicts a flow diagram of an illustrative process for simultaneous transmissions over an NDL, in accordance with one or more example embodiments of the present disclosure.
[0012] FIG. 8B depicts a flow diagram of an illustrative process for simultaneous transmissions over an NDL, in accordance with one or more example embodiments of the present disclosure.
[0013] FIG. 9 depicts a functional diagram of an example communication station that may be suitable for use as a user device, in accordance with one or more example embodiments of the present disclosure.
[0014] FIG. 10 depicts a block diagram of an example machine upon which any of one or more techniques (e.g., methods) may be performed, in accordance with one or more example embodiments of the present disclosure.
DETAILED DESCRIPTION
[0015] The following description and the drawings sufficiently illustrate specific embodiments to enable those skilled in the art to practice them. Other embodiments may incorporate structural, logical, electrical, process, and other changes. Portions and features of some embodiments may be included in, or substituted for, those of other embodiments.
Embodiments set forth in the claims encompass all available equivalents of those claims.
[0016] As Wi-Fi technology increases in technical complexity and a broadening feature set, a common platform allowing interoperability may be necessary in order to support this increase. Additionally, the Wi-Fi alliance ensures that Wi-Fi products (e.g., user devices) from multiple manufacturers work well together.
[0017] Currently, a NAN device is allowed to indicate availability on two different channels simultaneously due to the capability of simultaneous operation on multiple bands. For example, more than one Further Availability Map attribute can be included in one NAN service discovery frame to enable a NAN device capable of concurrent multi-band operations to indicate further availability on more than one channel for the same time intervals. Each further availability attribute is identified by the value of the map ID field. [0018] One or more NAN devices may establish a NAN data link (NDL). The established NDL may allow for the exchange of one or more services between different NAN devices. Each service may have different requirements, such as security and address requirements. As a result, specific NAN data paths (NDPs) may be provided for different services. For example, these devices may have a video service, a printing service, or other service between them. All of these services may be transmitted on one NDL. A device is capable of conveying information associated with a service using an NDP. A NAN data interface (NDI) address may then be associated with one or more NDPs. Further, a NAN management interface (NMI) address is used to address all the NDIs and the NDPs that are established between NAN devices. In general, if a NAN device can do multi-band operation, the NAN device may have different hardware processing circuitry for different bands. If an NDP is established over the NDL, then due to a fixed NDI address used on both sides for one NDP there is only one block acknowledgment (BA) session between device A and device B for the established NDP or for a pair of NDI addresses associated with the established NDP. As a result, a NAN device then needs to handle one BA session in different processing circuitry. Generally this is difficult because a NAN device then needs to coordinate different processing circuitry to understand which packet has been sent by which band. Further, a NAN device also needs to prepare the BA bitmap in the BA response based on the reception in different processing circuitry in different bands simultaneously. It is possible that the NAN device still just treats the channel in each band separately and simply sends the same data in each band, which is not very efficient.
[0019] Example embodiments of the present disclosure relate to systems, methods, and devices for simultaneous transmissions over an NDL.
[0020] A device in a NAN cluster may agree when a discovery window (DW) occurs. A DW may be periodic and may have a predetermined length of time. A periodic DW allows devices to determine when a new DW will occur based on the DW interval. Within the DW interval, one or more time slots (slots) may be allocated that may be available for NAN devices in the NAN cluster to set up data paths and exchange data. These slots may have a predetermined length and may be assigned based on availability and usage.
[0021] During the DW, NAN devices may publish or broadcast their capabilities and services that they can perform using, for example, service discovery frames. Other NAN devices in the NAN cluster may then listen and determine which NAN device is offering a needed service.
[0022] The NAN devices in a NAN cluster may select a NAN device as an anchor master. The other NAN devices in the NAN cluster would then follow the time synchronization of the anchor master. The anchor master would, for example, determine and set the DW duration and the DW interval and periodicity. The other NAN devices would then follow that schedule in order to wake up (if they are powered off) to listen to what services are being advertised during a DW. It should be understood that there may be more than one anchor master in a NAN cluster.
[0023] A data path between two NAN devices may be set in order to exchange data associated with a service. This data path is referred to as a NAN data link (NDL). This NDL may be set up during one of the slots that were allocated for data exchanges. There may be one or more channels that may be used for the NDL. The NDL may be one or more negotiated resource blocks between a pair of NAN devices used for NAN operations. For example, one or more NDLs may form one or more slots (or resource blocks) agreed to between NAN devices in order to use a data link. The NDL may cover one or more slots that can be used to exchange data packets between NAN devices. The data may even be split between multiple channels. NAN devices may negotiate to determine and share their capabilities and services. Negotiation may occur either within a DW or outside that window, for example, in one of the slots.
[0024] A NAN device may have a number of services that it may offer. Each service may be associated with one NDP. Each NDP may be associated with a pair of NDI addresses from the transmitter and the receiver sides. It should be understood that the pair of NDI addresses may be the same for one or more NDPs.
[0025] NAN2 introduced the support for announcing a simultaneous availability of NDLs over multiple channels. That is a NAN2 device is capable of utilizing one or more channels for the same NDL. In one embodiment, a simultaneous transmissions over an NDL system may facilitate one or more simultaneous allocations of slots available for an NDL such that a NAN device is able to choose between multiple channels when communicating and exchanging data with another NAN device in a NAN cluster. This may be possible even when using different processing circuitry for different channels. That is one processing circuitry may be used for one channel independently of another processing circuitry used for another channel.
[0026] In one embodiment, a simultaneous transmissions over an NDL system may facilitate the use of a capability bit to indicate if a device can handle the reception of simultaneous transmissions for packets of NDPs belonging to the same NDI pair. If a device indicates that it can handle the reception of simultaneous transmissions for packets of NDPs belonging to the same NDI pair in different channels, then the device may need to respond with a BA based on the reception in two different bands simultaneously. If a receiving device indicates that it cannot handle the reception of simultaneous transmissions for packets of NDPs belonging to the same NDI pair in different channels, then specific requirements may be imposed on the transmitting device that may want to utilize the simultaneous transmissions in different channels to transmit to the receiving device, where the transmitting device and the receiving device have established NDL and NDP between them.
[0027] In one embodiment, the transmitting device which transmits a first data packet of NDPs belonging to one NDI pair on channel X in an NDL time slot that is available in more than one channel (e.g., channel X and/or Y) may not transmit another data packet of NDPs belonging to the same NDI pair on a different channel Y in the NDL time slot until it receives the acknowledgment for the first data packet, or the first data packet is discarded for retransmission. For example, this rule may allow the packets of NDPs belonging to the same NDI pair to be transmitted at a first slot on a first channel at a first time, then the packets of NDPs belonging to the same NDI pair to be transmitted at the first slot on a second channel at a second time.
[0028] In one embodiment, for an NDL time slot that is available in more than one channel simultaneously between the transmitting device and the receiving device, the transmitting device may transmit the data packets of NDPs belonging to the same NDI pair to the receiving device in only one channel of the NDL time slot. For example, this rule may allow the packets of NDPs belonging to the same NDI pair to be transmitted at a first slot on a first channel, on a second slot on a second channel, and on a third slot on the first channel.
[0029] In one embodiment, for an NDL common resource block (CRB) of a NAN device that is available in more than one channel simultaneously between the receiving device and the transmitting device, the transmitting device may transmit the data packets of NDPs belonging to the same NDI pair to device A in only one channel of the NDL CRB. A CRB may indicate contiguous time slots in one channel.
[0030] In one embodiment, a transmitting device has to aggregate the BA responses from multiple bands simultaneously for the next transmission in different channels.
[0031] In one embodiment, the proposed rule of transmitting NDP packets over NDL accommodates the need of a dual-band device with time slots available on two different channels simultaneously to prepare the BA based on the reception in the two different channels. The capability bit may be introduced, and specific rule is proposed when the device indicates it cannot handle simultaneous reception of NDPs belonging to the same NDI pair in different channels.
[0032] The above descriptions are for purposes of illustration and are not meant to be limiting. Numerous other examples, configurations, processes, etc., may exist, some of which are described in detail below. Example embodiments will now be described with reference to the accompanying figures.
[0033] FIG. 1 is a network diagram illustrating an example wireless network 100 of a simultaneous transmissions over an NDL, in accordance with one or more example embodiments of the present disclosure. Wireless network 100 can include one or more user devices 120 (e.g., 122, 124, 126, or 128), which may communicate in accordance with wireless standards, such as the IEEE 802.11 communication standards. For example, two or more wireless devices may perform connectivity procedures with one another in order to set up Wi-Fi data sessions, according to some example embodiments of the present disclosure. In the example of FIG. 1, a wireless communication channel may be established between two or more wireless devices (e.g., user device(s) 120), where a first user device 120 may correspond to a service seeker, and a second user device 120 may correspond to a service advertiser. A service advertiser may be a wireless device that may advertise and provide one or more of these services over a wireless communication channel. The user device(s) 120 may be wireless devices that are non-stationary and do not have fixed locations. A service seeker may be a wireless device that is seeking certain services, such as printing, playing content, sending, docking, etc.
[0034] In some embodiments, the user devices 120 can include one or more computer systems similar to that of the functional diagram of FIG. 9 and/or the example machine/system of FIG. 10.
[0035] One or more illustrative user device(s) 120 may be operable by one or more user(s) 110. The user device(s) 120 (e.g., 122, 124, 126, or 128) may include any suitable processor-driven user device including, but not limited to, a desktop user device, a laptop user device, a server, a router, a switch, an access point, a smartphone, a tablet, a wearable wireless device (e.g., a bracelet, a watch, glasses, a ring, etc.), and so forth.
[0036] Any of the user devices 120 (e.g., 122, 124, 126, or 128) may be configured to communicate with each other and any other component of the wireless network 100 directly and/or via one or more communications networks 130, wirelessly or wired. Any of the communications networks 130 may include, but not be limited to, any one of a combination of different types of suitable communications networks such as, for example, broadcasting networks, cable networks, public networks (e.g., the Internet), private networks, wireless networks, cellular networks, or any other suitable private and/or public networks. Further, any of the communications networks 130 may have any suitable communication range associated therewith and may include, for example, global networks (e.g., the Internet), metropolitan area networks (MANs), wide area networks (WANs), local area networks (LANs), or personal area networks (PANs). In addition, any of the communications networks 130 may include any type of medium over which network traffic may be carried including, but not limited to, coaxial cable, twisted-pair wire, optical fiber, a hybrid fiber coaxial (HFC) medium, microwave terrestrial transceivers, radio frequency communication mediums, white space communication mediums, ultra-high frequency communication mediums, satellite communication mediums, or any combination thereof.
[0037] Any of the user devices 120 (e.g., 122, 124, 126, or 128) may include one or more communications antennas. Communications antennas may be any suitable type of antenna corresponding to the communications protocols used by the user device(s) 120. Some non- limiting examples of suitable communications antennas include Wi-Fi antennas, IEEE 802.11 family of standards compatible antennas, directional antennas, non-directional antennas, dipole antennas, folded dipole antennas, patch antennas, MIMO antennas, or the like. The communications antenna may be communicatively coupled to a radio component to transmit and/or receive signals, such as communications signals, to and/or from the user devices 120 (e.g., 122, 124, 126, or 128).
[0038] Any of the user devices 120 (e.g., 122, 124, 126, or 128) may include any suitable radio and/or transceiver for transmitting and/or receiving radio frequency (RF) signals in the bandwidth and/or channels corresponding to the communications protocols utilized by any of the user device(s) 120 to communicate with each other. The radio components may include hardware and/or software to modulate and/or demodulate communications signals according to pre-established transmission protocols. The radio components may further have hardware and/or software instructions to communicate via one or more Wi-Fi and/or Wi-Fi Direct protocols, as standardized by the Institute of Electrical and Electronics Engineers (IEEE) 802.11 standards. In certain example embodiments, the radio component, in cooperation with the communications antennas, may be configured to communicate via 2.4 GHz channels (e.g., 802.11b, 802.11g, 802.11η), 5 GHz channels (e.g., 802.11η, 802.1 lac), or 60 GHz channels (e.g., 802.1 lad, 802. Hay). In some embodiments, non- Wi-Fi protocols may be used for communications between devices, such as Bluetooth, dedicated short-range communication (DSRC), ultra-high frequency (UHF) (e.g., IEEE 802.1 laf, IEEE 802.22), white band frequency (e.g., white spaces), or other packetized radio communications. The radio component may include any known receiver and baseband suitable for communicating via the communications protocols. The radio component may further include a low noise amplifier (LNA), additional signal amplifiers, an analog-to-digital (A/D) converter, one or more buffers, and a digital baseband.
[0039] In NAN, wireless devices may communicate with each other without the need for an AP. Without an AP to transmit information that facilitates communication among the wireless devices, however, the wireless devices may not know when they will communicate with another device and with which device they will communicate. Therefore, a device may be required to use power and processing resources to listen for data packets and to determine if those data packets are meant for the device. Instead of a device constantly listening for and receiving data packets without knowing if they are meant for the device, the device may need to be woken up to establish communication with another device.
[0040] The existing NAN standard establishes a process for waking up a NAN device for service advertising and finding interesting service in the proximity, but has not established a dedicated data path between NAN devices. For example, a NAN data path (NDP) may be a data connection established between a pair of NAN devices for a service instance. NAN2 enhancements to the NAN standard may include the establishment of a dedicated NDP between NAN2 devices in a NAN data cluster (NDC), which may allow for improved management of device resources. The dedicated NDP may be specific to connected NAN2 devices in an NDC, and the NDC may be a collection of NAN data links with a same NAN data cluster base schedule. In addition, because NAN2 devices may communicate in very high throughput environments that may include significant communication traffic, NAN2 devices may benefit from the communication and use of channel protection information to reduce interference, for example.
[0041] A NAN network comprises all NAN devices that share a common set of NAN parameters that include: the time period between consecutive discovery windows, the time duration of the discovery windows, the beacon interval, and the NAN discovery channel(s).
[0042] A NAN cluster is a collection of NAN devices that share a common set of NAN parameters and are synchronized to the same discovery window schedule. A NAN device may send multicast NAN service discovery frames directly to other NAN devices within range in the same NAN cluster during the discovery window. A NAN device may send unicast NAN service discovery frames directly to any other NAN device within range in the same NAN cluster during the discovery window.
[0043] A NAN2 device may be capable of operating in a NAN2 network and other types of networks, including a NAN network, a WLAN infrastructure, Independent Base Service Set (IBSS), Wi-Fi Direct, Bluetooth, and the like. A NAN2 device may send multicast NAN2 service discovery frames directly to other NAN2 devices within range in the same NAN2 cluster during the discovery window (DW). A NAN2 device may also send unicast NAN2 service discovery frames directly to any other NAN2 device within range in the same NAN2 cluster during the DW.
[0044] 802.11 data frames/packets carry protocols and data from higher layers within the frame/packet body. A data frame/packet, for example, could be carrying the data associated with a video that a user is viewing. Other frames/packets that stations may use for management and control may carry specific information regarding the wireless link in the frame/packet body. For example, a beacon frame may contain the service set identifier (SSID), the timestamp, and other pertinent information regarding the access point.
[0045] In one embodiment, and with reference to FIG. 1, the user devices 120 may be NAN2 devices that may perform connectivity procedures with one another in order to set up a NAN2 data path (NDP). The NDP does not exist in the existing NAN standard. An established NAN data link (NDL) may allow for the exchange of multiple services between different NAN devices. Each service may have different requirements, such as security and address requirements. As a result, specific NDPs may be provided for different services. In one embodiment, the user devices 120 may utilize an NDP negotiation procedure defined to enable data transmission between two NAN2 devices. This negotiation procedure may be an association process (similar to an access point-station (AP-STA) process in a typical Wi-Fi infrastructure. In Wi-Fi, a station which exchanges data (e.g., a transmitting station) with another station (e.g., receiving station), should ensure that a potential interferer would not transmit at the same time and interfere with the data exchange. For this goal, a protection mechanism may be deployed by the transmitting station to defer any transmission by an interferer for a known period of time.
[0046] FIG. 2 depicts an illustrative schematic diagram for a NAN discovery window.
[0047] NAN is a peer-to-peer discovery and communication protocol, which builds a synchronized timing and slots among stations such that stations can discover each other and perform data communication in specific slots. For example, the stations can first discover each other in a discovery window (e.g., DW 204) then two stations can set up a NAN data path (NDP) and agree on one or more slots that may be established for a NAN data ink (NDL) to facilitate data communication between the two NAN devices. A DW may be periodic and may have a predetermined length of time. Further, a DW may be periodic such that the devices are able to determine when a new DW will occur based on the DW interval. Within the DW interval, there may also be slots that are available between NAN devices in the NAN cluster to set up data paths and exchange data. These slots may have a predetermined length and may be assigned based on availability and usage. These slots may be resource blocks to be used as negotiated and agreed to between NAN devices. The NDL may be one or more negotiated resource blocks (slots) between a pair of NAN devices used for NAN operations. For example, one or more NDLs may form one or more slots (or resource blocks) agreed to between NAN devices in order to use a data link
[0048] Referring to FIG. 2, there is shown a DW interval 212 between a DW pair (e.g., DW 204 and DW 208). There may be one or more slots 206 that may be available for allocation based on the needed resources to complete a data exchange associated with the service between two or more NAN devices. DW 204 and DW 208 may have a predetermined length that may be set by an 802.11 standard or may be set by a system administrator or based on a user preference. In other embodiments, the DW may be configurable. In one example, a DW length may be equal to 16 time units in the time domain. A time unit (TU) may be a unit of time equal to 1024 microseconds. A slot may also have a length that may be set by an 802.11 standard, or may be set by a system administrator or based on a user preference. In other embodiments, the slot may be configurable. In one example, a slot length may be equal to 16 TUs.
[0049] It is understood that the above descriptions are for purposes of illustration and are not meant to be limiting.
[0050] FIG. 3 depicts an illustrative schematic diagram of an established NDL between two NAN devices.
[0051] Referring to FIG. 3, there is shown two channels (e.g., channel 1 and channel 2) that may be available for two NAN devices that may be exchanging data associated with one or more services. These two devices may have performed discovery of their respective services during a discovery window 304, which may be repeated periodically with a DW interval 312. That is, DW 304 may be followed by a DW 308 after the passage of the DW interval 312. Within the DW interval 312, there may be one or more NDLs 306 associated with the NAN devices within a NAN cluster in order to exchange data between the devices that have negotiated an exchange of services. Since there are two channels in this example that may be available to the NAN devices, the NDLs 306 may be allocated on these two channels.
[0052] In general, if a NAN device can perform multi-band operation, the NAN device may have different hardware processing circuitry for different bands. If an NDP is established over the NDL, then due to the fixed NDI address used on both sides for one NDP there is only one block acknowledgment (BA) session between device A and device B for the established NDP. As a result, a NAN device then needs to handle one BA session in different processing circuitry. Generally this is difficult because a NAN device then needs to coordinate different processing circuitry to understand which packet has been sent by which band.
[0053] FIG. 4 depicts an illustrative schematic diagram for a packet transmission between two NAN devices.
[0054] Referring to FIG. 4, there is shown an established NDL 406 between a first NAN device (e.g., NAN Dl 402) and a second NAN device (e.g., NAN D2 404).
[0055] An established NDL may be used for multiple services (e.g., service 1, service 2, and service 3) between the two NAN devices. Different services may have different requirements like security and addresses. As a result, specific NDPs can be built for different services (e.g., NDP1, NDP2, and NDP3 associated with service 1, service 2, and service 3, respectively). The address that is used for an NDP is called a NAN data interface (NDI) address. In this example, NDI 1.1 and NDI 2.1 are addresses used for NDP1 (for service 1) and NDP2 (for service 2). Similarly, NDI 1.2 and NDI 2.2 are addresses used for NDP3 (for service 3).
[0056] The address that is used for discovery before setting up the NDP is called the NAN management interface address (NMI). A NAN device may maintain an NMI address, and may maintain one or more NDI addresses. Each interface address, either an NMI or an NDI address, is not required to be globally unique and may be locally managed. A NAN device may use the NMI or the NDI as the transmitter address (TA) for all management frames sent within a NAN cluster. A NAN device may use the NMI or NDI of the intended recipient NAN device as the receiver address (RA) for all unicast management frames sent within a NAN cluster, and may use the broadcast address as the receiver address (RA) for management frames destined for all NAN devices within a NAN cluster. When a NAN device sets up an NDP with a peer NAN device, it may select an NDI for the NDP. The NAN device may use the NDI as the transmitter address (TA) for all data frames associated with the NDP. A NAN device may use the same NDI for multiple different NDPs. or it may use different NDIs for different NDPs. For example, a NAN device may use different NDIs for NDPs with different security requirements. An NDI may be the same as the NMI. An NDL is uniquely identified by the NMIs of the two NAN devices that established the NDL. In the example of FIG. 4, NMI 1 is shown to be established on the transmitting device side for NAN Dl 402, and NMI 2 is shown to be established on the receiving device side for NAN D2 404.
[0057] The NDL may one or more negotiated resource blocks (slots) between a pair of NAN devices used for NAN operations. For example, one or more NDLs may form one or more slots (or resource blocks) agreed to between the NAN devices in order to use a data link.
[0058] It is understood that the above descriptions are for purposes of illustration and are not meant to be limiting.
[0059] FIG. 5 depicts an illustrative schematic diagram for an NDL over two channels.
[0060] Referring to FIG. 5, there is shown two NAN devices (e.g., user device 522 and user device 524) that may be communicating within a NAN cluster to exchange data associated with one or more services. The user device 522 is shown to comprise processing circuitries 503 and 505, and the user device 524 is shown to comprise processing circuitries 507 and 509. The processing circuities 503 and 507 are associated with the channel 504, and the processing circuitries 505 and 509 are associated with the channel 506. These two devices (e.g., user device 522 and user device 524) may have performed discovery of their respective services during a discovery window 508, which may be repeated periodically at a DW interval 510. That is, DW 508 may be followed by another DW after the passage of the DW interval 510. Within the DW interval 510, there may be one or more NDLs associated with the devices within the NAN cluster in order to exchange data between the devices that have negotiated an exchange of services. Since there are two channels in this example that may be available to the NAN devices, the NDLs may be allocated simultaneously on channel 504 and channel 506, during time slots 512, 514, 515, etc.
[0061] The NDL may cover one or more slots that can be used to exchange data packets between NAN devices. Between two NAN devices, there may be only one NDL and within each NDL, there may be one or more NDPs to be used for one or more services between the NAN devices.
[0062] A slot is defined on a per channel basis. A NAN station may be capable of transmitting data streams on two channels simultaneously.
[0063] A block acknowledgement (BA) is used by a device to acknowledge the receipt of a data packet. There will be only one BA session between two NAN devices for an established NDP. The reason for having only one BA session is that the BA is tied to a transmitter address and a receiver address. There is only pair of addresses (e.g., NDI addresses associated with an NDP from the transmitter and the receiver NAN devices) tied to each NDP, which means that there is only one BA session tied to the pair of addresses. The problem is that if there is only one BA session, however, the NAN devices are available on multiple channels simultaneously. When a device is available on two channels simultaneously, the device will need additional hardware such as additional processing circuitry to maintain and manage communication on each channel. For example, an NDL may be available on two different channels between two NAN devices. In that case, the transmitter may send a first set of packets on the first channel, which may be handled by a first processing circuitry on the transmitting device and a first processing circuitry on the receiving device, and second set of packets on the second channel, which may be handled by a second processing circuitry on the transmitting device and a second processing circuitry on the receiving device. The problem arises when the block acknowledgment to the first set of packets is received by the transmitting device on the first processing circuitry, leaving the second processing circuitry unaware of this first set of packets being received. Similarly, the block acknowledgment to the second set of packets may be received by the second processing circuitry of the transmitting device, leaving the first processing circuitry unaware of the second set of packets being received.
[0064] Although FIG. 5 shows only two channels, it should be understood that an NDL may be available on additional channels simultaneously, resulting in the problem outlined above being exacerbated.
[0065] FIGs. 6A-6D depict illustrative schematic diagrams for simultaneous transmissions over an NDL, in accordance with one or more example embodiments of the present disclosure.
[0066] Referring to FIG. 6 A, there is shown two NAN devices (e.g., user device 622 and user device 624) that may be communicating within a NAN cluster to exchange data associated with one or more services. The user device 622 is shown to comprise processing circuitries 603 and 605, and the user device 624 is shown to comprise processing circuitries 607 and 609. The processing circuities 603 and 607 are associated with the channel 604, and the processing circuitries 605 and 609 are associated with the channel 606.
[0067] In one embodiment, a simultaneous transmissions over an NDL system may introduce a capability bit to indicate if a receiving device can handle the reception of simultaneous transmissions for packets of NDPs belonging to the same NDI pair.
[0068] In one embodiment, a simultaneous transmissions over an NDL system may determine how to handle the packets (e.g., data packets or management packets) of NDPs belonging to the same NDI pair that may need to be transmitted from the user device 622 to the user device 624 on an NDL time slot that is available in more than one channel when the device 624 indicates, using the capability bit, that it cannot handle the reception of simultaneous transmissions for packets of NDPs belonging to the same NDI pair in different channels.
[0069] In one embodiment, in option 1 as shown in FIG. 6A, a simultaneous transmissions over the NDL system may facilitate that the user device 622 that transmits packet 608 (or a group of packets) for NDPs belonging to one NDI pair on a channel 604 in an NDL time slot (e.g., slot 611) that is available in more than one channel (e.g., channels 604 and 606) may not transmit packet 612 (or a group of packets) for NDPs belonging to the same NDI pair on channel 606 in the NDL time slot 611 until it receives the acknowledgment (e.g., BA 610) for the packet 608, or the packet 608 is discarded for retransmission. That is, a slot (e.g., slot 611) may be divided into various portions of time. In the example of FIG. 6A, time slot 611 is divided into a time portion 613 and a time portion 615. In this case, this rule allows the packets 608 of the NDPs belonging to the same NDI pair to be transmitted at slot 611 on channel 604 during the time portion 613, then the packets 612 of the NDPs belonging to the same NDI pair to be transmitted at slot 611 on channel 606 at the time portion 615.
[0070] In one embodiment, in option 2 as shown in FIG. 6B, for an NDL time slot that is available in more than one channel simultaneously between the user device 622 and the user device 624, the user device 622 may transmit the packets 608 for the NDPs belonging to the same NDI pair to the user device 624 in only one channel of the NDL time slot. That is, although the opportunity exists for the user device 622 to transmit some of its packets on channel 604 and the rest of its packets on channel 606, during the NDL time slot 631 that is available simultaneously on channels 604 and 606, the user device 622 is required to send packet 608 during the time slot 631 only on channel 604. Similarly, packets 612 may only be sent on channel 606 without the opportunity to split these packets over channels 604 and 606 during the time slot 632, which is available simultaneously for user device 222 to transmit on. This forces the BA 610 associated with packet 608 to be received by the user device 222 on the same channel 604. Similarly, the BA 614 associated with packet 612 will be received by the user device 222 on the same channel 606. It should be noted that although the BA 610 is shown to be received by the user device 222 during the time slot 631 , there may be situations where the BA 610 is received in a different time slot. The same is true for BA 614. It should also be understood that this rule disallows the example in option 1.
[0071] In one embodiment, in option 3 as shown in FIG. 6C, for an NDL common resource block of a NAN device that is available in more than one channel simultaneously between a transmitting device (e.g., user device 622) and a receiving device (e.g., user device 624), the transmitting device may transmit the packets of NDPs belonging to the same NDI pair to the receiving device in only one channel of the NDL common resource block (CRB). An NDL may be allocated one or more CRBs in order to accommodate the NDP between the two NAN devices (e.g., the user device 622 and the user device 624). The NAN devices may establish an NDL to ensure they share sufficient NDL CRBs to accommodate the NDP. A CRB may comprise contiguous time slots in one channel. In some scenarios, the CRBs on one channel may overlap with CRBs on another channel. That is, the NAN devices may be allocated to a CRB on two or more channels simultaneously.
[0072] In the example of FIG. 6C, there is shown CRBs 641 and 642 that may be allocated for an NDL. CRBs 641 and 642 may be available in channel 604 and channel 606 simultaneously between the user device 622 and the user device 624. In this case, CRB 641 may be comprised of two time slots 643 and 644 while CRB 642 may be comprised of one time slot 645. In this example, packet 608 (which may be comprised of one or more packets) is associated with an NDP belonging to the same NDI pair. Hence, based on the option of FIG. 6C, the user device 622 may transmit packet 608 using CRB 641 only on channel 604, even though CRB 641 spans over two time slots 643 and 644. Similarly, the user device 622 may transmit packet 612 using CRB 642 only on channel 606. The acknowledgments (e.g., BA 610 and BA 614), for packet 608 and packet 612, may then be received on their respective channels.
[0073] For example, this may allow the packets of NDPs belonging to the same NDI pair to be transmitted in CRB at slots 643 and 644 on channel 604 and slot 645 on channel 606. It should be understood that this rule disallows the examples in options 1 and 2.
[0074] In one embodiment and in an additional option, the user device 622 may aggregate the BA responses from multiple bands simultaneously for next transmission in different channels.
[0075] In one embodiment, and referring to FIG. 6D, a simultaneous transmissions over an NDL system may facilitate that if a device (e.g., user device 624) indicates (e.g., using the capability bit) that it can handle the reception of simultaneous transmissions for packets of NDPs belonging to the same NDI pair in different channels from a transmitting device (e.g., the user device 622), then the receiving device (e.g., the user device 624) may report a BA bitmap (e.g., BA bitmaps 656 and 658 during time slot 653) based on the simultaneous reception in different channels for packets of NDPs (e.g., packets 652 on channel 604 and packets 654 on channel 606 during time slot 651) belonging to the same NDI pair. It is understood that the above descriptions are for purposes of illustration and are not meant to be limiting.
[0076] FIG. 7 depicts an illustrative schematic diagram for simultaneous transmissions over an NDL, in accordance with one or more example embodiments of the present disclosure.
[0077] Referring to FIG. 7, there is shown two NAN devices (e.g., user device 722 and user device 724) that may be communicating within a NAN cluster to exchange data associated with one or more services. The user device 722 is shown to comprise processing circuitries 703 and 705, and the user device 724 is shown to comprise processing circuitries 707 and 709. The processing circuities 703 and 707 are associated with the channel 704, and the processing circuitries 705 and 709 are associated with the channel 706.
[0078] In one embodiment, the various options for capability indications outlined in FIGs. 6A-6D may be relaxed by limiting the rules to only simultaneous transmissions for data packets of NDPs belonging to the same NDI pair as opposed to other types of packets. The reason is that only one BA session is associated with the transmissions of data packets and acknowledgments of data packets. Since management frames are not in the same category as data frames, there is no need to apply the above limitations to management packets. Further, a management frame will need an acknowledgment to the frame as opposed to a block acknowledgment to one or more packets. Hence, if the processing circuitry 703 of the user device 722 receives a management frame, the management frame may be entirely received by that processing circuitry 703 and may not need to be split between channels 704 and 706. Therefore, the above options in FIGs. 6A-6D may be limited to data packets.
[0079] Similar to FIG. 6D, if a receiving device indicates (e.g., using the capability bit) that it can handle the reception of simultaneous transmissions for data packets of NDPs belonging to the same NDI pair in different channels from a transmitting device, then the receiving device may report a BA bitmap based on the simultaneous reception in different channels for data packets of NDPs belonging to the same NDI pair.
[0080] In one embodiment, the above capability indication may be further relaxed by limiting the rule to only simultaneous transmissions for data packets of NDPs belonging to the same NDI pair and the same unicast traffic identifier (TID). The reason is that a BA session is generally TID specific.
[0081] In one embodiment, if the user device 724 indicates that it cannot handle the reception of simultaneous transmissions for packets of NDPs belonging to the same NDI pair and same TID in different channels, one or more options may be implemented.
[0082] In one embodiment, in option 1, a transmitting device (e.g., user device 722) which transmits a data packet of NDPs belonging to one NDI pair and one TID on a channel (e.g., channel 704) in an NDL time slot that is available in more than one channel (e.g., channels 704 and 706) may not transmit another data packet of NDPs belonging to the same NDI pair and the same TID on a different channel (e.g., channel 706) in the NDL time slot until it receives the ACK/BA for the packet, or in case the packet is discarded for retransmission.
[0083] In one embodiment, in option 2, for an NDL time slot that is available in more than one channel simultaneously between a transmitting device and a receiving device, the transmitting device may transmit the data packets of NDPs belonging to the same NDI pair and the same TID to the transmitting device in only one channel of the NDL time slot.
[0084] In one embodiment, in option 3, for an NDL CRB (e.g., CRB 711) that is available in more than one channel (e.g., channels 704 and 706) simultaneously between the user device 722 and the user device 724, the user device 722 may transmit the data packets of NDPs belonging to the same NDI pair and the same TID (e.g., packets 708) to the user device 724 in only one channel of the NDL CRB. For example, the user device 722 may establish an NDL with the user device 724 such that the packets of NDPs belonging to a same NDI pair and the same TID (e.g., packet 708 made up of packets 1, 2, 3, and 4 having a TID 1) may be sent on channel 704 of the CRB 711. Continuing with this example, and as shown in FIG. 7, other packets associated with the same NDP belonging to a same NDI pair and a same TID would have to be sent on a different channel and a different CRB (e.g., CRB 713). That is, packet 716 (which may be made up of packets 5, 6, 7, and 8 associated with TID 1) may be sent on channel 706 of the CRB 713. However, other packets (e.g., packet 712 made up of packets 1, 2, 3, 4) having a different TID than TID 1, may be sent on a different channel simultaneously with packet 708. For example, packet 712 may be sent simultaneously on channel 706 of the CRB 711.
[0085] In one embodiment, in option 4, the transmitting device may have to aggregate the BA responses from multiple bands simultaneously for next transmission in different channels. If the receiving device indicates that it can handle the reception of simultaneous transmissions for data packets of NDPs belonging to the same NDI pair and the same TID in different channels from the transmitting device, then the receiving device may report the BA bitmap based on the simultaneous reception in different channels for data packets of NDPs belonging to the same NDI pair and the same TID. For example, the user device 724 may send a BA 710 in response to packets 708 for TID 1, where the BA 710 is sent on channel 704 during CRB 711. Also, the user device 724 may send BA 714 to acknowledge the reception of packets 712 for TID 2 on channel 706 during the CRB 711. However, the BA 718 for TID 1 acknowledging packets 716 for TID1 may be sent in a different CRB (e.g., CRB 713). It is understood that the above descriptions are for purposes of illustration and are not meant to be limiting.
[0086] In one embodiment, the capability bit may be set to 1 to indicate that the device is capable of receiving simultaneous transmissions for packets of NDPs belonging to the same NDI pair in different channels. Otherwise, the capability bit may be set to 0.
[0087] In one embodiment, to indicate the capability, the indication of capability can be put in the device capability attribute. An example is shown in Table 1. One bit in an operation mode field may be used for this purpose. An example is shown in Table 2. One bit in a capabilities field can be used for this purpose. An example is shown in Table 1. It should be noted that the example only elaborates the case for the restriction not limited to the same TID.
[0088] Table 1: Device Capability Attribute
Figure imgf000020_0001
[0089] Table 2: Operation Mode Field Format
Figure imgf000021_0001
[0090] It is understood that the above descriptions are for purposes of illustration and are not meant to be limiting.
[0091] FIG. 8 A illustrates a flow diagram of an illustrative process 800 for simultaneous transmissions over an NDL system, in accordance with one or more example embodiments of the present disclosure.
[0092] At block 802, a device (e.g., the user device(s) 120 of FIG. 1) may identify a first NAN device within a NAN cluster, wherein the first NAN device is capable of performing a service. For example, the device in a NAN cluster may agree when a DW occurs. A DW may be periodic and may have a predetermined length of time. A periodic DW allows devices to determine when a new DW will occur based on the DW interval. Within the DW interval, one or more time slots (slots) may be allocated that may be available for NAN devices in the NAN cluster to set up data paths and exchange data. These slots may have a predetermined length and may be assigned based on availability and usage.
[0093] During the DW, the NAN devices may publish or broadcast their capabilities and services that they can perform using, for example, service discovery frames. Other NAN devices in the NAN cluster may then listen and determine which NAN device is offering a needed service.
[0094] At block 804, the device may determine an NDL that is simultaneously available on a first channel and a second channel with the first NAN device. A data path between the two NAN devices may be set in order to exchange data associated with a service. This data path is referred to as an NDL. This NDL may be set up during one of the slots that were allocated for data exchanges. There may be one or more channels that may be used for the NDL. The NDL may be one or more negotiated resource blocks between a pair of NAN devices used for NAN operations. For example, one or more NDLs may form one or more slots (or resource blocks) agreed to between the NAN devices in order to use a data link. The NDL may cover one or more slots that can be used to exchange data packets between NAN devices. The data may even be split between multiple channels. NAN devices may negotiate to determine and share their capabilities and services. Negotiation may occur either within a DW or outside that window, for example, in one of the slots.
[0095] At block 806, the device may determine a NAN data path (NDP) of the NDL, wherein the NDP is associated with the service. A NAN device may have a number of services to offer. Each service may be associated with one NDP. Each NDP may be associated with a pair of NDI addresses from the transmitter and the receiver sides. It should be understood that the pair of NDI addresses may be the same for one or more NDPs.
[0096] At block 808, the device may cause to allocate a first NDI address associated with the NDP. A NAN device may have a number of services to offer.
[0097] At block 810, the device may identify a capability indication of the first NAN device to receive simultaneous transmissions. A capability bit may be used to indicate if a device can handle the reception of simultaneous transmissions for packets of NDPs belonging to the same NDI pair. If a device indicates that it can handle the reception of simultaneous transmissions for packets of NDPs belonging to the same NDI pair in different channels, then the device may need to respond with a BA based on the reception in two different bands simultaneously. If a receiving device indicates that it cannot handle the reception of simultaneous transmissions for packets of NDPs belonging to the same NDI pair in different channels, then specific requirements may be imposed on the transmitting device that may want to utilize the simultaneous transmissions in different channels to transmit to the receiving device, where the transmitting device and the receiving device have established an NDL and NDP between them.
[0098] At block 812, the device may cause to send a first packet based on the capability indication. If a receiving device indicates that it cannot handle the reception of simultaneous transmissions for packets of NDPs belonging to the same NDI pair in different channels, then specific requirements may be imposed on the transmitting device that may want to utilize the simultaneous transmissions in different channels to transmit to the receiving device, where the transmitting device and the receiving device have established an NDL and NDP between them. The transmitting device which transmits a first data packet of NDPs belonging to one NDI pair on channel X in an NDL time slot that is available in more than one channel (e.g., channel X and/or Y) may not transmit another data packet of NDPs belonging to the same NDI pair on a different channel Y in the NDL time slot until it receives the acknowledgment for the first data packet, or the first data packet is discarded for retransmission. For example, this rule may allow the packets of NDPs belonging to the same NDI pair to be transmitted at a first slot on a first channel at a first time, then the packets of NDPs belonging to the same NDI pair to be transmitted at the first slot on a second channel at a second time. For an NDL time slot that is available in more than one channel simultaneously between the transmitting device and the receiving device, the transmitting device may transmit the data packets of NDPs belonging to the same NDI pair to the receiving device in only one channel of the NDL time slot. For example, this rule may allow the packets of NDPs belonging to the same NDI pair to be transmitted at a first slot on a first channel, on a second slot on a second channel, and on a third slot on the first channel. For an NDL common resource block (CRB) of a NAN device that is available in more than one channel simultaneously between the receiving device and the transmitting device, the transmitting device may transmit the data packets of NDPs belonging to the same NDI pair to device A in only one channel of the NDL CRB. A CRB may indicate contiguous time slots in one channel. A transmitting device has to aggregate the BA responses from multiple bands simultaneously for the next transmission in different channels. It is understood that the above descriptions are for purposes of illustration and are not meant to be limiting.
[0099] FIG. 8B illustrates a flow diagram of illustrative process 850 for simultaneous transmissions over an NDL system, in accordance with one or more example embodiments of the present disclosure.
[00100] At block 852, a device (e.g., the user device(s) 120 of FIG. 1) may identify a request to set a capability bit to indicate support for receiving simultaneous transmissionss of packets in an NDP. During the DW, the NAN devices may publish or broadcast their capabilities and services that they can perform using, for example, service discovery frames. Other NAN devices in the NAN cluster may then listen and determine which NAN device is offering a needed service. [00101] At block 854, the device may cause to send the capability bit to a NAN device. A data path between two NAN devices may be set up in order to exchange data associated with a service. This data path is referred to as an NDL. This NDL may be set up during one of the slots that were allocated for data exchanges. There may be one or more channels that may be used for the NDL. The NDL may be one or more negotiated resource blocks between a pair of NAN devices used for NAN operations. For example, one or more NDLs may form one or more slots (or resource blocks) agreed to between the NAN devices in order to use a data link. The NDL may cover one or more slots that can be used to exchange data packets between NAN devices. The data may even be split between multiple channels. NAN devices may negotiate to determine and share their capabilities and services. Negotiation may occur either within a DW or outside that window, for example, in one of the slots.
[00102] At block 856, the device may cause to allocate an NDI address associated with the NDP. Each service may be associated with one NDP. Each NDP may be associated with a pair of NDI addresses from the transmitter and the receiver sides. It should be understood that the pair of NDI addresses may be the same for one or more NDPs.
[00103] At block 858, the device may identify packets received from the NAN device based on the capability bit. If a receiving device indicates that it cannot handle the reception of simultaneous transmissions for packets of NDPs belonging to the same NDI pair in different channels, then specific requirements may be imposed on the transmitting device that may want to utilize the simultaneous transmissions in different channels to transmit to the receiving device, where the transmitting device and the receiving device have established an NDL and NDP between them. The transmitting device which transmits a first data packet of NDPs belonging to one NDI pair on channel X in an NDL time slot that is available in more than one channel (e.g., channel X and/or channel Y) may not transmit another data packet of NDPs belonging to the same NDI pair on a different channel Y in the NDL time slot until it receives the acknowledgment for the first data packet, or the first data packet is discarded for retransmission. For example, this rule may allow the packets of NDPs belonging to the same NDI pair to be transmitted at a first slot on a first channel at a first time, then the packets of NDPs belonging to the same NDI pair to be transmitted at the first slot on a second channel at a second time. For an NDL time slot that is available in more than one channel simultaneously between the transmitting device and the receiving device, the transmitting device may transmit the data packets of NDPs belonging to the same NDI pair to the receiving device in only one channel of the NDL time slot. For example, this rule may allow the packets of NDPs belonging to the same NDI pair to be transmitted at a first slot on a first channel, on a second slot on a second channel, and on a third slot on the first channel. For an NDL common resource block (CRB) of a NAN device that is available in more than one channel simultaneously between the receiving device and the transmitting device, the transmitting device may transmit the data packets of NDPs belonging to the same NDI pair to device A in only one channel of the NDL CRB. A CRB may indicate contiguous time slots in one channel. A transmitting device has to aggregate the BA responses from multiple bands simultaneously for the next transmission in different channels.
[00104] It is understood that the above descriptions are for purposes of illustration and are not meant to be limiting.
[00105] FIG. 9 shows a functional diagram of an exemplary communication station 900 in accordance with some embodiments. In one embodiment, FIG. 9 illustrates a functional block diagram of a communication station that may be suitable for use as a user device(s) 120 (FIG. 1) in accordance with some embodiments. The communication station 900 may also be suitable for use as a handheld device, a mobile device, a cellular telephone, a smartphone, a tablet, a netbook, a wireless terminal, a laptop computer, a wearable computer device, a femtocell, a high data rate (HDR) subscriber station, an access point, an access terminal, or other personal communication system (PCS) device.
[00106] The communication station 900 may include communications circuitry 902 and a transceiver 910 for transmitting and receiving signals to and from other communication stations using one or more antennas 901. The communications circuitry 902 may include circuitry that can operate the physical layer (PHY) communications and/or media access control (MAC) communications for controlling access to the wireless medium, and/or any other communications layers for transmitting and receiving signals. The communication station 900 may also include processing circuitry 906 and memory 908 arranged to perform the operations described herein. In some embodiments, the communications circuitry 902 and the processing circuitry 906 may be configured to perform operations detailed in FIGs. 2- 8.
[00107] In accordance with some embodiments, the communications circuitry 902 may be arranged to contend for a wireless medium and configure frames or packets for communicating over the wireless medium. The communications circuitry 902 may be arranged to transmit and receive signals. The communications circuitry 902 may also include circuitry for modulation/demodulation, upconversion/downconversion, filtering, amplification, etc. In some embodiments, the processing circuitry 906 of the communication station 900 may include one or more processors. In other embodiments, two or more antennas 901 may be coupled to the communications circuitry 902 arranged for sending and receiving signals. The memory 908 may store information for configuring the processing circuitry 906 to perform operations for configuring and transmitting message frames and performing the various operations described herein. The memory 908 may include any type of memory, including non-transitory memory, for storing information in a form readable by a machine (e.g., a computer). For example, the memory 908 may include a computer-readable storage device, read-only memory (ROM), random-access memory (RAM), magnetic disk storage media, optical storage media, flash-memory devices and other storage devices and media.
[00108] In some embodiments, the communication station 900 may be part of a portable wireless communication device, such as a personal digital assistant (PDA), a laptop or portable computer with wireless communication capability, a web tablet, a wireless telephone, a smartphone, a wireless headset, a pager, an instant messaging device, a digital camera, an access point, a television, a medical device (e.g., a heart rate monitor, a blood pressure monitor, etc.), a wearable computer device, or another device that may receive and/or transmit information wirelessly.
[00109] In some embodiments, the communication station 900 may include one or more antennas 901. The antennas 901 may include one or more directional or omnidirectional antennas, including, for example, dipole antennas, monopole antennas, patch antennas, loop antennas, microstrip antennas, or other types of antennas suitable for transmission of RF signals. In some embodiments, instead of two or more antennas, a single antenna with multiple apertures may be used. In these embodiments, each aperture may be considered a separate antenna. In some multiple-input multiple-output (MIMO) embodiments, the antennas may be effectively separated for spatial diversity and the different channel characteristics that may result between each of the antennas and the antennas of a transmitting station.
[00110] In some embodiments, the communication station 900 may include one or more of a keyboard, a display, a non-volatile memory port, multiple antennas, a graphics processor, an application processor, speakers, and other mobile device elements. The display may be an LCD screen including a touch screen.
[00111] Although the communication station 900 is illustrated as having several separate functional elements, two or more of the functional elements may be combined and may be implemented by combinations of software-configured elements, such as processing elements including digital signal processors (DSPs), and/or other hardware elements. For example, some elements may include one or more microprocessors, DSPs, field-programmable gate arrays (FPGAs), application specific integrated circuits (ASICs), radio-frequency integrated circuits (RFICs) and combinations of various hardware and logic circuitry for performing at least the functions described herein. In some embodiments, the functional elements of the communication station 900 may refer to one or more processes operating on one or more processing elements.
[00112] Certain embodiments may be implemented in one or a combination of hardware, firmware, and software. Other embodiments may also be implemented as instructions stored on a computer-readable storage device, which may be read and executed by at least one processor to perform the operations described herein. A computer-readable storage device may include any non-transitory memory mechanism for storing information in a form readable by a machine (e.g., a computer). For example, a computer-readable storage device may include read-only memory (ROM), random-access memory (RAM), magnetic disk storage media, optical storage media, flash- memory devices, and other storage devices and media. In some embodiments, the communication station 900 may include one or more processors and may be configured with instructions stored on a computer-readable storage device memory.
[00113] FIG. 10 illustrates a block diagram of an example of a machine 1000 or system upon which any one or more of the techniques (e.g., methodologies) discussed herein may be performed. In other embodiments, the machine 1000 may operate as a standalone device or may be connected (e.g., networked) to other machines. In a networked deployment, the machine 1000 may operate in the capacity of a server machine, a client machine, or both in server-client network environments. In an example, the machine 1000 may act as a peer machine in peer-to-peer (P2P) (or other distributed) network environments. The machine 1000 may be a personal computer (PC), a tablet PC, a set- top box (STB), a personal digital assistant (PDA), a mobile telephone, a wearable computer device, a web appliance, a network router, a switch or bridge, or any machine capable of executing instructions (sequential or otherwise) that specify actions to be taken by that machine, such as a base station. Further, while only a single machine is illustrated, the term "machine" shall also be taken to include any collection of machines that individually or jointly execute a set (or multiple sets) of instructions to perform any one or more of the methodologies discussed herein, such as cloud computing, software as a service (SaaS), or other computer cluster configurations.
[00114] Examples, as described herein, may include or may operate on logic or a number of components, modules, or mechanisms. Modules are tangible entities (e.g., hardware) capable of performing specified operations when operating. A module includes hardware. In an example, the hardware may be specifically configured to carry out a specific operation (e.g., hardwired). In another example, the hardware may include configurable execution units (e.g., transistors, circuits, etc.) and a computer readable medium containing instructions where the instructions configure the execution units to carry out a specific operation when in operation. The configuring may occur under the direction of the executions units or a loading mechanism. Accordingly, the execution units are communicatively coupled to the computer-readable medium when the device is operating. In this example, the execution units may be a member of more than one module. For example, under operation, the execution units may be configured by a first set of instructions to implement a first module at one point in time and reconfigured by a second set of instructions to implement a second module at a second point in time.
[00115] The machine (e.g., computer system) 1000 may include a hardware processor 1002 (e.g., a central processing unit (CPU), a graphics processing unit (GPU), a hardware processor core, or any combination thereof), a main memory 1004 and a static memory 1006, some or all of which may communicate with each other via an interlink (e.g., bus) 1008. The machine 1000 may further include a power management device 1032, a graphics display device 1010, an alphanumeric input device 1012 (e.g., a keyboard), and a user interface (UI) navigation device 1014 (e.g., a mouse). In an example, the graphics display device 1010, alphanumeric input device 1012, and UI navigation device 1014 may be a touch screen display. The machine 1000 may additionally include a storage device (i.e., drive unit) 1016, a signal generation device 1018 (e.g., a speaker), a simultaneous transmissions over NDL device 1019, a network interface device/transceiver 1020 coupled to antenna(s) 1030, and one or more sensors 1028, such as a global positioning system (GPS) sensor, a compass, an accelerometer, or other sensor. The machine 1000 may include an output controller 1034, such as a serial (e.g., universal serial bus (USB), parallel, or other wired or wireless (e.g., infrared (IR), near field communication (NFC), etc.) connection to communicate with or control one or more peripheral devices (e.g., a printer, a card reader, etc.)).
[00116] The storage device 1016 may include a machine readable medium 1022 on which is stored one or more sets of data structures or instructions 1024 (e.g., software) embodying or utilized by any one or more of the techniques or functions described herein. The instructions 1024 may also reside, completely or at least partially, within the main memory 1004, within the static memory 1006, or within the hardware processor 1002 during execution thereof by the machine 1000. In an example, one or any combination of the hardware processor 1002, the main memory 1004, the static memory 1006, or the storage device 1016 may constitute machine-readable media.
[00117] The simultaneous transmissions over NDL device 1019 may carry out or perform any of the operations and processes (e.g., the processes 800 and 850) described and shown above. For example, the simultaneous transmissions over NDL device 1019 may facilitate a capability bit to indicate if a device can handle the reception of simultaneous transmissions for packets of NDPs belonging to the same NDI pair. If a device indicates that it can handle the reception of simultaneous transmissions for packets of NDPs belonging to the same NDI pair in different channels, then the device may need to respond to the BA based on the reception in two different bands simultaneously. If a device (e.g., device A) indicates that it cannot handle the reception of simultaneous transmissions for packets of NDPs belonging to the same NDI pair in different channels, then specific requirements may be imposed on the transmitter (e.g., device B) that may want to utilize the simultaneous transmissions in different channels to transmit to device A, where device A and device B have established an NDL and NDP.
[00118] The simultaneous transmissions over NDL device 1019 may facilitate that device B which transmits a data packet (e.g., a packet 1) of NDPs belonging to one NDI pair on channel X in an NDL time slot that is available in more than one channel (e.g., channel X and/or channel Y) may not transmit another data packet of NDPs belonging to the same NDI pair on a different channel Y in the NDL time slot until it receives the ACK/BA for packet 1, or packet 1 is discarded for retransmission.
[00119] The simultaneous transmissions over NDL device 1019 may facilitate that for an NDL time slot that is available in more than one channel simultaneously between device A and device B, device B may transmit the data packets of NDPs belonging to the same NDI pair to device A in only one channel of the NDL time slot.
[00120] The simultaneous transmissions over NDL device 1019 may facilitate that for an NDL CRB of a NAN device that is available in more than one channel simultaneously between device A and device B, device B shall transmit the data packets of NDPs belonging to the same NDI pair to device A in only one channel of the NDL CRB. CRB means common resource blocks, which are the contiguous time slots in one channel. The simultaneous transmissions over NDL device 1019 may facilitate that a device B has to aggregate the BA responses from multiple bands simultaneously for the next transmission in different channels.
[00121] The simultaneous transmissions over NDL device 1019 may accommodate the need of a dual-band device with time slots available on two different channels simultaneously to prepare the BA based on the reception in two different channels. The capability bit may be introduced, and a specific rule is proposed when the device indicates it cannot handle simultaneous reception of NDPs belonging to the same NDI pair in different channels.
[00122] It is understood that the above are only a subset of what the simultaneous transmissions over NDL device 1019 may be configured to perform and that other functions included throughout this disclosure may also be performed by the simultaneous transmissions over NDL device 1019.
[00123] While the machine-readable medium 1022 is illustrated as a single medium, the term "machine-readable medium" may include a single medium or multiple media (e.g., a centralized or distributed database, and/or associated caches and servers) configured to store the one or more instructions 1024.
[00124] Various embodiments may be implemented fully or partially in software and/or firmware. This software and/or firmware may take the form of instructions contained in or on a non-transitory computer-readable storage medium. Those instructions may then be read and executed by one or more processors to enable performance of the operations described herein. The instructions may be in any suitable form, such as but not limited to source code, compiled code, interpreted code, executable code, static code, dynamic code, and the like. Such a computer-readable medium may include any tangible non-transitory medium for storing information in a form readable by one or more computers, such as but not limited to read only memory (ROM); random access memory (RAM); magnetic disk storage media; optical storage media; a flash memory, etc.
[00125] The term "machine-readable medium" may include any medium that is capable of storing, encoding, or carrying instructions for execution by the machine 1000 and that cause the machine 1000 to perform any one or more of the techniques of the present disclosure, or that is capable of storing, encoding, or carrying data structures used by or associated with such instructions. Non-limiting machine-readable medium examples may include solid-state memories and optical and magnetic media. In an example, a massed machine -readable medium includes a machine-readable medium with a plurality of particles having resting mass. Specific examples of massed machine-readable media may include non-volatile memory, such as semiconductor memory devices (e.g., electrically programmable read-only memory (EPROM), or electrically erasable programmable read- only memory (EEPROM)) and flash memory devices; magnetic disks, such as internal hard disks and removable disks; magneto-optical disks; and CD-ROM and DVD- ROM disks.
[00126] The instructions 1024 may further be transmitted or received over a communications network 1026 using a transmission medium via the network interface device/transceiver 1020 utilizing any one of a number of transfer protocols (e.g., frame relay, internet protocol (IP), transmission control protocol (TCP), user datagram protocol (UDP), hypertext transfer protocol (HTTP), etc.). Example communications networks may include a local area network (LAN), a wide area network (WAN), a packet data network (e.g., the Internet), mobile telephone networks (e.g., cellular networks), plain old telephone (POTS) networks, wireless data networks (e.g., Institute of Electrical and Electronics Engineers (IEEE) 802.11 family of standards known as Wi-Fi®, IEEE 802.16 family of standards known as WiMax®), IEEE 802.15.4 family of standards, and peer-to-peer (P2P) networks, among others. In an example, the network interface device/transceiver 1020 may include one or more physical jacks (e.g., Ethernet, coaxial, or phone jacks) or one or more antennas to connect to the communications network 1026. In an example, the network interface device/transceiver 1020 may include a plurality of antennas to wirelessly communicate using at least one of single-input multiple-output (SIMO), multiple-input multiple-output (MIMO), or multiple-input single-output (MISO) techniques. The term "transmission medium" shall be taken to include any intangible medium that is capable of storing, encoding, or carrying instructions for execution by the machine 1000 and includes digital or analog communications signals or other intangible media to facilitate communication of such software. The operations and processes described and shown above may be carried out or performed in any suitable order as desired in various implementations. Additionally, in certain implementations, at least a portion of the operations may be carried out in parallel. Furthermore, in certain implementations, less than or more than the operations described may be performed.
[00127] The word "exemplary" is used herein to mean "serving as an example, instance, or illustration." Any embodiment described herein as "exemplary" is not necessarily to be construed as preferred or advantageous over other embodiments. The terms "computing device," "user device," "communication station," "station," "handheld device," "mobile device," "wireless device" and "user equipment" (UE) as used herein refers to a wireless communication device such as a cellular telephone, a smartphone, a tablet, a netbook, a wireless terminal, a laptop computer, a femtocell, a high data rate (HDR) subscriber station, an access point, a printer, a point of sale device, an access terminal, or other personal communication system (PCS) device. The device may be either mobile or stationary.
[00128] As used within this document, the term "communicate" is intended to include transmitting, or receiving, or both transmitting and receiving. This may be particularly useful in claims when describing the organization of data that is being transmitted by one device and received by another, but only the functionality of one of those devices is required to infringe the claim. Similarly, the bidirectional exchange of data between two devices (both devices transmit and receive during the exchange) may be described as "communicating," when only the functionality of one of those devices is being claimed. The term "communicating" as used herein with respect to a wireless communication signal includes transmitting the wireless communication signal and/or receiving the wireless communication signal. For example, a wireless communication unit, which is capable of communicating a wireless communication signal, may include a wireless transmitter to transmit the wireless communication signal to at least one other wireless communication unit, and/or a wireless communication receiver to receive the wireless communication signal from at least one other wireless communication unit.
[00129] As used herein, unless otherwise specified, the use of the ordinal adjectives "first," "second," "third," etc., to describe a common object, merely indicates that different instances of like objects are being referred to and are not intended to imply that the objects so described must be in a given sequence, either temporally, spatially, in ranking, or in any other manner.
[00130] The term "access point" (AP) as used herein may be a fixed station. An access point may also be referred to as an access node, a base station, an evolved node B (eNodeB), or some other similar terminology known in the art. An access terminal may also be called a mobile station, user equipment (UE), a wireless communication device, or some other similar terminology known in the art. Embodiments disclosed herein generally pertain to wireless networks. Some embodiments may relate to wireless networks that operate in accordance with one of the IEEE 802.11 standards.
[00131] Some embodiments may be used in conjunction with various devices and systems, for example, a personal computer (PC), a desktop computer, a mobile computer, a laptop computer, a notebook computer, a tablet computer, a server computer, a handheld computer, a handheld device, a personal digital assistant (PDA) device, a handheld PDA device, an onboard device, an off-board device, a hybrid device, a vehicular device, a non-vehicular device, a mobile or portable device, a consumer device, a non-mobile or non-portable device, a wireless communication station, a wireless communication device, a wireless access point (AP), a wired or wireless router, a wired or wireless modem, a video device, an audio device, an audio- video (A/V) device, a wired or wireless network, a wireless area network, a wireless video area network (WVAN), a local area network (LAN), a wireless LAN (WLAN), a personal area network (PAN), a wireless PAN (WPAN), and the like.
[00132] Some embodiments may be used in conjunction with one way and/or two-way radio communication systems, cellular radio-telephone communication systems, a mobile phone, a cellular telephone, a wireless telephone, a personal communication system (PCS) device, a PDA device which incorporates a wireless communication device, a mobile or portable global positioning system (GPS) device, a device which incorporates a GPS receiver or transceiver or chip, a device which incorporates an RFID element or chip, a multiple-input multiple-output (MIMO) transceiver or device, a single-input multiple-output (SIMO) transceiver or device, a multiple-input single-output (MISO) transceiver or device, a device having one or more internal antennas and/or external antennas, digital video broadcast (DVB) devices or systems, multi-standard radio devices or systems, a wired or wireless handheld device, e.g., a smartphone, a wireless application protocol (WAP) device, or the like.
[00133] Some embodiments may be used in conjunction with one or more types of wireless communication signals and/or systems following one or more wireless communication protocols, for example, radio frequency (RF), infrared (IR), frequency- division multiplexing (FDM), orthogonal FDM (OFDM), time-division multiplexing (TDM), time-division multiple access (TDMA), extended TDMA (E-TDMA), general packet radio service (GPRS), extended GPRS, code-division multiple access (CDMA), wideband CDMA (WCDMA), CDMA 2000, single-carrier CDMA, multi-carrier CDMA, multi-carrier modulation (MDM), discrete multi-tone (DMT), Bluetooth®, global positioning system (GPS), Wi-Fi, Wi-Max, ZigBee, ultra-wideband (UWB), global system for mobile communications (GSM), 2G, 2.5G, 3G, 3.5G, 4G, fifth generation (5G) mobile networks, 3GPP, long term evolution (LTE), LTE advanced, enhanced data rates for GSM Evolution (EDGE), or the like. Other embodiments may be used in various other devices, systems, and/or networks.
[00134] According to example embodiments of the disclosure, there may be a neighbor awareness networking (NAN) device. The device may include memory and processing circuitry configured to identify a first NAN device within a NAN cluster, wherein the first NAN device is capable of performing a service; determine a NAN datalink (NDL) that is simultaneously available on a first channel and a second channel with the first NAN device; determine a NAN data path (NDP) of the NDL, wherein the NDP is associated with the service; cause to allocate a first NAN data interface (NDI) address associated with the NDP; identify a capability indication of the first NAN device to receive simultaneous transmissions; and cause to send, based on the capability indication, a first packet.
[00135] The implementations may include one or more of the following features. The capability indication may be set to 1 to indicate that the first NAN device is capable of receiving simultaneous transmissions for packets of the NDP belonging to an NDI of the NAN device. The capability indication may be set to 0 to indicate that the first NAN device does not support receiving simultaneous transmissions for packets of the NDP. The capability indication may be included in at least one of a device capability attribute, or an operation mode field. The processing circuitry is further configured to determine a first time slot allocated for the NDL on the first channel and on the second channel; determine a second time slot allocated for the NDL on the first channel and on the second channel; and determine a common resource block (CRB) may include the first time slot and the second time slot. To cause to send the first packet comprises the processing circuitry being further configured to identify the capability indication set to 0; and cause to send the first packet to the first NAN device on one of the first channel or the second channel within the CRB. To cause to send the first packet comprises the processing circuitry being further configured to: identify the capability indication set to 0; and cause to send the first packet to the first NAN device on one of the first channel or the second channel within the first time slot. To cause to send the first packet comprises the processing circuitry being further configured to: identify the capability indication set to 0; determine a traffic identifier (TID) associated with a block acknowledgment session of the NDP; and cause to send the first packet to the first NAN device on one of the first channel or the second channel within the CRB. The device may further include a transceiver configured to transmit and receive wireless signals. The device may further include one or more antennas coupled to the transceiver.
[00136] According to example embodiments of the disclosure, there may be a non- transitory computer-readable medium storing computer-executable instructions which when executed by one or more processors result in performing operations. The operations may include identifying a request to set a capability bit to indicate support receiving simultaneous transmissions for packets of a NAN data path (NDP); causing to send the capability bit to a NAN device; causing to allocate a NAN data interface (NDI) address associated with the NDP; and identifying a packets received from the NAN device based on the capability bit. [00137] The implementations may include one or more of the following features. The capability bit may be set to 1 to indicate a capability of receiving simultaneous transmissions for packets of the NDP belonging to the NDL The capability bit may be set to 0 to indicate a no support for simultaneous transmissions for packets of the NDP. The capability bit may be included in at least one of a device capability attribute, or an operation mode field.
[00138] According to example embodiments of the disclosure, there may be a method. The method may comprise identifying, by one or more processors, a NAN device within a NAN cluster, wherein the NAN device is capable of performing a service; determining a NAN datalink (NDL) that is simultaneously available on a first channel and a second channel with the NAN device; determining a NAN data path (NDP) of the NDL, wherein the NDP is associated with the service; causing to allocate a NAN data interface (NDI) address associated with the NDP; identifying a capability indication of the NAN device to receive simultaneous transmissions; and causing to send, based on the capability indication, a first packet.
[00139] The implementations may include one or more of the following features. The capability indication may be set to 1 to indicate that the NAN device is capable of receiving simultaneous transmissions for packets of the NDP belonging to an NDI of the NAN device. The capability indication may be set to 0 to indicate that the NAN device does not support receiving simultaneous transmissions for packets of the NDP. The capability indication may be included in at least one of a device capability attribute, or an operation mode field. Causing to send the first packet comprises: identifying the capability indication set to 0; and causing to send the first packet to the first NAN device on one of the first channel or the second channel within the CRB. The method may further comprise identifying the capability indication set to 0; and causing to send the first packet to the first NAN device on one of the first channel or the second channel within the first time slot. The method may further comprise identifying the capability indication set to 0;determining a traffic identifier (TID) associated with a block acknowledgment session of the NDP; and causing to send the first packet to the first NAN device on one of the first channel or the second channel within the CRB.
[00140] According to example embodiments of the disclosure, there may be a non- transitory computer-readable medium storing computer-executable instructions which when executed by one or more processors result in performing operations. The operations may include identifying, by one or more processors, a NAN device within a NAN cluster, wherein the NAN device is capable of performing a service; determining a NAN datalink (NDL) that is simultaneously available on a first channel and a second channel with the NAN device; determining a NAN data path (NDP) of the NDL, wherein the NDP is associated with the service; causing to allocate a NAN data interface (NDI) address associated with the NDP; identifying a capability indication of the NAN device to receive simultaneous transmissions; and causing to send, based on the capability indication, a first packet.
[00141] The implementations may include one or more of the following features. The capability indication may be set to 1 to indicate that the NAN device is capable of receiving simultaneous transmissions for packets of the NDP belonging to an NDI of the NAN device. The capability indication may be set to 0 to indicate that the NAN device does not support receiving simultaneous transmissions for packets of the NDP. The capability indication may be included in at least one of a device capability attribute, or an operation mode field. Causing to send the first packet comprises the operations further may include identify the capability indication set to 0; and cause to send the first packet to the first NAN device on one of the first channel or the second channel within the CRB. The operations may further comprise determining a first time slot allocated for the NDL on the first channel and on the second channel; determining a second time slot allocated for the NDL on the first channel and on the second channel; and determining a common resource block (CRB) may include the first time slot and the second time slot. The operations may further comprise: identifying the capability indication set to 0; and causing to send the first packet to the first NAN device on one of the first channel or the second channel within the first time slot. The operations may further comprise: identifying the capability indication set to 0; determining a traffic identifier (TID) associated with a block acknowledgment session of the NDP; and causing to send the first packet to the first NAN device on one of the first channel or the second channel within the CRB.
[00142] According to example embodiments of the disclosure, there may be an apparatus. The apparatus may comprise means for identifying, by one or more processors, a NAN device within a NAN cluster, wherein the NAN device is capable of performing a service; means for determining a NAN datalink (NDL) that is simultaneously available on a first channel and a second channel with the NAN device; means for determining a NAN data path (NDP) of the NDL, wherein the NDP is associated with the service; means for causing to allocate a NAN data interface (NDI) address associated with the NDP; means for identifying a capability indication of the NAN device to receive simultaneous transmissions; and causing to send, based on the capability indication, a first packet.
[00143] The implementations may include one or more of the following features. The capability indication may be set to 1 to indicate that the NAN device is capable of receiving simultaneous transmissions for packets of the NDP belonging to an NDI of the NAN device. The capability indication may be set to 0 to indicate that the NAN device does not support receiving simultaneous transmissions for packets of the NDP. The capability indication may be included in at least one of a device capability attribute, or an operation mode field. Means for causing further comprises: means for identifying the capability indication set to 0; and means for cause to send the first packet to the first NAN device on one of the first channel or the second channel within the CRB. The apparatus may further include means for determining a first time slot allocated for the NDL on the first channel and on the second channel; means for determining a second time slot allocated for the NDL on the first channel and on the second channel; and means for determining a common resource block (CRB) may include the first time slot and the second time slot. The apparatus may further comprise means for identifying the capability indication set to 0; and means for causing to send the first packet to the first NAN device on one of the first channel or the second channel within the first time slot. The apparatus may further comprise means for identifying the capability indication set to 0; means for determining a traffic identifier (TID) associated with a block acknowledgment session of the NDP; and means for causing to send the first packet to the first NAN device on one of the first channel or the second channel within the CRB.
[00144] According to example embodiments of the disclosure, there may be a device. The device The device may include memory and processing circuitry configured to identify a request to set a capability bit to indicate support receiving simultaneous transmissions for packets of a NAN data path (NDP); cause to send the capability bit to a NAN device; cause to allocate a NAN data interface (NDI) address associated with the NDP; and identify a packets received from the NAN device based on the capability bit.
[00145] The implementations may include one or more of the following features. The capability bit may be set to 1 to indicate a capability of receiving simultaneous transmissions for packets of the NDP belonging to the NDI. The capability bit may be set to 0 to indicate a no support for simultaneous transmissions for packets of the NDP. The capability bit may be included in at least one of a device capability attribute, or an operation mode field. The device may further include a transceiver configured to transmit and receive wireless signals. The device may further include one or more antennas coupled to the transceiver.
[00146] According to example embodiments of the disclosure, there may be a method. The method may comprise identifying a request to set a capability bit to indicate support receiving simultaneous transmissions for packets of a NAN data path (NDP); causing to send the capability bit to a NAN device; causing to allocate a NAN data interface (NDI) address associated with the NDP; and identify a packets received from the NAN device based on the capability bit.
[00147] The implementations may include one or more of the following features. The capability bit may be set to 1 to indicate a capability of receiving simultaneous transmissions for packets of the NDP belonging to the NDI. The capability bit may be set to 0 to indicate a no support for simultaneous transmissions for packets of the NDP. The capability bit may be included in at least one of a device capability attribute, or an operation mode field.
[00148] According to example embodiments of the disclosure, there may be an apparatus. The apparatus may comprise means for identifying a request to set a capability bit to indicate support receiving simultaneous transmissions for packets of a NAN data path (NDP); means for causing to send the capability bit to a NAN device; means for causing to allocate a NAN data interface (NDI) address associated with the NDP; and means for identify a packets received from the NAN device based on the capability bit.
[00149] The implementations may include one or more of the following features. The capability bit may be set to 1 to indicate a capability of receiving simultaneous transmissions for packets of the NDP belonging to the NDI. The capability bit may be set to 0 to indicate a no support for simultaneous transmissions for packets of the NDP. The capability bit may be included in at least one of a device capability attribute, or an operation mode field.
[00150] Certain aspects of the disclosure are described above with reference to block and flow diagrams of systems, methods, apparatuses, and/or computer program products according to various implementations. It will be understood that one or more blocks of the block diagrams and flow diagrams, and combinations of blocks in the block diagrams and the flow diagrams, respectively, may be implemented by computer-executable program instructions. Likewise, some blocks of the block diagrams and flow diagrams may not necessarily need to be performed in the order presented, or may not necessarily need to be performed at all, according to some implementations. [00151] These computer-executable program instructions may be loaded onto a special- purpose computer or other particular machine, a processor, or other programmable data processing apparatus to produce a particular machine, such that the instructions that execute on the computer, processor, or other programmable data processing apparatus create means for implementing one or more functions specified in the flow diagram block or blocks. These computer program instructions may also be stored in a computer-readable storage media or memory that may direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable storage media produce an article of manufacture including instruction means that implement one or more functions specified in the flow diagram block or blocks. As an example, certain implementations may provide for a computer program product, comprising a computer- readable storage medium having a computer-readable program code or program instructions implemented therein, said computer-readable program code adapted to be executed to implement one or more functions specified in the flow diagram block or blocks. The computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational elements or steps to be performed on the computer or other programmable apparatus to produce a computer-implemented process such that the instructions that execute on the computer or other programmable apparatus provide elements or steps for implementing the functions specified in the flow diagram block or blocks.
[00152] Accordingly, blocks of the block diagrams and flow diagrams support combinations of means for performing the specified functions, combinations of elements or steps for performing the specified functions and program instruction means for performing the specified functions. It will also be understood that each block of the block diagrams and flow diagrams, and combinations of blocks in the block diagrams and flow diagrams, may be implemented by special-purpose, hardware-based computer systems that perform the specified functions, elements or steps, or combinations of special-purpose hardware and computer instructions.
[00153] Conditional language, such as, among others, "can," "could," "might," or "may," unless specifically stated otherwise, or otherwise understood within the context as used, is generally intended to convey that certain implementations could include, while other implementations do not include, certain features, elements, and/or operations. Thus, such conditional language is not generally intended to imply that features, elements, and/or operations are in any way required for one or more implementations or that one or more implementations necessarily include logic for deciding, with or without user input or prompting, whether these features, elements, and/or operations are included or are to be performed in any particular implementation.
[00154] Many modifications and other implementations of the disclosure set forth herein will be apparent having the benefit of the teachings presented in the foregoing descriptions and the associated drawings. Therefore, it is to be understood that the disclosure is not to be limited to the specific implementations disclosed and that modifications and other implementations are intended to be included within the scope of the appended claims. Although specific terms are employed herein, they are used in a generic and descriptive sense only and not for purposes of limitation.

Claims

CLAIMS What is claimed is:
1. A neighbor awareness networking (NAN) device, the device comprising memory and processing circuitry configured to:
identify a first NAN device within a NAN cluster, wherein the first NAN device is capable of performing a service;
determine a NAN datalink (NDL) that is simultaneously available on a first channel and a second channel with the first NAN device;
determine a NAN data path (NDP) of the NDL, wherein the NDP is associated with the service;
cause to allocate a first NAN data interface (NDI) address associated with the NDP; identify a capability indication of the first NAN device to receive simultaneous transmissions; and
cause to send, based on the capability indication, a first packet.
2. The device of claim 1, wherein the capability indication is set to 1 to indicate that the first NAN device is capable of receiving simultaneous transmissions for packets of the NDP belonging to an NDI of the NAN device.
3. The device of claim 1, wherein the capability indication is set to 0 to indicate that the first NAN device does not support receiving simultaneous transmissions for packets of the NDP.
4. The device of claim 1, wherein the capability indication is included in at least one of a device capability attribute or an operation mode field.
5. The device of claim 1, wherein the processing circuitry is further configured to: determine a first time slot allocated for the NDL on the first channel and on the second channel;
determine a second time slot allocated for the NDL on the first channel and on the second channel; and determine a common resource block (CRB) comprising the first time slot and the second time slot.
6. The device of claim 5, wherein to cause to send the first packet comprises the processing circuitry being further configured to:
identify the capability indication set to 0; and
cause to send the first packet to the first NAN device on one of the first channel or the second channel within the CRB.
7. The device of claim 5, wherein to cause to send the first packet comprises the processing circuitry being further configured to:
identify the capability indication set to 0; and
cause to send the first packet to the first NAN device on one of the first channel or the second channel within the first time slot.
8. The device of claim 5, wherein to cause to send the first packet comprises the processing circuitry being further configured to:
identify the capability indication set to 0;
determine a traffic identifier (TID) associated with a block acknowledgment session of the NDP; and
cause to send the first packet to the first NAN device on one of the first channel or the second channel within the CRB.
9. The device of claim 1, further comprising a transceiver configured to transmit and receive wireless signals.
10. The device of claim 9 further comprising one or more antennas coupled to the transceiver.
11. A non-transitory computer-readable medium storing computer-executable instructions which when executed by one or more processors result in performing operations comprising: identifying a request to set a capability bit to indicate support for receiving simultaneous transmissions for packets of a NAN data path (NDP);
causing to send the capability bit to a NAN device;
causing to allocate a NAN data interface (NDI) address associated with the NDP; and
identifying packets received from the NAN device based on the capability bit.
12. The non-transitory computer-readable medium of claim 11, wherein the capability bit is set to 1 to indicate a capability of receiving simultaneous transmissions for packets of the NDP belonging to the NDI.
13. The non- transitory computer-readable medium of claim 11, wherein the capability bit is set to 0 to indicate a no support for simultaneous transmissions for packets of the NDP.
14. The non- transitory computer-readable medium of claim 11, wherein the capability bit is included in at least one of a device capability attribute, or an operation mode field.
15. A method comprising:
identifying, by one or more processors, a NAN device within a NAN cluster, wherein the NAN device is capable of performing a service;
determining a NAN datalink (NDL) that is simultaneously available on a first channel and a second channel with the NAN device;
determining a NAN data path (NDP) of the NDL, wherein the NDP is associated with the service;
causing to allocate a NAN data interface (NDI) address associated with the NDP; identifying a capability indication of the NAN device to receive simultaneous transmissions; and
causing to send, based on the capability indication, a first packet.
16. The method of claim 15, wherein the capability indication is set to 1 to indicate that the NAN device is capable of receiving simultaneous transmissions for packets of the NDP belonging to an NDI of the NAN device.
17. The method of claim 15, wherein the capability indication is set to 0 to indicate that the NAN device does not support receiving simultaneous transmissions for packets of the NDP.
18. The method of claim 15, wherein the capability indication is included in at least one of a device capability attribute, or an operation mode field.
19. The method of claim 15, wherein to cause to send the first packet comprises the processing circuitry being further configured to:
identify the capability indication set to 0; and
cause to send the first packet to the first NAN device on one of the first channel or the second channel within the CRB.
20. The method of claim 15, further includes:
determining a first time slot allocated for the NDL on the first channel and on the second channel;
determining a second time slot allocated for the NDL on the first channel and on the second channel; and
determining a common resource block (CRB) comprising the first time slot and the second time slot.
PCT/US2017/040110 2017-02-24 2017-06-29 Simultaneous transmission over neighbor awareness networking data link WO2018156194A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201762463360P 2017-02-24 2017-02-24
US62/463,360 2017-02-24

Publications (1)

Publication Number Publication Date
WO2018156194A1 true WO2018156194A1 (en) 2018-08-30

Family

ID=63253894

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2017/040110 WO2018156194A1 (en) 2017-02-24 2017-06-29 Simultaneous transmission over neighbor awareness networking data link

Country Status (1)

Country Link
WO (1) WO2018156194A1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3940977A4 (en) * 2019-03-12 2022-04-27 Sony Group Corporation Wireless communication device and method
WO2024072025A1 (en) * 2022-09-29 2024-04-04 삼성전자 주식회사 Electronic device for scheduling data link, and operating method therefor

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016144088A1 (en) * 2015-03-09 2016-09-15 엘지전자 주식회사 Method and apparatus for transmitting data using multi-channels in wireless communication system
US20160286574A1 (en) * 2015-03-23 2016-09-29 Qualcomm Incorporated Schedule selection and connection setup between devices participating in a nan data link
US20160309496A1 (en) * 2015-04-20 2016-10-20 Intel IP Corporation Apparatus, System And Method Of Communicating In A Neighbor Awareness Networking (NAN) Cluster
US20160353470A1 (en) * 2015-05-25 2016-12-01 Apple Inc. Neighbor Awareness Networking Datapath - Scheduling, Scheduler Rank, and Pre-Datapath Operation Triggering
US20170026901A1 (en) * 2015-07-21 2017-01-26 Qualcomm Incorporated Neighbor aware network data link presence indication

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016144088A1 (en) * 2015-03-09 2016-09-15 엘지전자 주식회사 Method and apparatus for transmitting data using multi-channels in wireless communication system
US20160286574A1 (en) * 2015-03-23 2016-09-29 Qualcomm Incorporated Schedule selection and connection setup between devices participating in a nan data link
US20160309496A1 (en) * 2015-04-20 2016-10-20 Intel IP Corporation Apparatus, System And Method Of Communicating In A Neighbor Awareness Networking (NAN) Cluster
US20160353470A1 (en) * 2015-05-25 2016-12-01 Apple Inc. Neighbor Awareness Networking Datapath - Scheduling, Scheduler Rank, and Pre-Datapath Operation Triggering
US20170026901A1 (en) * 2015-07-21 2017-01-26 Qualcomm Incorporated Neighbor aware network data link presence indication

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3940977A4 (en) * 2019-03-12 2022-04-27 Sony Group Corporation Wireless communication device and method
US11962413B2 (en) 2019-03-12 2024-04-16 Sony Group Corporation Wireless communication device and method
WO2024072025A1 (en) * 2022-09-29 2024-04-04 삼성전자 주식회사 Electronic device for scheduling data link, and operating method therefor

Similar Documents

Publication Publication Date Title
US11723015B2 (en) Systems and methods for concurrent operation of devices over different network types
US10149314B2 (en) Cascaded trigger frame indication
US20220060991A1 (en) Multicast wakeup in wireless networks
US9854507B2 (en) Flexible connectivity framework
US20170280392A1 (en) Fine timing measurement signaling
US11490242B2 (en) Enhanced Bluetooth mechanism for triggering Wi-Fi radios
US10362604B2 (en) Multi-user multiple-input multiple-output reverse direction duration communications
US9913217B2 (en) Transmission feedback mechanism for polling wireless devices
US20170366957A1 (en) Wi-fi aware protection system
US10972157B2 (en) Multiuser multiple-input and multiple-output setup frame
WO2017069814A1 (en) Non-contiguous channel bonding
US20180063299A1 (en) Transition intervals for channel bonding in wireless networks
US20230075068A1 (en) Coordinated channel switch timing and transmissions in neighborhood awareness networks
US11894891B2 (en) Signaling for scheduled multi-user multiple-input multiple-output acknowledgement
US10284275B2 (en) Single user and multiuser multiple-input and multiple-output beamforming
WO2018156194A1 (en) Simultaneous transmission over neighbor awareness networking data link
US20180324600A1 (en) Analog beamforming for wi-fi devices
WO2018186919A1 (en) Neighbor awareness networking services indication
WO2018144156A2 (en) Enhanced directional multi-gigabit capabilities and operation elements
US10448437B2 (en) Enhanced bluetooth channel establishment
WO2019032139A1 (en) Acknowledgment in millimeter wave distribution network management

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 17898144

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 17898144

Country of ref document: EP

Kind code of ref document: A1