Description
ROUTING METHOD IN WIRELESS NETWORK AND COMMUNICATION APPARATUS OF USING THE SAME
Technical Field
[1] The present invention relates to a routing method in the wireless network and a communication device using the same. More particularly, the present invention relates to a routing method in the wireless network to efficiently transmit and receive data by tree-based mesh routing and a communication device using the same. Background Art
[2] Generally, a route discovery in wireless networks, which is used to set a routing path, is performed for one node. Recently, the wireless networks have all the devices in the area cluster-tree structured. Devices joining with the cluster tree structure are allocated with an address according to the tree structure. The allocated address is used for routing in each network environment.
[3] FIG. 1 is a tree structure of a conventional wireless network.
[4] In FIG. 1, the conventional network includes a parent node A I lO and a child node
B through J 112 through 142.
[5] The child node B 112 has the parent node A I lO thereof and has the child nodes E,
F and G 120, 122 and 124 thereof. The child node C 114 has the parent node A I lO thereof and has the child node H 130 thereof. The child node D 116 has the parent node A thereof and has the child nodes I and J 140 and 142 thereof. In FIG. 1, each node may be implemented as a device, and each parent node has table-form address information on the child nodes thereof.
[6] When the data is transmitted from the H node 130 to F node 122 in the wireless network of FIG.1, the H node 130 is a source node and the F node 122 is a destination node. A data packet transmitted from the H node 130 is transmitted along the only tree structure to the F node 122. The data packet is transmitted necessarily through the parent node thereof, so that it can be transmitted to neighbor nodes thereof along the tree structure.
Disclosure of Invention
Technical Problem
[7] Accordingly, the data packet transmitted from the H node 130 is sent to the F node
122 via the C, A and B nodes 114, 110 and 112 along the tree structure. In the tree structure of the conventional wireless network, the data packet is transmitted along the tree structure from the source node to the destination node, resulting in inconveniently lengthened routing path and subsequent rise in the communication costs.
Technical Solution
[8] Accordingly, an aspect of embodiments of the present invention is to provide a routing method tree-based mesh routing in the wireless network to efficiently search for and set a route from a source node to a destination node.
[9] In order to achieve the above-described and other aspects of embodiments of the present invention, a routing method in a tree-based wireless network is provided, comprising acquiring an optimal route using a table which is recorded based on received information on neighbor nodes and received information on lower nodes of the neighbor nodes, and transmitting a packet through the optimal route.
[10] In acquiring the optimal route, the table may be searched to acquire the optimal route. That is, when an address of a node to receive the packet matches one of beginning addresses recorded in the table, a route through an address of a next hop corresponding to the beginning address recorded in the table is acquired as the optimal route.
[11] Additionally, in acquiring the optimal route, when an address of a node to transmit the packet matches one of the beginning addresses recorded in the table, the route through the address of the next hop corresponding to the beginning address recorded in the table may be acquired as the optimal route.
[12] Acquiring the optimal route may comprise transmitting the acquired optimal route to the node to transmit the packet; and transmitting the packet through the auxiliary route.
[13] The routing method in the tree-based wireless network may further comprise acquiring an auxiliary route using the table recorded based on the received information on the neighbor nodes and the received information on the lower nodes of the neighbor nodes.
[14] Additionally, in acquiring the auxiliary route, when an address of a node to receive the packet does not match one of the beginning addresses recorded in the table, the auxiliary route may be acquired by determining if the address of the node is between an address which is added with " 1 " to the beginning address recorded in the table, and a last address corresponding to the beginning address.
[15] Additionally, in acquiring the auxiliary route, if the address of the node to receive the packet is between an address which is added with " 1 " to the beginning address recorded in the table, and the last address corresponding to the beginning address, a route through a node corresponding to the beginning address recorded in the table, and lower nodes of the node corresponding to the beginning address may be acquired as the auxiliary route.
[16] Additionally, in acquiring the auxiliary route, when the address of the node to
transmit the packet does not match one of the beginning addresses recorded in the table, the auxiliary route may be acquired by determining if the address of the node is between an address which is added with " 1 " to the beginning address recorded in the table, and a last address corresponding to the beginning address.
[17] Additionally, in acquiring the auxiliary route, if the address of the node to receive the packet is between an address which is added with " 1 " to the beginning address recorded in the table, and the last address corresponding to the beginning address, a route through a node corresponding to the beginning address recorded in the table, and lower nodes of the node corresponding to the beginning address may be acquired as the auxiliary route.
[18] Additionally, acquiring the auxiliary route may further comprise transmitting the acquired auxiliary route to the node to transmit the packet.
[19] Furthermore, in acquiring the optimal route, the table may comprise topology information on the plurality of nodes. The topology information comprises at least one of a beginning address of the node, an ending address of the node, a next hop via which the node can be routed, hops to the beginning address of the node, costs to the beginning address of the node, and time when the node is created or refreshed.
Advantageous Effects
[20] According to an exemplary embodiment of the present invention, tree-based mesh routing which performs route discovery block by block is used in order to increase the efficiency of route discovery, and a packet is transmitted through an optimal route so that communication costs can be reduced.
[21] In addition, by using the auxiliary route recorded in the NTT, there is no need to perform the route discovery again when transmitting the packet from the destination node and the lower nodes thereof to the souce node, so that the packet can be transmitted through the optimal route. Brief Description of the Drawings
[22] The above and other aspects and other features of embodiments of the present invention will become more apparent by describing in detail exemplary embodiments thereof with reference to the attached drawing figures, wherein;
[23] FIG. 1 is a view describing an example of a tree structure of a conventional wireless network;
[24] FIG. 2 is a flow chart describing a method of allocating an address in the wireless network according to an exemplary embodiment of the present invention;
[25] FIG. 3 is a figure chart describing a route discovery process in the wireless network according to an exemplary embodiment of the present invention;
[26] FIGs. 4 and 5 are views describing an exemplary route request (RREQ) and route
replay (RREP) used to set a routing route according to an exemplary embodiment of the present invention; [27] FIG. 6 is a view describing an exemplary non-tree-table (NTT) written during the route discovery process of FIG. 3; [28] FIG. 7 is a viewt describing method of set a routing route between a source node and a destination node after route discovery according to an exemplary embodiment of the present invention; [29] FIG. 8 is a view describing a routing method when a "source node" already knows an optimal route to a "destination node"after route discovery; [30] FIG. 9 is a view describing a routing method when a "destination node" already knows an optimal route to a "source node" after route discovery; and [31] FIGs. 10 and 11 are views describing a recovery process when connection between nodes is broken in the wireless network according to an exemplary embodiment of the present invention.
Best Mode for Carrying Out the Invention [32] Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawing figures. [33] In a routing method in the wireless network according to an exemplary embodiment of the present invention, there are an adaptive robust tree (ART) and meshed ART (MART) methods for a tree-based routing method, and is a non-tree routing method. Each of the nodes used for routing communicates bi-directionally. [34] FIG. 2 is a flow chart describing a method of allocating an address in the wireless network according to an exemplary embodiment of the present invention. Referring to
FIG. 2, in the initialization phase, a plurality of nodes are connected to each other to form a cluster-tree structure (S210). More specifically, if node A which is a root node start connection, a neighbor node transmits an association request to node A. If node A intends to be connected to the neighbor node, node A replies to the neighbor node. As a result, node A and each node are connected. Each node can be connected to its lower nodes in the same way. [35] If the cluster-tree structure is formed this way, each node in the bottom level or next upper level bottom-up requests an address block of a certain size to its upper node
(S220). [36] Meanwhile, a node which receives the address block of a certain size determines whether to be in the top level (S230). If the node is not in the top level, the node notifies its upper node of a certain size of the address block to use (S240). [37] The root node allocates address blocks of the requested size to each branch (S250).
In this case, the address blocks are sequentially allocated according to the connection
order of lower nodes corresponding to each branch.
[38] If each lower node is not in the bottom level (S260), the address block allocated to itself is allocated again to its lower node (S270). In this case, the address blocks of a certain size that its lower nodes requested are sequentially allocated. Accordingly, addresses can be allocated down to each node in the bottom level. Consequently, each node writes an adaptive robust tree table (ARTT) using the address allocated to itself, and performs the routing operation according to the ARTT. The ARTT includes topology information.
[39] FIG. 3 is a figure chart describing a route discovery process in the wireless network according to an exemplary embodiment of the present invention, and FIGs. 4A and 4B are views describing an exemplary route request (RREQ) and route reply (RREP) used to set a routing route according to an exemplary embodiment of the present invention.
[40] Referring to FIGs. 3 and 5, for example, when a packet is transmitted from source node I to destination node O, source node I unicasts an RREQ to destination node O to set a route to destination node O. That is, the routing route of the RREQ is I-H-K-0. The RREQ is a message type used in order for a source node to find a destination node, that is, to request to generate a route.
[41] As shown in FIG. 4, the RREQ includes a routejype, dst_beg_addr, src_beg_addr, src_end_addr, max_link_cost, hopsjxaveled, cost_accumed, and time to live (TTL). Description on each of the fields of the RREQ is shown in FIG. 4.
[42] If destination node O receives the RREQ from source node I, destination node O broadcasts the RREQ to find an optimal route to source node I.
[43] Subsequently, source node I receives the RREQ broadcasted from destination node
O, so that the optimal route to destination node O can be found. Accordingly, source node I transmits an RREP through the optimal route to destination node O. That is, the optimal route to transmit the RREP from source node I to destination node O becomes I-L-O. In this case, as source node I and destination node O can exchange route information each other, destination node O can also know the optimal route to source node I.
[44] The RREP is a reply to the RREQ. As shown in FIG. 5, the RREP includes a routejype, dst_beg_addr, dst_end_addr, src_beg_addr, src_end_addr, hopsjxaveled, hops Jotal, cost_accumed, total_cost, and TTL. Description on each of the fields of the RREP is shown in FIG. 5.
[45] Additionally, source node I which receives the RREQ broadcasted from destination node O can also find routes to child nodes of destination node O.
[46] To be more specific, the broadcasted RREQ includes information such as the beg_addr and end_addr of destination node O. Accordingly, source node I can find auxiliary routes to child nodes of destination node O. The auxiliary route is a second
best route, instead of the optimal route from a source node to a destination node.
[47] FIG. 6 is a view describing an exemplary non-tree-table (NTT) written during the route discovery process of FIG. 3.
[48] Referring to FIG. 6, each node writes the NTT to record the optimal route and auxiliary route between each node through route discovery using the RREQ and RREP, and the NTT is used for performing a routing operation. Each node searches for the optimal route and auxiliary route by referring to the information in its NTT, and performs the routing operation along the searched route. The beg_addr recorded in the
NTT is the optimal route of node I, and the auxiliary routes are from beg_addr + 1 to end_addr .
[49] FIG. 7 is a flow chart describing method of set a routing route between a source node and a destination node after route discovery according to an exemplary embodiment of the present invention.
[50] Referring to FIG. 7, first the source node determines if an optimal route to the destination node is recorded in its NTT generated upon route discovery (S610).
[51] That is, the source node determines if the address of the destination node to transmit a packet matches one of a plurality of beg_addr recorded in the NTT of the source node. If the address of the destination node matches one of a plurality of beg_addr recorded in the NTT, the source node determines that an optimal route to the destination node is recorded.
[52] Subsequently, if an optimal route to the destination node is not recorded in the
NTT, the source node determines if an optimal route to the destination node is recorded in the ARTT initially generated upon generating a tree (S620). That is, the source node determines if the address of the destination node matches one of a plurality of beg_addr recorded in the ARTT of the source node. If the address of the destination node matches one of a plurality of beg_addr recorded in the ARTT, the source node determines that an optimal route to the destination node is recorded.
[53] If an optimal route to the destination node is not recorded in the ARTT, the source node determines if an auxiliary route to the destination node is recorded in the NTT (S630).
[54] More specifically, if the address of the destination node does not match one of a plurality of beg_addr recorded in the NTT and ARTT of the source node, the source node determines if an auxiliary route to the destination node is recorded in the NTT. That is, the source node determines if the address of the destination node is between beg-addr +1 recorded in the NTT of the source node and end-addr . If the address of the destination node is between beg-addr +1 recorded in the NTT of the source node and end-addr , the source node determines that an auxiliary route to the destination node is recorded in the NTT.
[55] If an optimal route or auxiliary route to the destination node is searched in the step of S610, S620 or S630, the source node transmits the packet through the optimal route or auxiliary route to the destination node (S640).
[56] In detail, if an optimal route to the destination node is recorded in its NTT in the step of S610, the source node transmits the packet through the optimal route to the destination node. That is, the source node transmits the packet through the address of the next hop corresponding to the beg_addr searched in the step of S610 as the optimal route.
[57] However, if an optimal route to the destination node is not recorded in its NTT in the step of S610, it is determined if an optimal route to the destination node is recorded in the ARTT as in the step of S630. If an optimal route to the destination node is recorded in the ARTT, the source node transmits the packet through the optimal route to the destination node.
[58] Meanwhile, if an optimal route to the destination node is not recorded in the ARTT in the step of S620, the source node determines if an auxiliary route to the destination node is recorded in the NTT as in the step of S630. If an auxiliary route to the destination node is recorded in the NTT, the source node transmits the packet through the auxiliary route to the destination node.
[59] Next, if neither an optimal nor auxiliary route to the destination node is recorded in the ARTT and NTT, the source node uses the tree route (S650).
[60] More specifically, for example, when a packet is transmitted from source node I to destination node O, if neither an optimal nor auxiliary route to destination node O is recorded in the NTT and ARTT of source node I, source node I transmits the packet to destination node O using the tree route (ART/MART) generated when the address is initially allocated. That is, the route is I-H-K-0.
[61] In the step of S650, if neither an optimal nor auxiliary route to the destination node is recorded in the ARTT and NTT, the source node performs the route discovery again to record an optimal route to the destination node in the NTT.
[62] Meanwhile, in the routing method in the wireless network, the process of the steps of S610~650 to set an optimal route between the source node and destination node can be performed in the destination node as well as in the source node.
[63] More specifically, when the source node performs the steps of S610-S650, if the source node does not transmit a packet through an optimal route, the destination node can transmit the packet through an optimal or auxiliary route to the source node by performing the steps of S610-S650.
[64] That is, the destination node determines if an optimal or auxiliary route to the source node is recorded in the NTT and ARTT of the destination node. If an optimal or auxiliary route to the source node is in the tables of the destination node, the packet is
transmitted through the searched route to the source node. If an optimal or auxiliary route to the source node is not in the tables of the destination node, the destination node uses either the tree route or the route discovery to transmit the packet from the destination node to the source node, as described in step of S650.
[65] FIGs. 8 and 9 are views describing in detail a routing method according to an exemplary embodiment of the present invention in FIG. 7. FIG. 8 is a view describing a routing method when a "source node" already knows an optimal route to a "destination node" after route discovery. The case of not knowing an optimal route is that an optimal or auxiliary route to the "destination node" or the "source node" is not recorded in the NTT and ARTT.
[66] First, referring to FIG. 8, for example, when a packet is transmitted from source node F to destination node I, source node F determines if an optimal route to destination node I is recorded in its NTT. As an optimal route to destination node I is already recorded in the NTT of source node F generated upon route discovery, the routing route to transmit the packet from source node F is F-G-I.
[67] More specifically, connection of source node F and destination node I is not tree- based, but source node F can transmit a packet through an optimal route to destination node I using neighbor node G. Node G exchanges information on lower nodes of neighbor nodes F and I with its neighbor nodes F and I. That is, node G provides information on its connection with nodes E and F to node I, and node I provides information on its connection with nodes L and M to node G. Accordingly, source node F can transmit the packet to destination node I along the optimal route F-G-I recorded in the NTT.
[68] FIG. 9 is a view describing a routing method when a "destination node" already knows an optimal route to a "source node" after route discovery.
[69] Referring to FIG. 9, for example, when a packet is transmitted from source node F to destination node I, source node F determines if an optimal or auxiliary route to destination node I is recorded in its ARTT and NTT. It is determined that an optimal or auxiliary route to destination node I is not recorded in the ARTT and NTT of source node F. Source node F unicasts an RREQ to destination node I.
[70] Meanwhile, destination node I which received the RREQ knows an optimal route to source node F. That is, an optimal route to source node F is recorded in the NTT of destination node I. Accordingly, destination node I transmits an RREP through the optimal route to source node F. The routing route to transmit the RREP is I-G-F. Destination node I provides information on the optimal route from destination node I to source node F to source node F. Accordingly, a source node can know an optimal route to a destination node, and the source node can transmit a packet through the optimal route to the destination node.
[71] That is, if an optimal route to each node is recorded in the NTT or ARTT of the source node or destination node, the destination node provides information on the optimal route to the source node without performing route discovery again, so that the packet can be transmitted through the optimal route.
[72] Figs. 10 and 11 are views describing a recovery process when connection between nodes is broken in the wireless network according to an exemplary embodiment of the present invention.
[73] Referring to FIG. 10, for example, if node K is broken and source node C transmits a packet to destination node M, source node C first transmits the packet to destination node M along the route C-B-J-K-L-M. However, as node K is broken and connection between node J and node K is broken, destination node M can not receive the packet transmitted from source node C.
[74] Node J detects that node K is broken, and broadcasts an RREQ to its lower nodes.
As node J receives an RREP from its lower nodes, connection between node J and lower nodes of node K is recovered. If node J first receives the RREP from one of node I and node L which are upper nodes of destination node M, connection to destination node M is recovered.
[75] That is, if node J first receives the RREP from node L of upper nodes I and L of destination node M, node J recovers connection to node L and destination node M. Node L changes and records its parent node from node K to node H in the tree. That is, the parent node of node L becomes newly-connected node H instead of broken node K.
[76] In addition, if node J receives the RREP from its lower nodes, node J selects as a routing route the node closest to node K among nodes which has transmitted the RREP, and can recover connection to destination node M. That is, if node J receives the RREP from nodes I and L, node J selects as a routing route node L closer to node K, and can recover connection to destination node M.
[77] Meanwhile, referring to FIG. 11, when node J detects that node K is broken, node J receives the RREP only from lower nodes of node K, so that connection to destination node M can be recovered. That is, node J receives the RREP only from node L, a lower node of node K, instead of all the lower nodes of node J, so that connection to destination node M and lower nodes of node K can be recovered. Industrial Applicability
[78] The present invention is applicable to a wireless network, and especially to a wireless device having a tree-based mesh structure.