# Patent

## Title
Method and apparatus for resource utilization management in a multi-carrier communications system

## Abstract

Systems and methods are described that facilitate evaluating conditions of nodes (e.g., access points, access terminals, etc.) in a wireless communication environment having a plurality of carriers to determine a level of disadvantage for a given node relative to other nodes. The node may transmit a resource utilization message (RUM) that represents the level of disadvantage for the node and request other interference nodes to back off on one or more carriers.

## Background
CLAIM OF PRIORITY UNDER 35 U.S.C. §119
The present Application for Patent claims priority to Provisional Application No. 61/045,202 entitled “Method and Apparatus for Resource Utilization Management in a Multi-Carrier Communications System” filed Apr. 15, 2008, and assigned to the assignee hereof and hereby expressly incorporated by reference herein.
REFERENCE TO CO-PENDING APPLICATIONS FOR PATENT
The present Application for Patent is related to the following co-pending U.S. Patent Applications:
U.S. patent application Ser. No. 12/108,405 entitled “Method and Apparatus for Carrier Identity Determination in Multi-carrier Communication Systems”, filed concurrently herewith, assigned to the assignee hereof, and expressly incorporated by reference herein; and

    
    
        U.S. patent application Ser. No. 12/108,442 entitled “Method and Apparatus for Carrier Selection in Multi-carrier Communication Systems”, filed concurrently herewith, assigned to the assignee hereof, and expressly incorporated by reference herein.
    
    




BACKGROUND
I. Field
The following description relates generally to wireless communications, and more particularly to reducing interference and improving throughput and channel quality in a wireless communication environment.
II. Background
Wireless communication systems have become a prevalent means by which a majority of people worldwide communicate. Wireless communication devices have become smaller and more powerful in order to meet consumer needs and to improve portability and convenience. The increase in processing power in mobile devices such as cellular telephones has led to an increase in demands on wireless network transmission systems. Such systems typically are not as easily updated as the cellular devices that communicate there over. As mobile device capabilities expand, it can be difficult to maintain an older wireless network system in a manner that facilitates fully exploiting new and improved wireless device capabilities.
A typical wireless communication network (e.g., employing frequency, time, and code division techniques) includes one or more base stations that provide a coverage area and one or more mobile (e.g., wireless) terminals that can transmit and receive data within the coverage area. A typical base station can simultaneously transmit multiple data streams for broadcast, multicast, and/or unicast services, wherein a data stream is a stream of data that can be of independent reception interest to a mobile terminal. A mobile terminal within the coverage area of that base station can be interested in receiving one, more than one or all the data streams carried by the composite stream. Likewise, a mobile terminal can transmit data to the base station or another mobile terminal. Such communication between base station and mobile terminal or between mobile terminals can be degraded due to channel variations and/or interference power variations. Accordingly, a need in the art exists for systems and/or methodologies that facilitate reducing interference and improving throughput in a wireless communication environment.
SUMMARY
The following presents a simplified summary of one or more aspects in order to provide a basic understanding of such aspects. This summary is not an extensive overview of all contemplated aspects, and is intended to neither identify key or critical elements of all aspects nor delineate the scope of any or all aspects. Its sole purpose is to present some concepts of one or more aspects in a simplified form as a prelude to the more detailed description that is presented later.
According to various aspects, the subject innovation relates to systems and/or methods that provide unified technology for wide and local wireless communication networks in order to facilitate achieving benefits associated with both cellular and Wi-Fi technologies while mitigating drawbacks associated therewith. For instance, cellular networks may be arranged according to a planned deployment, which can increase efficiency when designing or building a network, while Wi-Fi networks are typically deployed in a more convenient, ad hoc manner. Wi-Fi networks may additionally facilitate providing a symmetrical medium access control (MAC) channel for access points and access terminals, as well as backhaul support with in-band wireless capability, which are not provided by cellular systems.
The unified technologies described herein facilitate deploying the network in a flexible manner. The methods described in this disclosure allow the performance to adapt according to the deployment, thus providing good efficiency if the deployment is planned or semi-planned, and providing adequate robustness if the network is unplanned. That is, various aspects described herein permit a network to be deployed using a planned deployment, (e.g., as in a cellular deployment scenario), an ad hoc deployment (e.g., such as may be utilized for a Wi-Fi network deployment), or a combination of the two. Still furthermore, other aspects relate to supporting nodes with varied transmission power levels and achieving inter-cell fairness with regard to resource allocation, which aspects are not adequately supported by Wi-Fi or cellular systems.
For example, according to some aspects, weighted fair-sharing of a set of wireless carriers may be facilitated by joint scheduling of a transmission by both a transmitter and a receiver using a resource utilization message (RUM), whereby a transmitter requests a set of resources based on knowledge of availability in its neighborhood, and a receiver grants a subset of the requested carriers based on knowledge of availability in its neighborhood. The transmitter learns of availability based on listening to receivers in its vicinity and the receiver learns of potential interference by listening to transmitters in its vicinity. According to related aspects, RUMs may be weighted to indicate not only that a node receiving data transmissions is disadvantaged (due to the interference it sees while receiving) and desires a collision avoidance mode of transmission, but also the degree to which the node is disadvantaged. An RUM-receiving node may utilize the fact that it has received an RUM, as well as the weight thereof, to determine an appropriate response. As an example, such an advertisement of weights enables collision avoidance in a fair manner. This disclosure describes such a methodology.
According to a related aspect, an RUM sending node may indicate its degree of disadvantage by indicating a number of carriers for which the RUM applies, such that the number of carriers (in general, these could be resources, channels, frequency carriers/sub-carriers and/or time slots) is indicative of the degree of disadvantage. If the degree of disadvantage is reduced in response to the RUM, then the number of carriers for which the RUM is sent may be reduced for a subsequent RUM transmission. If the degree of disadvantage is not reduced, then the number of carriers for which the RUM applies may be increased for a subsequent RUM transmission.
An RUM may be sent at a constant power spectral density (PSD), and a receiving node may employ the received power spectral density and/or received power of the RUM to estimate a radio frequency (RF) channel gain between itself and the RUM sending node to determine whether it will cause interference at the sending node (e.g., above a predetermined acceptable threshold level) if it transmits. Thus, there may be situations wherein an RUM receiving node is able to decode the RUM from the RUM sending node, but determines that the RUM receiving node will not cause interference. When an RUM-receiving node determines that it should obey the RUM, it can do so by choosing to backoff from that resource completely or by choosing to use a sufficiently reduced transmit power bring its estimated potential interference level below the predetermined acceptable threshold level. Thus, “hard” interference avoidance (complete backoff) and “soft” interference avoidance (power control) are both supported in a unified manner. According to a related aspect, the RUM may be employed by the receiving node to determine a channel gain between the receiving node and the RUM-sending node in order to facilitate a determination of whether or not to transmit based on estimated interference caused at the sending node.
According to an aspect, a method of wireless data communication may include determining a condition related to a plurality of resources; selecting a desired set of resources from the plurality of resources based on the condition; and transmitting a signal indicating the desired set of resources for which to send a resource utilization message (RUM).
Another aspect relates to an apparatus that facilitates wireless data communication, including means for determining a condition related to a plurality of resources; means for selecting a desired set of resources from the plurality of resources based on the condition; and means for transmitting a signal indicating the desired set of resources for which to send an RUM.
Another aspect relates to an access point that facilitates wireless data communication having an antenna and a processing system coupled to the antenna. The processing system is configured to determine a condition related to a plurality of resources detected by via the antenna; select a desired set of resources from the plurality of resources based on the condition; and, transmit a signal indicating the desired set of resources for which to send an RUM.
Another aspect relates to an access terminal that facilitates wireless data communication having a transducer and a processing system coupled to the transducer. The processing system is configured to determine a condition related to a plurality of resources usable to communicate data usable with the transducer; select a desired set of resources from the plurality of resources based on the condition; and, transmit a signal indicating the desired set of resources for which to send an RUM.
Another aspect relates to a computer program product for wireless communication having a computer readable medium having codes executable to determine a condition related to a plurality of resources; determine a weight based on the condition; and request a reservation of a subset of the plurality of resources based on the determined weight.
Another aspect relates to an apparatus for wireless communication having a processing system. The processing system is configured to determine a condition related to a plurality of resources; selecting a desired set of resources from the plurality of resources based on the condition; and transmitting a signal indicating the desired set of resources for which to send an RUM.
To the accomplishment of the foregoing and related ends, the one or more aspects comprise the features hereinafter fully described and particularly pointed out in the claims. The following description and the annexed drawings set forth in detail certain illustrative aspects of the one or more aspects. These aspects are indicative, however, of but a few of the various ways in which the principles of various aspects may be employed and the described aspects are intended to include all such aspects and their equivalents.



BRIEF DESCRIPTION OF THE DRAWINGS
FIG. 1 is a network diagram of an exemplary wireless communication system with multiple access points and multiple access terminals such as may be utilized in conjunction with one or more aspects of a methodology for managing interference by employing a resource utilization message (RUM).
FIG. 2 is a process diagram for a sequence of request-grant events that can facilitate resource allocation, in accordance with one or more aspects described herein.
FIG. 3 is a flow diagram of an exemplary methodology for generating an RUM.
FIG. 4 is a diagram of a carrier mask-to-carrier mapping scheme for use in RUMs in a multi-carrier system, in accordance with one or more aspects.
FIG. 5 is an illustration of a methodology for an access terminal in requesting bandwidth from an access point based on received RUMs, in accordance with one or more aspects.
FIG. 6 is an illustration of a sequence of carrier masks created based on one or more received RUMs, in accordance with one or more aspects.
FIG. 7 is an illustration of a methodology for determining the number and selection of carriers to be requested as part of a request to transmit by an access terminal to an access point as well as determining the number and selection of carriers to be granted as part of a grant of the request by the access point to the access terminal.
FIG. 8 is an illustration of a methodology for generating a grant for a request to transmit, in accordance with one or more aspects.
FIG. 9 is an illustration of a wireless network environment that can be employed in conjunction with the various systems and methods described herein.
FIG. 10 is an illustration of an apparatus that facilitates wireless data communication, in accordance with various aspects.
FIG. 11 is an illustration of an apparatus that facilitates wireless communication using RUMs, in accordance with one or more aspects.
FIG. 12 is an illustration of an apparatus that facilitates comparing relative conditions at nodes in a wireless communication environment to determine which nodes are most disadvantaged, in accordance with one or more aspects.
FIG. 13 is an illustration of an apparatus that facilitates reserving resources based on a determined weight, in accordance with one or more aspects.
FIG. 14 is an illustration of an apparatus that facilitates managing a subset of a plurality of resources based on a received RUM, in accordance with one or more aspects.



DETAILED DESCRIPTION
Various aspects of the disclosure are described below. It should be apparent that the teachings herein may be embodied in a wide variety of forms and that any specific structure, function, or both being disclosed herein is merely representative. Based on the teachings herein one skilled in the art should appreciate that an aspect disclosed herein may be implemented independently of any other aspects and that two or more of these aspects may be combined in various ways. For example, an apparatus may be implemented or a method may be practiced using any number of the aspects set forth herein. In addition, such an apparatus may be implemented or such a method may be practiced using other structure, functionality, or structure and functionality in addition to or other than one or more of the aspects set forth herein. Furthermore, an aspect may comprise at least one element of a claim.
The word “exemplary” is used herein to mean “serving as an example, instance, or illustration.” Any aspect described herein as “exemplary” is not necessarily to be construed as preferred or advantageous over other aspects. Moreover, references to a list of elements comprising of “at least one of A, B and C” should be interpreted to reference each of the elements A, B, and C individually, as well as any combinations the of the elements A, B and C. Further, also the description utilizes a network that involves the IEEE 802.11 standard, networks that utilize other protocols may benefit from the various techniques and systems disclosed herein.
It will be understood that a “node,” as used herein, may be an access terminal or an access point, and that each node may be a receiving node as well as a transmitting node. For example, each node may comprise at least one receive antenna and associated receiver chain, as well as at least one transmit antenna and associated transmit chain. Moreover, each node may comprise one or more processors to execute software code for performing any and all of the methods and/or protocols described herein, as well as memory for storing data and/or computer-executable instructions associated with the various methods and/or protocols described herein.
Referring now to FIG. 1, a wireless network communication system 100 is illustrated in accordance with various aspects presented herein. System 100 can comprise a plurality of nodes, such as one or more access points 102 (e.g., cellular, Wi-Fi or ad hoc, etc.), also referred to as base stations, in one or more sectors that receive, transmit, repeat, etc., wireless communication signals to each other and/or to one or more other nodes, such as access terminals 104. As noted, a “node” may be an access terminal or an access point, and may comprise both a receiver and a transmitter. The usage of terminology such as “transmitter” and “receiver” in this description should therefore be interpreted as “when a node plays the role of transmitter” and “when a node plays the role of a receiver” respectively.
Each access point 102 can comprise a transmitter chain and a receiver chain, each of which can in turn comprise a plurality of components associated with signal transmission and reception (e.g. processors, modulators, multiplexers, demodulators, demultiplexers, antennas, etc.), as will be appreciated by one skilled in the art. Access terminals 104 can be, for example, cellular phones, smart phones, laptops, handheld communication devices, handheld computing devices, satellite radios, global positioning systems, PDAs, and/or any other suitable device for communicating over a wireless network.
The following discussion is provided to facilitate understanding of the various systems and/or methodologies described herein. According to various aspects, each node may be assigned a weight, where each weight is a function of a number of flows supported by the node. “Flow,” as used herein, represents a transmission coming into or out of a node. The total weight of the node can be determined by summing the weights of all flows passing through the node. For example, in one approach data flows can have be assigned weights proportional to the type of traffic being carried. Thus, HyperText Transport Protocol (HTTP) or File Transfer Protocol (FTP) flows may be assigned a particular weight. Further, constant bit rate (CBR) flows can have predetermined weights proportional to the bit rate. Moreover, each node may be assigned a predetermined static weight that may be added to the flow weight of each node in order to provide extra priority to each node. Weight may also be dynamic and reflect the current conditions of the flows that a node carries. For example, the weight may correspond to the worst throughput of a flow being carried (received) at that node. In essence, the weight represents the degree of disadvantage that the node is experiencing and is used in doing fair channel access amongst a set of interfering nodes contending for a common resource.
Request messages, grant messages, and data transmissions may be power controlled: however, a node may nonetheless experience excessive interference that causes its signal-to-interference noise (SINR) levels to be unacceptable. In order to mitigate undesirably low SINR, resource utilization messages (RUMs) may be utilized. An RUM may be broadcast by a receiver when interference levels on the receiver's desired carriers exceed a predetermined threshold level. As discussed herein, in an aspect of the deployment of RUMs, an RUM is sent out by a receiving node when it is unable to meet its quality of service (QoS) requirements. The QoS requirements may be predetermined and may be expressed in the form of throughput (e.g., for full buffer traffic), latency (e.g., for voice traffic), average spectral efficiency, minimum carrier-to-interference (C/I) ratio, or other suitable metrics. The RUM encapsulates the weight, which signifies the degree of disadvantage faced by the node that is transmitting the RUM. In other words, in an aspect of the use of the weight, the degree of disadvantage is a function of the node's QoS and its desired QoS. This RUM weight may be quantized using a predetermined number of bits.
“Disadvantage,” as used herein, may be determined as a function of, for instance, a ratio of a target value to an actual value for a given node. For example, when disadvantage is measured as a function of throughput, spectral efficiency, data rate, or some other parameter where higher values are desirable, then when the node is disadvantaged, the actual value will be relatively lower than the target value. In such cases, a weighted value indicative of the level of disadvantage of the node may be a function of the ratio of the target value to the actual value. In cases where the parameter upon which disadvantage is based is desired to be low (e.g., latency), a reciprocal of the ratio of the target value to the actual value may be utilized to generate the weight. As used herein, a node that is described as having a “better” condition relative to another node may be understood to have a lesser level of disadvantage (e.g., the node with the better condition has less interference, less latency, a higher data rate, higher throughput, higher spectral efficiency, etc., than another node to which it is compared).
Using RUMs, a receiving node (such as an access point) can block interfering nodes that cause it too much interference. In other words, the receiving node can request other nodes from transmitting on the carrier. In network designs where the bandwidth contains only one carrier, when an RUM is sent by a receiving node, the whole bandwidth is blocked for its intended access terminal. With a multicarrier communication system, in which the available bandwidth is divided into separate portions—each of which is referred to as a carrier or channel; only certain carriers may be blocked so that the receiving node may still achieve its desired throughput while limiting the impact on the rest of the system.
For example, the available bandwidth in a multicarrier communication system may be divided into four (4) carriers. Each transmitting node may then be scheduled to transmit over one (1) or more carriers, thereby allowing better sharing of the resources. In order to ensure that interference avoidance happens in a fair manner—that is, to ensure that all nodes get a fair share of transmission opportunities, the RUM may contain a list of carriers upon which a receiving node desires reduced interference, as well as the aforementioned weight information, as described herein. The weight of a given receiving node can be utilized to calculate the fair share of resources for allocation to the node.
FIG. 2 illustrates an exemplary request-grant events sequence 200 that involves the use of RUMs to facilitate resource allocation, in accordance with one or more aspects described herein. In the example shown in the figure, an associated pair of nodes 290 includes an access terminal 292 and a first access point 1 294, as well as a second access point 2 296 that is unassociated with the associated pair of nodes 290.
The sequence 200 starts with 204 and 206, during which the access point 1 294 and the access point 2 296 each generates an RUM to be broadcast to other nodes, including access terminal 292. The RUM includes a weight that indicates how disadvantaged the access points are as well as which carriers over which the access point wishes to block other nodes from transmitting, as further described herein with reference to FIG. 3.
In 212, the access point 1 294 and the access point 2 296 broadcasts their respective RUM to nodes such as access terminal 292.
In 222, the access terminal 292 processes all RUMs received in 212. The RUM processing that is performed by the access terminal 292 is described herein with reference to FIG. 5.
In 232, if the access terminal 292 determines there are carriers available after processing the received RUMs, then the access terminal 292 will determine the carriers for which it wishes to send a request to transmit data in 242.
In 252, a request to transmit is sent from the access terminal 292 to the access point 1 294. The request can include a list of carriers over which the access terminal 292 would like to transmit data. The sequence of events 200 may be performed in view of a plurality of constraints that may be enforced during a communication event. For example, the access terminal 292 may request any carrier(s) that have not been blocked by an RUM in a previous time slot. The requested carriers may be prioritized with a preference for a successful carrier in a most recent transmission cycle.
In 264, the access point 1 294 determines the carriers that it will grant the access terminal 292 to transmit over based on the request received from the access terminal 292. The grant could include all or a subset of the requested carriers. Thus, the grant from the access point 1 294 may be a subset of the carriers listed in the request sent by the access terminal 292. The access point 1 294 can be endowed with authority to avoid carriers exhibiting high interference levels during a most recent transmission.
In 272, the access point 1 294 may then send a grant message to the access terminal 292, which indicates that all or a subset of the requested carriers have been granted.
In 282, the access terminal 292 may then transmit a pilot message to the access point 1 294, upon receipt of which the access point 1 294 may transmit rate information back to the access terminal 292, to facilitate mitigating an undesirably low SINR. Upon receipt of the rate information, the access terminal 292 may proceed with data transmission over the granted carriers and at the indicated transmission rate. Further, when transmitting, the access terminal 292 may send data over the all or a subset of carriers granted in the grant message. The access terminal 292 may reduce transmission power on some or all carriers during its transmission of data.
FIG. 3 is an illustration of a methodology 300 that for generating an RUM, in accordance with various aspects described above. The methodology for achieving fairness among contending nodes is performed by adjusting a number of carriers for which to transmit an RUM according to a level of disadvantage associated with a given node, in accordance with one or more aspects. As described herein, an RUM is sent out by a receiving node such as an access point to indicate that it is experiencing poor communication conditions and wants a reduction in the interference it faces. The RUM includes a weight that quantifies the degree of disadvantage that the node is experiencing. According to an aspect, the weight may be set as a function of a threshold referred to as the RUM sending threshold (RST). In another aspect, the weight may be set to the average throughput. Here, RST is the average throughput that the node desires. When a transmitting node such as an access terminal hears multiple RUMs, it may utilize respective weights to resolve the contention between them. If, for example, an access terminal receives multiple RUMs and the RUM with the highest weight originated from the access terminal's own access point, then it may decide to transmit a request to send data to its access point. If not, the access terminal may refrain from transmitting.
The RUM allows an access point to clear interference in its immediate neighborhood because the nodes that receive the RUM may be induced to refrain from transmitting. While weights allow for a fair contention (e.g., an access point with the greatest disadvantage wins), having a multi-carrier MAC may provide another degree of freedom. Specifically, when a system supports multiple carriers, the RUM may carry a CM (i.e., bitmask) in addition to the weight. The CM indicates the carriers on which this RUM is applicable. The number of carriers for which an access point may send RUMs may be based on its degree of disadvantage to allow nodes with very poor history to catch up more rapidly. When the RUMs are successful and the transmission rate received by the access point in response thereto improves its condition, the access point may reduce the number of carriers for which it sends RUMs. If, due to heavy congestion, the RUMs do not succeed initially and throughput does not improve, the access point may increase the number of carriers for which it sends RUMs. In a very congested situation, a access point may become highly disadvantaged and may send RUMs for all carriers, thereby degenerating to the single carrier case.
At 302, a level of disadvantage may be determined for an access point and an RUM may be generated to indicate the level of disadvantage to other nodes within “listening” range (i.e., whether they send data to the access point or not), wherein the RUM comprises information that indicates that a first predetermined threshold has been met or exceeded. The first predetermined threshold may represent, for instance, a level of interference over thermal noise (IOT), a data rate, a C/I ratio, a level of throughput, a level of spectral efficiency, a level of latency, or any other suitable measure by which a service at the first node may be measured.
At 304, the RUM may be weighted in order to indicate a degree to which a second predetermined threshold has been exceeded. The second predetermined threshold may represent for instance, a level of IOT noise, a data rate, a C/I ratio, a level of throughput, a level of spectral efficiency, a level of latency, or any other suitable measure by which a level of service at the first node may be measured. According to some aspects, the weight value may be a quantized value. Although the first and second predetermined thresholds may be substantially equal, they need not be.
The weight information carried in each RUM is intended to convey to all nodes within listening range the degree to which the access point has been starved for bandwidth due to interference from other transmissions. The weight may represent a degree of disadvantage and may be larger when the access point has been more disadvantaged and smaller when less disadvantaged. The degree of disadvantage may be derived using a variety of factors. As an example, if throughput is used to measure the degree of disadvantage, then one possible relationship may be represented as:




  
    R
    ⁢
    
      
    
    ⁢
    U
    ⁢
    
      
    
    ⁢
    M
    ⁢
    
      
    
    ⁢
    Weight
  
  =
  
    Q
    (
    
      
        R
        target
      
      
        R
        actual
      
    
    )
  




where Rtarget represents the desired throughput, Ractual is the actual throughput being achieved, and Q(x) represents the quantized value of x. When there is a single flow at the access point, then Rtarget may represent the minimum desired throughput for that flow, and Ractual may represent the average throughput that has been achieved for that flow. Note that higher value weights representing a greater degree of disadvantage is a matter of convention. As an example, assuming that a desired throughput for a node is 500 kbps. However, the node only achieves an actual throughput of 250 kbps. In this case, the weight may be calculated based on the node needing twice the current amount of throughput (500 kbps/250 kbps=2) to reach the desired throughput.

In a similar manner, a convention where higher value weights represent lower degree of disadvantage may be utilized as long as the weight resolution logic is appropriately modified. For example, one could use the ratio of actual throughput to target throughput (the inverse of the example shown above) to calculate the weights. Thus, using the above values, the ratio would be 250 kbps/500 kbps, which would be 1⁄2, or 50% of the targeted throughput.
When there are multiple flows at the access point, with potentially different Rtarget values, then the access point may choose to set the weight based on the most disadvantaged flow. For example:




  
    R
    ⁢
    
      
    
    ⁢
    U
    ⁢
    
      
    
    ⁢
    M
    ⁢
    
      
    
    ⁢
    Weight
  
  =
  
    Q
    (
    
      
        max
        j
      
      ⁢
      
        (
        
          
            R
            target
            j
          
          
            R
            actual
            j
          
        
        )
      
    
    )
  




where j is the flow index at the access point. Other options, such as basing the weight on the sum of the flow throughput, may be performed as well. Note that the functional forms used for the weights in the above description are purely for illustration. The weight may be calculated in a variety of different manners and using different metrics other than throughputs. According to a related aspect, the access point can determine whether it has data outstanding from a sender (e.g., a transmitter). This is true if it has received a request, or if it has received a prior request that it has not granted. In this case, the access point can send out an RUM when Ractual is below Rtarget.

Further, the weight may be normalized with respect to a maximum and minimum value. For example, the weight may be normalized to be a value between 0 and 1. The normalized values may be determined based on the received RUM weights, with the highest received RUM weight being set to the value of 1, while the lowest received RUM weight being set to the value of 0.
An additional dimension for collision avoidance can be realized if a list of carriers in the RUM over which the node desires to reduce interference is included along with the weight in an RUM, which may be useful when a receiving node such as an access point needs to schedule the receipt of a small amount of data over a part of the channel and does not want other nodes to back off from the entire channel. The list of carriers may be implemented with a bitmask that contains information about which carriers the access point would like to block. When each RUM is augmented with the bitmask—also referred to herein as a carrier mask (CM), a node may reduce interference from its neighboring nodes (e.g., access points or access terminals) over a subset of carriers, rather than all the carriers. This aspect may provide finer granularity in the collision avoidance mechanism, which may be important for bursty traffic. Further, the CM may also be used in the generation of requests to transmit by an access terminal in requesting a portion of the channel, as well as the generation of grants to the request by an access point in responding to the requests (e.g., the response may be the grant of a portion of the channel).
Referring to FIG. 4, where the bandwidth is being divided into 4 carriers, a CM 400 contained in an RUM will have the form XXXX, where each X is a bitmap that may be a “1”, indicating that the carrier to which it refers is blocked, or a “0”, indicating that the carrier to which it refers is not blocked. Further, in the described exemplary implementation, where the carriers are numbered “0”, “1”, “2”, “3”, a left-most bit 402 in the CM 400 is the bitmask for carrier “3”, a second bit 404 located to the right of the left-most bit 402 is the bitmask for carrier “2”, a third bit 406 located to the right of the second bit 404 is the bitmask for carrier “1”, and a fourth bit 408 located to the right of the third bit 406 is the bitmask for carrier “0”. For the aspect in which the whole bandwidth may be blocked by an RUM, the RUM will contain a CM with all “1's” indicating that the access point wants to block every carrier in the bandwidth. Still other aspects provide for employing a CM to indicate a number of carriers allocated to the access point. For instance, a 6-bit mask may be utilized to indicate that RUMs may be sent for up to six carriers. The access point may additionally request that an interfering node refrain from transmitting over all or a subset of the allocated subcarriers.
At 306 and 308, during the creation of the CM to implement partial bandwidth blocking, two of the variables that need to be determined are the number of carriers that should be blocked by the access point as well as the specific identity of the carriers that should be blocked.
At 310, the weighted and masked RUM may be transmitted to one or more other nodes. As discussed herein, when a node hears the RUM, it needs to obey the RUM only with respect to the carriers specified in the carrier mask. For example, when an access terminal needs to obey multiple RUMs from different access points, it must perform an ‘OR’ operation on the carriers in all the RUM carrier masks—the complement of this mask indicating the carriers that the access terminal is able to request from an access point. Further, an access point will also consider the RUMs from other access points only with respect to the carriers specified in the carrier mask of each RUM.
Referring again to FIG. 2, the operation of an access terminal such as access terminal 292 in requesting bandwidth in 222, 232 and 242 is now described with reference to FIG. 5, with reference also being made to FIG. 6. In 502, the access terminal 292 receives and collects the RUMs sent by any access point, including its associated access point 1 294.
In 504, in an aspect of the operation of the access terminal 292, the access terminal 292 considers only those RUMs that have a weight higher than the weight of the access point associated with the access terminal 292 (i.e., access point 1 294) from the received RUMs. Consider the example where the access terminal 292 has received RUMs from three access points in addition to one from access point 1 294, its associated access point—each of these three other RUMs having a weight higher than the weight of the RUM from the access point 1 294. These three RUMs have CMs of CM 602 (“1001”), CM 604 (“1000”), and CM 606 (“0010”), following the exemplary CM form as described in FIG. 4. Further, assume that, based on the weights of the three RUMs, the access terminal 292 must take these RUMs into account. Thus, the access terminal 292 must process the CMs contained in the three RUMs.
In 506, assuming that the access terminal 292 must consider and process the three received RUMs, the access terminal 292 will performs an “OR” operation across the CMs of these RUMs to create a composite CM 612 (i.e., a composite carrier mask). Continuing the above example, the composite CM 612 is “1011”. In one aspect, the CM from the associated access point of the access terminal 292 is not utilized.
In 508, to determine if there are any carriers on which the access terminal 292 can request bandwidth, the access terminal 292 performs a “NOT” operation on the composite CM 612 to create an inverted composite CM (I-CM) 622 that will indicate which carriers are available. The I-CM 622 may be used by the access terminal 292 in its request for bandwidth from access point 1 294.
In 510, it is determined if there are carriers over which the access terminal 292 can request bandwidth. In one aspect of the exemplary operation of the access terminal 292, the access terminal 292 will determine if there are any carriers that are not blocked through the use of the I-CM 622. For example, if there is at least a single “1” value in the I-CM 622, then there is at least one carrier available.
In 512, if there are available carriers, the access terminal 292 will create a request CM (R-CM) 632. In one aspect, the R-CM 632 is set to be the I-CM 622 created in 510. Continuing the example above where the bandwidth is divided among four (4) carriers, the R-CM 632 will also have the same form as the CM 400, which is the form “XXXX”, where each “X” may be a “1”, indicating that the access terminal 292 is requesting to transmit on that carrier, or a “0”, indicating that the access terminal 292 is not requesting to transmit on that carrier. Thus, a CM having the value “0100” may be sent in the request to the access point 1 294. In other words, the access terminal 292 will consider carriers “3”, “1”, and “0” as blocked, with carrier “2” being open. Should the access terminal 292 decide to request bandwidth; the R-CM 632 would be “00100”.
In another aspect, the R-CM 632 is based on, but not identical to the I-CM 622, as illustrated by FIG. 7, where a process 700 to determine how many carriers to be placed in a request to transmit by the access terminal 292 to the access point 1 294 is illustrated. The figure may also be used to describe the number of carriers that the access point 1 294 will grant the access terminal 292, as further explained herein.
In 702, the access terminal 292 will determine a number of carriers that it will request. This determination may be based on the amount of traffic that the access terminal 292 wishes to transmit. Such determination may also be based on, for instance, need associated with interference experienced at the access terminal, or any other suitable parameter (e.g., latency, data rate, spectral efficiency, etc.)
According to other aspects, if a weight is associated with each node, the determination of the number of carriers desired for a given transmission may be a function of the weight associated with the node, a function of weights associated with other nodes requesting carriers, a function of a number of carriers available for transmission, or any combination of the preceding factors. For example, a weight may be a function of a number of flows through the node, a level of interference experienced at the node, etc. According to other aspects, carrier selection may comprise partitioning carriers into one or more sets, and may be based in part on a received RUM that indicates that one or more carriers in a set of carriers is unavailable. The RUM may be evaluated to determine whether a given carrier is available (e.g. is not identified by the RUM). For example, a determination may be made that a given carrier is available if it is not listed in the RUM. Another example is that a carrier is deemed available even if an RUM was received for that carrier, but the advertised weight for that carrier was lower than the weight advertised in the RUM sent by the node's receiver.
In 704, the access terminal 292 will determine the specific carriers it will request in the R-CM, which may depend on specific carriers designated for particular traffic types or predetermined selection criteria. In one aspect, the carriers that are selected are a function (e.g., a subset) of the available carriers determined in step 510. Carrier selection may also be performed with a preference for available carriers. For instance, carriers that are known to have been available in a preceding transmission period may be selected before carriers that were occupied in the preceding transmission period. It should be noted that the sequence of operations illustrated by 702 and 704 may be reversed or combined in that the total number of carriers that may be requested may be dictated by the carriers available. For example, if there is only one carrier available for selection, then the sequence of operations illustrated by 702 and 704 may be merged.
In 706, the request will be sent after the R-CM has been constructed. In the above example, the only configuration possible of the R-CM is “0100” as there is only one carrier available. In another example, if all four carriers are available, and the access terminal 292 wishes to transmit over carriers 0, 1 and 3, then a R-CM of “1101” would be created.
Referring back to FIG. 5, in 514, the access terminal 292 will send a request to the access point 1 294 that will carry the R-CM that lists the carriers over which the access terminal 292 intends to transmit data. The request may be a request for a first plurality of carriers that were not blocked in a most recent time slot, a request for a second plurality of carriers if the first plurality of carriers is insufficient for data transmission. The request message sent at 514 may additionally be power-controlled to ensure a desired level of reliability at the access point 1 294.
In 516, if there are no available carriers, then the access terminal 292 will return to a “standby” mode to await the next RUM message broadcast or any message from the access point 1 294.
FIG. 8 illustrates a methodology 800 for processing requests, and generating a grant for a request to transmit, such as the access point 1 294 in 264, in accordance with one or more aspects. As discussed, each access terminal (e.g., access terminal 292) that has traffic to send may send a request to their respective access point (e.g., access point 1 294) unless it is blocked by an RUM from another access point. Based on the requests received by the access point 1 294, the access point 1 294 may decide to grant a given request on one or more requested carriers.
In 802, the access point 1 294 assesses requests. If no requests have been received, then in 804 the access point 1 294 will refrain from sending a grant message.
If at least one request has been received from an access terminal, then in 810, the access point 1 294 will determine the number and selection of the carriers it will grant in response to the request. The process illustrated in FIG. 7 as described above with reference to the generation of a request to transmit by an access terminal (e.g., access terminal 292) may also be used to describe the selection of the carriers to be granted in response to the request. In 702, the access point 1 294 will determine the number of carriers it will assign to each access terminal (e.g., access terminal 292) as a part of its process of assigning bandwidth to all the access terminals that it serves from which it has received a request. Then, in 704, the access point 1 294 will determine the specific carrier(s), if any, over which it will grant each access terminal (e.g., access terminal 292) permission to transmit.
In an aspect, an access point is limited in its ability to assign carriers in the grant in response to each request from an access terminal. For example, the access point 1 294 may be limited to assigning only the carriers that correspond to the carriers found in the R-CM contained in the previously received request from the access terminal 292. In other words, the access point may assign to a particular access terminal only the carriers found in the group of carriers listed by the CM contained in the previous request (i.e., R-CM) from a particular access terminal.
In 812, once all possible grants are generated in 810, then they are sent to their respective requesting access terminals (e.g. the access terminal 292).
According to related aspects, an access point may periodically and/or continuously assess whether it has data outstanding from one or more of the access terminals that it serves. This is true if the access point has received a current request or if it has received a prior request that it has not granted. In either case, the access point may send out a grant when the access point determines that such a grant is warranted. Further, based on a determined grant rate (e.g., whenever the average transmission rate is below a target rate), the access point may send an RUM to reserve more bandwidth for its associated access terminals. Additionally, upon the receipt of the grant, the access terminal may transmit a data frame, which may be received by the access point.
FIG. 9 shows an exemplary wireless communication system 900. The wireless communication system 900 depicts one access point and one terminal for sake of brevity. However, it is to be appreciated that the system can include more than one access point and/or more than one terminal, wherein additional access points and/or terminals can be substantially similar or different for the exemplary access point and terminal described below. In addition, it is to be appreciated that the access point and/or the terminal can employ the methods and/or systems described herein to facilitate wireless communication there between. For example, nodes in the system 900 (e.g., access point and/or terminal) may store and execute instructions for performing any of the above-described methods (e.g., generating RUMS, responding to RUMs, determining node disadvantage, selecting a number of carriers for RUM transmission, etc.) as well as data associated with performing such actions and any other suitable actions for performing the various protocols described herein.
Referring now to FIG. 9, on a downlink, at access point 905, a transmit (TX) data processor 910 receives, formats, codes, interleaves, and modulates (or symbol maps) traffic data and provides modulation symbols (“data symbols”). A symbol modulator 915 receives and processes the data symbols and pilot symbols and provides a stream of symbols. Specifically, the symbol modulator 915 multiplexes data and pilot symbols and provides them to a transmitter unit (TMTR) 920. Each transmit symbol may be a data symbol, a pilot symbol, or a signal value of zero. The pilot symbols may be sent continuously in each symbol period. The pilot symbols can be frequency division multiplexed (FDM), orthogonal frequency division multiplexed (OFDM), time division multiplexed (TDM), or code division multiplexed (CDM).
TMTR 920 receives and converts the stream of symbols into one or more analog signals and further conditions (e.g. amplifies, filters, and frequency upconverts) the analog signals to generate a downlink signal suitable for transmission over the wireless channel. The downlink signal is then transmitted through an antenna 925 to the terminals. At terminal 930, an antenna 935 receives the downlink signal and provides a received signal to a receiver unit (RCVR) 940. Receiver unit 940 conditions (e.g., filters, amplifies, and frequency downconverts) the received signal and digitizes the conditioned signal to obtain samples. A symbol demodulator 945 demodulates and provides received pilot symbols to a processing system 950 for channel estimation. Symbol demodulator 945 further receives a frequency response estimate for the downlink from processing system 950, performs data demodulation on the received data symbols to obtain data symbol estimates (which are estimates of the transmitted data symbols), and provides the data symbol estimates to an RX data processor 955, which demodulates (i.e., symbol demaps), deinterleaves, and decodes the data symbol estimates to recover the transmitted traffic data. The processing by symbol demodulator 945 and RX data processor 955 is complementary to the processing by symbol modulator 915 and TX data processor 910, respectively, at access point 905.
On the uplink, a TX data processor 960 processes traffic data and provides data symbols to a symbol modulator 965 that receives and multiplexes the data symbols with pilot symbols, performs modulation, and to create a stream of symbols. A transmitter unit 970 then receives and processes the stream of symbols to generate an uplink signal, which is transmitted by the antenna 935 to the access point 905.
At access point 905, the uplink signal from terminal 930 is received by the antenna 925 and processed by a receiver unit 975 to obtain samples. A symbol demodulator 980 then processes the samples and provides received pilot symbols and data symbol estimates for the uplink. An RX data processor 985 processes the data symbol estimates to recover the traffic data transmitted by terminal 930. A processing system 990 performs channel estimation for each active terminal transmitting on the uplink. Multiple terminals may transmit pilot concurrently on the uplink on their respective assigned sets of pilot subbands, where the pilot subband sets may be interlaced.
Processing systems 990 and 950 direct (e.g., control, coordinate, manage, etc.) operation at access point 905 and terminal 930, respectively. Respective processing systems 990 and 950 can be associated with memory units (not shown) that store program codes and data. Processing systems 990 and 950 can also perform computations to derive frequency and impulse response estimates for the uplink and downlink, respectively. The processing systems 990 and 950 may include one or more processors. A processor may be a general purpose microprocessor, a microcontroller, a Digital Signal Processor (DSP), an Application Specific Integrated Circuit (ASIC), a Field Programmable Gate Array (FPGA), digital signal processing devices (DSPDs), a Programmable Logic Device (PLD), logic circuits, discrete hardware components, or any other suitable entity that can perform calculations or other manipulations of information.
The processing system may also include one or more machine-readable media provide data storage, including look up tables for translating identifiers to IP addresses for access terminal applications, and/or to support software applications. Software shall be construed broadly to mean instructions, programs, code, or any other electronic media content whether referred to as software, firmware, middleware, microcode, hardware description language, or otherwise. Machine-readable media may include storage integrated with a processor, such as might be the case with an ASIC. Machine-readable media may also include storage external to a processor, such as a Random Access Memory (RAM), a flash memory, a Read Only Memory (ROM), a Programmable Read-Only Memory (PROM), an Erasable PROM (EPROM), registers, a hard disk, a removable disk, a CD-ROM, a DVD, or any other suitable storage device. In addition, machine-readable media may include a transmission line or a carrier wave that encodes a data signal. Those skilled in the art will recognize how best to implement the described functionality for the processing system.
For a multiple-access system (e.g., FDMA, OFDMA, CDMA, TDMA, etc.), multiple terminals can transmit concurrently on the uplink. For such a system, the pilot subbands may be shared among different terminals. The channel estimation techniques may be used in cases where the pilot subbands for each terminal span the entire operating band (possibly except for the band edges). Such a pilot subband structure would be desirable to obtain frequency diversity for each terminal. The techniques described herein may be implemented by various means. For example, these techniques may be implemented in hardware, software, or a combination thereof.
Now turning to FIGS. 10-12 and to the various modules described with regard thereto, it will be appreciated that a module for transmitting may comprise, for example, a transmitter, and/or may be implemented in a processor, etc. Similarly, a module for receiving may comprise a receiver and/or may be implemented in a processor, etc. Additionally, a module for comparing, determining, calculating, and/or performing other analytical actions, may comprise a processor that executes instructions for performing the various and respective actions.
FIG. 10 is an illustration of a channel selection apparatus 1000 that facilitates wireless data communication, in accordance with various aspects. The channel selection apparatus 1000 is represented as a series of interrelated functional blocks that can represent functions implemented by a processor, software, or combination thereof (e.g., firmware). For example, the channel selection apparatus 1000 may provide modules for performing various acts such as are described above with regard to the various figures. The channel selection apparatus 1000 comprises a module for determining 1002 a number of carriers desired for transmission by a node such as an access terminal. When used for an access point, the module for determining 1002 may also determine a number of carriers to be granted based on the requested desired number of channels. The determination may be performed as a function of a weight associated with a node in which the apparatus is employed, a weight associated with one or more other nodes, a number of carriers available for transmission, etc. Additionally, each weight may be a function of a number of flows supported by the node associated with the weight. Additionally or alternatively, a given weight may be a function of interference experienced by the node.
The channel selection apparatus 1000 additionally comprise a module for selecting 1004 that selects carriers for which the node may transmit a request. The module for selecting 1004 additionally may evaluate a received RUM to determine which carriers are available and which are not. For instance, each RUM may comprise information associated with unavailable carriers, and the module for selecting 1054 may determine that a given carrier that is not indicated by the RUM is available. A module for sending 1006 may transmit a request for at least one carrier selected by the module for selecting 1004. It will be appreciated that the channel selection apparatus 1000 may be employed in an access point or an access terminal, and may comprise any suitable functionality to carry out the various methods described herein.
FIG. 11 is an illustration of an RUM generation apparatus 1100 that facilitates wireless communication using RUMs in accordance with one or more aspects. The RUM generation apparatus 1100 is represented as a series of interrelated functional blocks, which can represent functions implemented by a processor, software, or combination thereof (e.g., firmware). For example, the RUM generation apparatus 1100 may provide modules for performing various acts such as are described above with regard to previous figures. The RUM generation apparatus 1100 comprises a module for determining 1102 that determines a level of disadvantage for a node, and a module for generating an RUM 1104 that generates an RUM if the module for determining 1102 determines that a first predetermined threshold has been exceeded (e.g., a level of received service at a node is at or below a predetermined threshold level). Alternatively, the module for determining 1102 may also or alternatively determine if a level of interference is above a predetermined threshold level before generating the RUM. The predetermined threshold may be associated with and/or represent an IOT, a data rate, a C/I, a level of throughput, a level of spectral efficiency, a level of latency, etc. A module for selecting 1108 may select one or more resources for which to send the RUM, and the module for generating the RUM 1104 may then indicate such carriers in the RUM. A module for transmitting 1110 may then transmit the RUM.
The RUM generation apparatus 1100 may additionally comprise a module for weighting the RUM 1106, which may weight the RUM with a value indicative of a degree to which a second predetermined threshold has been exceeded, which may comprise determining a ration of an actual value of a parameter (e.g., IOT, a data rate, C/I, a level of throughput, a level of spectral efficiency, a level of latency, etc.) achieved at the node to a target, or desired, value. Additionally, the weighted value may be a quantized value.
The module for selecting resources 1108 may adjust a number of selected resources for which a subsequent RUM is transmitted based on a determination by the module for determining 1102 that the level of received service has improved in response to a previous RUM. For instance, in such a scenario, the module for selecting 1108 may reduce a number of resources indicated in a subsequent RUM in response to an improved level of received service at the node, and may increase a number of selected resources in response to a decreased or static level of received service. The resources could involve the number and identity of the carriers that are selected to be included in the RUM (e.g. in the CM of the RUM).
It will be appreciated that the RUM generation apparatus 1100 may be employed in an access point, an access terminal, etc., and may comprise any suitable functionality to carry out the various methods described herein.
FIG. 12 is an illustration of a comparison apparatus 1200 that facilitates comparing relative conditions at nodes in a wireless communication environment to determine which nodes are most disadvantaged, in accordance with one or more aspects. The comparison apparatus 1200 is represented as a series of interrelated functional blocks, which can represent functions implemented by a processor, software, or combination thereof (e.g., firmware). For example, the comparison apparatus 1200 may provide modules for performing various acts such as are described above with regard to various figures. The comparison apparatus 1200 may be employed in a first node and comprises a module for receiving RUMs 1202 that receives RUMs from at least one second node. The comparison apparatus 1200 may additionally comprise a module for determining condition 1204 that determines a condition of the second node based on information associated with an RUM received from the second node, and a module for comparing 1206 that compares a condition of the first node to the determined condition of the second node. The module for determining 1204 may then further determine whether to transmit data over a first carrier based on the comparison.
According to various other aspects, the determination of whether to transmit may be based on whether the first node's condition is better, substantially equal to, or worse than the second node's condition. Additionally, the module for determining 1204 may transmit a data signal over the first carrier, a request-to-send message over the first carrier, or a request-to-send message over a second carrier. In the latter case, the request-to send message sent over the second carrier may comprise a request to transmit data over the first carrier. It will be appreciated that the comparison apparatus 1200 may be employed in an access point or an access terminal, and may comprise any suitable functionality to carry out the various methods described herein.
FIG. 13 is an illustration of a reservation apparatus 1300 that facilitates reserving resources based on a determined condition, in accordance with one or more aspects. The reservation apparatus 1300 is represented as a series of interrelated functional blocks, which can represent functions implemented by a processor, software, or combination thereof (e.g., firmware). For example, the reservation apparatus 1300 may provide modules for performing various acts such as are described above with regard to various figures. The reservation apparatus 1300 may be employed in a first node and comprises a module 1302 for determining a condition related to a plurality of resources. The reservation apparatus 1300 may additionally comprise a module 1304 for selecting a desired set of resources from the plurality of resources based on the condition, and a module 1306 for transmitting a signal indicating the desired set of resources for which to send an RUM.
FIG. 14 is an illustration of a resource management apparatus 1400 that facilitates managing resources based on a received RUM, in accordance with one or more aspects. The resource management apparatus 1400 is represented as a series of interrelated functional blocks, which can represent functions implemented by a processor, software, or combination thereof (e.g., firmware). For example, the management apparatus 1400 may provide modules for performing various acts such as are described above with regard to various figures. The resource management apparatus 1400 may be employed in a first node and comprises a module 1402 receiving at least one RUM, each RUM having both a listing of a subset of a plurality of resources and a weight associated with the listing indicating a condition related to the plurality of resources. The resource management apparatus 1400 may additionally comprise a module 1404 for comparing the associated weight with a second weight, and upon comparing the associated weight with the second weight, a module 1406 for assigning a status to the subset of the plurality of resources based on the comparison.
Those of skill in the art would understand that information and signals may be represented using any of a variety of different technologies and techniques. For example, data, instructions, commands, information, signals, bits, symbols, and chips that may be referenced throughout the above description may be represented by voltages, currents, electromagnetic waves, magnetic fields or particles, optical fields or particles, or any combination thereof.
Those of skill in the art would further appreciate that the various illustrative logical blocks, modules, circuits, and algorithm steps described in connection with the aspects disclosed herein may be implemented as electronic hardware, computer software, or combinations of both. To clearly illustrate this interchangeability of hardware and software, various illustrative components, blocks, modules, circuits, and steps have been described above generally in terms of their functionality. Whether such functionality is implemented as hardware or software depends upon the particular application and design constraints imposed on the overall system. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the present disclosure.
The steps of a method or algorithm described in connection with the aspects disclosed herein may be embodied directly in hardware, in a software module executed by a processor, or in a combination of the two. A software module may reside in RAM memory, flash memory, ROM memory, EPROM memory, EEPROM memory, registers, hard disk, a removable disk, a CD-ROM, or any other form of storage medium known in the art. An exemplary storage medium is coupled to the processor such the processor can read information from, and write information to, the storage medium. In the alternative, the storage medium may be integral to the processor. The processor and the storage medium may reside in an ASIC. The ASIC may reside in a user terminal. In the alternative, the processor and the storage medium may reside as discrete components in a user terminal. Moreover, in some aspects any suitable computer-program product may comprise a computer-readable medium having codes (e.g., executable by at least one computer) relating to one or more of the aspects of the disclosure. In some aspects a computer program product may comprise packaging materials.
The teachings herein may be incorporated into (e.g., implemented within or performed by) a variety of apparatuses (e.g., devices). For example, each node may be configured, or referred to in the art, as an access point (AP), NodeB, Radio Network Controller (RNC), eNodeB, Base Station Controller (BSC), Base Transceiver Station (BTS), Base Station (BS), Transceiver Function (TF), Radio Router, Radio Transceiver, Basic Service Set (BSS), Extended Service Set (ESS), Radio Base Station (RBS), or some other terminology. Certain nodes also may be referred to as subscriber stations. A subscriber station also may be known as a subscriber unit, a mobile station, a remote station, a remote terminal, an access terminal, a user terminal, a user agent, a user device, or user equipment. In some implementations a subscriber station may comprise a cellular telephone, a cordless telephone, a Session Initiation Protocol (SIP) phone, a wireless local loop (WLL) station, a personal digital assistant (PDA), a handheld device having wireless connection capability, or some other suitable processing device connected to a wireless modem. Accordingly, one or more aspects taught herein may be incorporated into a phone (e.g., a cellular phone or smart phone), a computer (e.g., a laptop), a portable communication device, a portable computing device (e.g., a personal data assistant), an entertainment device (e.g., a music or video device, or a satellite radio), a global positioning system device, or any other suitable device that is configured to communicate via a wireless medium.
A wireless device may communicate via one or more wireless communication links that are based on or otherwise support any suitable wireless communication technology. For example, in some aspects a wireless device may associate with a network. In some aspects the network may comprise a body area network or a personal area network (e.g., an ultra-wideband network). In some aspects the network may comprise a local area network or a wide area network. A wireless device may support or otherwise use one or more of a variety of wireless communication technologies, protocols, or standards such as, for example, CDMA, TDMA, OFDM, OFDMA, WiMAX, and Wi-Fi. Similarly, a wireless device may support or otherwise use one or more of a variety of corresponding modulation or multiplexing schemes. A wireless device may thus include appropriate components (e.g., air interfaces) to establish and communicate via one or more wireless communication links using the above or other wireless communication technologies. For example, a device may comprise a wireless transceiver with associated transmitter and receiver components that may include various components (e.g., signal generators and signal processors) that facilitate communication over a wireless medium.
The various illustrative logical blocks, modules, and circuits described in connection with the aspects disclosed herein may be implemented within or performed by an integrated circuit (IC), an access terminal, or an access point. The IC may comprise a general purpose processor, a DSP, an ASIC, a FPGA or other programmable logic device, discrete gate or transistor logic, discrete hardware components, electrical components, optical components, mechanical components, or any combination thereof designed to perform the functions described herein, and may execute codes or instructions that reside within the IC, outside of the IC, or both. A general purpose processor may be a microprocessor, but in the alternative, the processor may be any conventional processor, controller, microcontroller, or state machine. A processor may also be implemented as a combination of computing devices, e.g., a combination of a DSP and a microprocessor, a plurality of microprocessors, one or more microprocessors in conjunction with a DSP core, or any other such configuration.
The previous description of the disclosed aspects is provided to enable any person skilled in the art to make or use the present disclosure. Various modifications to these aspects will be readily apparent to those skilled in the art, and the generic principles defined herein may be applied to other aspects without departing from the scope of the present disclosure. Thus, the present disclosure is not intended to be limited to the aspects shown herein but is to be accorded the widest scope consistent with the principles and novel features disclosed herein.

## Claims

1. A method of wireless communication comprising:
determining, at a first device, a condition related to a plurality of resources;
determining a weight of the first device based on the condition, wherein the weight indicates a degree to which the first device is disadvantaged;
selecting a desired set of resources from the plurality of resources based on the condition; and
transmitting, by the first device, a resource utilization message (RUM) comprising the weight and an indication of the desired set of resources, wherein the RUM requests one or more apparatuses receiving the RUM to refrain from using the desired set of resources.

2. The method of claim 1, wherein the condition comprises at least one of a level of interference over thermal noise (IOT), a carrier-to-interference ratio (C/I), and a level of spectral efficiency for the plurality of resources.

3. The method of claim 1, wherein the condition comprises a quality of service requirement for the plurality of resources, wherein the QoS requirement comprises at least one of a data rate, an amount of data to transmit, a level of latency, and a traffic class.

4. The method of claim 1, wherein the determination comprises:
receiving a signal; and
deriving the condition from the signal.

5. The method of claim 4, wherein the signal comprises an indication of at least one of a level of interference over thermal noise (IOT), a carrier-to-interference ratio (C/I), a level of spectral efficiency, and at least one received RUM for the plurality of resources at an associated node.

6. The method of claim 1, wherein the selection comprises:
selecting a desired set of the plurality of resources based on the weight.

7. The method of claim 1, wherein the selection comprises:
determining a number of resources based on the condition; and
selecting a subset of the plurality of resources based on the number.

8. The method of claim 1, wherein the selection comprises ordering the plurality of resources according to the condition.

9. The method of claim 1, wherein the RUM comprises an element list comprising a plurality of elements, each of the elements being associated with the condition.

10. The method of claim 1, wherein the RUM comprises at least one element list, wherein each element list comprises at least one resource associated with a quality of service requirement.

11. The method of claim 1, wherein the plurality of resources comprises at least one resource from a group consisting of a plurality of interlaces, a plurality of time slots, and a plurality of frequencies.

12. The method of claim 1, wherein the weight indicates a level of performance achieved at the first device relative to a target level of performance.

13. The method of claim 12, wherein the weight comprises a ratio of the level of performance achieved at the first device and the target level of performance.

14. The method of claim 12, wherein the level of performance achieved at the first device comprises an average level of performance achieved at the first device.

15. The method of claim 12, wherein the weight indicates a throughput achieved at the first device relative to a target throughput.

16. The method of claim 15, wherein the weight comprises a ratio of the throughput achieved at the first device and the target throughput.

17. The method of claim 15, wherein the throughput achieved at the device comprises an average throughput achieved at the first device.

18. The method of claim 1, wherein the condition comprises interference caused by the one or more apparatuses receiving the RUM.

19. An apparatus comprising:
means for determining a condition related to a plurality of resources;
means for determining a weight of the apparatus based on the condition, wherein the weight indicates a degree to which the apparatus is disadvantaged;
means for selecting a desired set of resources from the plurality of resources based on the condition; and
means for transmitting a resource utilization message (RUM) comprising the weight and an indication of the desired set of resources, wherein the RUM requests one or more apparatuses receiving the RUM to refrain from using the desired set of resources.

20. The apparatus of claim 19, wherein the condition comprises at least one of a level of interference over thermal noise (IOT), a carrier-to-interference ratio (C/I), and a level of spectral efficiency for the plurality of resources.

21. The apparatus of claim 19, wherein the condition comprises a quality of service (QoS) requirement for the plurality of resources, wherein the QoS requirement comprises at least one of a data rate, an amount of data to transmit, a level of latency, and a traffic class.

22. The apparatus of claim 19, wherein the determination means comprises:
means for receiving a signal; and
means for deriving the condition from the signal.

23. The apparatus of claim 22, wherein the signal comprises an indication of at least one of a level of interference over thermal noise (IOT), a carrier-to-interference ratio (C/I), a level of spectral efficiency, and at least one received RUM for the plurality of resources at an associated node.

24. The apparatus of claim 19, wherein the selection means comprises:
means for selecting a desired set of the plurality of resources based on the weight.

25. The apparatus of claim 19, wherein the selection means comprises:
means for determining a number of resources based on the condition; and
means for selecting a subset of the plurality of resources based on the number.

26. The apparatus of claim 19, wherein the selection means comprises means for ordering the plurality of resources according to the condition.

27. The apparatus of claim 19, wherein the RUM comprises an element list comprising a plurality of elements, each of the elements being associated with the condition.

28. The apparatus of claim 19, wherein the RUM comprises at least one element list, wherein each element list comprises at least one resource associated with a quality of service requirement.

29. The apparatus of claim 19, wherein the plurality of resources comprises at least one resource from a group consisting of a plurality of interlaces, a plurality of time slots, and a plurality of frequencies.

30. An access point comprising:
an antenna; and,
a processing system coupled to the antenna and configured to:
determine a condition related to a plurality of resources detected via the antenna;

determine a weight of the access point based on the condition, wherein the weight indicates a degree to which the access point is disadvantaged;
select a desired set of resources from the plurality of resources based on the condition; and,
transmit a resource utilization message (RUM) comprising the weight and an indication of the desired set of resources, wherein the RUM requests one or more apparatuses receiving the RUM to refrain from using the desired set of resources.

31. An access terminal comprising:
a transducer; and,
a processing system coupled to the transducer and configured to:
determine a condition related to a plurality of resources usable to communicate data usable with the transducer;

determine a weight of the access terminal based on the condition, wherein the weight indicates a degree to which the access terminal is disadvantaged;
select a desired set of resources from the plurality of resources based on the condition; and,
transmit a resource utilization message (RUM) comprising the weight and an indication of the desired set of resources, wherein the RUM requests one or more apparatuses receiving the RUM to refrain from using the desired set of resources.

32. A computer program product for wireless communication comprising:
a non-transitory computer readable storage medium comprising codes executable to:
determine, at a first device, a condition related to a plurality of resources;
determine a weight of the first device based on the condition, wherein the weight indicates a degree to which the first device is disadvantaged;
select a desired set of resources from the plurality of resources based on the condition; and,
transmit, by the first device, a resource utilization message (RUM) comprising the weight and an indication of the desired set of resources, wherein the RUM requests one or more apparatuses receiving the RUM to refrain from using the desired set of resources.

33. An apparatus for wireless communication comprising:
a processing system configured to:
determine a condition related to a plurality of resources receivable;

determine a weight of the apparatus based on the condition, wherein the weight indicates a degree to which the apparatus is disadvantaged;
select a desired set of resources from the plurality of resources based on the condition; and
transmit a resource utilization message (RUM) comprising the weight and an indication of the desired set of resources, wherein the RUM requests one or more apparatuses receiving the RUM to refrain from using the desired set of resources.

34. The apparatus of claim 33, wherein the condition comprises at least one of a level of interference over thermal noise (IOT), a carrier-to-interference ratio (C/I), and a level of spectral efficiency for the plurality of resources.

35. The apparatus of claim 33, wherein the condition comprises a quality of service (QoS) requirement for the plurality of resources, wherein the QoS requirement comprises at least one of a data rate, an amount of data to transmit, a level of latency, and a traffic class.

36. The apparatus of claim 33, wherein the processing system is further configured to:
receive a signal; and
derive the condition from the signal.

37. The apparatus of claim 36, wherein the signal comprises an indication of at least one of a level of interference over thermal noise (IOT), a carrier-to-interference ratio (C/I), a level of spectral efficiency, and at least one received RUM for the plurality of resources at an associated node.

38. The apparatus of claim 33, wherein the processing system is further configured to:
select a desired set of the plurality of resources based on the weight.

39. The apparatus of claim 33, wherein the processing system is further configured to:
determine a number of resources based on the condition; and
select a subset of the plurality of resources based on the number.

40. The apparatus of claim 33, wherein the processing system is further configured to order the plurality of resources according to the condition.

41. The apparatus of claim 33, wherein the RUM comprises an element list comprising a plurality of elements, each of the elements being associated with the condition.

42. The apparatus of claim 33, wherein the RUM comprises at least one element list, wherein each element list comprises at least one resource associated with a quality of service requirement.

43. The apparatus of claim 33, wherein the plurality of resources comprises at least one resource from a group consisting of a plurality of interlaces, a plurality of time slots, and a plurality of frequencies.