Distributed channel selection for wireless networks

Information

  • Patent Grant
  • 9002277
  • Patent Number
    9,002,277
  • Date Filed
    Tuesday, September 7, 2010
    13 years ago
  • Date Issued
    Tuesday, April 7, 2015
    9 years ago
Abstract
Wireless networking devices scan for available channels and gather data about the channels and the RF environment. Using this information, each wireless networking device determines a cost value for each available channel and a quality value for its overall RF neighborhood. Each wireless networking device select the channel with the best cost value as a candidate channel for use. The wireless networking devices may submit channel requests to the arbiter for approval. If two or more wireless networking devices are requesting the same channel, the arbiter assigns the channel to the wireless networking device with the worst RF neighborhood quality. The arbiter informs the wireless networking devices if their channel requests are approved. If a wireless networking device's channel request is not approved, the wireless networking device will rescan the remaining available channels to select a different candidate channel to be approved.
Description
BACKGROUND OF THE INVENTION

The invention relates to the field of wireless networking devices and specifically to systems and methods of configuring wireless networking devices to operate in close proximity to each other. Many organizations provide wireless networks to their users and/or the general public. Often, multiple wireless networking devices, such as wireless access points, are required to provide effective wireless network access to users over large physical area. For example, there may be large numbers of wireless access points operating together to provide wireless network access within one or more buildings, a campus, or even neighborhoods and cities.


Typically, wireless networking devices such as wireless access points communicate using one or more RF channels. As the physical density of wireless access points increases, interference between multiple wireless networking devices using the same or overlapping channels becomes more likely. As a result of channel interference from both other wireless network devices as well as other sources of radio interference, the network performance for users decreases.


One way to mitigate channel interference is to assign neighboring wireless networking devices to different or non-overlapping channels. Prior approaches have typically operated in a centralized manner or a distributed manner. Centralized approaches gather data from most or all of the wireless networking devices and use this complete view of the wireless network to determine a satisfactory assignment of channels to the wireless networking devices. The downsides of this approach are the need for a central entity to collect data from all of the networking devices, process network data, and determine channel assignments.


Distributed approaches to channel assignment rely on wireless networking devices to select an optimal channel for itself or to negotiate channel assignments between themselves. However, the former approach results in a sub-optimal channel assignment over the entire network and the latter approach requires the exchange of numerous messages between wireless networking devices. Additionally, this approach may take a long time to converge to a stable channel assignment. Furthermore, small changes in the RF environment may lead to a ripple effect, causing channel assignment changes across the entire wireless network.





BRIEF DESCRIPTION OF THE DRAWINGS

The invention will be described with reference to the drawings, in which:



FIG. 1 illustrates an example wireless network channel assignment;



FIG. 2 illustrates a method of assigning channels to wireless networking devices according to an embodiment of the invention; and



FIG. 3 illustrates a computer system suitable for implementing all or a portion of embodiments of the invention.





BRIEF SUMMARY OF THE INVENTION

An embodiment of the invention assigns channels to wireless networking devices using a distributed technique that requires very little data to be exchanged between wireless networking devices. Additionally, an embodiment of the invention converges quickly to a stable channel assignment. In an embodiment, wireless networking devices scan for available channels and gather data about the channels and the RF environment. Using this information, each wireless networking device determines a cost value for each available channel and a quality value for its overall RF neighborhood. In an embodiment, each wireless networking device select the channel with the best cost value as a candidate channel for use. An arbiter is then used to resolve conflicts between wireless networking devices that have selected the same candidate channels.


If there is a device acting as arbiter, the wireless networking devices submit channel requests to the arbiter for approval. If two or more wireless networking devices are requesting the same channel at approximately the same time, in an embodiment of the invention, the arbiter assigns the channel to the wireless networking device with the worst RF neighborhood quality. The arbiter informs the wireless networking devices if their channel requests are approved. If a wireless networking device's channel request is not approved, the wireless networking device will rescan the remaining available channels to select a different candidate channel to be approved.


In an embodiment, if there is no arbiter device, a wireless networking device will listen for other networking devices using its desired candidate channel. If there are other networking devices using the same desired candidate channel, in an embodiment of the invention, the conflicting wireless networking devices exchange RF neighborhood quality information. Using this information, the wireless networking devices will yield the channel to the wireless networking device with the worst RF neighborhood quality.


DETAILED DESCRIPTION


FIG. 1 illustrates an example of a wireless network 100 and its channel assignments. Wireless network 100 is comprised of multiple wireless access points and/or other wireless networking device 105 capable of providing wireless network connections to client devices, such as desktop, portable, and server computer systems; tablet computer systems; smartphones or other handheld devices; and/or other devices capable of using wireless network connections to communicate.


Example wireless network 100 includes wireless access points 105a, 105b, 105c, 105d, 105e, 105f, 105g, 105h, 105i, 105j, 105k, 105l, 105m, 105n, 105o, 105p, and 105q. However, embodiments of the invention may be utilized in wireless networks including any arbitrary number of wireless access points and/or other wireless networking devices 105. In example wireless network 100, the wireless access points 105 may use any wireless networking technology and protocol known in the art, including one or more of the IEEE 802.11 family of wireless networking standards, Zigbee and the 802.15.4 wireless networking standard, Femtocell cellular networking using CDMA, GSM, WiMAX, LTE, and/or other cellular networking standards.


Although omitted from FIG. 1 for clarity, the wireless networking devices 105 may be connected with one or more local-area networks or wide-area networks via wired or wireless network connections. The local-area network and/or wide-area network may include network devices such as network hubs, network switches, network routers, multi-function network gateways, and software and/or hardware firewalls. In an embodiment, wireless network 100 may also include one or more wireless access point managers that control the configuration of the wireless access points 105. Wireless access point manager may facilitate the deployment of network policies, software and firmware upgrades, and configurations to wireless access points 105 and may monitor network usage by client devices via the wireless access points.


Example wireless network 100 includes three different wireless channels. Each channel is indicated by different shading in FIG. 1. As shown in FIG. 1, channels are assigned to wireless access points 105 to maximize the distance between different wireless access points using the same channel and thus minimize radio interference. Although example wireless network 100 uses three different wireless channels, embodiments of the invention may use any arbitrary number of channels, depending upon factors including as the total number of channels available in the wireless networking technology, channels in use by other devices outside of the control of the wireless network, and environmental RF interference with one or more of the available channels. For example, the IEEE 802.11b/g standards has a total of 14 available channels; however only 11 of these channels are typically available in the United States. Additionally, the adjacent channels of these standards overlap, so that often there are only 3 or 4 non-overlapping channels available.


As discussed above, an embodiment of the invention uses a distributed technique for determining channel assignments in wireless networks with multiple wireless access points or other wireless networking devices. FIG. 2 illustrates a method 200 of assigning channels to wireless networking devices according to an embodiment of the invention. In embodiments of the invention, wireless networking devices such as a wireless access points each perform separate instances of method 200 independently of each other during their respective initializations.


In step 205, a wireless networking device scans all of the available wireless networking channels to identify any neighboring wireless access points and gather data about each wireless networking channel. Embodiments of the invention may scan available channels sequentially or randomly. In an embodiment, step 205 determines whether each channel is in use, and if so, the number of detected wireless access points using a given channel. An embodiment of step 205 may also measure quantitative attributes of each channel, including the user load, RF interference, transmission, reception, and/or total channel utilization; the noise floor; the PHY error rate; the TX or RX frame drop rate; the TX/RX bit rate usage and/or success distribution; the CRC error rate for each channel; and/or, if the channel is used by any detected neighboring wireless access points, the received signal strength indication (RSSI) or signal to noise ratio for each neighboring wireless access point using a given channel. An embodiment of step 205 may further determine qualitative attributes of each channel, including whether the channel overlaps with any other channel in use, whether the channel uses dynamic frequency selection (DFS), and/or whether the channel is being used indoors or outdoors.


Step 210 determines the quality of the RF neighborhood of the wireless networking device based on the data gathered in step 205. In an embodiment, the RF neighborhood quality is based on the average received signal strength of neighboring wireless networking devices. This may be determined by averaging the RSSI data for each channel, and then determining the average of this value over all of the available channels. Another embodiment of step 210 may use the lowest RSSI value of all the neighboring networking devices as a measure of RF neighborhood quality. Alternative embodiments of step 210 may incorporate other factors described above, such as RF interference or the number of neighboring wireless access points. In general, more neighboring wireless networking devices and/or stronger signals from neighboring wireless networking devices or other RF sources reduce the quality of the RF neighborhood.


Step 215 determines cost values for each of the available channels based on the data gathered in step 205. In an embodiment, step 215 determines the cost values using a cost function that takes into account some or all of the above-described. Embodiments of the invention may use any type of cost function known in the art to determine one or more cost values for each available channel. In an embodiment, the cost function of step 215 assigns an initial cost value to an available channel and then adds or subtracts from this initial cost value based on one or more of the above described factors. In another embodiment, step 215 determines a weighted sum of two or more of the above described factors. In still another embodiment, step 215 determines cost values based on the application of one or more Boolean operations on a parameter vector, where the parameter vector is based on the data gathered in step 205.


In still a further embodiment, the cost function of step 215 uses values derived from the measured or determined values of the above described factors, as opposed to the measured values themselves. For example, an embodiment of step 215 may assign each factor a positive or negative score or point value based on its measured value. Different score or point values may be assigned based on whether the measured value of the factor falls within a particular range of values or above or below one or more threshold values. For example, if a channel utilization of a channel is less than 10%, it may be assigned a point value of zero within the cost function. If the channel utilization of this channel is between 10% and 20%, this factor may be assigned a point value of −10 in the cost function.


An example cost function may be:







Cost
=


(


1000
N

-

P
i


)

+

C
adj

+

C
overlap

+

C
power



,





where N is the number of wireless access points or other wireless detected networking devices using the channel, C_adj is an addition or deduction of points based on a measurement of interference from neighboring wireless networking devices, C_overlap is an addition or deduction of points based on whether the channel overlaps with any other channel in use, and C_power is an addition or deduction of points based on whether there is a maximum power limit for the channel, for example due to FCC or other regulatory requirements.


Step 220 selects the channel with the best cost value as a candidate channel for use by this wireless networking device. Depending on the specific form of the cost function, the best cost value may either be the lowest cost value or the highest cost value.


Step 225 determines if there is at least one networking device designated as a arbiter that is accessible to the wireless networking device. In an embodiment, one or more of the wireless access points may be designated as an arbiter. A networking device acting as an arbiter is used to reduce or prevent channel conflicts from wireless networking devices using the same channels. In an embodiment, a networking device is manually selected as an arbiter by a network administrator. In another embodiment, a networking device is automatically assigned to act as an arbiter by the wireless networking devices within each other's RF coverage area. In yet another embodiment, a networking device is automatically assigned to act as an arbiter by the wireless networking devices that share the same backhaul network connection, such as an Ethernet network or switching network. In general, the wireless networking devices within each others RF range should use the same arbiter. For example, one networking device in a building may be designated as an arbiter.


If there is no networking device designated as an arbiter, method 200 proceeds to step 230. In step 230, the wireless networking device enters a listening mode and determines if there are any other warless networking devices using the selected candidate channel. If there are no other wireless networking devices using the candidate channel, method 200 proceeds to step 240 and selects the candidate channel for use by the wireless networking device.


Conversely, if step 230 determines that one or more other wireless networking devices are using the selected candidate channel, method 200 proceeds to step 235. In step 235, the wireless networking device exchanges messages with one or more other wireless networking devices using the selected candidate channel to determine which of these devices has the lowest quality RF neighborhood, based on the RF neighborhood quality measurement determined in step 210. If step 235 determines that the wireless networking device has the lowest RF neighborhood quality as compared with its neighboring wireless networking devices on the same channel, then method 200 proceeds to step 240 and the wireless network device is allowed to use the selected candidate channel. All of the other neighboring wireless networking devices will yield this selected candidate channel to the wireless networking device, since they have received messages from the wireless networking device indicating that this wireless networking device has a lower RF neighborhood quality. In the event of a tie between two or more wireless networking devices with the same RF neighborhood quality, the channel may be assigned to one of the tied wireless networking devices based on arbitrary criteria or attributes, such as the MAC addresses of the wireless networking devices.


If step 235 determines that the wireless networking device does not have the lowest RF neighborhood quality, method 200 proceeds back to step 205 to rescan for available channels. In an embodiment, the wireless networking device maintains a list of channels assigned to other wireless networking devices in previous iterations of method 200, so that these channels can be skipped during rescanning. This decreases the amount of time required for rescanning and hence decreases the convergence time to assign channels to all of the wireless networking devices. The wireless networking device may repeat steps 205 through 255 any arbitrary number of times until it finds a channel to use.


Returning to step 225, if the wireless networking device detects at least one networking device acting as an arbiter, method 200 proceeds to step 245. Step 245 sends a channel request message to the arbiter. In an embodiment, the channel request message identifies the selected candidate channel. In a further embodiment, the channel request message includes additional data such as the neighborhood quality measurement and/or the wireless network devices cost value for the selected candidate channel.


In an embodiment, the networking device acting as the arbiter receives channel request messages from one or more wireless networking devices requesting a given channel, and decides which of these wireless networking devices should be assigned to requested channel. In an embodiment, the arbiter compares the RF neighborhood quality measurements received with each channel request message associated with a given channel and grants the requested channel to the wireless networking device with the lowest quality RF neighborhood. In another embodiment, the arbiter compares the channel cost values of a given candidate channel from each wireless networking device requesting this channel and grants the requested candidate channel to the wireless networking device with the highest channel cost value.


In the event of a tie between two or more wireless networking devices, the arbiter may arbitrarily assign the channel to one of the tied networking devices. In other embodiments, the arbiter may use each wireless networking device's cost value associated with the requested channel to determine the channel assignment. In a further embodiment, because the wireless networking devices perform separate instances of method 200 in parallel but asynchronously, an arbiter may wait for a time period, such as 15 seconds, after receiving the first request for any given channel to allow time for other wireless networking devices to request. The arbiter then assigns the requested channel to one of the wireless networking devices that sent a request during this time period, such as the wireless networking device with the worst RF neighborhood quality.


In response to one or more channel request messages, the arbiter assigns the requested channel to one of the requesting wireless networking devices. The arbiter then sends a channel approval message to the wireless networking device assigned to the requested channel and optionally sends channel denied messages to the other wireless networking devices that had requested this channel at approximately the same time.


In step 250, the wireless networking device determines if it has received a channel approval message from the arbiter for the selected candidate channel. If so, then method 200 proceeds to step 255, which selects the candidate channel for use by the wireless networking device.


Conversely, if the wireless networking device determines in step 250 that it has received a channel denied message or no response message at all from the arbiter, then method 200 proceeds back to step 205 to rescan for available channels and select a different candidate channel. The wireless networking device may repeat steps 205 through 255 any arbitrary number of times until it finds a channel to use.


In some situations, the RF environment and channel utilization associated with the wireless network may change due to the introduction of interference. In an embodiment, each wireless networking device monitors the RF environment associated with the channel it is using. If one or more parameters of the RF environment change substantially, the wireless networking device may drop its current channel and repeat method 200 to select a different channel. For example, if the interference utilization and/or the CRC error rate of a channel increase above absolute or relative thresholds, the wireless networking device drops its current channel and repeats method 200 to select a different channel.


In a further embodiment, the channel assignment process for all of the wireless networking devices in the wireless network may be repeated at regular intervals, such as during scheduled downtime. This allows the channel assignments to be determined from a clean initial state based on the current network configuration and RF environment. Often scheduled downtime may be during off-hours, such as late at night, so that users are not disrupted. However, the RF environment during off-hours may not be the same as that during normal operating hours. To produce channel assignments that more accurately reflect the RF environment during normal operating hours, yet a further embodiment of the invention records RF environment information during normal operating hours. During scheduled downtime, this embodiment of the invention performs method 200 as described above, but using the previously recorded RF environment information, rather than information about the current off-hour RF environment.


As discussed above, the wireless networking devices 105 in FIG. 1 may be connected with one or more local-area networks or wide-area networks via wired or wireless network connections. The wired or wireless network connections between the wireless networking devices and the one or more local-area networks or wide-area networks are referred to as backhaul network connections. If the backhaul network connection of one or more wireless networking devices 105 is a wireless network connection, an embodiment of the invention may use a modified version of method 200 to select the channel for the backhaul network connection. In this embodiment of method 200, step 205 scans the available channels to identify if there is an existing mesh channel as well as to determine the neighboring wireless networking devices and channel data. Steps 210 through 220 are performed as described above. If a mesh channel is found, then the wireless networking device joins the mesh channel. If there is no current mesh channel, then the wireless networking device selects the channel with the best cost value as the mesh channel.


In an further embodiment the cost function used to select a candidate channel may be specified via a management interface. Additionally, the management interface may be used to display statistics about the wireless network and the wireless networking devices, such as the values of cost function and/or the factors contributing to the cost function.



FIG. 3 illustrates a computer system 2000 suitable for implementing all or a portion of embodiments of the invention. FIG. 3 is a block diagram of a computer system 2000, such as a personal computer or other digital device, suitable for practicing an embodiment of the invention. Embodiments of computer system 2000 include dedicated networking devices, such as wireless access points, network switches, hubs, routers, hardware firewalls, network traffic optimizers and accelerators, network attached storage devices, and combinations thereof.


Computer system 2000 includes a central processing unit (CPU) 2005 for running software applications and optionally an operating system. CPU 2005 may be comprised of one or more processing cores. Memory 2010 stores applications and data for use by the CPU 2005. Examples of memory 2010 include dynamic and static random access memory. Storage 2015 provides non-volatile storage for applications and data and may include fixed or removable hard disk drives, flash memory devices, ROM memory, and CD-ROM, DVD-ROM, Blu-ray, HD-DVD, or other magnetic, optical, or solid state storage devices. Memory 2010 may store a firmware image comprising applications and data adapted to be executed by computer system 2000.


Optional user input devices 2020 communicate user inputs from one or more users to the computer system 2000, examples of which may include keyboards, mice, joysticks, digitizer tablets, touch pads, touch screens, still or video cameras, and/or microphones. In an embodiment, user input devices may be omitted and computer system 2000 may present a user interface to a user over a network, for example using a web page or network management protocol and network management software applications.


Computer system 2000 includes one or more network interfaces 2025 that allow computer system 2000 to communicate with other computer systems via an electronic communications network, and may include wired or wireless communication over local area networks and wide area networks such as the Internet. Computer system 2000 may support a variety of networking protocols at one or more levels of abstraction. For example, computer system may support networking protocols at one or more layers of the seven layer OSI network model. An embodiment of network interface 2025 includes one or more wireless network interfaces adapted to communicate with wireless clients and with other wireless networking devices using radio waves, for example using the 802.11 family of protocols, such as 802.11a, 802.11b, 802.11g, and 802.11n.


An embodiment of the computer system 2000 may also include a wired networking interface, such as one or more Ethernet connections to communicate with other networking devices via local or wide-area networks. In a further embodiment, computer system 2000 may be capable of receiving some or all of its required electrical power via the network interface 2025, for example using a wired networking interface power over Ethernet system.


The components of computer system 2000, including CPU 2005, memory 2010, data storage 2015, user input devices 2020, and network interface 2025 are connected via one or more data buses 2060. Additionally, some or all of the components of computer system 2000, including CPU 2005, memory 2010, data storage 2015, user input devices 2020, and network interface 2025 may be integrated together into one or more integrated circuits or integrated circuit packages. Furthermore, some or all of the components of computer system 2000 may be implemented as application specific integrated circuits (ASICS) and/or programmable logic.


A power supply 2030 provides electrical power to the computer system 2000. Power supply 2030 may be adapted to draw electrical power from a connection with an electrical power distribution grid. In an embodiment, power supply 2030 is connected with network interface 2025 to draw electrical power for computer system 2000 from one or more wired network connections using a network power standard, such as IEEE 802.3af.


Although embodiments of the invention are discussed with reference to the IEEE 802.11 standard, embodiments of the invention are equally applicable to other standard and proprietary wireless network protocols. Additionally, embodiments of the invention are not limited to 802.11 wireless network connections and may be utilized for any type of communication network where a network connection between a client wireless network device and a wireless network device is required.


Further embodiments can be envisioned to one of ordinary skill in the art from the specification and figures. In other embodiments, combinations or sub-combinations of the above disclosed invention can be advantageously made. The block diagrams of the architecture and flow charts are grouped for ease of understanding. However it should be understood that combinations of blocks, additions of new blocks, re-arrangement of blocks, and the like are contemplated in alternative embodiments of the present invention. The specification and drawings are, accordingly, to be regarded in an illustrative rather than a restrictive sense. It will, however, be evident that various modifications and changes may be made thereunto without departing from the broader spirit and scope of the invention as set forth in the claims.

Claims
  • 1. A method of selecting a wireless network channel for a wireless networking device, the method comprising: identifying available wireless network channels;determining a cost value for each one of the available wireless network channels based on a cost function of at least one attribute of at least one of the available wireless network channels;selecting one of the available wireless network channels as a first candidate channel based on the cost values;sending, by a first wireless networking device to an arbiter device, a first channel request message for the first candidate channel, the first channel request message including a quality value for a radio frequency (RF) neighborhood of the first wireless networking device, wherein in operation, the arbiter device receives at least a second channel request message from a second wireless networking device for the first candidate channel, wherein the second channel request message includes a quality value for an RF neighborhood of the second wireless networking device;in response to receiving a channel approval message at the first wireless networking device from the arbiter device, assigning, by the first wireless networking device, the first candidate channel as the wireless network channel for use by the first wireless networking device, wherein the arbiter device sends the channel approval message to the first wireless networking device upon a determination that the quality value for the RF neighborhood of the first wireless networking device is lower than the quality value for the RF neighborhood of the second wireless networking device, the arbiter device being a networking device accessible to the first wireless network device and the second wireless networking device and different from the first wireless networking device and the second wireless networking device.
  • 2. The method of claim 1, wherein the quality value for the RF neighborhood of the first wireless networking device is based on an average received signal strength from the second wireless networking device.
  • 3. The method of claim 1, wherein the quality value for the RF neighborhood of the first wireless networking device is based on a lowest received signal strength from the second wireless networking device.
  • 4. The method of claim 1, wherein upon the determination that the quality value for the RF neighborhood of the first wireless networking device is lower than the quality value for the RF neighborhood of the second wireless networking device, the arbiter device transmits a channel denial message to the second wireless networking device, causing the second wireless networking device to select a second candidate channel.
  • 5. The method of claim 4, wherein, in response to receiving the channel denial message, the second wireless networking device excludes the first candidate channel when selecting the second candidate channel.
  • 6. The method of claim 4, wherein, in response to receiving the channel denial message, the second wireless networking device includes the first candidate channel when selecting the second candidate channel.
  • 7. The method of claim 1, further comprising monitoring a set of wireless network channels to identify the available wireless network channels.
  • 8. The method of claim 7, wherein monitoring the set of wireless network channels is performed sequentially.
  • 9. The method of claim 7, wherein monitoring the set of wireless network channels is performed randomly.
  • 10. The method of claim 1, further comprising: upon assigning the first candidate channel, monitoring the first candidate channel for interference; andin response to interference with the first candidate channel, repeating the steps of identifying, determining, selecting, sending, and assigning to select and assign a second candidate channel.
  • 11. The method of claim 10, wherein monitoring the first candidate channel comprises monitoring an RF environment associated with the first candidate channel.
  • 12. The method of claim 10, wherein monitoring the first candidate channel comprises monitoring a channel utilization associated with the first candidate channel.
  • 13. The method of claim 10, wherein monitoring the first candidate channel comprises monitoring a cyclic redundancy check (CRC) error rate associated with the first candidate channel.
  • 14. The method of claim 10, wherein monitoring the first candidate channel comprises monitoring a channel noise level associated with the first candidate channel.
  • 15. The method of claim 10, wherein repeating the steps of identifying, determining, selecting, sending, and assigning to select and assign the second candidate channel is performed immediately in response to detection of the interference with the first candidate channel.
  • 16. The method of claim 10, wherein repeating the steps of identifying, determining, selecting, sending, and assigning to select and assign the second candidate channel is performed during a scheduled downtime period following detection of the interference with the first candidate channel.
  • 17. The method of claim 16, further comprising: storing attributes of at least one of the available wireless network channels at a time of detection of the interference with the first candidate channel;wherein repeating the steps of identifying, determining, selecting, sending, and assigning to select and assign the second candidate channel during the scheduled downtime period is performed using the stored attributes from the time of detection of the interference with the first candidate channel.
  • 18. The method of claim 1, wherein the cost function is received via a management interface.
  • 19. The method of claim 1, further comprising, upon assigning the first candidate channel, providing the cost value of the first candidate channel to a management interface.
  • 20. A system comprising: a first wireless networking device;an arbiter device;wherein the first wireless networking device is configured to: identify available wireless network channels;determine a cost value for each one of the available wireless network channels based on a cost function of at least one attribute of at least one of the available wireless network channels;select one of the available wireless network channels as a first candidate channel based on the cost values;send a channel request message for the first candidate channel to the arbiter device, the channel request message including the cost value of the first candidate channel determined by the first networking device;assign, in response to receiving a channel approval message from the arbiter device, the first candidate channel as the wireless network channel for use by the first wireless networking device;wherein the arbiter device is configured to: receive at least a second channel request message from a second wireless networking device for the first candidate channel, the second channel request message including a cost value of the first candidate channel determined by the second wireless networking device;send the channel approval message to the first wireless networking device upon a determination that the cost value determined by the first wireless networking device is lower than the cost value determined by the second wireless networking device, the arbiter device being a networking device accessible to the first wireless network device and the second wireless networking device.
  • 21. The system of claim 20, wherein upon the determination that the cost value determined by the first wireless networking device is lower than the cost value determined by the second wireless networking device, the arbiter device transmits a channel denial message to the second wireless networking device, causing the second wireless networking device to select a second candidate channel.
  • 22. The system of claim 21, wherein, in response to receiving the channel denial message, the second wireless networking device excludes the first candidate channel when selecting the second candidate channel.
  • 23. The system of claim 21, wherein, in response to receiving the channel denial message, the second wireless networking device includes the first candidate channel when selecting the second candidate channel.
  • 24. The system of claim 20, wherein the first wireless networking device is further configured to monitor a set of wireless network channels to identify the available wireless network channels.
  • 25. A system comprising: a means for identifying available wireless network channels;a means for determining a cost value for each one of the available wireless network channels based on a cost function of at least one attribute of at least one of the available wireless network channels;a means for selecting one of the available wireless network channels as a candidate channel based on the cost values;a means for sending, by a first wireless networking device to an arbiter device, a first channel request message for the candidate channel, the first channel request message including a quality value for a radio frequency (RF) neighborhood of the first wireless networking device, wherein in operation, the arbiter device receives at least a second channel request message from a second wireless networking device for the candidate channel, wherein the second channel request message includes a quality value for an RF neighborhood of the second wireless networking device;a means for, in response to receiving a channel approval message at the first wireless networking device from the arbiter device, assigning the candidate channel as the wireless network channel for use by the first wireless networking device, wherein the arbiter device sends the channel approval message to the first wireless networking device upon a determination that the quality value for the RF neighborhood of the first wireless networking device is lower than the quality value for the RF neighborhood of the second wireless networking device, the arbiter device being a networking device accessible to the first wireless network device and the second wireless networking device and different from the first wireless networking device and the second wireless networking device.
US Referenced Citations (141)
Number Name Date Kind
5471671 Wang et al. Nov 1995 A
5697059 Carney Dec 1997 A
5726984 Kubler et al. Mar 1998 A
5956643 Benveniste Sep 1999 A
6061799 Eldridge et al. May 2000 A
6112092 Benveniste Aug 2000 A
6154655 Borst et al. Nov 2000 A
6201792 Lahat Mar 2001 B1
6314294 Benveniste Nov 2001 B1
6473413 Chiou et al. Oct 2002 B1
6496699 Benveniste Dec 2002 B2
6519461 Andersson et al. Feb 2003 B1
6628938 Rachabathuni et al. Sep 2003 B1
6775549 Benveniste Aug 2004 B2
6865393 Baum et al. Mar 2005 B1
7057566 Theobold Jun 2006 B2
7085224 Oran Aug 2006 B1
7085241 O'Neill et al. Aug 2006 B1
7164667 Rayment et al. Jan 2007 B2
7174170 Steer et al. Feb 2007 B2
7177646 Corson et al. Feb 2007 B2
7181530 Halasz et al. Feb 2007 B1
7224697 Banerjea et al. May 2007 B2
7251238 Joshi et al. Jul 2007 B2
7512379 Nguyen Mar 2009 B2
7706789 Qi et al. Apr 2010 B2
7716370 Devarapalli May 2010 B1
7768952 Lee Aug 2010 B2
7793104 Zheng et al. Sep 2010 B2
7843907 Abou-Emara et al. Nov 2010 B1
7844057 Meier et al. Nov 2010 B2
7921185 Chawla et al. Apr 2011 B2
7949342 Cuffaro et al. May 2011 B2
8219688 Wang Jul 2012 B2
8249606 Neophytou et al. Aug 2012 B1
8493918 Karaoguz et al. Jul 2013 B2
20010006508 Pankaj et al. Jul 2001 A1
20020021689 Robbins et al. Feb 2002 A1
20020071422 Amicangioli Jun 2002 A1
20020091813 Lamberton et al. Jul 2002 A1
20020116463 Hart Aug 2002 A1
20020128984 Mehta et al. Sep 2002 A1
20030104814 Gwon et al. Jun 2003 A1
20030129988 Lee et al. Jul 2003 A1
20030145091 Peng et al. Jul 2003 A1
20030179742 Ogier et al. Sep 2003 A1
20040013118 Borella Jan 2004 A1
20040022222 Clisham Feb 2004 A1
20040064467 Kola et al. Apr 2004 A1
20040077341 Chandranmenon et al. Apr 2004 A1
20040103282 Meier et al. May 2004 A1
20040109466 Van Ackere et al. Jun 2004 A1
20040162037 Shpak Aug 2004 A1
20040192312 Li et al. Sep 2004 A1
20040236939 Watanabe et al. Nov 2004 A1
20040255028 Chu et al. Dec 2004 A1
20050053003 Cain et al. Mar 2005 A1
20050074015 Chari et al. Apr 2005 A1
20050099983 Nakamura et al. May 2005 A1
20050122946 Won Jun 2005 A1
20050154774 Giaffreda et al. Jul 2005 A1
20050207417 Ogawa et al. Sep 2005 A1
20050262266 Wiberg et al. Nov 2005 A1
20050266848 Kim Dec 2005 A1
20060026289 Lyndersay et al. Feb 2006 A1
20060062250 Payne, III Mar 2006 A1
20060107050 Shih May 2006 A1
20060117018 Christiansen et al. Jun 2006 A1
20060140123 Conner et al. Jun 2006 A1
20060146748 Ng et al. Jul 2006 A1
20060146846 Yarvis et al. Jul 2006 A1
20060187949 Seshan et al. Aug 2006 A1
20060221920 Gopalakrishnan et al. Oct 2006 A1
20060233128 Sood et al. Oct 2006 A1
20060234701 Wang et al. Oct 2006 A1
20060245442 Srikrishna et al. Nov 2006 A1
20060268802 Faccin Nov 2006 A1
20060294246 Stieglitz et al. Dec 2006 A1
20070004394 Chu et al. Jan 2007 A1
20070010231 Du Jan 2007 A1
20070025274 Rahman et al. Feb 2007 A1
20070025298 Jung Feb 2007 A1
20070078663 Grace Apr 2007 A1
20070082656 Stieglitz et al. Apr 2007 A1
20070091859 Sethi et al. Apr 2007 A1
20070115847 Strutt et al. May 2007 A1
20070116011 Lim et al. May 2007 A1
20070121947 Sood et al. May 2007 A1
20070133407 Choi et al. Jun 2007 A1
20070140191 Kojima Jun 2007 A1
20070156804 Mo Jul 2007 A1
20070249324 Jou et al. Oct 2007 A1
20070263532 Mirtorabi et al. Nov 2007 A1
20070280481 Eastlake et al. Dec 2007 A1
20070288997 Meier et al. Dec 2007 A1
20080002642 Borkar et al. Jan 2008 A1
20080080369 Sumioka Apr 2008 A1
20080080377 Sasaki et al. Apr 2008 A1
20080090575 Barak et al. Apr 2008 A1
20080095094 Innami Apr 2008 A1
20080107027 Allan et al. May 2008 A1
20080130495 Dos Remedios et al. Jun 2008 A1
20080146240 Trudeau Jun 2008 A1
20080170527 Lundsgaard et al. Jul 2008 A1
20080207215 Chu et al. Aug 2008 A1
20080225857 Lange Sep 2008 A1
20080229095 Kalimuthu et al. Sep 2008 A1
20080273520 Kim et al. Nov 2008 A1
20090028052 Strater et al. Jan 2009 A1
20090082025 Song Mar 2009 A1
20090088152 Orlassino Apr 2009 A1
20090097436 Vasudevan et al. Apr 2009 A1
20090111468 Burgess et al. Apr 2009 A1
20090141692 Kasslin et al. Jun 2009 A1
20090144740 Gao Jun 2009 A1
20090168645 Tester et al. Jul 2009 A1
20090239531 Andreasen et al. Sep 2009 A1
20090240789 Dandabany Sep 2009 A1
20090247170 Balasubramanian et al. Oct 2009 A1
20090310557 Shinozaki Dec 2009 A1
20100057930 DeHaan Mar 2010 A1
20100112540 Gross et al. May 2010 A1
20100115576 Hale et al. May 2010 A1
20100208614 Harmatos Aug 2010 A1
20100228843 Ok et al. Sep 2010 A1
20100240313 Kawai Sep 2010 A1
20100254316 Sendrowicz Oct 2010 A1
20100260091 Seok Oct 2010 A1
20100304738 Lim et al. Dec 2010 A1
20100311420 Reza et al. Dec 2010 A1
20100322217 Jin et al. Dec 2010 A1
20110004913 Nagarajan et al. Jan 2011 A1
20110040867 Kalbag Feb 2011 A1
20110055326 Michaelis et al. Mar 2011 A1
20110064065 Nakajima et al. Mar 2011 A1
20110182225 Song et al. Jul 2011 A1
20110185231 Balestrieri et al. Jul 2011 A1
20120014386 Xiong et al. Jan 2012 A1
20120290650 Montuno et al. Nov 2012 A1
20130028158 Lee et al. Jan 2013 A1
20140269327 Fulknier et al. Sep 2014 A1
Foreign Referenced Citations (1)
Number Date Country
2006129287 Dec 2006 WO
Non-Patent Literature Citations (7)
Entry
Clausen, T., et al., Optimized Link State Routing Protocol (OLSR), Network Working Group, Oct. 2003, pp. 1-71.
Perkins, C., et al., Ad hoc On-Demand Distance Vector (AODV) Routing, Network Working Group, Oct. 2003, pp. 1-35.
International Application No. PCT/US2011/047591, International Search Report and Written Opinion mailed Dec. 19, 2011.
International Application No. PCT/US2008/061674, International Search Report and Written Opinion mailed Oct. 14, 2008.
International Application No. PCT/US2012/059093, International Search Report and Written Opinion mailed Jan. 4, 2013.
Lee, Jae Woo et al, “z2z: Discovering Zeroconf Services Beyond Local Link,” 2007 IEEE Globecom Workshops, pp. 1-7, Nov. 26, 2007.
He, Changhua et al., “Analysis of the 802.11i4-Way Handshake,” Proceedings of the 3rd ACM Workshop on Wireless Security, pp. 43-50, Oct. 2004.
Related Publications (1)
Number Date Country
20120058728 A1 Mar 2012 US