Methods and apparatus to change peer discovery transmission frequency based on congestion in peer-to-peer networks

A method, a computer program product, and an apparatus are provided. The apparatus determines a resource congestion level based on signals received on a plurality of resources of a peer discovery channel. In addition, the apparatus adjusts a duty cycle of a peer discovery transmission based on the determined congestion level. Furthermore, the apparatus transmits peer discovery signals at the adjusted duty cycle.

BACKGROUND

Field

The present disclosure relates generally to communication systems, and more particularly, to changing peer discovery transmission frequency based on congestion in peer-to-peer networks.

Background

In an ad hoc peer-to-peer wireless network, peers may discover each other by transmitting a peer discovery signal on a peer discovery resource. The presence of a peer may be detected by listening for the peer discovery signal of the peer on the peer discovery resource allocated to the peer. The allocated peer discovery resource may be an orthogonal time frequency block that allows receiving peers to distinguish the received peer discovery signals.

In an ad hoc peer-to-peer wireless network, there is no centralized authority to assign the peer discovery resources to the peers. As such, peers must select their peer discovery resources on which to transmit their peer discovery signals. The peer discovery resources may become congested such that peers transmit in the same peer discovery resources as other peers. As such, a need exists for a method and an apparatus that reduces the overall congestion on the peer discovery resource.

SUMMARY

In an aspect of the disclosure, a method, a computer program product, and an apparatus are provided. The apparatus determines a resource congestion level based on signals received on a plurality of resources of a peer discovery channel. In addition, the apparatus adjusts a duty cycle of a peer discovery transmission based on the determined congestion level. Furthermore, the apparatus transmits peer discovery signals at the adjusted duty cycle.

DETAILED DESCRIPTION

Accordingly, in one or more exemplary embodiments, the functions described may be implemented in hardware, software, firmware, or any combination thereof. If implemented in software, the functions may be stored on or encoded as one or more instructions or code on a computer-readable medium. Computer-readable media includes computer storage media. Storage media may be any available media that can be accessed by a computer. By way of example, and not limitation, such computer-readable media can comprise RAM, ROM, EEPROM, CD-ROM or other optical disk storage, magnetic disk storage or other magnetic storage devices, or any other medium that can be used to carry or store desired program code in the form of instructions or data structures and that can be accessed by a computer. Disk and disc, as used herein, includes compact disc (CD), laser disc, optical disc, digital versatile disc (DVD), floppy disk and Blu-ray disc where disks usually reproduce data magnetically, while discs reproduce data optically with lasers. Combinations of the above should also be included within the scope of computer-readable media. Those skilled in the art will recognize how best to implement the described functionality presented throughout this disclosure depending on the particular application and the overall design constraints imposed on the overall system.

FIG. 1is a conceptual diagram illustrating an example of a hardware implementation for an apparatus100employing a processing system114. The processing system114may be implemented with a bus architecture, represented generally by the bus102. The bus102may include any number of interconnecting buses and bridges depending on the specific application of the processing system114and the overall design constraints. The bus102links together various circuits including one or more processors and/or hardware modules, represented generally by the processor104, and computer-readable media, represented generally by the computer-readable medium106. The bus102may also link various other circuits such as timing sources, peripherals, voltage regulators, and power management circuits, which are well known in the art, and therefore, will not be described any further. A bus interface108provides an interface between the bus102and a transceiver110. The transceiver110provides a means for communicating with various other apparatuses over a transmission medium.

The processor104is responsible for managing the bus102and general processing, including the execution of software stored on the computer-readable medium106. The software, when executed by the processor104, causes the processing system114to perform the various functions described infra for any particular apparatus. The computer-readable medium106may also be used for storing data that is manipulated by the processor104when executing software.

FIG. 2is a drawing of an exemplary peer-to-peer communications system200. The peer-to-peer communications system200includes a plurality of wireless devices206,208,210,212. The peer-to-peer communications system200may overlap with a cellular communications system, such as for example, a wireless wide area network (WWAN). Some of the wireless devices206,208,210,212may communicate together in peer-to-peer communication, some may communicate with the base station204, and some may do both. For example, as shown inFIG. 2, the wireless devices206,208are in peer-to-peer communication and the wireless devices210,212are in peer-to-peer communication. The wireless device212is also communicating with the base station204.

The wireless device may alternatively be referred to by those skilled in the art as user equipment, a mobile station, a subscriber station, a mobile unit, a subscriber unit, a wireless unit, a wireless node, a remote unit, a mobile device, a wireless communication device, a remote device, a mobile subscriber station, an access terminal, a mobile terminal, a wireless terminal, a remote terminal, a handset, a user agent, a mobile client, a client, or some other suitable terminology. The base station may alternatively be referred to by those skilled in the art as an access point, a base transceiver station, a radio base station, a radio transceiver, a transceiver function, a basic service set (BSS), an extended service set (ESS), a Node B, an evolved Node B, or some other suitable terminology.

The exemplary methods and apparatuses discussed infra are applicable to any of a variety of wireless peer-to-peer communications systems, such as for example, a wireless peer-to-peer communication system based on FlashLinQ, WiMedia, Bluetooth, ZigBee, or Wi-Fi based on the IEEE 802.11 standard. To simplify the discussion, the exemplary methods and apparatus are discussed within the context of FlashLinQ. However, one of ordinary skill in the art would understand that the exemplary methods and apparatuses are applicable more generally to a variety of other wireless peer-to-peer communication systems.

FIG. 3is a diagram300illustrating an exemplary time structure for peer-to-peer communication between the wireless devices100. An ultraframe is 512 seconds and includes 64 megaframes. Each megaframe is 8 seconds and includes 8 grandframes. Each grandframe is 1 second and includes 15 superframes. Each superframe is approximately 66.67 ms and includes 32 frames. Each frame is 2.0833 ms.

FIG. 4is a diagram310illustrating the channels in each frame of superframes in one grandframe. In a first superframe (with index 0), frame 0 is a reserved channel (RCH), frames 1-10 are each a miscellaneous channel (MCCH), and frames 11-31 are each a traffic channel (TCCH). In the 2ndthrough 7thsuperframes (with index 1:6), frame 0 is a RCH and frames 1-31 are each a TCCH. In an 8thsuperframe (with index 7), frame 0 is a RCH, frames 1-10 are each a MCCH, and frames 11-31 are each a TCCH. In the 9ththrough 15thsuperframes (with index 8:14), frame 0 is a RCH and frames 1-31 are each a TCCH. The MCCH of superframe index 0 includes a secondary timing synchronization channel, a peer discovery channel, a peer page channel, and a reserved slot. The MCCH of superframe index 7 includes a peer page channel and reserved slots. The TCCH includes connection scheduling, a pilot, channel quality indicator (CQI) feedback, a data segment, and an acknowledgement (ACK).

FIG. 5is a diagram320illustrating an operation timeline of the MCCH and an exemplary structure of a peer discovery channel. As discussed in relation toFIG. 4, the MCCH of superframe index 0 includes a secondary timing synchronization channel, a peer discovery channel, a peer paging channel, and a reserved slot. The peer discovery channel may be divided into subchannels. For example, the peer discovery channel may be divided into a long range peer discovery channel, a medium range peer discovery channel, a short range peer discovery channel, and other channels. Each of the subchannels may include a plurality of blocks/resources for communicating peer discovery information. Each block may include a plurality of orthogonal frequency-division multiplexing (OFDM) symbols (e.g., 72) at the same subcarrier.FIG. 5provides an example of a subchannel (e.g., short range peer discovery channel) including blocks in one megaframe, which includes the MCCH superframe index 0 of grandframes 0 through 7. Different sets of blocks correspond to different peer discovery resource identifiers (PDRIDs). For example, one PDRID may correspond to one of the blocks in the MCCH superframe index 0 of one grandframe in the megaframe.

Upon power up, a wireless device listens to the peer discovery channel for a period of time (e.g., two megaframes) and selects a PDRID based on a determined energy on each of the PDRIDs. For example, a wireless device may select a PDRID corresponding to block322(i=2 and j=15) in a first megaframe of an ultraframe. The particular PDRID may map to other blocks in other megaframes of the ultraframe due to hopping. In blocks associated with the selected PDRID, the wireless device transmits its peer discovery signal. In blocks unassociated with the selected PDRID, the wireless device listens, subject to constraints such as half duplex constraints, for peer discovery signals transmitted by other wireless devices.

The wireless device may also reselect a PDRID if the wireless device detects a PDRID collision. That is, a wireless device may listen rather than transmit on its available peer discovery resource in order to detect an energy on the peer discovery resource corresponding to its PDRID. The wireless device may also detect energies on other peer discovery resources corresponding to other PDRIDs. The wireless device may reselect a PDRID based on the determined energy on the peer discovery resource corresponding its PDRID and the detected energies on the other peer discovery resources corresponding to other PDRIDs.

FIG. 6is a first diagram400for illustrating an exemplary method. As shown inFIG. 6, the wireless device402transmits a peer discovery signal403in the peer discovery resource402′, the wireless device404transmits a peer discovery signal405in the peer discovery resource404′, the wireless device406transmits a peer discovery signal407in the peer discovery resource406′, and the wireless device408transmits a peer discovery signal409in the peer discovery resource408′. Each of the individual peer discovery resources of the peer discovery channel410may include a plurality of resource elements, each of which may extend over one or more OFDM symbols and one or more subcarriers. For example, each individual peer discovery resource may be a block that extends over a plurality of OFDM symbols (e.g., 72 OFDM symbols) at a particular subcarrier.

According to the exemplary method, the wireless device402determines a peer discovery resource congestion level of the peer discovery resources based on peer discovery signals405,407,409received on the plurality of peer discovery resources of a peer discovery channel410from the wireless devices404,406,408, respectively. The wireless device402determines the peer discovery resource congestion level of the peer discovery resources by measuring an energy received in each of the individual peer discovery resources. The wireless device402measures an energy received in each individual peer discovery resource by measuring an energy received on each tone (i.e., an OFDM symbol at a subcarrier) of the peer discovery resource. Due to the half-duplex nature of the wireless device402(i.e., unable to transmit and receive at the same time), the wireless device402may refrain on a slower time scale from transmitting its peer discovery signal in its allocated peer discovery resource402′ so that the wireless device402can determine an energy received in its own peer discovery resource402′ and in peer discovery resources concurrent in time (i.e., at the same OFDM symbols) to its allocated peer discovery resource402′. The wireless device402adjusts a frequency of a peer discovery transmission based on the determined congestion level and the wireless device402transmits peer discovery signals403at the adjusted frequency. The wireless device402may inform the wireless devices404,406,408of the change in the frequency of peer discovery transmissions by including information in the peer discovery signal403(e.g., using pilots) that indicates the frequency at which the peer discovery signal403is transmitted. Based on the frequency information, the wireless devices404,406,408will be able to ascertain whether a lack of receiving the peer discovery signal403is due to a change in the frequency of the transmission of the peer discovery signal403or due to the wireless device402moving out of the area or going offline.

The wireless device402adjusts the frequency of its peer discovery transmission by adjusting a duty cycle of the peer discovery transmission. The frequency information included in the peer discovery transmission may include at least one of the periodicity (or the period), the duty cycle, and an offset from a particular reference frame, such as for example, a particular reference megaframe. The periodicity indicates the period at which the allocated peer discovery resource repeats, the duty cycle is the fraction of peer discovery resource occurrences utilized within the period, and the offset indicates when the period begins for the first peer discovery transmission. For example, if the wireless device402transmits a peer discovery signal in all megaframes except megaframes 4n for n=0, 1, 2, . . . , 15 (seeFIG. 3), then the period would be 4 (periodicity ¼), the duty cycle ¾, and the offset 1.

FIG. 7is a second diagram500for illustrating the exemplary method. As shown inFIG. 7, the wireless device402transmits in each peer discovery channel450. In a heavy load scenario, each of the peer discovery resources (i.e., each block) may be utilized by a wireless device to transmit its peer discovery signal. Further, some of the peer discovery resources may be utilized by multiple wireless devices (which reduces the range of peer discovery). According to the exemplary method, the wireless device402estimates the load on the peer discovery channels450by evaluating the received energy on each of the peer discovery resources. Alternatively or in addition, the wireless device402may estimate the load on the peer discovery channels450based on the frequency information decoded from the peer discovery signals received on the plurality of peer discovery resources. As discussed supra, due to the half-duplex nature of the wireless device402, the wireless device402may occasionally refrain from transmitting on its allocated peer discovery resource in order to estimate the load on its allocated peer discovery resource and peer discovery resources that are concurrent in time (i.e., same OFDM symbols) as its allocated peer discovery resource. Based on the determined peer discovery resource congestion level, the wireless device402adjusts the frequency at which the wireless device402transmits its peer discovery signal.

FIG. 8is a third diagram600for illustrating the exemplary method. The wireless device402may compare the determined peer discovery resource congestion level to a first threshold and adjust the frequency (duty cycle) of transmitting its peer discovery signal based on the comparison. For example, if the wireless device402determines that the peer discovery resources have a utilization greater than 90%, the wireless device402may determine to reduce the frequency of transmitting its peer discovery signal. If the wireless device402is not utilizing all of the available recurrences of peer discovery resource in the peer discovery channel450(e.g., upon reducing the frequency of transmitting its peer discovery signal), the wireless device may increase the frequency of transmitting its peer discovery signal based on whether the peer discovery resource congestion level is less than a second threshold. For example, after decreasing the frequency of transmitting its peer discovery signal, if the wireless device402determines that the peer discovery resources have a utilization less than 70% and the recurring peer discovery resource assigned to it is unutilized by any device for certain recurrences, the wireless device402may determine to increase the frequency of transmitting its peer discovery signal.

Assume that the wireless devices402,404are transmitting their peer discovery signals in the same peer discovery resources (i.e., they have the same PDRID). By transmitting in the same peer discovery resources, the wireless devices402,404will not be able to discover each other and their range of discovery may be reduced if they are close together. As shown inFIG. 8, the wireless device402, upon determining the congestion level to be greater than a first threshold, has reduced the frequency of its peer discovery transmissions, as the wireless device402transmits its peer discovery signal in every other available peer discovery channel450. Furthermore, the wireless device404, upon determining a peer discovery resource congestion level based on peer discovery signals received on the plurality of peer discovery resources of the peer discovery channels450, has reduced the frequency of its peer discovery transmissions, as the wireless device404also transmits its peer discovery in every other available peer discovery channel450. The wireless devices402,404have interleaved their transmissions based on their own determinations of the peer discovery resource congestion and comparisons with a threshold (which may be different for each wireless device). The orthogonal time multiplexing of the peer discovery resources has an advantage over the wireless device402,404transmitting on the same peer discovery resources, as the range of discovery for the wireless devices402,404will not be impacted and the wireless devices402,404can discover each other.

As discussed supra, the wireless devices may adjust the frequency of peer discovery transmissions by reducing the frequency of peer discovery signal transmissions when the determined peer discovery congestion level is greater than a first threshold, and by increasing the frequency when the determined peer discovery congestion level is less than a second threshold. The first and second thresholds may be different for each of the wireless devices. In one configuration, the first and second thresholds may be based on an assigned transmission priority. That is, the wireless device402may have a high assigned transmission priority such that the first threshold is 95% and the second threshold is 75% and the wireless device404may have a lower assigned transmission priority such that the first threshold is 90% and the second threshold is 70%. The assigned transmission priority may be based on a paid subscription or on other factors. In another configuration, the first and second thresholds may be based on an intended range of the peer discovery signal. For example, when the peer discovery signals are intended for short range (e.g., detecting a local printer or desktop computer) as opposed to long range, the first threshold may be 100% and the second threshold 0% such that the frequency is never adjusted. In another configuration, the first and second thresholds may be a function of at least one of the periodicity or the duty cycle. For example, when the duty cycle of the peer discovery transmissions from the wireless device402is ½, the first threshold may be 95% rather than 90% so that further reductions in the frequency of peer discovery transmissions require a higher resource congestion level.

Rather than base the first and second thresholds on the transmission priority or the intended range of the peer discovery signal, the amount by which the wireless device402adjusts the frequency of its peer discovery transmission may be based on the transmission priority or the intended range of the peer discovery signals. For example, when the intended range of peer discovery is short, the wireless device402may refrain from adjusting the frequency of its peer discovery transmissions or may adjust the frequency by a small amount, and when the intended range of peer discovery is large, the wireless device402may adjust the frequency of its peer discovery transmissions by a larger amount. For another example, the transmission priority may include a plurality of levels such that a wireless device that is assigned a high priority does not adjust the frequency of its peer discovery transmissions, while a wireless device that is assigned a medium priority adjusts the frequency of its peer discovery transmissions by ⅓, and wireless device that is assigned a low priority adjusts the frequency of its peer discovery transmissions by ⅔.

FIG. 9is a first diagram700for illustrating the exemplary method within FlashLinQ. As discussed in relation toFIG. 5, wireless devices are allocated a block in each megaframe. The particular block allocated is based on the PDRID selected by the wireless device. In each megaframe, the allocated block may hop to different positions at different subcarriers. As shown inFIG. 9, the wireless devices402,404are allocated a block in each of the megaframes.

FIG. 10is a second diagram800for illustrating the exemplary method within FlashLinQ. Each of the wireless device402,404determine a peer discovery resource congestion level based on signals received on the plurality of resources of the peer discovery channels in each megaframe. Based on the determined peer discovery resource congestion level, the wireless devices402,404adjust a frequency of peer discovery transmissions. Assume the wireless device404has a higher transmission priority than the wireless device402(such as for example, through a higher paid subscription) and, if a reduction in the peer discovery transmission frequency is required, wireless devices with a higher transmission priority reduce by 25% while wireless devices with a lower transmission priority reduce by 50%. Assume also that the peer discovery resources are 95% utilized. The wireless device402determines that the 95% utilization is greater than the first threshold of 90% and therefore determines to reduce the frequency of transmitting its peer discovery signal by 50%, with a periodicity of ½ (period 2), a duty cycle of ½, and an offset of 0. On its allocated resources802, the wireless device402transmits its peer discovery signal with information indicating the periodicity (or period), the duty cycle, and the offset. The wireless device404determines that the 95% utilization is greater than the first threshold of 90% and therefore determines to reduce the frequency of transmitting its peer discovery signal by 25%, with a periodicity of ¼ (period 4), a duty cycle of ¾, and an offset of 1. On its allocated resources804, the wireless device404transmits its peer discovery signal with information indicating the periodicity (or period), the duty cycle, and the offset.

FIG. 11is a third diagram900for illustrating the exemplary method within FlashLinQ. As shown inFIG. 11, the wireless device404intends to engage in short range peer-to-peer communication while the wireless device402intends to engage in long range peer-to-peer communication. Assume the wireless device404determines that the peer discovery resources are congested to a level greater than a first threshold. Because the wireless device404intends only for short range peer-to-peer communication, the wireless device404does not reduce its frequency of peer discovery transmissions. Assume the wireless device402also determines that the peer discovery resources are congested to a level greater than a first threshold. Because the wireless device402intends for long range peer-to-peer communication, the wireless device402reduces its frequency of transmissions by transmitting only in the even megaframes (period 2, duty cycle ½, offset 0). Generally, wireless devices with a short intended range may be required to reduce their peer discovery transmissions to a lesser extent than wireless devices with a long intended range.

FIG. 12is a flow chart1200of a method of wireless communication. The method is performed by a wireless device. As shown inFIG. 12, the wireless device determines a resource congestion level based on signals received on a plurality of resources of a peer discovery channel (1202). Based on the determined congestion level, the wireless device adjusts a duty cycle of a peer discovery transmission (1204). The wireless device transmits peer discovery signals at the adjusted duty cycle (1208). In order to inform other wireless devices of the adjusted duty cycle of peer discovery transmissions, the wireless device may include information indicating the duty cycle in the transmitted peer discovery signals (1206). The wireless device may also include information indicating the periodicity and the offset in the transmitted peer discovery signals.

The congestion level may be determined based on at least one of a determined energy on each of the plurality of resources or on information decoded from the signals received on the plurality of resources (e.g., periodicity and duty cycle information). In one configuration, the wireless device may adjust the duty cycle (1204) by reducing the duty cycle when the determined congestion level is greater than a first threshold, and by increasing the duty cycle when the determined congestion level is less than a second threshold. In such a configuration, the first threshold and the second threshold may be based on an assigned transmission priority. Furthermore, the first threshold and the second threshold may be a function of at least one of a periodicity or the duty cycle.

The wireless device may adjust the duty cycle (1204) further based on at least one of a transmission priority or an intended range of peer-to-peer communications. In one configuration, when wireless device adjusts the duty cycle (1204) further based on the transmission priority, the transmission priority includes a plurality of priority levels, and the duty cycle is adjusted differently based on an assigned transmission priority of the plurality of priority levels.

FIG. 13is a conceptual block diagram1300illustrating the functionality of an exemplary apparatus100′. The apparatus includes a resource congestion level determination module1302that is configured to determine a resource congestion level based on peer discovery signals received on a plurality of resources of a peer discovery channel. The determined congestion level is provided to a peer discovery transmission adjusting module1312that is configured to determine how to adjust a duty cycle of a peer discovery transmission based on the determined congestion level. The adjustment information is provided to the peer discovery signal transmission module1322, which is configured to transmit peer discovery signals at the adjusted duty cycle.

In one configuration, the peer discovery signal transmission module1322is configured to include information indicating the periodicity and the duty cycle in the transmitted peer discovery signals. In one configuration, the resource congestion level determination module1302is configured to determine the congestion level based on at least one of a determined energy on each of the plurality of resources or on information decoded in the signals received on the plurality of resources.

In one configuration, the peer discovery transmission adjusting module1312is configured to adjust the duty cycle by reducing the duty cycle when the determined congestion level is greater than a first threshold, and by increasing the duty cycle when the determined congestion level is less than a second threshold. In one configuration, the peer discovery transmission adjusting module1312is configured to set the first threshold and the second threshold based on an assigned transmission priority. In addition, in one configuration, the peer discovery transmission adjust module1312is configured to set the first threshold and the second threshold based on at least one of the periodicity or the duty cycle.

In one configuration, the peer discovery transmission adjusting module1312is configured to adjust the duty cycle further based on at least one of a transmission priority or an intended range of peer-to-peer communications. In such a configuration, when the peer discovery transmission adjusting module1312adjusts the duty cycle further based on the transmission priority, the transmission priority includes a plurality of priority levels, and the peer discovery transmission adjusting module1312is configured to adjust the duty cycle differently based on an assigned transmission priority of the plurality of priority levels. The apparatus may include additional modules that perform each of the steps in the aforementioned flow chart ofFIG. 12. As such, each step in the aforementioned flow chart may be performed by a module and the apparatus may include one or more of those modules.

Referring toFIG. 1andFIG. 13, in one configuration, the apparatus100/100′ for wireless communication includes means for determining a resource congestion level based on signals received on a plurality of resources of a peer discovery channel, means for adjusting a duty cycle of a peer discovery transmission based on the determined congestion level, and means for transmitting peer discovery signals at the adjusted duty cycle. The apparatus may further include means for including information indicating a periodicity and the duty cycle in the transmitted peer discovery signals. The aforementioned means are the modules ofFIG. 13and/or the processing system114ofFIG. 1configured to perform the functions recited by the aforementioned means.