Hindawi Publishing Corporation International Journal of Distributed Sensor Networks Volume 2014, Article ID 457962, 12 pages http://dx.doi.org/10.1155/2014/457962
Research Article DAG Based Multipath Routing Algorithm for Load Balancing in Machine-to-Machine Networks Liang Liu, Tao Zhang, and Jun Zhang School of Electronic and Information Engineering, Beihang University, Beijing 100191, China Correspondence should be addressed to Tao Zhang;
[email protected] Received 17 August 2013; Revised 27 November 2013; Accepted 27 November 2013; Published 6 January 2014 Academic Editor: Jianhua He Copyright © 2014 Liang Liu et al. This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited. In M2M networks, most nodes are powered by battery; hence the overused nodes may easily be out of power, which causes the reduction of network lifetime. To solve this problem, it is helpful to balance network load into more nodes and links, so as to reduce network congestion. Multipath routing is a useful tool to reduce congestion, since data flow can be dispersed into multiple paths. However, most of the previous multipath routing algorithm is based on the path disjoint constraint, which leads to the lack of routing paths and the failure to disperse data flow into more links. In this paper, a directed acyclic graph based multipath routing algorithm for congestion minimization (DAGMR) is proposed, where different routing paths are confined in a directed acyclic graph (DAG) under time delay constraint. Furthermore, the data flow distribution is accomplished through partial capacity network to obtain the minimal multipath routing congestion factor. Simulation indicates that our algorithm can obtain lower congestion factor and formulates multipath routing graph with more nodes and links than algorithm with path disjoint constraint. In addition, our algorithm is a polynomial time complexity algorithm with nodes and links number of the entire network.
1. Introduction At present, Machine-to-Machine (M2M) network has emerged as an innovative topic and is receiving huge attention [1]. One of the biggest advantages of M2M networks is that nodes directly communicate with each other without human intervention, so that costs can be reduced and services can be improved in a wide range of industries. However, performance of M2M network suffers a lot from low-power character of network nodes. Since most nodes in wireless M2M networks are powered by batteries, the overused nodes can easily be out of power, which leads to the reduction of lifetime of entire networks [2]. To solve above problems, network load should be balanced into different nodes and links so as to reduce the congestion of certain links and ease the burden of certain overused nodes. The objective to balance network load is to reduce network congestion. To achieve this objective, multipath routing is a useful method, since network data flow can be dispersed into multiple paths, so as to reduce network congestion. Former researches of this aspect are as follows. Reference
[3] represents multipath routing as an optimization problem of congestion minimization and proposes a polynomial time algorithm to solve the problem of congestion minimization under path number constraint and time delay constraint. Reference [4] proposes a bandwidth aware multipath routing algorithm for Ad Hoc network. References [5, 6] propose low complexity link state multipath routing algorithm. Reference [7] proposes a tree search based multipath routing algorithm. Reference [8] proposes a network decomposition and traffic balancing based multipath routing algorithm. Those algorithms above are mostly based on the principle that different paths should be disjoint (including node disjoint and link disjoint). Although the probability of data session failure can be reduced through the path disjoint principle based multipath routing, network congestion cannot be minimized, due to the following two reasons. First, the paths disjoint constraint leads to the reduction of paths number, which is a negative impact on the balance of data flow. Second, while trying to find disjoint paths, some extra links with relatively low link capacity use rate would be ignored. For the example illustrated in Figure 1, although four parallel paths
2
International Journal of Distributed Sensor Networks 1
2
3
4
5
6 D
S
7
8
9
10
11
12
Figure 1: An example of multipath routing, where additional links besides disjoint paths can be used to reduce network congestion.
from 𝑆 to 𝐷, which are depicted in solid line, exist, it is also helpful if some extra links crossing those paths can be utilized. For instance, when V2 → V3 and V3 → 𝐷 are both in high capacity use rate and the capacity use rate of V6 → 𝐷 is relatively lower, congestion of V2 → V3 and V3 → 𝐷 can be reduced, if V2 disperses some data flow to V6 . In order to further reduce network congestion, this paper proposes a directed acyclic graph (DAG) based multipath routing algorithm. Our algorithm abandons the path disjoint principle, and the final multipath routing graph is obtained through maximum directed acyclic graph under time delay constraint (ML-DAG). Comparing with the former multipath routing algorithms, our algorithm constructs multipath routing graph with more nodes and links, and the network congestion can be efficiently reduced. The rest of this paper is organized as follows. Basic concept and the problem of multipath routing for congestion minimization under time delay constraint (MCMTD) are proposed in Section 2. In Section 3, the explicit description of three parts of entire algorithm with the corresponding time complexity analysis is proposed. Section 4 illustrates the simulation results, compared with the split multipath routing with maximally disjoint paths (SMR) [9] algorithm. Section 5 concludes the entire paper.
2. Basic Model and Problem Formulation 2.1. Basic Model. The topology of M2M network is modeled as a directed graph, 𝐺(𝑉, 𝐸), where 𝑉 and 𝐸 are set of nodes and set of links, respectively, with the following properties. (i) For each link 𝑒 = (V𝑖 , V𝑗 ), V𝑖 , V𝑗 refer to head and tail of 𝑒, respectively, which can be denoted as V𝑖 = 𝑇(𝑒) and V𝑗 = 𝐻(𝑒), besides V𝑖 is called the parent node of V𝑗 . For any node V ∈ 𝑉, 𝑂𝐺(V) and 𝐼𝐺(V) denote the set of out links and set of input link of V in 𝐺, respectively. (ii) 𝐺 is a graph with bidirectional edges, namely, for any 𝑒 = (V𝑖 , V𝑗 ) ∈ 𝐸, ← 𝑒 = (V𝑗 , V𝑖 ) ∈ 𝐸. (iii) For any 𝑒 = (V𝑖 , V𝑗 ) ∈ 𝐸, 𝑑(V𝑖 , V𝑗 ) (or 𝑑𝑖𝑗 , 𝑑(𝑒)) and 𝑐𝑒 denote time delay and capacity of the link, respe-
1
2
3
4
5
6 D
S
L1
7
8
9
10
11
12
L2
L3
L4
L5
Figure 2: An example of layer structure for DAG, where entire graph is divided into 5 layers.
ctively. Given one data flow session 𝐹𝑆,𝐷(𝛾), where 𝛾 refers to total data quantity per time unit and 𝑆, 𝐷 refer to the source node and destination node, respectively, let 𝑐𝑒𝑢 (0 < 𝑐𝑒𝑢 < 𝑐𝑒 ) be the capacity of 𝑒 occupied by other flow sessions besides 𝐹𝑆,𝐷. (iv) Given 𝐺 (𝑉𝐺 , 𝐸𝐺 ), if 𝑉𝐺 ⊂ 𝑉 and 𝐸𝐺 ⊂ 𝐸, then 𝐺 is one subgraph of 𝐺, namely, 𝐺 ⊂ 𝐺. Given 𝐺1 , 𝐺2 ⊂ 𝐺, and 𝐺𝑢 satisfies that 𝑉𝐺𝑢 = 𝑉𝐺1 ⋃ 𝑉𝐺2 and 𝐸𝐺𝑢 = 𝐸𝐺1 ⋃ 𝐸𝐺2 , then 𝐺𝑢 is also a subgraph of 𝐺 and can be denoted as 𝐺𝑢 = 𝐺1 ⋃ 𝐺2 . 𝐺 (𝑉𝑝 , 𝐸𝑝 ), is a subg(v) Given 𝑆, 𝐷 ∈ 𝐺, a simple path, 𝑃𝑆,𝐷 𝐺 raph of 𝐺, namely, 𝑃𝑆,𝐷(𝑉𝑝 , 𝐸𝑝 ) ⊂ 𝐺, such that:
(1) 𝑉𝑝 = {𝑆, V𝑝1 , V𝑝2 , . . . , V𝑝𝑘 , 𝐷}; (2) 𝐸𝑝 = {(𝑆, V𝑝1 ), (V𝑝1 , V𝑝2 ), . . . , (V𝑝𝑘−1 , V𝑝𝑘 ), (V𝑝𝑘 , 𝐷)}. Furthermore, if for all 1 ≤ 𝑖 < 𝑗 ≤ 𝑘, V𝑝𝑖 ≠ V𝑝𝑗 , then ∗ 𝑝𝑆,𝐷 is a simple path, which is denoted as 𝑝𝑆,𝐷 .
(vi) A circle, 𝑃𝑐 (𝑉𝑝𝑐 , 𝐸𝑝𝑐 ), is a directed graph, such that (1) 𝑉𝑝𝑐 = {𝑆, V𝑝1 , V𝑝2 , . . . , V𝑝𝑘 }; (2) 𝐸𝑝𝑐 = {(𝑆, V𝑝1 ), (V𝑝1 , V𝑝2 ), . . . , (V𝑝𝑘−1 , V𝑝𝑘 ), (V𝑝𝑘 , 𝑆)}.
In addition, directed acyclic graph (DAG) [10] is one special kind of graph, which is defined as follows. Definition 1. A directed graph (as shown in Figure 2), 𝐺𝑁(𝑉𝐺𝑁 , 𝐸𝐺𝑁 ), is called a directed acyclic graph (DAG), such that for all V𝑖 , V𝑗 ∈ 𝑉𝐺𝑁 , if simple path from V𝑖 to V𝑗 , 𝑃V∗𝑖 ,V𝑗 ⊂ 𝐺𝑁, exists, then no path from V𝑗 to V𝑖 exists in 𝐺𝑁.
According to above definition, DAG has two important properties.
International Journal of Distributed Sensor Networks
3
First, DAG can be divided into several layers, which is defined as follows.
𝐿 per time unit, which satisfies the to send on each link of 𝐺𝑆,𝐷 following.
Definition 2. Given one DAG, 𝐺𝑁, the layer structure of 𝐺𝑁 is denoted as layer (𝐺𝑁) = {𝐺𝑙𝑁1 , . . . , 𝐺𝑙𝑁1 } such that
(1) Link capacity constraint, namely, for all 𝑒 ∈ 𝐸𝐺𝐿 , 0 < 𝑥(𝑒) ≤ 𝑐𝑒 − 𝑐𝑒𝑢 .
(1) 𝐺𝑙𝑁1 , . . . , 𝐺𝑙𝑁1 ⊂ 𝐺𝑁, such that ⋃𝑘𝑖=1 𝑉𝐺𝑙𝑁 = 𝑉𝐺𝑁 , and for 𝑖 all 1 ≤ 𝑖 < 𝑗 ≤ 𝑘, 𝑉𝐺𝑙𝑁 ⋂ 𝑉𝐺𝑙𝑁 = 0. 𝑖
𝑗
(2) Nodes of the first layer have no input links, namely, 𝑉𝐺𝑙𝑁 = {V | V ∈ 𝑉𝐺𝑁 , 𝐼𝐺𝑁 = 0}; and ∀1 < 𝑖 ≤ 𝑘, nodes 1 of layer 𝑖 have parent node in layer 𝑖−1, namely, 𝑉𝐺𝑙𝑁 = 𝑖
{V | V ∈ 𝑉𝐺𝑁 \ ⋃𝑖−1 𝑗=1 𝑉𝐺𝑙𝑁 , ∃𝑒 ∈ 𝐼𝐺𝑁 (V), 𝑇(𝑒) ∈ 𝑉𝐺𝑙𝑁 }. 𝑗
𝑖−1
(3) Links in each layer connect nodes in the same layer, namely, 𝐸𝐺𝑙𝑁 = {𝑒 ∈ 𝐺𝑁 | 𝑇(𝑒), 𝐻(𝑒) ∈ 𝑉𝐺𝑁𝑙 }. 𝑖
𝑖
Second, longest path [11] between two nodes can be defined in DAG as follows. Definition 3. Given one DAG, 𝐺𝑁, and V𝑖 , V𝑗 ∈ 𝑉𝐺𝑁 , if simple path exists from V𝑖 to V𝑗 in 𝐺𝑁, then longest path from V𝑖 to V𝑗 𝑁
𝑁
in 𝐺𝑁, 𝑃V𝐺𝑖 ,V𝑗 , satisfies for any 𝑃V𝐺𝑖 ,V𝑗 ⊂ 𝐺𝑁, 𝑑(𝑃V𝐺𝑖 ,V𝑗 ) ≥ 𝑑(𝑃V𝐺𝑖 ,V𝑗 ). 𝑁
𝑁
Furthermore, following two types of DAGs are presented in this paper, which are useful throughput the paper. 𝐿 Definition 4. A DAG, 𝐺𝑆,𝐷 (𝑉𝐺𝐿 , 𝐸𝐺𝐿 ), is called an L delay constraint directed acyclic graph (L-DAG), if the following properties satisfy: 𝐿 𝐿 (𝑆) = 0, satisfies closure property, namely, 𝐼𝐺𝑆,𝐷 (1) 𝐺𝑆,𝐷 𝐿 (𝑆) = 0, ∀V ∈ 𝑉 \ {𝑆}𝐼𝐺𝐿 (V) = 0, for all V ∈ 𝑂𝐺𝑆,𝐷 𝑆,𝐷 𝐿 (V) = 0; 𝑉 \ {𝐷}𝑂𝐺𝑆,𝐷
(2) time delay of the longest path from 𝑆 to 𝐷 is smaller 𝐺𝑢 than 𝐿, namely, 𝑑(𝑃𝑆,𝐷 ) ≤ 𝐿. ̂𝐿 is called a maximum Definition 5. Given 𝐺, an L-DAG, 𝐺 𝑆,𝐷 L-DAG (ML-DAG), if the following property holds: for all ̂𝐿 , then one of the V𝑖 , V𝑗 ∈ 𝑉𝐺̂𝐿 , if there exists 𝑝V𝑖 V𝑗 ⊂ 𝐺 \ 𝐺 𝑆,𝐷 𝑆,𝐷 following two conditions holds. ̂𝐿 ⋃ 𝑝V V is a subgraph with circle. (1) 𝐺𝑛 = 𝐺 𝑆,𝐷 𝑖 𝑗 𝐺
(2) If 𝐺𝑛 is a DAG, 𝑑(𝑃𝑆,𝐷𝑛 ) > 𝐿. 2.2. Multipath Routing for Congestion Minimization under Time Delay Constraint. As mentioned in [3], the multipath routing strategy for data transmission can be denoted as follows. Definition 6. Multipath routing strategy (MRS) from 𝑆 to 𝐷 is 𝐿 (𝑉𝐺𝐿 , 𝐸𝐺𝐿 ), 𝑋(𝐸𝐺𝐿 )}, where 𝛾 denoted as 𝑇(𝑆, 𝐷, 𝛾, 𝐿) = {𝐺𝑆,𝐷 denotes total data transferred in one time unit, 𝐿 denotes the 𝐿 is an L-DAG upper bound of time delay for data send, 𝐺𝑆,𝐷 and 𝑋(𝐸𝐺𝐿 ) = {𝑥(𝑒) : 𝑒 ∈ 𝐸𝐺𝐿 )} denotes the amount of data
(2) Network flow constraint, namely, ∑𝑒∈𝑂(𝑆) 𝑥(𝑒) = ∑𝑒∈𝐼(𝐷) 𝑥(𝑒) = 𝛾, for all V ∈ 𝑉𝐺𝐿 \ {𝑆, 𝐷}, ∑𝑒∈𝑂(V) 𝑥(𝑒) = ∑𝑒∈𝐼(V) 𝑥(𝑒). As mentioned before, the efficiency of multipath routing strategy is evaluated by the congestion factor [3], which is defined as below. 𝐿 (𝑉𝐺𝐿 , 𝐸𝐺𝐿 ), 𝑋(𝐸𝐺𝐿 )}, Definition 7. Given 𝑇(𝑆, 𝐷, 𝛾, 𝐿) = {𝐺𝑆,𝐷 congestion factor of each link is 𝑢
𝑐𝑒 + 𝑥 (𝑒) { { , if 𝑒 ∈ 𝐸𝐺𝐿 , { { 𝑐𝑒 𝛼 (𝑒) = { 𝑢 { 𝑐 { { 𝑒, if 𝑒 ∈ 𝐸𝐺 \ 𝐸𝐺𝐿 . { 𝑐𝑒
(1)
Congestion factor of each link is 𝛼𝐺 = max{𝛼𝑒, 𝑒 ∈ 𝐸𝐺}. Congestion factor of MRS is 𝛼𝑇 = max{𝛼𝑒, 𝑒 ∈ 𝐸𝐺𝐿 }. In above definition, 𝛼(𝑒) is the judgement of congestion on each link and 𝛼𝐺 is the judgement of congestion of entire network, according to [3]. However, 𝛼𝐺 is not a good evaluation for MRS. For one thing, if some link of 𝐺 has relatively large usage rate, 𝛼𝐺, the congestion factor of whole network is not able to judge the good MRS from the bad ones. For another, to further reduce the network minimization, it is needed to disperse the data flow into those links with relatively low usage rate. Hence, 𝛼𝑇 is a better judgement for MRS than 𝛼𝐺. According to above analysis, problem of multipath routing for congestion minimization under time delay constraint (MCMTD) can be proposed as follows. Problem MCMTD: Minimize 𝛼𝑇 , s.t: (1) 𝑇(𝑆, 𝐷, 𝛾, 𝐿) = Definition 6.
𝐿 {𝐺𝑆,𝐷 (𝑉𝐺𝐿 , 𝐸𝐺𝐿 ), 𝑋(𝐸𝐺𝐿 )} satisfies
(2) For all 𝑒 ∈ 𝐸𝐺𝐿 , 𝑥(𝑒) + 𝑐𝑒𝑢 ≤ 𝛼𝑇 𝑐𝑒 .
3. Multipath Routing Algorithm for Congestion Minimization Problem MCMTD can be summarized as constructing MRS to minimize 𝛼𝑇 . To achieve this aim, we need the following two phases. ̂𝐿 , which includes as many (1) Obtain one L-DAG 𝐺 𝑆,𝐷 links as possible. ̂𝐿 , which has rela(2) Allocate data flow into links of 𝐺 𝑆,𝐷 tively lower link capacity use rate. 𝐿 be an initial L-DAG then, 3.1. Obtain ML-DAG. Let 𝐺𝑆,𝐷 ̂𝐿 , can be according to Definitions 4 and 5, the ML-DAG, 𝐺 𝑆,𝐷
4
International Journal of Distributed Sensor Networks
𝐿 obtained through gradually adding nodes and links to 𝐺𝑆,𝐷 , Step 2: until the no circle property, closure property, or time delay constraint cannot be maintained. The procedure of obtaining ML-DAG includes two phases.
For any V ∈ 𝑉𝐺𝑟 , if 𝑑𝐺𝑟 (𝑆, V) + 𝑑𝐺𝑟 (V, 𝐷) > 𝐿, 𝑉𝐺𝑟 = 𝑉𝐺𝑟 \{V}, 𝐸𝐺𝑟 = 𝐸𝐺𝑟 \(𝐼𝐺𝑟 (V) ⋃ 𝑂𝐺𝑟 (V)). When all notes have been traversed, output 𝐺𝑟 .
3.1.1. Network Simplification. Network simplification is helpful to exclude nodes and links with relatively long distance from 𝑆 and 𝐷, so that the scale of original network can be reduced and further algorithm of obtaining ML-DAG can be simplified. To achieve this aim, the concept of distance between two nodes should be defined.
3.1.2. Expanding Algorithm to Obtain ML-DAG. As mentioned before, ML-DAG can be obtained through gradually adding nodes and links. Each adding step is called expanding operation, as defined below. 𝐿 , Definition 12. Expanding operation (OR) from 𝐺𝑖𝐿 to 𝐺𝑖+1 𝐿 𝐿 namely, 𝐺𝑖+1 = 𝐸𝑂(𝐺𝑖 ), satisfies the following.
Definition 8. Given 𝐺, for all V𝑖 , V𝑗 ∈ 𝑉𝐺, the distance from V𝑖 to V𝑗 in G, 𝑑𝐺(V𝑖 , V𝑗 ) is defined as follows.
𝐿 (1) 𝐺𝑖𝐿 and 𝐺𝑖+1 are both L-DAG.
⊂ 𝐺𝑟 , such that V𝑖 , V𝑗 ∈ 𝑉𝐺𝑖𝐿 , 𝑝Vadd \ (2) Simple path 𝑝Vadd 𝑖 ,V𝑗 𝑖 ,V𝑗
(1) If no path exists from V𝑖 to V𝑗 in 𝐺, 𝑑𝐺(V𝑖 , V𝑗 ) = ∞.
{V𝑖 , V𝑗 } ⊂ 𝑉𝐺𝑟 \ 𝑉𝐺𝑖𝐿 , 𝐸Vadd ⊂ 𝐸𝐺𝑟 \ 𝐸𝐺𝑖𝐿 . 𝑖 ,V𝑗
(2) Else, if 𝑝̂V𝐺𝑖 V𝑗 is the shortest path from V𝑖 to V𝑗 in 𝐺, then
𝐿 = 𝐺𝑖𝐿 ⋃ 𝑝Vadd . (3) 𝐺𝑖+1 𝑖 ,V𝑗
𝑑𝐺(V1 , V2 ) = 𝑑(𝑝̂V𝐺𝑖 V𝑗 ).
Expanding operation satisfies the following theorem.
According to above definition, the distance between two nodes corresponds to the length of shortest path between two nodes, which leads to the following two theorems.
𝐿 𝐿 Theorem 13. Given 𝐺𝑖𝐿 , 𝐺𝑖+1 , which satisfies 𝐺𝑖+1 = 𝐸𝑂(𝐺𝑖𝐿 ),
Theorem 9. If 𝐺1 ⊂ 𝐺, V𝑖 , V𝑗 ∈ 𝑉𝐺1 , then 𝑑𝐺1 (V𝑖 , V𝑗 ) ≥ 𝑑𝐺(V𝑖 , V𝑗 ).
𝐿 𝐺𝑖+1 , respectively, then 𝑑(𝑃V𝑖 ,V𝑖 𝑗 ) ≥ 𝑃V𝑖 ,V𝑖+1𝑗 .
Proof. Consider the following three situations. (1) If 𝑑𝐺(V𝑖 , V𝑗 ) = ∞, then no path exists from V𝑖 to V𝑗 in 𝐺. Since 𝐺1 ⊂ 𝐺, no path exists from V𝑖 to V𝑗 in 𝐺1 . Hence, 𝑑𝐺1 (V𝑖 , V𝑗 ) = ∞, and 𝑑𝐺1 (V𝑖 , V𝑗 ) ≥ 𝑑𝐺(V𝑖 , V𝑗 ) holds. (2) If 𝑑𝐺(V𝑖 , V𝑗 ) ≠ ∞ and 𝑑𝐺1 (V𝑖 , V𝑗 ) = ∞, then 𝑑𝐺1 (V𝑖 , V𝑗 ) ≥ 𝑑𝐺(V𝑖 , V𝑗 ) holds. (3) If 𝑑𝐺(V𝑖 , V𝑗 ) ≠ ∞ and 𝑑𝐺1 (V𝑖 , V𝑗 ) ≠ ∞, let 𝑝̂V𝐺𝑖 1V𝑗 be the shortest path from V𝑖 to V𝑗 in 𝐺1 , then 𝑝̂V𝐺𝑖 1V𝑗 ⊂ 𝐺,
which denotes that 𝑑𝐺(V𝑖 , V𝑗 ) = 𝑑(𝑝̂V𝐺𝑖 V𝑗 ) ≤ 𝑑(𝑝̂V𝐺𝑖 1V𝑗 ) = 𝑑𝐺1 (V𝑖 , V𝑗 ). In summation, Theorem 9 is proved. ̂𝐿 (𝑉̂, 𝐸 ̂), and V ∈ (𝑉𝐺), if Theorem 10. Given ML-DAG, 𝐺 𝑆,𝐷 𝐺 𝐺 𝑑𝐺(𝑆, V) + 𝑑𝐺(V, 𝐷) > 𝐿, then V ∉ 𝑉𝐺̂. Proof. Assume that V ∈ 𝑉𝐺̂; then 𝑑𝐺̂𝐿 (𝑆, V) + 𝑑𝐺̂𝐿 (V, 𝐷) ≤ 𝑆,𝐷 𝑆,𝐷 𝐿, which conflicts with 𝑑𝐺̂𝐿 (𝑆, V) + 𝑑𝐺̂𝐿 (V, 𝐷) ≥ 𝑑𝐺(𝑆, V) + 𝑆,𝐷 𝑆,𝐷 𝑑𝐺(V, 𝐷) > 𝐿. So the theorem is proved. According to above two theorems, if 𝑑𝐺(𝑆, V) + 𝑑𝐺(V, 𝐷) > ̂𝐿 and should be excluded. 𝐿, then V does not belong to 𝐺 𝑆,𝐷 Hence, the algorithm of network simplification is as follows. Algorithm 11. Network simplification is as follows. Input:
𝐺(𝑉, 𝐸), 𝐿, 𝑆, 𝐷.
Step 1:
If 𝑑𝐺(𝑆, 𝐷) ≤ 𝐿, let 𝐺𝑟 = 𝐺, go to Step 2; else, algorithm fails.
𝐺𝐿
𝐺𝐿
let 𝑃V𝑖 ,V𝑖 𝑗 and 𝑃V𝑖 ,V𝑖+1𝑗 be the longest path from 𝑆 to 𝐷 in 𝐺𝑖𝐿 and 𝐺𝐿
𝐺𝐿
𝐺𝐿
𝐺𝐿
𝐿 Proof. Since 𝑃V𝑖 ,V𝑖 𝑗 ⊂ 𝐺𝑖𝐿 ⊂ 𝐺𝑖+1 and 𝑃V𝑖 ,V𝑖+1𝑗 is the longest path 𝐺𝐿
𝐿 , according to the concept of longest path, 𝑑(𝑃V𝑖 ,V𝑖 𝑗 ) ≥ of 𝐺𝑖+1 𝐺𝐿
𝑃V𝑖 ,V𝑖+1𝑗 . 𝐺
𝑟 Let 𝐺0𝐿 = 𝑝min (𝑆, 𝐷), namely, the shortest path from 𝑆 to 𝐷 is chosen to be the initial L-DAG. According to ̂𝐿 can be obtained through finite times of EOs, Theorem 13, 𝐺 𝑆,𝐷 since 𝐺𝑟 is a graph with finite links and each EO adds new links to 𝐺𝑖𝐿 . In order to make sure of the completeness and efficiency of the entire process to obtain ML-DAG, we have to figure out a principle of expanding operation. Considering that each expanding may probably increase the length of the longest path from 𝑆 to 𝐷, which is a negative influence on the time delay constraint, our expanding operation follows the principle that the increase length of longest path after each expanding can be minimized. To achieve this objective, several examples in Figure 3 are proposed to show a phenomenon. Assuming time delay of all links equals 1, then each graph in above figure is described as follows.
(a) Original L-DAG, 𝐺𝑖𝐿 is a graph with two paths from 𝑆 to 𝐷. Nodes of 𝐺𝑖𝐿 can be divided into layers as, L1: 𝑆; L2: V1 , V2 ; L3: V3 , V4 ; L4: V5 , V6 ; L5: 𝐷. One of the longest path from 𝑆 to 𝐷 is 𝑆 → V1 → V3 → V5 → 𝐷, time delay of which is 4. (b) Let (V2 , V3 ) be the adding path, where layer of V2 is lower than layer of V3 , then longest path does not change.
International Journal of Distributed Sensor Networks 1
3
5
D
S
2
4
3
1
5
D
S
2
6
4
(a)
1
3
3
1
5
D
4
6
(b)
S
2
5
5
D
S
2
6
4
(c)
6
(d)
Figure 3: Examples of adding path to L-DAG.
(c) Let (V2 , V1 ) be the adding path, where layer of V2 and V1 are in the same layer, then the longest path becomes 𝑆 → V2 → V1 → V3 → V5 → 𝐷, time delay of which is 5. (d) Let (V4 , V1 ) be the adding path, where layer of V4 is lower than layer of V1 , then longest path becomes 𝑆 → V2 → V4 → V1 → V3 → V5 → 𝐷, time delay of which is 6. These examples show that adding one path from lower layer to the higher layer is a better choice than adding one path from the higher layer to the lower one, according to the principle mentioned above. Our algorithm to obtain the MLDAG is based on this phenomenon. Algorithm of acquiring ML-DAG (Algorithm 18) is illustrated through the flow chart in Figure 4. Some modular of the flow chat is explained as shown in Figure 4. M1
Two layers, 𝑙𝑖1 and 𝑙𝑖2 , are chosen according to the following procedure. For each 𝐺𝑖𝐿 , let 𝑞 be the layer gap, such that 𝑞 = 𝑖2 − 𝑖1 . Initially, set 𝑞 = 𝑘 − 1. Then, gradually reduce 𝑞 from 𝑘 − 1, 𝑘 − 2, . . . , 0, −1, to −(𝑘 − 1), when two new layers need to be chosen. If 𝑞 = −(𝑘−1) and no appropriate layers can be found so that adding path exists from 𝑖1 to 𝑖2 , then M1 returns false.
M2
M2 is used to find V1 ∈ 𝑉𝐺𝑙 and V2 ∈ 𝑉𝐺𝑙 . If all nodes 1 2 that belong to 𝑙𝑖1 , 𝑙𝑖2 have been traversed and no appropriate expanding path can be obtained, then M2 returns false.
M3
𝐺𝑇 satisfies that 𝑉𝐺𝑇 = (𝑉𝐺𝑟 \ 𝐺𝑖𝐿 ) ⋃{V1 , V2 } and 𝐸𝐺𝑇 = 𝐸𝐺𝑖𝐿 ⋃{𝑒 | 𝑒 ∈ 𝐺𝑟 , 𝐻(𝑒), 𝐼(𝑒) ∈ 𝑉𝐺𝑇 }.
M4
M4 judges whether path from V1 to V2 in 𝐺𝑇 exists.
M5 M6 M7
M5 judges whether adding one path from V1 to V2 generates one circle. 𝐺𝑐 𝐺𝑐 = 𝐺𝑖𝐿 ⋃ 𝑃̂V𝐺1𝑇,V2 , and 𝑃𝑆,𝐷 is the longest path from V1 to V2 in 𝐺𝑇 . M7 judges whether time delay constraint still holds after expanding operation.
The completeness of above algorithm is guaranteed by next theorem. ̂𝐿 , can be obtained through Theorem 14. ML-DAG, 𝐺 𝑆,𝐷 Figure 4. Proof. To prove the theorem, it should be shown that all possible adding paths have been considered when algorithm ends. In the beginning of each expanding operation, it can be guaranteed that 𝐺𝑖𝐿 is a DAG and can be divided into layers. Hence, adding paths can be obtained through the following steps. First, find two layers 𝑙𝑖1 and 𝑙𝑖2 through M2. Second, choose two nodes V1 , V2 belonging to those two layers, respectively, through M3. Third, obtain one adding path from V1 to V2 through M3, M4, M5, and M6. Since M1 traverses all layer pairs, M2 traverses all nodes pairs belonging to those two layers, and the correctness of adding path can be ensured through M5, M6 and M7; when M1 returns false, all possible adding paths have been considered. Therefore, Theorem 14 is proved. ̂𝐿 , 3.2. Obtain Minimul Congestion Factor. After obtaining 𝐺 𝑆,𝐷 the minimal congestion factor of MRS, 𝛼𝑇 , can be obtained through allocating data flow into links with low capacity use rate. To achieve this objective, partial capacity graph needs to be considered. 𝐿 (𝑉𝐺𝐿 , 𝐸𝐺𝐿 ), 𝛽-partial Definition 15. Given one L-DAG, 𝐺𝑆,𝐷 𝛽
capacity graph, 𝐺𝑆,𝐷(𝑉𝐺𝛽 , 𝐸𝐺𝛽 ), satisfies the following:
6
International Journal of Distributed Sensor Networks Based on above definitions, 𝛼𝑇 can be obtained through gradually adjusting 𝛽, until 𝜇(𝛽) sufficiently approaches 𝛾, namely, 𝜇(𝛽) ≈ 𝛾, where 𝜇(𝛽) denotes the max-flow [12] from 𝛽 𝑆 to 𝐷 in 𝐺𝑆,𝐷. The feasibility of above adjusting process can be guaranteed through the following theorem.
Begin: input S, D, Gr , G0L . Layer(GiL ) = {Gl1 , . . . , Gl𝑘 }
No
Theorem 17. 𝜇(𝛽) is a monotone increasing and continuous function with 𝛽 ∈ [0, 1].
M1: choose two new layers li1 , li2 ?
End, output GiL .
𝐿 } be the distProof. Let 𝑋(𝛽) = {𝑥𝛽 (𝑒) | 𝑥𝛽 (𝑒) ≤ 𝑐𝑒𝛽 , 𝑒 ∈ 𝐸𝐺𝑆,𝐷
𝐿 . ribution of 𝜇(𝛽) on each link 𝐺𝑆,𝐷
Yes
(1) Proof of monotone increasing is as follows: M2: choose two new nodes 1 ∈ VG𝑙 , 2 ∈ VG𝑙 ? 1
for all 0 ≤ 𝛽1 < 𝛽2 ≤ 1, 𝑐𝑒𝛽1 ≤ 𝑐𝑒𝛽2 , then ∀𝑒 ∈ 𝐸𝐺𝛽 , 𝑆,𝐷
No
𝑥𝛽1 ≤ 𝑐𝑒𝛽1 ≤ 𝑐𝑒𝛽1 . So 𝑋(𝛽1 ) is also the distribution of 𝛽2 one available network flow on 𝐺𝑆,𝐷 . Hence, 𝜇(𝛽1 ) ≤ 𝜇(𝛽2 ).
2
Yes
(2) Proof of continuous is as follows:
M3: obtain GT .
according to Definition 15, for all 𝛽∗ ∈ [0, 1], if 𝛽 → ∗ 𝛽∗ , 𝑐𝑒𝛽 → 𝑐𝑒𝛽 , which eventually leads to 𝜇(𝛽) → 𝜇(𝛽∗ ).
No M4: dG𝑇 ( 1 , 2 ) < ∞? Yes Yes
Above theorem indicates that 𝛼𝑇 can be obtained through adjusting 𝛽. In order to accelerate the adjustment, an algorithm analogous to binary search [13] is proposed as follows.
M5: dG𝐿 ( 1 , 2 ) < ∞? 𝑖
No c
G
𝑐 . M6: obtain G and PS,D
No
Algorithm 18. Obtain minimal congestion factor of MRS.
G
𝑐 ) < L? M7: d(PS,D
Yes L = Gc , i = i + 1 Gi+1
Figure 4: Entire flow chart of Algorithm 18.
Input
̂𝐿 , 𝑆, 𝐷, 𝛾, {𝑐𝑒 |𝑒 ∈ 𝐸 ̂}, {𝑐𝑢 |𝑒 ∈ 𝐸 ̂}, 𝜂. 𝐺 𝑆,𝐷 𝑒 𝐺 𝐺
Step 1
Let 𝛽𝐿 = 0 and 𝛽𝑅 = 1. If 𝜇(𝛽𝑅 ) < 𝛾, return false; else, let 𝛽 = 𝛽𝑅 go to Step 3.
Step 2
Let 𝛽 = (1/2)𝛽𝐿 + 𝛽𝑅 , go to Step 3.
Step 3
Obtain 𝐺𝑆,𝐷, 𝜇(𝛽), and the corresponding data flow
𝛽
𝛽
distribution, 𝑋(𝐺𝑆,𝐷), go to Step 4. 𝛽
𝐿 (1) 𝐺𝑆,𝐷 and 𝐺𝑆,𝐷 (𝑉𝐺𝐿 , 𝐸𝐺𝐿 ) have the same topology, namely, 𝑉𝐺𝛽 = 𝑉𝐺𝐿 , 𝐸𝐺𝛽 = 𝐸𝐺𝐿 ;
(2) for all 𝑒 ∈ 𝐸𝐺𝛽 𝛽𝑐 − 𝑐𝑢 , 𝑐𝑒𝛽 = { 𝑒 𝑒 0,
if 𝑐𝑒𝑢 /𝑐𝑒 < 𝛽, if 𝑐𝑒𝑢 /𝑐𝑒 ≥ 𝛽.
(2)
Definition 16. Given one L-DAG, 𝐺𝛽 (𝑉𝐺𝛽 , 𝐸𝐺𝛽 ), and the data flow distribution, 𝑋(𝐺𝛽 ) = {𝑥𝛽 (𝑒) | 0 ≤ 𝑥𝛽 (𝑒) ≤ 𝑐}, the 𝛽 residual graph, 𝐺𝑋 (𝑉𝐺𝛽 , 𝐸𝐺𝛽 ), satisfies 𝑋
(1) 𝐸𝐺𝛽 = {𝑒 ∈ 𝐸𝐺𝛽 𝑥𝛽 (𝑒) > 0}, 𝑋
(2) 𝑉𝐺𝛽 = {V ∈ 𝑉𝐺𝛽 | ∃𝑒 ∈ 𝐼𝐺𝛽 (V), 𝑥𝛽 (𝑒) > 0, or ∃𝑒 ∈ 𝑋
𝑂𝐺𝛽 (V), 𝑥𝛽 (𝑒) > 0}.
If 𝜇(𝛽) > (1 + 𝜂) ⋅ 𝛾, let 𝛽𝑅 = 𝛽, go to Step 2; else if 𝜇(𝛽) < (1 − 𝜂) ⋅ 𝛾, let 𝛽𝐿 = 𝛽, go to Step 2; else if (1 − 𝜂) ⋅ 𝛾 ≤ 𝜇(𝛽) ≤ (1 + 𝜂) ⋅ 𝛾, go to Step 5.
Step 5
Furthermore, the residual graph after data flow distribution is defined as follows.
𝑋
Step 4
Let 𝛼𝑇 = 𝛽. 𝑓
𝛽
𝛽
Let 𝐺𝑆,𝐷(𝑉𝐺𝑓 , 𝐸𝐺𝑓 ) = 𝐺𝑋 , where 𝐺𝑋 is the residual graph corresponding with ing to Definition 16.
𝛽 𝐺𝑆,𝐷
𝛽
and 𝑋(𝐺𝑆,𝐷), accord-
𝑓
Let 𝑋(𝐺𝑆,𝐷) = {𝑥(𝑒) | 𝑒 ∈ 𝐸𝐺𝑓 }. 𝑓
𝑓
Return 𝛼𝑇 , 𝐺𝑆,𝐷(𝑉𝐺𝑓 , 𝐸𝐺𝑓 ), and 𝑋(𝐺𝑆,𝐷). 3.3. Time Complexity Analysis. Let 𝑁𝑉 and 𝑁𝐸 be the entire nodes number and links number, respectively. Time complexity analysis of each algorithm is as follows. Algorithm 11 can be completed via the construction of two Dijkstra trees [12], with complexity 𝑂(𝑁𝑉2 ), and the traversing of all nodes on the graph, with complexity 𝑂(𝑁𝑉), hence time complexity
International Journal of Distributed Sensor Networks
7 Ratio of congestion factor of DAGMR to SMR
Congestion factor of DAGMR and SMR
1
0.9
0.99 0.98 Congestion factor ratio
Congestion factor
0.85
0.8
0.75
0.97 0.96 0.95 0.94
0.7 0.93 0.65 150
200
250
300
350
400
450
500
Entire node number
0.92 150
200
250
300 350 400 Entire node number
450
500
DAGMR SMR (b)
(a)
Figure 5: Simulation result of congestion factor with the change of network nodes number. (a) denotes final congestion factor of two algorithms. (b) denotes final congestion factor ratio of our algorithm to SMR.
of Algorithm 11 is 𝑂(𝑁𝑉2 ). In Figure 4, each expanding operation consists of layer algorithm (𝑂(𝑁𝑉 + 𝑁𝐸 )), shortest path algorithm (𝑂(𝑁𝑉2 )) [12], and longest path algorithm (𝑂(𝑁𝑉 + 𝑁𝐸 )) [11]. Hence, each expanding procedure can be finished in 𝑂(𝑁𝑉2 ⋅ (𝑁𝑉2 + 𝑁𝐸 )), which is the worst case when no node and link are excluded after Algorithm 11 and each pair of nodes has been traversed. Considering that at least one link can be added in each expanding operation, entire algorithm can be finished in 𝑂(𝑁𝑉2 ⋅ 𝑁𝐸 ⋅ (𝑁𝑉2 + 𝑁𝐸 )) in the worst case. In Algorithm 18, let 𝜇(𝛽∗ ) = 𝛾, then, after ⌈log2 (1/𝜂)⌉ iterations, 𝛽 ∈ [(1 − 𝛽) ⋅ 𝛽∗ , (1 + 𝛽) ⋅ 𝛽∗ ] satisfies, and Algorithm 18 ends. Each iteration needs a max-flow algorithm, with time complexity 𝑂(𝑁𝑉2 ⋅𝑁𝐸 ) in the worst case. Hence, Algorithm 18 can be finished in 𝑂(𝑁𝑉2 ⋅ 𝑁𝐸 ⋅ ⌈log2 (1/𝜂)⌉). In summary, time complexity of entire algorithm is 𝑂 (𝑁𝑉2 )
+
𝑂 (𝑁𝑉2
⋅ 𝑁𝐸 ⋅
(𝑁𝑉2
+ 𝑁𝐸 ))
1 + 𝑂 (𝑁𝑉2 ⋅ 𝑁𝐸 ⋅ ⌈log2 ( )⌉) 𝜂
(3)
1 = 𝑂 (𝑁𝑉2 ⋅ 𝑁𝐸 ⋅ (𝑁𝑉2 + 𝑁𝐸 + ⌈log2 ( )⌉)) , 𝜂 which is polynomial time complexity with 𝑁𝑉 and 𝑁𝐸 .
4. Simulation and Analysis 4.1. Introduction to Basic Network Environment. The simulation network, 𝐺(𝑉, 𝐸), is formulated as a Transit-Stub
Domain [14], where the connection probability between any two nodes is initially set to be 0.01. Basic parameters of capacity and time delay are as follows. (i) For ∀𝑒 ∈ 𝐸, let link capacity, 𝑐𝑒 , and average used capacity, 𝑐𝑒𝑢 , be 1 M bps and 0.5 M bps, respectively. Let current used capacity, 𝑐𝑒𝑢 , be randomly chosen between (1 − 𝜃)𝑐𝑒𝑢 and (1 + 𝜃)𝑐𝑒𝑢 , where 𝜃 = 0.3. Let the data sent quantity from 𝑆 to 𝐷 be 𝛾 = 0.3 M bps. (ii) For ∀𝑒 ∈ 𝐸, let 𝑑(𝑒) = 1. For any given source node, 𝑆, and destination node, 𝐷, 𝑑𝐺(𝑆, 𝐷) = 4 holds. Time delay constraint 𝐿 = 6. 4.2. Simulation and Comparison Analysis. As mentioned before, our DAG based multipath routing algorithm (DAGMR) does not satisfy the path disjoint constraint; hence, performance of DAGMR should be compared with “Split Multipath Routing Algorithm with Maximally Disjoint Paths (SMR)” [9], which is a typical algorithm that follows the path disjoint constraint. First, the most important performance for the load balancing in Machine-to-Machine network is the congestion factor of MRS, which is illustrated in Figure 5. Figure 5 indicates that DAGMR obtains lower congestion factor than SMR, and the congestion factor gap of two algorithms increases as the nodes number in whole network increases. Moreover, when more than 200 nodes exist in network, congestion factor obtained by DAGMR is 5% smaller than that obtained by SMR.
8
International Journal of Distributed Sensor Networks Nodes number of DAGMR and SMR
Ratio of nodes number of DAGMR to SMR 1.4 1.35
20
1.3 Nodes number ratio
Nodes number of multipath graph
25
15
10
1.25 1.2 1.15 1.1 1.05
5 150
200
250
300 350 400 Entire node number
450
1 150
500
200
250
300
350
400
450
500
Entire node number
DAGMR SMR (b)
(a)
Ratio of links number of DAGMR to SMR 1.6
20
1.5 Links number ratio
Links number of multipath graph
Links number of DAGMR and SMR 30
25
15
1.4 1.3 1.2
10 1.1 5 150
200
250
300
350
400
450
500
Entire node number
1 150
200
250
300 350 400 Entire node number
450
500
DAGMR SMR (c)
(d)
Figure 6: Simulation result of nodes and links number in final routing graph with the change of entire network nodes number. (a) denotes the final multipath graph nodes number of DAGMR and SMR. (b) denotes the ratio of final multipath graph nodes number of DAGMR to SMR. (c) denotes the final multipath graph links number of DAGMR and SMR. (d) denotes the ratio of final multipath graph links number of DAGMR to SMR.
Second, DAGMR is helpful to distribute the data flow into more nodes and links, so as to ease the burden of certain overused nodes, as mentioned before. Hence, the number of nodes and links in the final multipath graph of DAGMR should be checked and compared with that of SMR. Figure 6 indicates that nodes and links number in final routing graph obtained by DAGMR is larger than that obtained by SMR, and the gap of nodes and links number
obtained in final routing graph by two algorithms increases as the network nodes number increases. Moreover, when entire network has more than 200 nodes, DAGMR subsumes 20% more nodes and links than SMR. In above simulations, the connection probability of any two nodes is a fixed value, and performance about different nodes number is illustrated. Next, let the nodes number of whole network be fixed as 300 and let connection probability
International Journal of Distributed Sensor Networks
9 Ratio of congestion factor of DAGMR to SMR
Relationship of congestion factor and nodes connection probability
0.97
0.86 0.965
0.84
0.96 Congestion factor ratio
0.82
Congestion factor
0.8 0.78 0.76 0.74
0.955 0.95 0.945 0.94
0.72 0.935 0.7 0.93
0.68 0.66 0.008
0.009 0.01 0.011 0.012 0.013 0.014 Nodes connection probability of simulation graph
0.015
0.925 0.008
0.009 0.01 0.011 0.012 0.013 0.014 Nodes connection probability of simulation graph
0.015
DAGMR SMR (b)
(a)
Figure 7: Simulation result of congestion factor with the change of connection probability between any two nodes when entire network nodes number is 300. (a) denotes the congestion factor of final multipath graph of DAGMR and SMR. (b) denotes the congestion factor ratio of DAGMR to SMR.
of any two nodes be changed from 0.008 to 0.015. Then, congestion factor of MRS is illustrated in Figure 7. Figure 7 indicates that DAGMR obtains lower congestion factor than SMR, and the congestion factor gap of two algorithms increases as the connection probability increases. Moreover, when connect rate is larger than 0.09, congestion factor obtained by DAGMR is 5% lower than that obtained by SMR. Furthermore, the throughput performance of DAGMR should be analyzed. Given source node, 𝑆, destination node, 𝐷, and time delay constraint 𝐿, let 𝛼𝑅 be the restricted congestion factor of MRS, namely, for any 𝑇(𝑆, 𝐷, 𝛾, 𝐿), according to Definition 6, 𝛼𝑇 ≤ 𝛼𝑅 holds. Then, maximum data throughput, 𝛾max , can be obtained through DAGMR, where second phase of the algorithm should be changed to obtain the maximum throughput under restricted congestion factor of 𝛼𝑅 . Let the basic parameter of network be the same as before, where 𝑑𝐺(𝑆, 𝐷) = 4 and time delay constraint 𝐿 = 6. Let the restrict congestion factor be changed from 0.5 to 1. Then throughput performance of network with 200, 300, 400, 500 nodes is illustrated in Figures 8, 9, 10, and 11. Figures 8, 9, 10, and 11 indicate the following aspects. (i) Throughput increases as the network nodes number increases, which is reasonable, since the more the nodes exist in network, the more the opportunity is to get extra routing path.
(ii) Throughput obtained by DAGMR is larger than that obtained by SMR, and the gap of throughput increases as the restricted congestion factor increases. (iii) The throughput ratio between DAGMR and SMR is larger than 1 and reaches the peak value when restricted congestion factor is about 0.65. In summation, our DAG based multipath routing algorithm (DAGMR) achieves lower congestion factor and subsumes more nodes and links in the final multipath subgraph than SMR, when data sent quantity is fixed in a flow session. Meanwhile, when restricted congestion factor is fixed, DAGMR obtains larger data throughput than SMR. Therefore, DAGMR is a better choice for network load balancing in Machine-to-Machine networks.
5. Conclusion Multipath routing is a useful method to balance network load and reduce congestion and has received extensive research. However, most of previous multipath routing algorithms are not able to fully utilize the advantage of multipath, due to the premise that routing paths should be disjoint. In this paper, a new multipath algorithm is proposed, in which the path disjoint constraint is replaced by a principle that multipath should be confined into a directed acyclic graph under time delay constraint. Meanwhile, the partial capacity network is proposed, in order to obtain the final multipath congestion factor. Simulation shows that our algorithm achieves lower
10
International Journal of Distributed Sensor Networks
2
×106
Throughput ratio between DAGMR and SMR
Throughput
3
2.5 1.5
Throughput ratio
Throughput (s)
2
1
1.5
1
0.5 0.5
0 0.5
0.6
0.7 0.8 Congestion factor
0.9
0 0.5
1
0.6
0.7 0.8 Congestion factor
0.9
1
DAGMR SMR (b)
(a)
Figure 8: Simulation result of data throughput with the change of restricted congestion factor, when entire nodes number is 200.
Throughput
6 2 ×10
Throughput ratio between DAGMR and SMR 3
2.5 1.5 Throughput ratio
Throughput (s)
2
1
1.5
1 0.5 0.5
0 0.5
0.6
0.7 0.8 Congestion factor
0.9
1
0 0.5
0.6
0.7 0.8 Congestion factor
0.9
1
DAGMR SMR (a)
(b)
Figure 9: Simulation result of data throughput with the change of restricted congestion factor, when entire nodes number is 300.
International Journal of Distributed Sensor Networks
2
11
Throughput
×106
Throughput ratio between DAGMR and SMR 3
2.5 1.5 Throughput ratio
Throughput (s)
2
1
1.5
1 0.5 0.5
0 0.5
0.6
0.7 0.8 Congestion factor
0.9
0 0.5
1
0.6
0.7 0.8 Congestion factor
0.9
1
DAGMR SMR (b)
(a)
Figure 10: Simulation result of data throughput with the change of restricted congestion factor, when entire nodes number is 400.
2
Throughput
×106
Throughput ratio between DAGMR and SMR 3
2.5 1.5 Throughput ratio
Throughput (s)
2
1
1.5
1 0.5 0.5
0 0.5
0.6
0.7
0.8
Congestion factor
0.9
1
0 0.5
0.6
0.7 0.8 Congestion factor
0.9
1
DAGMR SMR (a)
(b)
Figure 11: Simulation result of data throughput with the change of restricted congestion factor, when entire nodes number is 500.
12 congestion factor and subsumes more nodes and links than the classical split multipath routing algorithm with disjoint paths. In addition, our algorithm is a polynomial time complexity algorithm with nodes number and links number of the entire network.
Conflict of Interests The authors declare that there is no conflict of interests regarding the publication of this paper.
Acknowledgments This work was supported by the National Nature Science Foundation of China (nos. 61171069, 61231013, and 60933012), the 973 Program of China under Grant 2011CB707000, and the National 863 Program of China no. 2011AA110102.
References [1] Z. M. Fadlullah, M. M. Fouda, N. Kato, A. Takeuchi, N. Iwasaki, and Y. Nozaki, “Toward intelligent machine-to-machine communications in smart grid,” IEEE Communications Magazine, vol. 49, no. 4, pp. 60–65, 2011. [2] S. K. Singh, M. P. Singh, and D. K. Singh, “A survey of energyefficient hierarchical cluster-based routing in wireless sensor networks,” International Journal of Advanced Networking and Applications, vol. 2, no. 2, pp. 570–580, 2010. [3] R. Banner and A. Orda, “Multipath routing algorithms for congestion minimization,” IEEE/ACM Transactions on Networking, vol. 15, no. 2, pp. 413–424, 2007. [4] W. Yang, X. Yang, G. Liu, and C. Dong, “A bandwidth aware multi-path routing protocol in mobile Ad Hoc networks,” Journal of Computational Information Systems, vol. 7, no. 3, pp. 685–696, 2011. [5] P. M´erindol, J.-J. Pansiot, and S. Cateloin, “Low complexity link state multipath routing,” in Proceedings of the IEEE INFOCOM Workshops (GIS ’09), Rio de Janeiro, Brazil, April 2009. [6] P. M´erindol, P. Francois, O. Bonaventure, S. Cateloin, and J.-J. Pansiot, “An efficient algorithm to enable path diversity in link state routing networks,” Computer Networks, vol. 55, no. 5, pp. 1132–1149, 2011. [7] W. Jiang, Q. Dai, Y. Zhou, and R. Liu, “A novel MPR approach based on inverse-traversing of Multi-Labeled tree,” in Proceedings of the IEEE International Conference on Intelligent Computing and Integrated Systems (ICISS ’10), pp. 273–276, Guilin, China, October 2010. [8] C. Bruni, F. Delli Priscoli, G. Koch, A. Pietrabissa, and L. Pimpinella, “Multipath routing by network decomposition and traffic balancing,” in Proceedings of the Future Network and Mobile Summit, Florence, Italy, June 2010. [9] S.-J. Lee and M. Gerla, “Split multipath routing with maximally disjoint paths in Ad hoc networks,” in Proceedings of the International Conference on Communications (ICC ’01), pp. 3201– 3205, June 2000. [10] K.-S. Hong and L. Choi, “DAG-based multipath routing for mobile sensor networks,” in Proceedings of the International Conference on ICT Convergence (ICTC ’11), pp. 261–266, Seoul, Korea, September 2011.
International Journal of Distributed Sensor Networks [11] K. Ioannidou and S. D. Nikolopoulos, “The longest path problem is polynomial on cocomparability graphs,” Algorithmica, vol. 65, no. 1, pp. 177–205, 2013. [12] R. K. Ahuja, T. L. Magnanti, and J. B. Orlin, Network Flows: Theory, Algorithms, and Applications, Prentice- Hall, Upper Saddle River, NJ, USA, 1993. [13] R. Nowak, “Generalized binary search,” in Proceedings of the 46th Annual Allerton Conference on Communication, Control, and Computing, pp. 568–574, Urbana-Champaign, Ill, USA, September 2008. [14] K. L. Calvert, M. B. Doar, and E. W. Zegura, “Modeling internet topology,” IEEE Communications Magazine, vol. 35, no. 6, pp. 160–163, 1997.
International Journal of
Rotating Machinery
Engineering Journal of
Hindawi Publishing Corporation http://www.hindawi.com
Volume 2014
The Scientific World Journal Hindawi Publishing Corporation http://www.hindawi.com
Volume 2014
International Journal of
Distributed Sensor Networks
Journal of
Sensors Hindawi Publishing Corporation http://www.hindawi.com
Volume 2014
Hindawi Publishing Corporation http://www.hindawi.com
Volume 2014
Hindawi Publishing Corporation http://www.hindawi.com
Volume 2014
Journal of
Control Science and Engineering
Advances in
Civil Engineering Hindawi Publishing Corporation http://www.hindawi.com
Hindawi Publishing Corporation http://www.hindawi.com
Volume 2014
Volume 2014
Submit your manuscripts at http://www.hindawi.com Journal of
Journal of
Electrical and Computer Engineering
Robotics Hindawi Publishing Corporation http://www.hindawi.com
Hindawi Publishing Corporation http://www.hindawi.com
Volume 2014
Volume 2014
VLSI Design Advances in OptoElectronics
International Journal of
Navigation and Observation Hindawi Publishing Corporation http://www.hindawi.com
Volume 2014
Hindawi Publishing Corporation http://www.hindawi.com
Hindawi Publishing Corporation http://www.hindawi.com
Chemical Engineering Hindawi Publishing Corporation http://www.hindawi.com
Volume 2014
Volume 2014
Active and Passive Electronic Components
Antennas and Propagation Hindawi Publishing Corporation http://www.hindawi.com
Aerospace Engineering
Hindawi Publishing Corporation http://www.hindawi.com
Volume 2014
Hindawi Publishing Corporation http://www.hindawi.com
Volume 2014
Volume 2014
International Journal of
International Journal of
International Journal of
Modelling & Simulation in Engineering
Volume 2014
Hindawi Publishing Corporation http://www.hindawi.com
Volume 2014
Shock and Vibration Hindawi Publishing Corporation http://www.hindawi.com
Volume 2014
Advances in
Acoustics and Vibration Hindawi Publishing Corporation http://www.hindawi.com
Volume 2014