1. Field of the Invention
The present invention generally relates to wireless communication networks and more specifically relates to broadband applications for wireless mesh networks including wireless wide area networks, wireless local area networks, and mobile ad hoc wireless networks.
2. Related Art
The IEEE 802.11 MAC protocol is not well suited for multi-hop wireless networking environments such as that found in a wireless mesh network. In particular, the utilization of the spectrum is extremely poor. For example, in an 802.11b network, spectrum utilization can be as low as 33% of the available channels, while in an 802.11a network, that number plummets to as low as 12.5% of the available channels.
In addition to this, channel switching in a conventional 802.11 wireless network ranges in time from ½ second to 1 full second. Such slow and cumbersome channel switching effectively limits data communications to a single channel in a conventional 802.11 wireless communication network, which minimizes spectrum utilization.
Additional drawbacks of conventional 802.11 wireless networks include the implementation of TCP in the protocol stack. The transport communication protocol was not designed for wireless communication networks that employ ephemeral (on/off) connections between nodes. Connections may appear to be lost due to a temporary obstruction or a slight dip in signal strength. TCP interprets these lost connections as network congestion and accordingly implements a backing off algorithm while continuing to communication over the lost channel. There are many additional factors that contribute to the overall problems with TCP over wireless, such as path asymmetry, route blackout, random packet loss, and high varying delays, just to name a few.
These and other challenges of wireless communication networks have made implementation of commercial solutions and products over ad hoc wireless mesh networks a significant challenge. For example, one challenge is the scalability of an ad hoc mesh network because the throughput of a network cannot exceed 1/sqrt(n), where n is the number of nodes in the multi-hop network. There are also fundamental tradeoffs between the hop count of a communication path and the transmission range. Obviously, increasing the transmission range will result in fewer hops, but doing so will also cause more interference. Thus, a number of research papers have concluded that the optimum node density is about 6 neighbors/node (e.g., Leonard Kleinrock, “Why 6 is the Magic Number”).
Therefore, what is needed is a system and method that overcomes these significant problems found in the conventional systems as described above.
The present invention provides systems and methods for reducing congestion and perceived congestion in a wireless communication network. The invention provides an improved media access control (“MAC”) layer protocol that allows channel switching for data communications over a wireless network on a session by session basis and optionally on a frame by frame basis. The time it takes for two nodes in a wireless communication network to switch communication channels is reduced to nearly electronic speed. Thus, through the use of additional spectrum, congestion is significantly reduced.
Furthermore, throughput is increased and battery life is conserved by reducing the power level for a request to send (“RTS”) message to the minimum power needed to reach the recipient node. The corresponding clear to send (“CTS”) message is then sent by the recipient node and informs other nodes in the network that the recipient is not available for communication such that the other nodes in the network remain free to communicate with each other. Additionally, the minimum power level to send an RTS message to each node may be maintained by a node in a local routing table or other data storage area.
The details of the present invention, both as to its structure and operation, may be gleaned in part by study of the accompanying drawings, in which like reference numerals refer to like parts, and in which:
Certain embodiments as disclosed herein provide for systems and methods for reducing congestion in an ad hoc wireless communication network. For example, one method as disclosed herein allows for a transmitting node to send the frames of a data communication over a plurality of channels in the wireless communication network, thus significantly reducing congestion through the increased use of spectrum.
After reading this description it will become apparent to one skilled in the art how to implement the invention in various alternative embodiments and alternative applications. However, although various embodiments of the present invention will be described herein, it is understood that these embodiments are presented by way of example only, and not limitation. As such, this detailed description of various alternative embodiments should not be construed to limit the scope or breadth of the present invention as set forth in the appended claims.
Furthermore, each node in the illustrated diagram has a maximum communication distance within the wireless communication network. This distance is not shown, however, but can be understood such that node 30 can not directly communication with node 60 and vice versa. Accordingly, there may be some unidirectional communication capability, for example, node 20 can communicate via link H with node 50 and seems to have the ability to communicate with node 40. However, the maximum distance for direct communication from node 40 does not include node 20, and therefore no direct link between the two nodes is present.
The RTS packet is broadcast in every direction away from node 10 and when it is received by node 20, node 20 responds with a corresponding CTS packet, which acknowledges that node 20 is ready to receive a data communication from node 10. Prior to sending the data communication, node 10 preferably performs a channel selection function using the address of node 20 as input in order to determine what channel the ensuing data communication should be sent over. Once the channel is determined (as output of the function), node 10 performs a clear channel assessment on the channel and if the channel is clear, sends the data frame to node 10 over the selected channel.
Alternatively, prior to sending the RTS packet, node 10 may perform the channel selection function so that it may immediately check assess the selected channel up on receipt of the CTS packet from node 20. This can advantageously speed up communications between the two nodes.
Although not shown in the figure, after node 20 sends the CTS packet, it preferably also performs the channel selection function using its address as input. This allows node 20 to determine the channel on which it should expect to receive a data communication from node 10. Node 20 may thereafter listen on that channel for the ensuing communication from node 10. In one embodiment, if no communication from node 10 is receive in a certain amount of time (i.e., a “timeout” condition occurs) then node 20 may perform the same channel selection function using a different input value.
Advantageously, a list of input values may be agreed upon in advance by the nodes in a mesh network such that they can cycle through the channel selection function using the same input value in order to individually arrive at the same channel selection. For example, the first input value may be the address of the receiving node. The second input value may be the address of the sending node, the third input value may be the sum of the sending node and receiving node addresses, and so on. In this way, the nodes can send individual frames to each other during data communication without the added overhead of additional communications in order to collectively select a particular channel.
In the illustrated embodiment, the RTS packet itself, while remaining very small indeed, includes the selected channel for communication. Accordingly, when node 20 receives the RTS packet over the control channel it responds with a CTS packet acknowledging that the selected communication channel is x. Because the communication channel has already been identified as clear, and the round trip time for the RTS/CTS packets is negligible, node 10 may immediately send the data communication frame to node 20 over the selected channel.
This particular method also applies to mid-stream data communication. For example, to optimize the successful delivery of large frames of data in a wireless mesh network, it is advantageous to perform a clear channel assessment prior to sending any large frame. Additionally, an RTS/CTS combination is also advantageous prior to sending any large frame. Accordingly, by slightly modifying the RTS/CTS communication to include the selected channel for the ensuing frame, channel switching in a wireless mesh network may be implemented by the MAC layer on a frame to frame basis without adding any significant overhead to the communications. Thus, communications in the wireless mesh network are very significantly improved by increased use of the available spectrum (maximizing use of the available channels) and total throughput is significantly increased (allowing for the successful implementation of simultaneous multimedia broadband applications such as streaming video or multi-player gaming).
Advantageously, the increased spectrum use facilitates high bandwidth applications and protocols such as data streaming applications and protocols, security applications and protocols, building automation applications and protocols, energy management applications and protocols, supply chain management applications and protocols, logistics applications and protocols, sensor data applications and protocols, and many others.
According to conventional implementations of 802.11 wireless networks, the sensing range of a node is much larger than the interference range. For example, the sensing range can be twice as large as the interference range. Therefore RTS/CTS in one cell will inhibit transmissions in all neighboring cells. This is because 802.11 wants to suppress communications from other nodes that are in range of node 20 once node 10 has initiated a request to send a communication to node 20. A disadvantage of the suppression in communications is that it applies to those nodes in range of the RTS packet and prevents them from communicating with other nodes that are not involved (i.e., nodes other than 10 and 20). This results in a significant overall degradation in throughput on the wireless network.
For example, when node 10 sends its RTS packet, the packet is received by both node 20 and node 30. While node 20 responds to the RTS packet, node 30 remains idle for a period so that any packets that it may send over the wireless network do not interfere with the communication between node 10 and 20. This prevents node 30 from communicating with another node, e.g., 40 (not shown) that may be in close proximity to node 30 such that communications between 30 and 40 would not physically interfere with communications between node 10 and 20, even if they were on the same channel at the same time.
In the illustrated embodiment, wireless communication device 450 comprises an antenna 452, a multiplexor 454, a low noise amplifier (“LNA”) 456, a power amplifier (“PA”) 458, a modulation circuit 460, a baseband processor 462, a speaker 464, a microphone 466, a central processing unit (“CPU”) 468, a data storage area 470, and a hardware interface 472. In the wireless communication device 450, radio frequency (“RF”) signals are transmitted and received by antenna 452. Multiplexor 454 acts as a switch, coupling antenna 452 between the transmit and receive signal paths. In the receive path, received RF signals are coupled from a multiplexor 454 to LNA 456. LNA 456 amplifies the received RF signal and couples the amplified signal to a demodulation portion of the modulation circuit 460.
Typically modulation circuit 460 will combine a demodulator and modulator in one integrated circuit (“IC”). The demodulator and modulator can also be separate components. The demodulator strips away the RF carrier signal leaving a base-band receive audio signal, which is sent from the demodulator output to the base-band processor 462.
If the base-band receive audio signal contains audio information, then base-band processor 462 decodes the signal and converts it to an analog signal. Then the signal is amplified and sent to the speaker 464. The base-band processor 462 also receives analog audio signals from the microphone 466. These analog audio signals are converted to digital signals and encoded by the base-band processor 462. The base-band processor 462 also codes the digital signals for transmission and generates a base-band transmit audio signal that is routed to the modulator portion of modulation circuit 460. The modulator mixes the base-band transmit audio signal with an RF carrier signal generating an RF transmit signal that is routed to the power amplifier 458. The power amplifier 458 amplifies the RF transmit signal and routes it to the multiplexor 454 where the signal is switched to the antenna port for transmission by antenna 452.
The baseband processor 462 is also communicatively coupled with the central processing unit 468. The central processing unit 468 has access to a data storage area 470. The central processing unit 468 is preferably configured to execute instructions (i.e., computer programs or software) that can be stored in the data storage area 470. Computer programs can also be received from the baseband processor 462 and stored in the data storage area 470 or executed upon receipt. Such computer programs, when executed, enable the wireless communication device 450 to perform the various functions of the present invention as previously described.
In this description, the term “computer readable medium” is used to refer to any media used to provide executable instructions (e.g., software and computer programs) to the wireless communication device 450 for execution by the central processing unit 468. Examples of these media include the data storage area 470, microphone 466 (via the baseband processor 462), antenna 452 (also via the baseband processor 462), and hardware interface 472. These computer readable mediums are means for providing executable code, programming instructions, and software to the wireless communication device 450. The executable code, programming instructions, and software, when executed by the central processing unit 468, preferably cause the central processing unit 468 to perform the inventive features and functions previously described herein.
The central processing unit is also preferably configured to receive notifications from the hardware interface 472 when new devices are detected by the hardware interface. Hardware interface 472 can be a combination electromechanical detector with controlling software that communicates with the CPU 468 and interacts with new devices.
While the particular systems and methods herein shown and described in detail are fully capable of attaining the above described objects of this invention, it is to be understood that the description and drawings presented herein represent a presently preferred embodiment of the invention and are therefore representative of the subject matter which is broadly contemplated by the present invention. It is further understood that the scope of the present invention fully encompasses other embodiments that may become obvious to those skilled in the art and that the scope of the present invention is accordingly limited by nothing other than the appended claims.
The present application claims the benefit of U.S. provisional patent application Ser. No. 60/557,954 filed on Mar. 31, 2004, entitled “Broadband Applications for Wireless Mesh Networks” and is a continuation-in-part of U.S. patent application Ser. No. 10/437,128 and U.S. patent application Ser. No. 10/437,129 and U.S. patent application Ser. No. 10/816,481, each of which is incorporated herein by reference in its entirety.
Number | Date | Country | |
---|---|---|---|
60557954 | Mar 2004 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 10437128 | May 2003 | US |
Child | 11095349 | Mar 2005 | US |
Parent | 10437129 | May 2003 | US |
Child | 11095349 | Mar 2005 | US |
Parent | 10816481 | Apr 2004 | US |
Child | 11095349 | Mar 2005 | US |