This application claims the benefit under 35 U.S.C. ยง119(a) of Korean Patent Application No. 10-2008-0125311, filed on Dec. 10, 2008, the disclosure of which is incorporated by reference in its entirety for all purposes.
1. Field
The following description relates to routing, and more particularly, to a routing path establishment apparatus and method in a ZigBee network including a sleeping device.
2. Description of the Related Art
ZigBee networks operate in a beacon-enabled mode and a non-beacon-enabled mode. In a beacon-enabled mode, to improve energy efficiency of ZigBee devices operated in the ZigBee network, a receiver of each ZigBee device is activated for a predetermined period of time, and is deactivated thereafter to prevent power consumption of the receiver.
The beacon-enabled mode is beneficial in terms of energy efficiency, but has to transmit a beacon signal periodically. In addition, since carrier sense multiple access/collision avoidance (CSMA/CA) is not used in transmission of a beacon signal, the beacon-enabled mode cannot be operated stably in an environment where different types of wireless equipments such as wireless LAN and Bluetooth are implemented together. Moreover, in the beacon-enabled mode, since devices activate their receiver only in an area where the devices and their parent devices are located, a mesh routing method cannot be used.
On the other hand, in the non-beacon-enabled mode, routers included in the network have their receiver activated at all times. Thus, an ad-hoc on-demand distance vector (AODV)-based mesh routing method in which a message about a routing path is broadcasted to a plurality of devices to set a routing path can be used. However, in the non-beacon-enabled mode, because all routers have their receiver activated at all times, there is a great amount of power consumption.
Accordingly, in one aspect, there is provided an apparatus and method for establishing a routing path in an Institute of Electrical and Electronics Engineers (IEEE) 802.15.4-based ZigBee network which includes a device in sleep mode for energy efficiency.
More specifically, there is provided an apparatus and method for establishing an ad-hoc is on-demand distance vector (AODV)-based mesh routing path in a ZigBee network which includes a device entering sleep mode in a beacon-enabled mode.
In one general aspect, there is provided a routing path establishment method including receiving a route request command, and establishing a path with reference to sleep information of a destination device and of all devices located on a path to the destination device.
The sleep information of the device may be information about the use of a low-power standby mode and may be broadcasted to at least one neighboring devices one hop away from the device of the sleep information.
In another general aspect, there is provided a data storage medium storing a routing announce message, wherein the routing announce message includes a destination address having a broadcast address, a sleep start time indicating a start time of sleep mode and a sleep duration indicating how long a device remains in sleep mode.
In still another general aspect, there is provided a routing path establishment apparatus including a message transmitting/receiving unit to transmit and receive a route request command or a route reply command, a neighboring device table storing unit to store sleep information of a destination device and of all devices located on a path to the destination device, and a control unit to establish a path with reference to the stored sleep information.
In yet another general aspect, there is provided a ZigBee network which includes a plurality of devices, the ZigBee network storing sleep information of a destination device and of all devices located on a path to the destination device and establishing a path with reference to the sleep information.
Other features will become apparent to those skilled in the art from the following detailed description, which, taken in conjunction with the attached drawings, discloses exemplary embodiments of the invention.
Elements, features, and structures are denoted by the same reference numerals throughout the drawings and the detailed description, and the size and proportions of some elements may be exaggerated in the drawings for clarity and convenience.
The following detailed description is provided to assist the reader in gaining a comprehensive understanding of the methods, apparatuses and/or systems described herein. Various changes, modifications, and equivalents of the systems, apparatuses and/or methods described herein will suggest themselves to those of ordinary skill in the art. Descriptions of well-known functions and structures are omitted to enhance clarity and conciseness.
However, if one of the devices on a path to be established enters sleep mode, it may be difficult to establish the routing path. The sleep mode may be a state where a device is deactivated and enters standby state with low power consumption.
For example, when the 25th device 20, i.e., a destination device enters sleep mode, the first device 10 cannot receive any RREP from the 25th device 20, and thus the first device determines that the 25th device 20 does not exist in the network. Therefore, a device entering sleep mode needs to broadcast information that informs neighboring devices of its entry into sleep mode.
Referring to
A neighboring device that receives a sleep announce command identifies a source address of the sleep announce command, and checks whether or not a device having the source address is present in a neighboring device table possessed by the device itself. If the device having the source address is present, the device sets a sleep start time, a sleep duration, and a sleep flag, and stores the set information in the neighboring device table.
To use the sleep start time and the sleep duration, time-synchronization between devices is required, but this does not fall under the scope of the present invention, and thus detailed description thereof will be omitted.
When the sleep announce command has been already transferred to the neighboring device and stored in the neighboring device table, a 12th device 30 and an 18th device 40 which receive an RREQ go through the following process.
The 18th device 40 notifies a first device 10 through the 12th device 30 that the 25th device is currently in sleep mode by sending a sleep status command.
In detail, once a 25th device wakes up from sleep mode after a predetermined period of time, the 18th device 40 broadcasts the RREQ again, and the 25th device 20 transmits the RREP to the 18th device 40 in response, so that a routing path from the first device 10 to the 25th device 20 via the 12th device 30 and the 18th device 40 is established.
In other words,
When a routing path from a first device 10 to a 25th device 20 via a 12th device 30 and an 18th device 40 is established as shown in
In this case, the 12th device 30 refers to sleep information stored in its neighboring device table. That is, the 12th device 30 waits for the 18th device 40 to return to normal mode after a predetermined period of sleep time with reference to sleep start time and sleep duration of the 18th device 40 contained in the sleep information. Then, the 12th device 30 transmits data immediately after the 18th device 40 wakes up from the sleep mode after the predetermined period of sleep time, as shown in
When it takes more than the predetermined period of time for the 18th device to wake up, another routing path may be established as shown in
At the broadcasting of the sleep announce command, the destination address has a value of 0xfffc. The sleep start time 840 and sleep duration 850 may be set as described above.
A device receives an RREQ (operation 910), and determines whether its address is identical with a destination address included in the RREQ (operation 915). If the address of the device is identical with the destination address, the device transmits an RREP in response (operation 925). If the address is different from the destination address, the device checks whether or not the destination address included in the RREQ is present in a neighboring device table possessed by the device (operation 920).
It is determined whether or not the destination address is present in the neighboring device table (operation 930), and if present, the device examines a sleep flag in the neighboring device table (operation 935). It is determined whether the sleep flag is set to 1 (operation 940), and if the sleep flag is 1, a sleep on-off is set to a value obtained by subtracting a sum of a sleep start time and a sleep duration time from a RREQ reception time (operation 945).
Thereafter, it is determined whether the sleep on-off is smaller than 0 (operation 950), and if the sleep on-off is smaller than 0, the device notifies of a sleep mode by transmitting a sleep status command and waits for the set sleep on-off time (operation 935). Then, the device re-transmits an RREQ command (operation 960).
Meanwhile, if it is determined that the destination address included in the RREQ is not present in the neighboring device table in operation 930, the sleep flag is not set to 1 in operation 940 or the sleep on-off is not smaller than 0, the device immediately re-transmits the RREQ is command (operation 960).
The message transmitting and receiving unit 1010 transmits and receives a route request (RREQ) command or a route reply command (RREP). The neighboring device table storing unit 1020 stores sleep information of a destination device and of all devices located on a path to the destination device. The sleep information has been described above with reference to
The control unit 1030 establishes a path with reference to the stored sleep information. Specifically, the sleep information of the destination device and of all the devices located on a path to the destination device is checked, and the control unit waits for a device in sleep mode to return to normal mode according to the sleep information and then establishes the path. Alternatively, the control unit 1030 may check the sleep information of the destination device and of all the devices located on a path to the destination device and establish another path if it takes more than a predetermined period of time for a device in sleep mode to return to normal mode.
According to the exemplary embodiments, while the devices are allowed to sleep for energy efficiency even in a non-beacon-enabled mode, an ad-hoc on-demand distance vector (AODV)-based mesh routing method which uses a route request command (RREQ) and a route reply command (RREP) can be used as is, and thus the ZigBee network can be utilized in more various application fields.
The invention can also be embodied as computer readable codes on a computer readable is recording medium. The computer readable recording medium is any data storage device that can store data which can be thereafter read by a computer system. Examples of the computer readable recording medium include read-only memory (ROM), random-access memory (RAM), CD-ROMs, magnetic tapes, floppy disks, optical data storage devices, and carrier waves (such as data transmission through the Internet). The computer readable recording medium can also be distributed over network coupled computer systems so that the computer readable code is stored and executed in a distributed fashion. Also, functional programs, codes, and code segments for accomplishing the present invention can be easily construed by programmers skilled in the art to which the present invention pertains.
A number of exemplary embodiments have been described above. Nevertheless, it will be understood that various modifications may be made. For example, suitable results may be achieved if the described techniques are performed in a different order and/or if components in a described system, architecture, device, or circuit are combined in a different manner and/or replaced or supplemented by other components or their equivalents. Accordingly, other implementations are within the scope of the following claims.
Number | Date | Country | Kind |
---|---|---|---|
10-2008-0125311 | Dec 2008 | KR | national |