FIELD OF THE INVENTION  
       [0001]     The present invention relates to a wireless communication system. More particularly, the present invention is related to a wireless data transfer system that can dynamically prioritize communications between several differing remote wireless devices, differing datastreams, and differing message types.  
       BACKGROUND  
       [0002]     A popular Medium Access Control (MAC) method for wireless local area networks is a Carrier Sense Multiple Access Collision Avoidance (CSMA/CA). This method works by measuring the time since the last activity on the shared communication channel in equal length contention slots. Each transmitting unit in the network generates a random number, then counts the number of contention slots until the number is reached. At that point the transmitting node can grab the channel and other nodes must suspend their count until the channel is free again.  
         [0003]     If, by chance, two nodes generate the same or random number and, thus, collide, they determine that the packet transfer was unsuccessful through the acknowledgement process. In this case the nodes generate a new random number to start counting slots from zero to the next time the channel is ready to transmit.  
         [0004]     In several wireless networking protocols, such as the 802.11 wireless protocol, a transmitting node can reserve a particular slot through transmitting at that time. In this case, a node can reserve a set amount of time for the transmission cycle of the particular data.  
         [0005]     For example, in the 802.11 protocol, the transmitting nodes reserves a particular transmission length of time by initiating a Request To Send (RTS) packet. Inside the packet, the RTS contains a field that reserves a particular amount of time for the transmission of the data. The receiving node receives the RTS and the associated reservation of time.  
         [0006]     The receiving node then sends a Clear To Send (CTS) response. In the 802.11 protocol, the CTS also contains the reservation parameter that was sent in the RTS. In this manner, all nodes in range of the transmitting node receive the RTS and the associated reservation. Additionally, all the nodes within the transmitting range of the receiving node receive the CTS with the corresponding reservation. As such, all the nodes within the transmission range of both the transmitting node and receiving node will know the appropriate reservation for the channel. In this case all the nodes within range of both the transmitting node and receiving node will know the appropriate reservation. From this manner all the nodes within receiving range can determine not to transmit and interrupt the data link between the transmitting node and the receiving node. In this manner, the reservation effectively quiets communication around the transmitter and the receiver for the reserved period. However, a proper prioritization may not be accomplished by such a system. The backoff times may tend to overlap, and transmissions from a more important wireless network device may get put back when the random backoff from a not as important is less than the backoff in wireless network device having a more important transmissions.  
       SUMMARY  
       [0007]     A wireless network device that assigns priorities to communications in a network is envisioned. The wireless network device has a first circuit for receiving wireless messages from remote wireless network devices and a second circuit operable to send wireless messages to the remote wireless network devices. A third circuit makes a determination of the relative priorities of the remote wireless network devices. The wireless network device is operable to form a message to the remote wireless network devices, where the message is used to set a backoff time in the remote wireless network devices. The backoff time sent to the remote wireless network device is related to the relative priority of the remote wireless network device.  
     
    
     BRIEF DESCRIPTION OF THE DRAWINGS  
       [0008]     The accompanying drawings, which are incorporated into and constitute a part of this specification, illustrate one or more embodiments of the present invention and, together with the detailed description, serve to explain the principles and implementations of the invention.  
         [0009]     In the drawings:  
         [0010]      FIG. 1  is a schematic diagram of a wireless network implementing a prioritized operation according to the invention.  
         [0011]      FIG. 2  is a timing diagram showing an exemplary backoff scheme that could be used with the priority-setting wireless network device of  FIG. 1 .  
         [0012]      FIG. 3  is a schematic block diagram of an exemplary priority-setting wireless network device of  FIG. 1 .  
         [0013]      FIG. 4  is an exemplary block diagram of an exemplary operation of the priority-setting wireless network device of  FIG. 1 .  
         [0014]      FIG. 5  is a block diagram detailing the use of the system in a wireless network with different types of devices according to the invention.  
     
    
     DETAILED DESCRIPTION  
       [0015]     Embodiments of the present invention are described herein in the context of a system and method for determining priorities in a wireless network. Those of ordinary skill in the art will realize that the following detailed description of the present invention is illustrative only and is not intended to be in any way limiting. Other embodiments of the present invention will readily suggest themselves to such skilled persons having the benefit of this disclosure. Reference will now be made in detail to implementations of the present invention as illustrated in the accompanying drawings. The same reference indicators will be used throughout the drawings and the following detailed description to refer to the same or like parts.  
         [0016]     In the interest of clarity, not all of the routine features of the implementations described herein are shown and described. It will, of course, be appreciated that in the development of any such actual implementation, numerous implementation-specific decisions must be made in order to achieve the developer&#39;s specific goals, such as compliance with application- and business-related constraints, and that these specific goals will vary from one implementation to another and from one developer to another. Moreover, it will be appreciated that such a development effort might be complex and time-consuming, but would nevertheless be a routine undertaking of engineering for those of ordinary skill in the art having the benefit of this disclosure.  
         [0017]     In accordance with the present invention, the components, process steps, and/or data structures may be implemented using various types of digital systems, including hardware, software, or any combination thereof. In addition, those of ordinary skill in the art will recognize that devices of a less general purpose nature, such as hardwired devices, field programmable gate arrays (FPGAs), application specific integrated circuits (ASICs), or the like, may also be used without departing from the scope and spirit of the inventive concepts disclosed herein.  
         [0018]      FIG. 1  is a schematic diagram of a wireless network implementing a prioritized operation according to the invention. A wireless network  10  has a wireless network device  12  and wireless network devices  14  and  16 .  
         [0019]     The wireless network device  12  has a transmitter  15  and a receiver  17 , by which it communicates with the other wireless network devices  14  and  16 . The wireless network device  12  also has a prioritizer  18 . This prioritizer  18  allows the wireless network device  12  to assign priorities to any of the wireless network devices that it is in communication with.  
         [0020]     The wireless network device  12  is in communication with the other wireless network devices in wireless network  10 , namely the wireless network device  14  and the wireless network device  16 . The wireless network device  12  can assign a priority to the individual wireless network devices within the wireless network  10 . Or, it can assign priorities to specific data streams to an individual wireless network device, or assign priorities to specific types of messages. In this manner the wireless network device  12  can stratify the communications in the network and ease their workload.  
         [0021]     As stated before, this prioritizer allows the wireless network device  12  determine the priority schedules over the individual wireless network devices within the wireless network device  10 , specific types of messages, or specific datastreams. The prioritizer  18  can operate through straight assignments or with computed priorities. The priorities may be specifically set or altered through a user interfaces and allow am operator to set the various priorities of the wireless network  10 . Or, the prioritizer  18  can respond to requests from the individual wireless network device for increasing or decreasing the priorities.  
         [0022]     In  FIG. 1 , the wireless network device  12  is in communication with the wireless network device  14  and the wireless network device  16 . In the first mode of operation, the wireless network device  12  monitors the amounts and frequency of communication and data to the various wireless network devices coupled in the wireless network  10 . The number and frequency of communications in associated with the external wireless network devices are relayed to the prioritizer  18 . The prioritizer  18  may increase or decrease the priority of a specific wireless network device, a specific message type, or specific message streams based upon traffic flow.  
         [0023]     For example, assume that initially the traffic between the wireless network device  12  and the wireless network device  14  is comparably equal to the traffic between the wireless network device  12  and the wireless network device  16 . However, assume that the traffic between the wireless network device  12  and the wireless network device  14  increases, such that measurably more traffic is passed between the wireless network device  12  and wireless network device  14 . This increased traffic flow between the wireless network device  12  and the wireless network device  14  is relayed to the prioritizer  18 .  
         [0024]     The prioritizer  18  uses this communication data to determine that an increase in network data between the wireless network device  12  and the wireless network device  14  warrants an increase in priority. The prioritizer  18  indicates an increase in the priority of the communication link between wireless network device  12  and the wireless network device  14  to the wireless network device  12 . In turn, this increase in priority is relayed by the wireless network device  12  to the wireless network device  14 . Thus, an increased priority is effectuated between the wireless network device  12  and the wireless network device  14 .  
         [0025]     Next, assume that the data traffic between the wireless network device  12  and the wireless network device  16  decreases. In this case, in a manner substantially similar to that described above for the data traffic between the wireless network device  12  and the wireless network device  14 , the prioritizer  18  determines that a decrease in communication traffic between the wireless network device  12  and the wireless network device  16  warrants a decrease in priority of such communication. To effectuate this, the prioritizer  18  indicates a decrease in the priority of the communication link between wireless network device  12  and the wireless network device  16  to the wireless network device  12 . In turn, this decrease in priority is relayed by the wireless network device  12  to the wireless network device  14 . Thus, an increased priority is effectuated between the wireless network device  12  and the wireless network device  14 .  
         [0026]     The method by which the prioritizer could determine such changes in the priority of the network traffic may happen in numerous ways. Numerous statistical and computational methods are known, and should be contemplated as part of this disclosure.  
         [0027]     In another operation, the individual wireless network device communicatively coupled to the wireless network device  12  requests a priority change. For example, assume that wireless network device  14  determines that a large amount of data is needed to be transmitted to the wireless network device  12 . In this case, the wireless network device  14  requests that the wireless network device increase the priority of the transmission link between wireless network device  12  and the wireless network device  14 . The wireless network device  14  communicates such a request to the wireless network device  12 , from which the request is sent to the prioritizer  18 . The prioritizer  18  may accept, in whole or in part, or deny such request from the wireless network device  14  for a change in priority.  
         [0028]     In one aspect, the prioritizer  18  compares the request of priority to current or historical network characteristics or operational parameters. If the request is acceptable, the prioritizer alters the internal representation of the priority and, as such, accepts the request for change. If the request does not fit into the operational scheme of the network, the request is denied.  
         [0029]     It should be noted that specific external wireless network devices can be excluded from request. Thus, any request from one of the excluded devices would be automatically rejected.  
         [0030]     The denial or the acceptance of the request by the prioritizer  18  is relayed from the wireless network device  12  to the wireless network device  14 . As such a priority change may be initiated by a remote wireless device in this manner.  
         [0031]     In another aspect, the request may be granted in part. Assume that the wireless network device  14  requests a priority change of two levels. The prioritize can grant a partial acceptance of only one level as opposed to the full two level request.  
         [0032]     One way to implement a priority scheme between wireless network devices in a wireless network is to alter the backoff parameter in the operation of the wireless network device. In an exemplary embodiment, the 802.11 wireless specification uses Carrier Sense/Multiple Access Collision Avoidance (CSMA/CA). This method requires that each station listen for other transmitters. If the channel is idle, the station may transmit.  
         [0033]     However, if the channel is busy, each station waits until the current transmission stops, and then enters into a random backoff procedure. A random wait time with a maximum backoff is established at the wireless network device. This value is placed into a counter, and the number is decremented. When the counter counts down to zero, the wireless network device attempts to transmit. If a transmission is occurring at this time, a new random generated backoff is generated. This scheme prevents multiple stations from seizing the medium immediately after the completion of the preceding transmission.  
         [0034]     One proposed method of establishing priorities among wireless network devices is to use differing backoff parameters depending upon the priority level. The following Table 1 illustrates the implementation of a ten level priority system and associated backoff amounts.  
                                                                 Priority Level   Backoff Time                                        1   5           2   10           3   15           4   20           5   25                      
 
         [0035]     It should be noted that in the typical 802.11 standard, the backoff is set to the same amount of each wireless network device. Thus, each wireless network device uses the same maximum bounds for the randomly generated backoff.  
         [0036]     In this case in using differing priorities, the maximum bound for the backoff differ the priority levels. Thus, the maximum backoff period for a wireless network device operating at priority level 5 is 25 units. The maximum bounds backoff for a device operating at priority level 1 is only 5 units. Thus, the priorities as defined do not strictly limit the transmissions from the various wireless network devices. However, they do give a probabilistic advantage to those operating at the higher priority levels.  
         [0037]      FIG. 2  is a timing diagram showing an exemplary backoff scheme that could be used with the priority-setting wireless network device of  FIG. 1 . At time T 0 , a transmission is under way from the pswnd to another wireless network device. During the time from T 0  to T 1 . other wireless network devices within range do not attempt to transmit due to the transmission from the pswnd. Thus, the transmission lines of the other wireless network devices, denoted by the lines W 1 , W 2  and W 3 , and corresponding to a first, second, and third wireless network device indicate that no transmissions are occurring.  
         [0038]     In our example, the wireless network device denoted by line W 1  has been assigned a priority of one, the wireless network device denoted by line W 2  has been assigned a priority of two, and the wireless network device denoted by the line W 3  has been assigned a priority of three. Thus, the wireless network devices W 1 , W 2  and W 3  sense the end of the transmission at time T 1 . Accordingly, an appropriate backoff is determined for each individual wireless network device.  
         [0039]     In the 802.11 standard, the recipient wireless network device transmits an acknowledgement (ACK) at time T 2  and then at time T 3 . In an 802.11 implementation, the backoff is implemented to occur subsequent to a short intermediate frame, the short intermediate frame corresponding to the length of the ACK from time T 2  to time T 3 . This ensures that the ACK is not interfered with.  
         [0040]     Since the wireless network device corresponding to line W 1  has a priority of one, the backoff period it determines falls within the range of the time denoted by T(back)  1 . This backoff time is bounded by 5 units points from the end of the short intermediate frame, corresponding to the ACK. The wireless network device corresponding to line W 1  starts to decrement the backoff, and will start to transmit at the when the backoff counter is decremented to zero. Thus, the wireless network device corresponding to the line W 1  will begin to transmit within the T(back)  1  units after the time T 3 .  
         [0041]     Correspondingly, the wireless network device W 2 , having a priority of two, has a different backoff time denoted by the length T(back) 2 . Accordingly, the wireless network device corresponding to the line W 3  will begin to transmit within T(back)  2  units of the end of the short intermediate frame.  
         [0042]     Similarly, the wireless network device W 3 , having a priority of three has still another backoff length, denoted by T(back) 3 . In this manner, wireless network device corresponding to the line W 3  will be transmit within T(back)  3  units of the end of the short intermediate frame.  
         [0043]     As shown, the backoff lengths, T(back)  1 , T(back) 2 , and T(back) 3  are all different. Thus, the probability of the wireless network device corresponding to the line W 1  beginning transmission before the wireless network device corresponding to the line W 2  is probabilistically greater, since the backoff length T(back)  1  is less than the backoff length T(back) 2 . In a similar manner, the wireless network device corresponding to the line W 1  has a greater probability of transmitting prior to the wireless network device corresponding to the line W 3 , and the wireless network device corresponding to the line W 2  has a greater probability of transmitting before the wireless network device corresponding to the line W 3 . Thus, by setting different backoff lengths for each priority, a priority system can be assigned to different wireless network device devices within the wireless network.  
         [0044]      FIG. 3  is a schematic block diagram of an exemplary priority-setting wireless network device of  FIG. 1 . A wireless network device  20  has a network traffic analysis section  26 , a user interface  22 , and a priority determination section  24 . In an exemplary environment, the wireless network device  20  can set priorities of wireless network devices and communication in various ways.  
         [0045]     In one case, the wireless network device  20  may set priorities according to a static schedule. In this case, an external wireless network device, as accomplished with the wireless network device  20 , would be assigned a priority based on a straight allocation. In this case, the first wireless network device to couple to the wireless network device  20  receives a priority of one. The next external wireless network device coupling to the wireless network device coupling to the wireless network device  20  then receives a priority of two, and so on. As such the priorities of the external devices are set so that they are stratified. When the priority levels are exhausted, they may be reused, allowing for multiple entries in each priority strata.  
         [0046]     The wireless network device  20  can determine the priorities based on the results of transmissions. As explained before, wireless network device  20  analyzes the transmission traffic with the network traffic analysis section  26 . Based upon the results of the network traffic analysis section  42 , the priorities can be incremented or decremented, and new priorities would be assigned based upon the results of this network traffic analysis section  42 .  
         [0047]     In another mode, the wireless network device  20  has a user interface  22 . In this manner an operator may manually set each of the externally coupled wireless network device priorities. The operator may interact with the user interface  22  to set the various priorities in the external wireless network devices that form the wireless network.  
         [0048]      FIG. 4  is an exemplary block diagram of an exemplary operation of the priority-setting wireless network device of  FIG. 1 . In a block  30  the wireless network device having the priority mechanisms has started. In a block  32  the wireless network device determines which external wireless network devices it has a communication to. In a block  34  the wireless network device then sets the various priorities of the communication links.  
         [0049]     In block  36  the wireless network device monitors the incoming traffic from the external wireless network devices. In block  38 , another wireless network device is started with an operating range of the priority setting wireless network device. In this case, the wireless network device can assign a priority to the newly detected device, as shown in a block  40 . The wireless network device then returns to monitoring the wireless traffic.  
         [0050]     In block  42 , the operator interacts with the wireless network device. In this case, the priorities are set to the operator defined priorities in the block  44 .  
         [0051]     In the block  46 , assume that some threshold has been met in the wireless network traffic. In this case, control is then directed to automatically setting the priorities in a block  48 . Thus resetting the priority in the block  48  is based upon the threshold that is met. For example, if the threshold of a particular communication leg is exceeded, the priority may be increased to aid with network traffic conditions. Other thresholds that might be used include radio parameters, including power of signal, signal to noise ratio, error rate, to name a few.  
         [0052]     In block  50 , the priority setting wireless network device received a request from a request from another wireless network device for a priority change. In this case, an external wireless network device has generated a request to the wireless network device to either increase or decrease the priority that is associated with the particular external wireless network device. Control transfers to a block  52  where the priority-setting wireless network device determines whether to accept or deny such priority request.  
         [0053]     If the request is accepted, control transfers to a block  54  in which the internal tracking of the priority is made within the priority setting on the wireless network device. It should be noted that such a request may be accepted in whole or in part.  
         [0054]     If accepted in whole, the requested the level may be returned to the requesting wireless network device in a block  56 . Or, if the priority setting wireless network device determines that a change should be made, but not to the effect requested by the external wireless network device, this new priority level is also sent to the external wireless network device.  
         [0055]     If denied, the denial is sent back to the requesting device in a block  58 . Control then returns to monitoring the network traffic in the block  36 .  
         [0056]      FIG. 5  is a block diagram detailing the use of the system in a wireless network with different types of devices according to the invention. Assume that the devices are of differing types and have differing backoff characteristics. Assume that the device  62  has the backoff characteristics as defined above. Also assume that the device  60  has a backoff characteristic of:  
                                                                 Priority Level   Backoff Time                                        1   7           2   12           3   27                        
         [0057]     In this case, the wireless network device  20  using the prioritizer  18  can generate the proper responses and requests to the specific differing devices to create and maintain the specific prioritization level within the network.  
         [0058]     Thus, a method and apparatus for a system and method for determining priorities in a wireless network is described and illustrated. Those skilled in the art will recognize that many modifications and variations of the present invention are possible without departing from the invention. Of course, the various features depicted in each of the Figures and the accompanying text may be combined together. Accordingly, it should be clearly understood that the present invention is not intended to be limited by the particular features specifically described and illustrated in the drawings, but the concept of the present invention is to be measured by the scope of the appended claims. It should be understood that various changes, substitutions, and alterations could be made hereto without departing from the spirit and scope of the invention as described by the appended claims that follow.  
         [0059]     While embodiments and applications of this invention have been shown and described, it would be apparent to those skilled in the art having the benefit of this disclosure that many more modifications than mentioned above are possible without departing from the inventive concepts herein. The invention, therefore, is not to be restricted except in the spirit of the appended claims.
A wireless network device that assigns priorities to communications in a network has a first circuit for receiving wireless messages from remote wireless network devices and a second circuit operable to send wireless messages to the remote wireless network devices. A third circuit makes a determination of the relative priorities of the remote wireless network devices. The wireless network device is operable to form a message to the remote wireless network devices, where the message is used to set a backoff time in the remote wireless network devices. The backoff time sent to the remote wireless network device is related to the relative priority of the remote wireless network device.