The invention relates to the field of communication networks and, more particularly, to systems and methods that allow a low-powered node to join an ad hoc network.
Many existing wireless ad hoc networks were built with the assumption that every network node has a free and essentially unlimited power supply. In recent years, researchers have begun to think about battery-powered ad hoc networks. Several groups have begun work on ultra low-power radios suitable for use in low-energy nodes. Such ultra low-power radios have their receivers turned off most of the time because of the receivers' high power requirements. The best ultra low-power radio designs include a receiver that is powered by a small trickle of energy in a kind of “pager mode,” such that the receiver can be woken up by an incoming signal and can turn power on to a remainder of the receiver, for example, a processor, a memory, and the like.
Various network research teams have begun to think about how to create energy-conserving ad hoc networking protocols. One example includes scheduling when a given node is to transmit, such that nearby nodes may turn their receivers on at the scheduled time in order to receive the given node's transmission. This type of scheduling approach makes it possible for nodes to keep their receivers in a powered off state for long periods of time, for example, hours or days. As a result, it is difficult for a new node to enter the network because the existing network nodes with powered off receivers will not respond to transmissions from the new node. Consequently, the new node may not be able to learn the schedules used by the existing nodes in the network. An energy-conserving ad hoc network that allows new low-powered nodes to easily enter the network is needed.
Systems and methods consistent with the principles of the invention facilitate new nodes joining an energy-conserving ad hoc network.
In a first aspect of the invention, a method is provided for a given node to join an ad-hoc network of energy-conserving nodes. The given node may transmit a wake-up signal. The given node may receive, from an energy-conserving node in the network, a message including information sufficient for the given node to determine how to join the network. The given node may join the network using the information.
In a second aspect of the invention, an energy-conserving ad hoc network that includes a group of nodes is provided. The nodes include a transceiver, processing logic, a memory, a bellringer transmitter, and a bellringer receiver. The transceiver is configured to receive and transmit data messages. The memory is configure to store a schedule of reception times. When the node is an existing node in the network, the processing logic is configured to: receive a wake-up signal via the bellringer receiver, and responsive to the receiving of the wake-up signal, transmit, via the transceiver, a message including the schedule of reception times. When the node is a node joining the network, the processing logic is configured to: transmit the wake-up signal; receive the message from an existing one of the nodes in the network, and join the network based on the message.
In a third aspect of the invention, a node that is configured to operate in an energy-conserving ad hoc network is provided. The node includes a transceiver, a transmitter, and processing logic. The transceiver is configured to send and receive data messages. The transmitter is configured to transmit a wake-up signal. The processing logic is configured to control operation of the transceiver and the transmitter. The processing logic is further configured to: transmit the wake-up signal via the transmitter; receive a network entry message from one of a group of existing nodes in the network, the network entry message including scheduled times in which at least one of the existing nodes in the network is available to receive; and join the network using the scheduled times.
In a fourth aspect of the invention, a machine-readable medium is provided. The machine-readable medium has instructions recorded thereon for at least one processor of a node. When the instructions are executed by the at least one processor, the at least one processor is configured to: transmit a wake-up signal when the node intends to join a network; receive a network entry message from an existing node in the network, the network entry message including information regarding availability of at least one network node for receiving a message from the node; and join the network based on the information included in the network entry message.
In a fifth aspect of the invention, a machine-readable medium is provided. The machine-readable medium has instructions recorded thereon for at least one processor of a node. When the instructions are executed by the at least one processor, the at least one processor is configured to: receive a wake-up signal via a bellringer receiver; and responsive to the receiving of the wake-up signal, transmit a network entry message including scheduled times and durations in which one or more of existing network nodes are available to receive.
In a sixth aspect of the invention, a node configured to operate in an energy-conserving ad hoc network is provided. The node includes: means for transmitting a wake-up signal; means for receiving a network entry message from an existing node in the network, the network entry message including sufficient information for the node to join the network; and means for joining the network using the information.
In a seventh aspect of the invention, a node in an ad hoc network is provided. The node includes a memory and a processor. The memory is configured to store one or more time periods during which the node is available to receive. The processor is configured to transmit a first wake-up signal, receive a message from a neighboring node, the message identifying one or more time periods during which the neighboring node is available to receive, store the one or more time periods from the message in the memory, receive a second wake-up signal from a different node, and transmit a message to the different node. The message includes at least the one or more time periods during which the node is available to receive.
The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate an embodiment of the invention and, together with the description, explain the invention. In the drawings,
The following detailed description of the invention refers to the accompanying drawings. The same reference numbers in different drawings may identify the same or similar elements. The following detailed description does not limit the invention. Instead, the scope of the invention is defined by the appended claims and equivalents.
One type of wireless network is known as an “ad-hoc” network. In an ad-hoc network, nodes may cooperatively route traffic among themselves. Network nodes in these networks may not be permanent: they are instead based on physical proximity at any given point in time. The network may adjust dynamically to changing node conditions, which may result from node mobility or failure.
In general, some or all of the nodes in an ad-hoc network are capable of network routing functions (“routers”), while other nodes may be merely source or destinations for data traffic (“endpoints”). All nodes in the network may execute a set of algorithms and perform a set of networking protocols that enable the nodes to find each other, determine paths through the network for data traffic from source to destination(s), and detect and repair ruptures in the network as nodes move, or fail, as battery power changes, and as communication path characteristics change over time.
Memory 204 may include static memory, such as Nonvolatile Random Access Memory (NVRAM) or flash memory for storing instructions and configuration parameters. Memory 304 may also include Dynamic Random Access Memory (DRAM), or any other convenient form of memory for use as working storage during operation of node 101.
Bellringer transmitter 206 may be a separately powered transmitter that is configured to transmit a signal that may “wake-up” nearby nodes. Bellringer transmitter 206 may not transmit actual data bits, but, instead, may jolt a nearby node so that the nearby node may apply power to, for example, its main transceiver 210, processor 202, memory 204, etc.
Bellringer receiver 208 may be an energy-efficient receiver that can detect an incoming “wake-up” from a transmitter, such as, for example, bellringer transmitter 206 of another node, and can power on the remainder of bellringer receiver 208, the receiving node's processor 202, memory 204, etc. Such a receiver may be built using, for example, a XE1218 single chip low-power VHF receiver, available from Xemics USA Inc., of Mountain View, Calif. or any other suitable low-power receiver chip. Once a node has joined the network, the node may apply a thin trickle of power to its bellringer receiver 208. Some implementations of bellringer receiver 208 may not require any internal power supply, but, instead, may be powered by ambient radio frequency (RF) power, similar to a way in which old “cat's whisker” or crystal radios were powered.
Main transceiver 210 may be capable of modulating messages via radio frequency (RF) over a wireless channel. In one implementation, main transceiver 210 may include a transmit modem and may perform such functions as converting bits to chips, inserting preambles (for example, to provide synchronization patterns for a receive modem), adding error correction features, such as Forward Error Correction codes, and providing power level indications. Main transceiver may include a Code Division Multiple Access (CDMA) transmitter, that is capable of converting narrow band signals to chips, or wider band signals by multiplying each complex single bit symbol by a time-varying complex spreading code sequence.
Main transceiver 210 also may be capable of demodulating messages received by an antenna. In one implementation, main transceiver 210 may include a receive modem and may perform functions, such as detection of synchronization preambles, Viterbi decoding, and application of error codes.
In various implementations consistent with the principles of the invention main transceiver 210 may be capable of sending and receiving messages via a number of media, including, for example, RF communications, optical communications, and acoustic communications, as well as others.
Sensors 212 may optionally be provided for sensor network nodes. Sensors 212 may include video sensors, for still or moving images, acoustic sensors, magnetic sensors, or other types of sensors. An ad hoc wireless sensor network may, for example, be used to gather environmental data for a particular area in which the nodes are placed.
Power supply 214 may be provided to power node 101. Power supply 214 may include, for example, one or more batteries, solar collectors, and ambient energy scavengers.
Node 101, as illustrated in
If node 101 determines that no “network entry message” was received (act 412), then node 101 may determine whether a time limit was exceeded (act 414). The time limit may be, for example, one minute or any other suitable amount of time. If no time limit was exceeded, then processing may proceed to act 410 to wait for reception of a “network entry message.” If node 101 determines that a time limit was exceeded (act 414), then node 101 may turn off main transceiver 210 (act 416) and wait a fixed or variable time interval (act 418). Processing may then proceed to act 402 to turn on bellringer transmitter 206 and repeat the process described above.
If node 101 determines that an entry message was received (act 410), then node 101 may examine contents of the “network entry message” to determine how to join the network (act 420:
The time limit of act 414 and the “fixed or variable interval” of act 418 may be implemented in numerous ways. For example, in some implementations, the time limit and/or the “fixed or variable interval” may be fixed at, for example, a few seconds, such as, four seconds, and in other implementations, the time limit and/or the “fixed or variable interval” may be variable. In some implementations, the “fixed or variable interval” may begin with a short interval, such that a repetition rate may be short, for example, one minute. As a number of failed attempts to receive a “network entry message” increases, node 101 may increase the length of the “fixed or variable interval” to slow down the repetition rate.
The decision to respond may be implemented in a number of different ways. For example, in one implementation, existing node 101 may always respond to the “wake-up” signal. In a second exemplary implementation, the decision may be random. The second implementation may be suitable for a fairly dense network because a number of nodes that may attempt to respond to the “wake-up” signal may be reduced. In a third exemplary implementation, the decision to respond may be based on a received signal strength of the received “wake-up” signal, as determined by bellringer receiver 208. Using this approach, distant nodes may be less likely to respond to the “wake-up” signal. In a fourth exemplary implementation, the decision to respond may depend on an existing node's understanding of current network density. In this implementation, an existing node 101 having a large number of nearby neighbors may be less likely to respond. In a fifth exemplary implementation, the decision to respond may be shift based. That is, some existing nodes 101 may respond during certain time periods or shifts, while other existing nodes 101 may respond during other time periods or shifts. There are many other possible approaches that may be implemented in existing node 101 for making the decision to respond. The above implementations are exemplary and are not intended to limit the implementations only to these approaches.
If existing node 101 decides not to respond, then processing may return to act 504 to wait for another “wake-up” signal. Otherwise, existing node 101 may wait for a random time interval (act 508). In some implementations, the random time interval may be chosen from a range. For example, the random time interval may be chosen from uniformly distributed values in a range of 0-5 seconds. In other implementations, the random time interval may be chosen from a different random distribution, for example, an exponential distribution. Any number of methods for generating a random time interval may be used as long as the method makes it unlikely that different nodes 101 will transmit “network entry messages” at overlapping times, thereby causing the “network entry messages” to be garbled at the node 101 wishing to join the network.
Next, existing node 101 may power on main transceiver 210 (act 510) and may transmit a “network entry message” (act 512). Existing node 101 may then power off main transceiver 210 (act 514). Processing may then proceed to act 504 to wait for the “wake-up” signal from a node 101.
In general, a “network entry message” will provide sufficient information to a node 101, such that node 101 may properly join the existing network. The “network entry message” may take a variety of forms.
In
Additional schedule count field 630 can indicate a number, if any, of additional pending receiver schedule fields 640 to follow. As shown, each additional pending receiver schedule 640 can include a node identification field, identifying another node in the network, and an associated collection of N reception definitions (each definition in turn including an associated interval and channel). Error correction field 650 can include information to ensure accurate transmission of the “network entry message” 600. Note also that “network entry message” 600 can be encrypted using known techniques to provide added security (e.g., network nodes can use a shared encryption key to code and decode messages as they are transmitted and received).
Thus, a node 101 receiving a “network entry message,” such as exemplary “network entry message” 600, may determine how to join the existing network from the received one or more schedules in “network entry message” 600. For example, existing node 101 may transmit a message to one or more existing nodes during their scheduled receive intervals, using a scheduled channel, to facilitate joining the network. In other implementations, the “network entry messages” may be tagged with other fields, such as a list of specific nodes allowed to transmit during a given time, or may be tailored to specific uses, such as time intervals that are dedicated to messages from new network entrants.
Certain portions of the invention may be implemented as “logic” that performs one or more functions. This logic may include hardware, such as an application specific integrated circuit or a field programmable gate array, software, or a combination of hardware and software.
Systems and methods consistent with the principle of the invention allow a node to easily join an existing network of energy-conserving nodes. According to exemplary embodiments, the node can transmit a “wake-up” signal via a transmitter, such as a bellringer transmitter. The existing nodes may keep their respective receivers, for example, bellringer receivers, powered on in a low-power mode, such that a transmitted “wake-up” signal can be detected. If an existing node detects a “wake-up” signal, the existing node may wait a random time interval, may power on a main transceiver and may transmit a “network entry message” to the node to thereby, provide the node with sufficient information to join the existing network.
The foregoing description of preferred embodiments of the invention provides illustration and description, but is not intended to be exhaustive or to limit the invention to the precise form disclosed. Modifications and variations are possible in light of the above teachings or may be acquired from practice of the invention for example, while a series of acts have been described with regard to
No element, act, or instruction used in the description of the present application should be construed as critical or essential to the invention unless explicitly described as such. Also, as used herein, the article “a” is intended to include one or more items. Where only one item is intended, the term “one” or similar language is used. The scope of the invention is defined by the claims and their equivalents.
Number | Name | Date | Kind |
---|---|---|---|
4964121 | Moore | Oct 1990 | A |
5128938 | Borras | Jul 1992 | A |
5203020 | Sato et al. | Apr 1993 | A |
5301225 | Suzuki et al. | Apr 1994 | A |
5430731 | Umemoto et al. | Jul 1995 | A |
5583866 | Vook et al. | Dec 1996 | A |
5590396 | Henry | Dec 1996 | A |
5710975 | Bernhardt et al. | Jan 1998 | A |
5790946 | Rotzoll | Aug 1998 | A |
5987024 | Duch et al. | Nov 1999 | A |
6016322 | Goldman | Jan 2000 | A |
6052779 | Jackson et al. | Apr 2000 | A |
6058106 | Cudak et al. | May 2000 | A |
6104708 | Bergamo | Aug 2000 | A |
6127799 | Krishnan | Oct 2000 | A |
6192230 | van Bokhorst et al. | Feb 2001 | B1 |
6208247 | Agre et al. | Mar 2001 | B1 |
6243579 | Kari et al. | Jun 2001 | B1 |
6292508 | Hong et al. | Sep 2001 | B1 |
6374311 | Mahany et al. | Apr 2002 | B1 |
6381467 | Hill et al. | Apr 2002 | B1 |
6414955 | Clare et al. | Jul 2002 | B1 |
6463307 | Larsson et al. | Oct 2002 | B1 |
6473607 | Shohara et al. | Oct 2002 | B1 |
6477361 | LaGrotta et al. | Nov 2002 | B1 |
6512935 | Redi | Jan 2003 | B1 |
6564074 | Romans | May 2003 | B2 |
6574269 | Bergamo | Jun 2003 | B1 |
6583675 | Gomez | Jun 2003 | B2 |
6590889 | Preuss et al. | Jul 2003 | B1 |
6601093 | Peters | Jul 2003 | B1 |
6694149 | Ady et al. | Feb 2004 | B1 |
6714983 | Koenck et al. | Mar 2004 | B1 |
6745027 | Twitchell, Jr. | Jun 2004 | B2 |
6760584 | Jou | Jul 2004 | B2 |
6791949 | Ryu et al. | Sep 2004 | B1 |
6859135 | Elliott | Feb 2005 | B1 |
6888819 | Mushkin et al. | May 2005 | B1 |
6894975 | Partyka | May 2005 | B1 |
6894991 | Ayyagari et al. | May 2005 | B2 |
6920123 | Shin et al. | Jul 2005 | B1 |
6981052 | Cheriton | Dec 2005 | B1 |
7020501 | Elliott et al. | Mar 2006 | B1 |
7027392 | Holtzman et al. | Apr 2006 | B2 |
7058031 | Bender et al. | Jun 2006 | B2 |
7072432 | Belcea | Jul 2006 | B2 |
7103344 | Menard | Sep 2006 | B2 |
7110783 | Bahl et al. | Sep 2006 | B2 |
7142520 | Haverinen et al. | Nov 2006 | B1 |
7151945 | Myles et al. | Dec 2006 | B2 |
7155263 | Bergamo | Dec 2006 | B1 |
7209771 | Twitchell, Jr. | Apr 2007 | B2 |
7286844 | Redi et al. | Oct 2007 | B1 |
20020067736 | Garcia-Luna-Aceves et al. | Jun 2002 | A1 |
20020071395 | Redi et al. | Jun 2002 | A1 |
20020146985 | Naden | Oct 2002 | A1 |
20020147816 | Hlasny | Oct 2002 | A1 |
20030066090 | Traw et al. | Apr 2003 | A1 |
20030067892 | Beyer et al. | Apr 2003 | A1 |
20030099210 | O'Toole et al. | May 2003 | A1 |
20030114204 | Allen et al. | Jun 2003 | A1 |
20030115369 | Walter et al. | Jun 2003 | A1 |
20030119568 | Menard | Jun 2003 | A1 |
20030152110 | Rune | Aug 2003 | A1 |
20030185170 | Allen et al. | Oct 2003 | A1 |
20040077353 | Mahany | Apr 2004 | A1 |
20040125773 | Wilson et al. | Jul 2004 | A1 |
20040218580 | Bahl et al. | Nov 2004 | A1 |
20040230638 | Balachandran et al. | Nov 2004 | A1 |
20050009578 | Liu | Jan 2005 | A1 |
20050059347 | Haartsen | Mar 2005 | A1 |
20050152329 | Krishnan et al. | Jul 2005 | A1 |
20050185632 | Draves, Jr. et al. | Aug 2005 | A1 |
20050207376 | Ashwood-Smith et al. | Sep 2005 | A1 |
20050215280 | Twitchell, Jr. | Sep 2005 | A1 |
20060007865 | White et al. | Jan 2006 | A1 |
20060058102 | Nguyen et al. | Mar 2006 | A1 |
20060068837 | Malone | Mar 2006 | A1 |
20060107081 | Krantz et al. | May 2006 | A1 |
20060135145 | Redi | Jun 2006 | A1 |
20060229083 | Redi | Oct 2006 | A1 |
20070070983 | Redi et al. | Mar 2007 | A1 |
20070149204 | Redi et al. | Jun 2007 | A1 |