SlideShare a Scribd company logo
Received March 15, 2016, accepted April 4, 2016, date of publication April 12, 2016, date of current version April 29, 2016.
Digital Object Identifier 10.1109/ACCESS.2016.2553048
On Minimizing Data Forwarding Schedule
in Multi Transmit/Receive Wireless
Mesh Networks
HE WANG1, KWAN-WU CHIN1, AND SIETENG SOH2, (Member, IEEE)
1School of Electrical, Computer and Telecommunication Engineering, University of Wollongong, Wollongong, NSW 2522, Australia
2Department of Computing, Curtin University of Technology, Bentley, WA 6102, Australia
Corresponding author: H. Wang (hw407@uowmail.edu.au)
ABSTRACT A key problem in wireless mesh networks is forwarding packets to/from one or more gateways
with connectivity to the Internet. In this respect, a short link schedule, which determines the transmission
time of links, is critical. To date, existing link schedulers do not consider routers that incorporate advances
in multiple input multiple output communications, i.e., interference cancellation and spatial multiplexing.
In particular, these routers are able to transmit or receive distinct packets on all their links concurrently
as well as deliver multiple packets to a neighbor simultaneously. To this end, we consider the problem of
deriving a time division multiple access schedule that forwards packets to their respective destination quickly.
We first consider the personalized broadcast problem, which assumes a single gateway and present Algo-PB,
a solution that produces a schedule that is within 34.5% of the lower bound, and is 45.5% shorter than those
computed by the state-of-the-art algorithms. We then extend the problem to consider multiple gateways.
This so-called forest construction problem is modeled as an integer linear program (ILP). We then outline
Algo-FC, a novel heuristic that generates a balanced forest by repeatedly picking a node from the heaviest
tree and migrating it to another tree if doing so reduces the overall load. Experiment results show that the
resulting forest generated by Algo-FC is within 9.1% of the ILP solution.
INDEX TERMS Link scheduler, integer linear program (ILP), NP-complete, multiple gateways,
balanced tree.
I. INTRODUCTION
Wireless Mesh Networks (WMNs) are ideal for use in
enterprises, campuses, metro and rural areas. They serve as
an easy-to-setup multi-hop wireless backbone that allows
applications to upload/download data to/from one or more
gateways with connectivity to the Internet. Hence, it is critical
that a gateway delivers buffered packets to their respective
receiver or mesh router quickly. Conversely, it is important
that wireless mesh routers send buffered packets, which have
been uploaded by clients, to a gateway promptly. Hence,
deriving a link activation schedule that ensures high through-
put is important. Figure 1(a) shows an example schedule.
The nodes marked s1 and s2 are gateways. Assume s1 has
one packet to deliver to all non-gateway nodes. Moreover,
each node can only transmit one packet at a time. We see that
a Time Division Multiple Access (TDMA) schedule of five
slots is used to deliver all packets.
Deriving such a schedule is equivalent to solving the per-
sonalized broadcast problem [1]. Briefly, consider an arbi-
trary tree rooted at a gateway. Each node has a set of packets
FIGURE 1. Forest and personalized broadcast schedule. (a) Single tree
and schedule. (b) Multiple trees and schedule.
buffered at the gateway. The aim is to derive a collision-free
link schedule to transfer these packets to their receiver in
the shortest possible time or makespan. We emphasize that
‘personalized broadcast’ refers to the fact that the packets
to be delivered are unique and has a designated destination.
1570
2169-3536 
 2016 IEEE. Translations and content mining are permitted for academic research only.
Personal use is also permitted, but republication/redistribution requires IEEE permission.
See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.
VOLUME 4, 2016
www.redpel.com +917620593389
www.redpel.com +917620593389
H. Wang et al.: Minimizing Data Forwarding Schedule
Fundamentally, it is different from the traditional broadcast
scheduling problem [2] where all nodes receive the same
packet from a gateway. As an aside, the authors of [1] have
shown that the personalized broadcast problem is equivalent
to the data collection or data gathering problem. In particular,
we can ‘‘reverse’’ any schedule derived for the personalized
broadcast problem and use it for data collection/gathering.
That is, links activated in the first, second and subsequent
slots in the personalized broadcast schedule are activated last,
second last and so forth time slots [3]. Given this fact, we only
need to consider deriving a link schedule for packets flowing
in one direction.
In general, we need to consider multiple gateways. We call
this the forest construction problem. To see the advantages of
multiple gateways, reconsider Figure 1. Using both s1 and s2,
we see that the schedule length or makespan reduces to
three slots; see Figure 1(b). Observe that the time to deliver all
packets is determined by the personalized broadcast schedule
with the longest makespan.
To date, there are several link schedulers or Medium
Access Control (MAC) protocols that aim to minimize
the length of a data collection or personalized broadcast
schedule [3]–[7]. In [4], the authors analyze the lower bound
for line, multiline and tree topologies and derive the optimal
data collection time. The authors of [5] analyze the theoretical
lower bound for data collection in line and tree topologies and
propose a data collection algorithm for binary tree topologies
that achieves the lower bound. In [6], the authors study the
fast data collection problem in duty-cycled wireless sensor
networks. They first propose a centralized algorithm that
achieves the optimal data collection time; i.e., in the non-
duty-cycled case. They then propose a distributed algorithm
to generate a minimal data collection schedule. The authors
of [3] study the data gathering problem with multi-directional
antennas. They give an algorithm to construct a schedule for
tree topologies. Moreover, they consider nodes with more
than one packet and no buffer. The authors in [7] study the
fast data collection problem in tree-based wireless sensor
networks. They propose two data scheduling algorithms to
generate a minimal data collection schedule. The first algo-
rithm considers the case where each node generates data
periodically and data is aggregated by parent nodes. The
second algorithm considers one-shot data collection, which
means the generated schedule is only used once.
With regards to generating a balanced forest, we are only
aware of a few works. In [8], the authors propose a distributed
load balancing algorithm that ensures each gateway has equal
number of nodes. The algorithm in [9] considers the average
queue length and expected availability of gateways. In [10],
the authors propose a distributed forest construction approach
to create a ‘‘top-load balanced forest’’. This is a forest where
the set of links connected to gateways have similar traffic
load. We note that the forest construction problem is similar
to the load-balanced routing problem [11], [12]. In [11], each
gateway monitors its queue length and notifies associated
nodes to look for an alternative gateway if its queue length
exceeds a given threshold. The authors of [12] maximize
network utilization by balancing the traffic load between
gateways. They first find a set of paths that maximize the
normalized bandwidth allocation of nodes. Then they employ
the single-source unsplittable flow algorithm from [13] to
extract one path for each node from the generated paths.
Different from these works, we consider a fundamen-
tally different communication model; in contrast, prior works
assume nodes have an omni-directional or directional antenna
that only afford one data transmission/reception at a time.
In our case, routers are able to transmit or receive from their
neighbors simultaneously over the same frequency [14]. This
ability, called multiple transmit or receive (MTR), can be
achieved via Multi-User Multiple Input and Multiple Out-
put (MIMO) [15] technology. That is, as routers have mul-
tiple antennas, due to spatial multiplexing, they can transmit
multiple data streams to different neighbors [16]. Moreover,
they can dedicate some streams to the same neighbor; we refer
to this ability as link upgrade. A key constraint, however, is
that a node must not transmit and receive concurrently, so
called no-tx-rx or half-duplex constraint. Moreover, nodes
have finite number of antennas. This means we need to
consider whether to upgrade a link at the expense of reducing
the number of neighbors that a router can transmit to. Lastly,
we will have to use some antenna elements to null nearby
interfering transmissions.
Given MTR routers, in this paper, we aim to address
the personalized broadcast problem by deriving a schedule
that allows nodes to transmit/receive packets to/from their
neighbors. In addition, when appropriate, a node dedicates
multiple antennas to boost the number of packets delivered to
a neighbor. We also seek to construct a forest that minimizes
the longest schedule. In a nutshell, we make the following
contributions:
• We present Algo-PB, the first link scheduler that gen-
erates the minimal personalized broadcast schedule for
arbitrary tree topologies constructed in an MTR WMN.
Algo-PB generates up to 45.5% shorter schedule lengths
as compared to using the algorithm in [3], and the dif-
ference between the schedule produced by our algorithm
and the theoretical lower bound is at most 34.5%.
• We present an Integer Linear Program (ILP) for the
forest construction problem. We also present a heuristic,
called Algo-FC, that generates a forest by repeatedly
migrating a node and all its descendants from the gate-
way with the highest load to another tree with a lower
load. Compared with the ILP, Algo-FC has lower com-
plexity and generates a near-optimal balanced forest.
Experimental results show that when using Algo-FC, the
gateway with the highest load has at most 9.1% higher
load as compared to the optimal solution generated
by ILP.
Note, a preliminary version of our work has appeared
in [17]. This paper extends the said prior work as
follows. First, it adopts a different interference model.
Specifically, we consider suppressing interference caused by
VOLUME 4, 2016 1571
www.redpel.com +917620593389
www.redpel.com +917620593389
H. Wang et al.: Minimizing Data Forwarding Schedule
a transmitter and also those from its neighbors by taking
advantage of the Degree of Freedom (DoFs) or antenna ele-
ments available on each node. Second, it presents the forest
construction problem, its solution, analysis and correspond-
ing results.
Next, in Section II, we present our network model and
formalize the personalized broadcast and forest construction
problem. Then, in Section III, we present the lower and
upper bound for any computed schedule. We present our
solutions for both problems in Section IV and V, respectively.
Section VI contains an extensive analysis of our solutions.
Results supporting both solutions are presented and discussed
in Section VII. Section VIII concludes the paper.
II. PRELIMINARIES
We represent an MTR-WMN as a graph G(V, E) where
V denotes the set of static vertices/nodes/routers and
E denotes the set of directional links, i.e., link ev,u ∈ E
denotes a link from node v ∈ V to u ∈ V. Each node
v ∈ V has a transmission range Rt. We say the links
ev,u and eu,v exist if the distance between node v and u
are within Rt. We assume a node’s interference range Ri
is equal to its transmission range, i.e., Rt = Ri. In addi-
tion, we assume nodes have the channel state informa-
tion (CSI) of their neighbors. This is reasonable as mesh
routers are fixed and they can send out pilot symbols peri-
odically to obtain the required CSI [18]. Each node v ∈ V
has radios/antennas or Degree of Freedoms (DoFs). The
number of antennas used by node v for transmissions, recep-
tions and to cancel interference caused by neighbors is
denoted as +
v , −
v and ∗
v, respectively. Note that the end
nodes of a link must dedicate an antenna whenever it trans-
mits or receives a packet. Let Iv be the set of neighbors of
a transmitter v that are receiving at least one packet from
their neighbor(s) except node v. Then node v must cancel any
interference it causes to nodes in Iv. This paper adopts the
interference cancellation rule proposed in [19]. Specifically,
for each node u ∈ Iv, node v needs to use −
u antennas
to cancel interference it causes to node u. We then have the
following interference cancellation constraint:
Constraint 1: A transmitting node v must cancel all inter-
ference it causes to its neighboring receivers, meaning it must
dedicate ∗
v = u∈Iv
−
u antennas for this purpose.
We also have the following constraint that bounds the
number of antennas used by a node:
Constraint 2: The total number of antenna elements that
a node uses for data transmission/reception and to cancel
interference from neighbors must not exceed the total number
of antenna elements it has, i.e., +
v + −
v + ∗
v ≤ .
The third constraint mandates that each node only trans-
mits or receives; so called no-tx-rx requirement. Formally,
Constraint 3: +
v × −
v = 0.
Let S ⊂ V be a set of nodes designated as gateways.
For a given node v ∈ V − S, let rv ≥ 0 be the number of
requests/packets to be received from one of the gateways.
We assume that in the resulting schedule, each non-gateway
node receives packets from only one gateway. Let Ts be the
tree rooted at gateway s ∈ S and Vs ⊂ V be the set of
descendants of gateway s. Note that Vs contains only non-
gateway nodes. Formally, ws
v = a×rv +b×dist(v, s) denotes
the weight of node v ∈ Vs. Here dist(v, s) is the distance
(in hops) between node v and its gateway s, while a and b
are coefficients that are set depending on the value of , see
Section V for a detailed discussion. Let Ws = v∈Vs
ws
v be
the weight/load of gateway s. We assume time is slotted where
each slot corresponds to the transmission of one packet. Here,
the required synchronization can be achieved using a GPS
module.
We now formally define the personalized broadcast
problem and the forest construction problem.
Definition 1: For a given Ts, the personalized broadcast
problem asks for a collision-free link schedule with the min-
imal makespan, called personalized broadcast schedule, that
allows gateway s to transfer rv ≥ 0 packets to each destination
node v ∈ Vs subject to constraints 1, 2 and 3.
Definition 2: For a given MTR-WMN G(V, E) with |S|
gateways, the forest construction problem aims to build a for-
est containing |S| trees, i.e., a set of Ts for each gateway s ∈ S,
such that the maximum makespan among all personalized
broadcast schedules in G is minimized.
We remark that the personalized broadcast problem is
NP-complete. The authors in [3] proved the NP-hardness of
the personalized broadcast problem by reduction from the
well-known Partition Problem. Specifically, the decision ver-
sion addressed in [3] is as follows: given a network G(V, E),
integer weights rv ≥ 0, where v ∈ Vs, and an integer bound K,
is there a routing tree in G and a multi-hop personalized
broadcast schedule that transmits rv packets from a gateway s
to each node v in a collision free manner and has a makespan
less than K? In their network model, only one transmission
is allowed at a node at a time; i.e., = 1. In this paper, we
generalized this NP-complete problem by considering ≥ 1.
III. UPPER AND LOWER BOUND
In this section, we analyze the theoretical bounds of the
personalized broadcast schedule for a tree rooted at s,
i.e., Ts, for s ∈ S. We first focus on the upper bound. Denote L
to be the number of levels or height of tree Ts, and Dl to be
the total packets destined for nodes at level l of Ts, where
1 ≤ l ≤ L. We assume gateways are at level zero. We then
have the following proposition.
Proposition 1: The schedule length for a tree Ts is upper
bounded by (i) D1 slots, for L = 1, (ii) D1 + 2D2 slots,
for L = 2, or (iii) D1 + 2D2 + L
l=3 l + 3(Dl − 1) slots,
for L ≥ 3.
Proof: The worst case is when all of the following
conditions apply: (a) gateway s transmits packets on a level-
by-level basis, i.e., gateway s first transmits all packets for
nodes at level L, followed by those for nodes at level L − 1,
and so forth, (b) each node can transmit only one packet at a
time, and (c) any transmitting node at level l ≥ 1 interferes
with all nodes at level l − 1, l and l + 1.
1572 VOLUME 4, 2016
www.redpel.com +917620593389
www.redpel.com +917620593389
H. Wang et al.: Minimizing Data Forwarding Schedule
We start with L = 1. Following (b), as the gateway s
transmits one packet in each slot, we will require D1 slots;
the proposition is thus true for L = 1. Next, consider L = 2.
For this case, as per (c), a transmitting node at level l = 1
interferes with all nodes at level 1 as well as nodes at level 2.
Thus, the first packet for nodes at level 2 arrives in slot 2,
the second packet arrives in slot 2 + 2 = 4, the third packet
arrives at level 2 in slot 2 + 2 + 2 = 6, and so forth. The last
packet arrives in slot 2D2. This means packets for nodes at
level l = 2 require 2D2 slots. As the gateway uses D1 slots to
deliver packets destined for nodes at level l = 1, part (ii) of
the proposition is thus true.
For case (iii) of the proposition, first consider L = 3.
The first packet from gateway s arrives at level l = 3 in
slot 3. In this case, as per (c), a transmitting node at level
l = 2 interferes with all nodes at level 1, 2 and 3. Thus,
the second packet to level l = 3 arrives in slot l + 3 = 6,
the third packet arriving in slot l + 6 = 9 and so forth.
Consequently, transferring D3 packets to level l = 3 requires
no more than 3D3 slots. In general, when a node at level l
is receiving a packet from a node at level l1, the next packet
destined to any node at level l can be arriving at a node at
level l3 without causing interference, and thus the packet
needs three additional slots to arrive at level l. Consequently,
for any level l ≥ 3, after the first packet that requires l
slots, each subsequent packet arrives at level l every three
slots. Thus, packet transmission to a node at level l ≥ 3
is upper bounded by l + 3(Dl1) slots. Lastly, as D2 and D1
require 2D2 and D1 slots, the schedule upper bound is at most
D1 + 2D2 + L
l=3 l + 3(Dl − 1) slots. This proves case (iii)
of the proposition.
Our next results concern the lower bound of the personal-
ized broadcast schedule. We use Ts
i to denote a sub-tree of Ts
rooted at the i-th child of s. Further, let δ(v, s) be the makespan
of the schedule used to transmit rv packets from s to v. We then
have the following propositions. Note that the propositions
assume there is no neighboring interference among nodes
and thus constitute the best case scenario. The lower bound
in the presence of neighboring interference remains an open
question.
Proposition 2: The makespan lower bound to transmit
rv > 0 packets from s to v for Ts is (i) δ(v, s) ≥ dist(v, s)+2×
(rv− )
slots for dist(v, s) ≥ 2, or (ii) δ(v, s) ≥ dist(v, s) +
(rv− )
slots, for dist(v, s) = 1.
Proof: First consider the case where dist(v, s) ≥ 2.
Observe that the first packets from s reach v no faster than
dist(v, s) slots. For rv ≤ , we have (rv− )
= 0, and thus
the proposition is true for this case. However, for rv > ,
we must consider the no-tx-rx constraint. Specifically, any
node in the path from s to v can only transmit or receive up
to packets at a time. Thus, v receives the next packets
no earlier than two slots after it receives the first packets.
In general, in the best case, v can receive up to of the
remaining rv − packets every two slots. Thus, v receives
the remaining rv − packets in no more than 2 × (rv− )
slots, giving a makespan of dist(v, s) + 2 × (rv− )
slots.
For case (ii), since v is only one hop away from s, it receives
up to packets every slot. Specifically, for rv ≤ , node v
receives its rv packets in dist(v, s) = 1 slot, while for rv > ,
v receives all rv packets in dist(v, s)+ (rv− )
slots, proving
the proposition for case (ii).
Let Li be the number of levels in sub-tree Ts
i , and Dl
i be
the total number of packets to be transmitted to level l of
sub-tree Ts
i . We define Fl
i to be the last slot in which a node
at level l of sub-tree Ts
i receives its last packet. For example,
in network shown in Figure 2, suppose node G and H on
level 3 of subtree Ts
A receive their last packet at slot 4 and 5
respectively, thus F3
A = 5.
FIGURE 2. Example topology.
Proposition 3: For any node v at level l in a Ts
i and
Dl
i > 0, (i) Fl
i = l + 2 ×
Dl
i−
+ 2 ×
Li
m=l+1 Dm
i
, for
l ≥ 2, or (ii) Fl
i = l +
Dl
i−
+ 2 ×
Li
m=l+1 Dm
i
, for l = 1.
Proof: For a node v at level l and the i-th child of gate-
way s, applying Proposition 2, we obtain (i) δ(v, i) ≥ l + 2 ×
Li
m=l+1 Dm
i
slots for l ≥ 2, or (ii) δ(v, i) ≥ l +
Li
m=l+1 Dm
i
slots, for l = 1. Node v will first relay the packets destined to
its descendants. This incures 2×
Li
m=l+1 Dm
i
slots. After that,
it starts receiving its first packet from the gateway. Each of the
relayed packets takes two slots because the gateway transmits
at an interval of two slots due to the no-tx-rx constraint. The
last busy slot, i.e., Fl
i , for level l of sub-tree rooted at i is
thus the summation of the time required to relay descendants’
packets plus the time to receive all its packets.
As a result of Proposition 2 and 3, if rv = 0, the number of
slots for node v to receive packets located at itself is 0. Also,
if Dl
i = 0, the number of slots needed to transfer packets to
level l of sub-tree Ts
i is zero.
Proposition 4: The makespan of the personalized broad-
castschedule for a sub-tree Ts
i is lower bounded by
Fi = MAX(Fl
i ) for l ∈ 1, . . . , Li.
Proof: According to Proposition 3, any node v at
level l of sub-tree Ts
i has Fl
i . This implies that the last
busy slot of sub-tree Ts
i cannot be earlier than MAX(Fl
i ), for
l ∈ 1, . . . , Li.
Proposition 5: The makespan of the personalized broad-
cast schedule for a tree Ts with θ sub-trees is lower bounded
by MAX(Fmax, v∈Vs
rv
), where Fmax = MAX(Fi) for
i ∈ [1, 2, . . . θ].
VOLUME 4, 2016 1573
www.redpel.com +917620593389
www.redpel.com +917620593389
H. Wang et al.: Minimizing Data Forwarding Schedule
Proof: Without lost of generality, the first sub-tree
of Ts, i.e., Ts
1, produces Fmax. According to Proposition 3,
the root of each sub-tree Ts
i will first receive packets
located at its sub-tree and forward them onwards. This
means the gateway node s cannot serve the same sub-tree
for two continuous slots due to the no-tx-rx constraint.
Consequently, we can interleave the transmissions of two
sub-trees. For example, node s transmits to sub-tree Ts
1 in
slots 1, 3, 5, and so forth and transmits to sub-tree Ts
2 in
slot 2, 4, 6, . . . and so forth. In Proposition 4 we have
shown that Fi is the total number of slots needed to deliver
all packets to sub-tree Ts
i . We now show the following
two facts.
• Case 1: F1 > F2 + F3 + . . . + Fθ . All other sub-trees
can be interleaved with the transmissions to Ts
1. That is,
the transmissions to all sub-trees Ts
2 to Ts
θ will finish
earlier than F1, thus the total number of slots needed to
deliver all packets to nodes in T is lower bounded by F1,
i.e., Fmax.
• Case 2: F1 ≤ F2 + F3 + . . . + Fθ . In this case,
all other sub-trees cannot be fully interleaved with the
transmission to Ts
1. Thus, we prove a loose lower bound
here, i.e., we consider only the number of slots needed
for the gateway to transmit all packets to the nodes
located at the first level, which is v∈Vs
rv
. Thus, the
number of slots needed to deliver all packets will not be
shorter than v∈Vs
rv
.
We note that the schedule makespan will not be shorter
than either Fmax or the number of slots needed for
the gateway to inject all packets into the network, and
thus we have the personalized broadcast lower bound
MAX(Fmax, v∈Vs
rv
).
We now give a brief example and show how the theo-
retical lower bound is calculated. For the topology shown
in Figure 2, assume s is the gateway and each node has one
packet; rv = 1 for v ∈ Vs = {A, B, C, D, E, F, G, H}.
We denote the sub-tree rooted at node A, B and C as
Ts
1, Ts
2 and Ts
3, respectively. We also assume each node has
= 2 antennas.
We now focus on sub-tree Ts
1. The total number of packets
destined at level 3 of sub-tree Ts
1 is D3
1 = 2, and nodes located
at level 3 do not need to forward packets as there are no nodes
located beyond level 3. According to Proposition 3, we have
F3
1 = 3. Now consider level 2 of Ts
1. Nodes at level 2 need to
forward packets to nodes located at level 3 first. For nodes
located at level 2, they need to forward packets located at
level 3 before receiving packets located at level 2. As D3
1 = 2,
nodes located at level 2 need to forward packets to level 3
Li
m=l+1 Dm
i
times which incurs 2 ×
Li
m=l+1 Dm
i
slots. We
then calculate F2
1 = 4. Similarly, F1
1 = 5. According to
Proposition 4, the lower bound for sub-tree Ts
1 is F1 = 5.
We apply the same procedure for sub-tree Ts
2 and Ts
3 and
we get F2 = 2 and F3 = 1. According to Proposition 5,
as Fmax = F1 > F2 + F3, the lower bound of tree Ts is
Fmax = 5.
IV. PERSONALIZED BROADCAST SCHEDULING
We now propose a centralized link scheduling algorithm to
solve the aforementioned personalized broadcast problem.
Note, we do not consider a distributed solution because
information such as the topology and buffered packets are
located conveniently at the gateway. Our algorithm, called
Algo-PB, generates the schedule in a path-by-path manner.
Its key idea is to always schedule one packet to the farthest
node that has not received all its packets. It then labels each
link along the path from the gateway to that node using our
new version of the Conflict Free Coloring (CF-Coloring);
see [20]. Briefly, given a path p, our new coloring method,
Collision Free Link Upgrade Coloring (CFLU-Coloring),
assigns an increasing positive integer to each link along p
starting from the source node. Our novel CFLU-Coloring
considers both MTR as well as link upgrade. When CFLU-
Coloring colors node v’s adjacent links, each color, repre-
sented by a natural number, can be used at most times.
The coloring result must follow constraints 1, 2 and 3.
Further, the number/color assigned to each link along path p
is strictly increasing to ensure the final schedule is conflict-
free. Specifically, for each path p, CFLU-Coloring generates
a tuple <(e1,2, c1), (e2,3, c2) . . . (ei,j, ci)>, where ei,j denotes
a link from node i to j and ci is the color/number assigned to
link ei,j. Links assigned color ci is scheduled in the ci-th slot,
thus the maximum number of colors used in CFLU-Coloring
is the makespan of the personalized broadcast schedule.
Algorithm 1 CFLU-Color()
Input : p
Output: Schedule Sched(p)
1 Initialization: c = 1, Sched(p) = ∅;
2 for i ← 1 to |p| − 1 do
3 while DoFCheck(p, i, c) do
4 c = c + 1 ;
5 end
6 Sched(p) = Sched(p) ∪ (ep(i),p(i+1), c);
7 c = c + 1;
8 end
We start by explaining the function CFLU-Coloring using
Algorithm 1. Its input is a path p, and it outputs the tuple
Sched(p). CFLU-Coloring keeps an integer c that denotes
the color CFLU-Coloring assigns to a link; see Line 1. Then
CFLU-Coloring colors each link along path p, starting with
the first link in p; see Line 2-8. Function DoFCheck() is
used to test whether assigning color c to link ep(i),p(i+1) sat-
isfies constraints 1 to 3. If color c can be assigned to link
ep(i),p(i+1), DoFCheck() returns zero, otherwise DoFCheck()
returns one; see Line 3-5. After assigning color c to link
ep(i),p(i+1), CFLU-Coloring updates Sched(p); see Line 6.
Line 7 of Algorithm 1 is used to ensure two consecutive links
are not assigned the same color.
We now describe Algo-PB in detail with the aid of the
pseudocode presented in Algorithm 2. To do this, we need
1574 VOLUME 4, 2016
www.redpel.com +917620593389
www.redpel.com +917620593389
H. Wang et al.: Minimizing Data Forwarding Schedule
Algorithm 2 Algo-PB
Input : Vs, ru for each u ∈ Vs
Output: Schedule F, Schedule Length tmax
// Sort nodes in Vs in decreasing hop
length order from s, and store them
in tuple V
1 Initialization: V = Sort(Vs), F = ∅;
// Label each path and its schedule
2 k = 1;
3 while V = ∅ do
4 v = V(1);
5 if rv = 0 then
6 V = V − v;
7 continue;
8 else
9 pk = path(s → v);
10 Sched(pk) = CFLUColor(pk);
11 rv = rv − 1;
12 F = F ∪ Sched(pk);
13 k = k + 1;
14 end
15 end
// Function makespan(F) will return the
maximum color number ci among all
(ei,j, ci) ∈ F
16 tmax = makespan(F);
17 return(makespan(F), F);
a few notations and definitions. Let V be a sequence of nodes
in decreasing distance order from gateway s. Let Sched(p)
be a tuple containing the output of CFLU-Coloring given
the input p. Denote P as a collection of paths, and F is
a set that records all the results from CFLU-Coloring; i.e.,
F = {Sched(p) | p ∈ P}. Let tmax be the maximum slot used
in CFLU-Coloring; i.e., the makespan of the personalized
broadcast schedule.
Algo-PB first sorts all nodes in V and stores them in V in
decreasing distance order from gateway s; see Line 1. Then
Algo-PB sets a counter k to label each path and its schedule;
see Line 2. Algo-PB works in rounds. In each round, Algo-PB
picks the first node in V, say v, and checks whether rv = 0;
see Line 4 − 5. In our discussion, we will always use v to
denote the first node in V in each round. If rv = 0, Algo-PB
removes v from V and moves to the next round; see Line 5−7.
If rv = 0, Algo-PB schedules one packet from the gate-
way to node v along the path pk using CFLU-Coloring;
see Line 9 − 10. Then Algo-PB reduces rv by one as it
has scheduled one packet to v; see Line 11. The scheduling
result is a tuple Sched(pk) and Algo-PB adds the result to F.
After increasing k by one, Algo-PB moves to the next round;
see Line 12 − 13. When V = ∅, meaning all packets are
scheduled, the set F contains all links and their scheduled
slots. Lastly, Algo-PB computes tmax and returns the resulting
tmax and F; see Line 16 and 17 respectively.
FIGURE 3. Example topology.
We show how Algo-PB works using the tree shown in
Figure 3, where s is the gateway and each node has = 2
antennas. We have the node set V = {A, B, C}. Suppose
rA = rB = 1 and rC = 2. Solid lines denote links in the
network and dotted lines indicate interferences. Algo-PB first
calculates the distance from the gateway s to each node and
sorts nodes in V in decreasing hop length order. We then have
V = < C, A, B >, see Line 1. We show all four rounds of
Algo-PB in Figure 3. Each arrow denotes the path picked in
that round. Initially, the counter k is set to 1; see Line 2. In the
first round, C is the first node in V; thus v = C. As rC = 2,
Algo-PB then schedules a packet to C; see Line 8 − 14. The
path from the gateway s to node C is p1 = s → A → C; see
Line 9. Algo-PB then schedules p1 using CFLU-Coloring.
As p1 is the first path to be scheduled, i.e., no color is used yet,
the smallest positive available number is 1. Algo-PB colors
link es,A as 1 and link eA,C as 2; see Line 10. The result
of CFLU-Coloring is Sched(p1) = < (es,A, 1), (eA,C , 2) >.
Given that Algo-PB has scheduled one packet to C, it
reduces rC by one; see Line 11. It then adds Sched(p1) into F
and increases k by one; see Line 12−13. In the second round,
C is still the first node in V and rC = 1; thus Algo-PB
schedules a packet to C along path p2 = s → A → C.
Assigning color 1 to link es,A and color 2 to link eA,C satisfies
constraints 1 to 3. Thus, the result of CFLU-Coloring on p2
is Sched(p2) = < (es,A, 1), (eA,C , 2) >. Path p3 = s → A
is to be scheduled in the third round. Assigning color 1 to
link es,A does not satisfy constraint 2. This is because two
of ss links are assigned color 1. Further, color 2 cannot be
assigned to link es,A because node A cannot transmit and
receive simultaneously according to constraint 2. Thus, the
result of CFLU-Coloring is Sched(p3) = <(es,A, 3)>. Lastly,
Algo-PB schedules a packet to node B along p4 = s → B.
Color 1 cannot be assigned to link es,B because it does not sat-
isfy constraint 2. Further, Color 2 cannot be assigned to link
es,B either. This is because node B is interfered by transmitting
node A and node A does not have enough antennas to cancel
the interference it caused to node B. The result of CFLU-
Coloring on p4 is Sched(p4) = <(es,B, 3)>. After scheduling
all packets, Algo-PB sets tmax = makespan(F) = 3 as the
schedule length, see Line 16, and returns it together with
F = < (es,A, 1), (eA,C , 2), (es,A, 1), (eA,C , 2), (es,A, 3),
(es,B, 3) > in Line 17. Table 1 shows the resulting link
schedule for the topology in Figure 3.
The gateway is responsible for informing nodes the latest
schedule. This can be achieved by piggybacking the schedule
VOLUME 4, 2016 1575
www.redpel.com +917620593389
www.redpel.com +917620593389
H. Wang et al.: Minimizing Data Forwarding Schedule
TABLE 1. Link schedule for Figure 3.
in downstream packets. Also included is the start time of the
schedule in which these slots take effect. Note, if there are
no downlink packets, then a dummy packet can be created
before the schedule is computed. The schedule generated by
Algo-PB will thus include any dummy packets. We note that
Algo-PB will be used in conjunction with a protocol that
schedules packets in batches. This means any new packets
that arrive when a schedule is in effect will not be transmitted
in the current schedule; i.e., they will be scheduled in the
next batch using a newly derived schedule. Note that the
evaluation of such a protocol is out-of-scope because its goal
is to determine the optimal batch size that ensures queues
are stable, i.e., they do not grow to infinity or ensure packets
arrive before their expiration time. It is important to note that
at its core, the said protocol needs our algorithm to derive
a minimal makespan. We leave the evaluation of the said
protocol as a future work.
V. FOREST CONSTRUCTION
Algo-PB assumes a tree or routing information is available.
We now show how this can be constructed for WMNs with
multiple gateways. Proposition 2 indicates the data transfer
time will decrease if a node chooses to receive packets from a
nearby gateway. Proposition 4 and 5 show that it is important
to minimize the number of packets as well as hop count to
the gateway. That is, the length of the personalized broadcast
schedule will decrease if the total number of packets of the
tree who has the most packets in the forest is minimized.
Further, for a small , say one, gateway node is able to send
only one packet every two slots. Thus, the number of packets
to be delivered dictates the makespan of the personalized
broadcast schedule. However, for a large value, i.e., each
node has sufficient antennas to transmit all its packets to its
descendants as well as cancel interference caused by neigh-
bors, the personalized broadcast time is equal to the number
of hops. Recall that the weight of a node v with gateway s
is defined as ws
v = a × rv + b × dist(v, s), where dist(v, s)
is the distance (in number of hops) between node v and the
gateway s and rv is the number of packets destined for node v.
According to Proposition 3, when is large, the personalized
broadcast makespan is determined by the number of levels
of the tree. Moreover, when is small, the personalized
broadcast makespan is affected by the number of packets
buffered at each node. To this end, for a large , a is set to a
small value while b needs to be large. For a small , a needs
to be large and b is set to a small value. To simplify, we set
a = 1 and b = 1 in the following sections. Lastly, recall that
given the descendants of gateway s, i.e., Vs, the weight/load
of gateway s is defined as Ws = v∈Vs
ws
v.
A. AN ILP
We will use the binary decision variable Xs
v to indicate
whether node v is a descendant of gateway s. Consequently,
there are |S| decision variables associated with each node v,
i.e., Xs
v , where s = 1 . . . |S|. Moreover, as noted before, we
assume that each node can only receive packets from one
gateway. Thus, each node can only belong to one gateway.
Let Ps
v be the shortest path from gateway s to node v, and is
represented as a set of links {e(s,i), e(i,j), . . . , e(m,v)}, where for
each link e(i, j), the endpoint or node i is the parent of node j.
Note, we exclude the link from gateway s to its children; e.g.,
link (s, i), in our ILP formulation, because the gateways are
always on. Define the link set Ls = v∈Vs
Ps
v. Thus, the total
load of a gateway s is Ws = v∈V ws
vXs
v . The ILP for the
problem at hand is as follows,
MIN MAX{Ws|s ∈ S} (1)
Subject to:
v∈Vs
Xs
v = 1, ∀s ∈ S (2)
Xs
a ≥ Xs
b, ∀ea,b ∈ Ls, ∀s ∈ S (3)
Xs
v ∈ {0, 1}, ∀v ∈ V − S, ∀s ∈ S (4)
Constraint (2) ensures each node is connected to only one
gateway. Inequality (3) means if a node b is a descendant of
gateway s, its parent node a must be a descendant of the same
gateway s. Constraint (4) restricts all decision variables to be
binary.
In the ILP given above, each node v ∈ V − S chooses one
of the |S| gateways to receive packets, thus there is |V −S||S|
decision variables in total. This means the number of decision
variables will increase with the network size. According to
Equ. (2), the number of constraints is equal to the number
of non-gateway nodes |V − S|. The number of constraints
acquired from Equ. (3) is dependent on the ‘shape’ of the
network. In the worst case, i.e., each gateway only has one
neighbor. Thus, in this case, each gateway s ∈ S, incurs
|V − S| − 1 constraints. In total, there are |S|(|V − S| − 1)
constraints. According to Equ. (4), there are |V − S||S|
additional constraints. So in total, the number of constraints
are (2|S| + 1)|V − S| − |S|. Thus, when the network size
is large, it is computationally intractable. In the next section,
we propose a greedy heuristic algorithm, called Algo-FC, to
construct a routing forest.
B. ALGO-FC
Our heuristic solution is based on the well-known Breadth-
First Search (BFS) algorithm. Given a network G and |S|
gateways, Algo-FC first creates a tree rooted at a virtual
node v where nodes in S are the virtual node’s children.
Then Algo-FC creates |S| sub-trees, each rooted at one gate-
way s ∈ S by performing a BFS of the tree rooted at v .
After removing the virtual node v , we have |S| trees rooted
at each gateway. Algo-FC then balances the weight of each
gateway starting with the heaviest tree. For the heaviest tree,
1576 VOLUME 4, 2016
www.redpel.com +917620593389
www.redpel.com +917620593389
H. Wang et al.: Minimizing Data Forwarding Schedule
say Tk, Algo-FC checks nodes level by level, starting from
the top, to determine whether a node can be migrated to a
different tree.
Node migration is required to balance the load between
different gateways. Algo-FC migrates a node v and all its
descendants from tree Tk to another tree Tm if a) node v
has one neighbor that is associated to Tm, and b) the load
of gateway m, Wm, plus the weight of node v and all its
descendants is less than Wk before migrating nodes. Here
Tm is selected from the tree with lowest weight among all
trees. Algo-FC migrates node v from Tk to Tm by removing
the link between v and its parent on Tk and connects node v
to another parent node that belongs to Tm. Note that node v
relays packets for all its descendants. This means when
node v is migrated to Tm, all its descendants receive packets
from Tm.
We now describe how our proposed heuristic forest con-
struction algorithm, Algo-FC, works in detail with the aid
of Algorithm 3. Algo-FC first creates a BFS tree rooted
at the virtual node v , where gateway nodes in S are the
first level nodes of the BFS tree. After performing BFS and
removing the virtual node, we have |S| trees, each rooted at
one gateway; see Line 1. Algo-FC then calculates the load
of the gateway for each tree by summing up its descendants’
weight; see Line 2 − 4. Algo-FC works in rounds and uses
a counter c to record the current tree in which Algo-FC is
trying to balance. Initially, c is equal to one, which means
Algo-FC starts at the heaviest tree; see Line 5. In each round,
Algo-FC picks the c-th heaviest tree, denoted as Tk, and
checks whether there is a node on Tk that can be migrated
to another tree Tm. Algo-FC uses two variables, namely NF
and flag, to indicate whether the current round is finished
and whether Algo-FC successfully migrates a node in the
current round, respectively; see Line 7 − 8. In each round,
Algo-FC checks nodes level-by-level (starting at the root’s
children). Algo-FC migrates a node v from Tk to Tm, if after
this migration, the Wm is less than the Wk; see Line 9 − 23.
Note, in each round, Algo-FC migrates at most one node.
If Algo-FC successfully migrates a node in the current round,
c is set to 1, otherwise the counter increases by one; see
Line 23 − 28. Algo-FC stops when no node can be migrated.
To aid our exposition, we now use Figure 4 to provide a
concrete example of Algo-FC. Figure 4(a) shows a network
with three gateways s1, s2 and s3. Assume each node has
rv = 1. The first step is to create a virtual node v and perform
BFS; see Line 1. This results in three trees, rooted at s1, s2
and s3 respectively; see Figure 4(b). We use T1, T2 and T3
to represent the tree rooted at s1, s2 and s3 respectively.
Algo-FC then calculates the weight of each tree, thus we have
W1 = 11, W2 = 8 and W3 = 2; see Line 2 − 4. Initially c is
set to one, meaning Algo-FC starts at the heaviest tree, in this
example, T1; see Line 5. In the first round, Algo-FC checks
whether a node on T1 can be migrated. Starting from the
first level, i.e., s1’s children, Algo-FC ignores node A. This
is because migrating A means we have W2 = 19, which is
greater than W1 = 11 before migration. For the same reason,
Algorithm 3 Algo-FC
Input : G, S, V, rv for each v ∈ V − S
Output: Routing trees Ts for each s ∈ S
// Create a BFS tree from G rooted at
a virtual node v where nodes in S
are the first level nodes
1 Initialization: {T1, T2 . . . T|S|} = BFS(G, S, v );
2 for s = 1 to |S| do
3 Ws = v∈Ts ws
v;
4 end
5 c = 1;
6 while c ≤ |S| − 1 do
// Balance the weight between
different trees
7 NF = 1;
8 flag = 1;
9 while NF = 1 do
10 NF = 0;
11 k = cth heaviest tree;
// Lk denotes the number of
levels of the tree rooted
at k
12 for i = 1 to Lk do
// Uv denotes the descendants
of v, Ni the set of nodes
at level i, and Tm is
another tree that has a
descendant as v’s neighbor
13 for each v ∈ Ni do
14 if Wm + wk
v + d∈Uv
wk
d < Wk then
// Migrate node u from
Tk to Tm
15 Migrate(v, Tk, Tm);
16 Update(Tk, Tm);
17 NF = 1;
18 flag = 0;
19 break;
20 end
21 end
22 end
23 end
24 if flag = 0 then
25 c = 1;
26 else
27 c = c + 1;
28 end
29 end
Algo-FC will not migrate node F. In addition, node D and E
do not have neighboring nodes associated to either tree
T2 or T3, and thus they cannot be migrated; see Line 9 − 23.
We see that in this round, Algo-FC did not migrate any node.
It thus increases c by one, see Line 24−28, meaning Algo-FC
will check nodes on the second heaviest tree rooted
VOLUME 4, 2016 1577
www.redpel.com +917620593389
www.redpel.com +917620593389
H. Wang et al.: Minimizing Data Forwarding Schedule
FIGURE 4. Example topology. (a) Example network. (b) After BFS.
(c) Node migration. (d) Balanced forest.
at s2 in round two. During round two, Algo-FC first checks
s2’s children. Algo-FC does not migrate node B because
doing so means we will have W3 = 10, which is larger than
W2 before migration. However, if Algo-FC migrates node G
to tree T3, we have W3 = 5, which is less than W2 = 8. Thus,
Algo-FC migrates node G to tree rooted at s3 and the current
round finishes; see Line 9 − 23 and Figure 4(c). As Algo-FC
successfully migrated one node in round two, the counter is
reset to one; see Line 24−28. In round three, we have c = 1,
W1 = 11, W2 = 5 and W3 = 5. Algo-FC checks whether
nodes on the heaviest tree T1 can be migrated. During round
three, Algo-FC migrates node F to T2. Again as Algo-FC
successfully migrates a node in round three, counter is reset
to 1. In the following rounds, no more nodes can be migrated,
thus the forest construction result of Algo-FC is shown on
Figure 4(d).
VI. ANALYSIS
In this section, we discuss several properties of Algo-
PB and Algo-FC. We also analyze their computational
complexity.
Proposition 6: Te computational complexity of Algo-PB
on a tree Ts rooted at s is O(|V − {s}|(log |V − {s}| + 1) +
v∈V−s rv).
Proof: Referring to Algorithm 2, the time complexity of
line 1 is O(|V −{s}| log |V −{s}|). According to lines 3−15,
during each iteration, Algo-PB either schedules one packet,
see line 9 − 13, or removes a node whose rv = 0, see
line 5 − 7. In total, there are v∈Vs
rv packets scheduled,
which requires v∈Vs
rv iterations. In addition, Algo-PB
removes |Vs| nodes with rv = 0. This incurs |Vs| iterations.
According to line 5−7, removing |Vs| nodes has a complexity
of O(|Vs|). We remark that CFLU-Color has a time complex-
ity of O(|E|). In line 9 − 13, scheduling v∈Vs
rv packets
has a complexity of O( v∈Vs
rv × |E|). Thus, in total, the
computational complexity of Algo-PB is O(|V −{s}|(log |V −
{s}| + 1) + v∈V−s rv × |E|).
A key computation performed by Algo-FC is balancing
trees. This involves a non-negligible number of migrations.
We have the following propositions.
Proposition 7: The BFS in Step 1 of Algo-FC sets each
non-gateway node u to at least one tree Ts, for any gateway
s ∈ S.
Proof: Step 1 of Algo-FC runs BFS from a virtual
gateway v which is the parent of all gateway nodes in S.
The BFS will first connect v to all of its one-hop neighbors,
i.e., all gateway nodes in S. Since we consider only connected
networks, BFS will visit each non-gateway node v and thus
each node v must be a descendant of v . In addition, each v
must be a descendant of at least one gateway node s ∈ S to
be reachable from v , proving the proposition.
Proposition 8: For an MTR-WMN that contains |V| nodes
and |S| gateways, Algo-FC requires at most 1 × |V|−|S|
|S| +
2 × |V|−|S|
|S| + 3 × |V|−|S|
|S| . . . + (|S| − 1) × |V|−|S|
|S| =
|S|(|S|−1)
2 × |V|−|S|
|S| migrations to get a balanced forest.
Proof: To prove the above proposition, we start from
the case with |S| = 2 gateways, say gateway 1 and 2. From
Proposition 7, in the worst case, BFS sets all |V| − 2 non-
gateway nodes to only one tree, say T1, and T2 contains only
gateway 2. For this case, Algo-FC needs to migrate |V|−2
2
nodes from T1 to T2 to balance the forest. Further, in the
worst case, each migration moves only one node, i.e., migrat-
ing a leaf node, and thus it requires |V|−2
2 migrations to get
a balanced forest, showing that the proposition is correct is
correct for |S| = 2.
Next, consider the case with |S| = 3 gateways, say gateway
1, 2 and 3. In the worst case, BFS sets all non-gateway nodes
to only one tree, e.g., T1, and Algo-FC needs to migrate
2 × |V|−3
3 nodes from T1 to T2 and T3. We note that
migrating |V|−3
3 nodes from T1 to another tree, say T2,
requires at most |V|−3
3 migrations. However, in the worst
case, Algo-FC may need to migrate up to |V|−3
3 nodes to
T2 before migrating them to T3. Thus, migrating the nodes
from T1 to T3 may require up to 2 × |V|−3
3 migrations.
Therefore, in total, Algo-FC requires |V|−3
3 +2× |V|−3
3 =
3 × |V|−3
3 migrations to get a balanced forest, and thus the
proposition is correct for |S| = 3.
Finally, consider the general case with |S| gateways, say
1, 2, ...s. In the worst case, all non-gateway nodes connect to
one tree, e.g., T1 after the BFS. However, to get a balanced
forest, Algo-FC needs to migrate |V|−|S|
|S| nodes from T1
to each tree. Algo-FC may need to migrate up to |V|−|S|
|S|
nodes to tree Ti−1 in the worst case before migrating them
to Ti, where 3 ≤ i ≤ |S|. Thus, Algo-FC requires at most
1× |V|−|S|
|S| +2× |V|−|S|
|S| +3× |V|−|S|
|S| +. . .+(|S|−1)×
|V|−|S|
|S| = |S|(|S|−1)
2 × |V|−|S|
|S| node migrations to generate
a balanced forest for an MTR-WMN with |V| nodes and
|S| gateways.
1578 VOLUME 4, 2016
www.redpel.com +917620593389
www.redpel.com +917620593389
H. Wang et al.: Minimizing Data Forwarding Schedule
As Proposition 8 bounds the number of migrations carried
out by Algo-FC, we thus have the following corollary,
Corollary 1: Algo-FC is guaranteed to stop no later than
the node migration upper bound.
VII. EVALUATION
In this section, we evaluate the performance of Algo-PB
and Algo-FC in Matlab with the Matgraph [21] toolkit.
Our results are an average of 50 simulation runs. For each
simulation run, we use a different topology. We plot the
confidence interval of 50 simulation runs, where 95% of the
results are within the indicated error bar. Next, we describe
our evaluation of Algo-PB before focusing on Algo-FC
in Section VII-B.
A. ALGO-PB
We assume all nodes are static and randomly placed on a
100m × 100m square area. If two nodes are placed within
the transmission range of each other, which is 25m, they are
considered to be neighbors. The gateway node is placed at
the center of the square area. We compare the personalized
broadcast schedule length generated by Algo-PB with the
theoretical upper and lower bound listed in Section III as well
as the link scheduler proposed in [3]. To ensure a fair com-
parison, we have modified Bermond et al.’s algorithm [3],
which we refer to as ScheTree, to include MTR capability,
which means in each time slot, a node v is now able to
transmit up to packets. We generate the routing tree by
performing a BFS at the gateway. We record the schedule
length of all algorithms and compute the theoretical upper
and lower bound of each topology.
1) NODE DEMAND
To study the impact of different node demand, i.e., rv for
each node v, we fix the network size to 30 and each node
has = 3. We conduct six group of experiments by varying
the demand of each node from one to six. Note, we assume all
nodes have the same demand in each simulation group, i.e.,
in the first group, the weight of each node is one.
From Figure 5, the difference between Algo-PB and the
theoretical lower bound is within 34.5%. Our algorithm
FIGURE 5. Schedule length under different node demand.
FIGURE 6. Schedule lengths under different node densities.
outperforms ScheTree by generating superframe lengths that
is up to 33.3% shorter. This is because Algo-PB always
preferentially schedules packets to the node farthest from the
gateway and does not switch to another node until a node
is fully serviced. Thus, our algorithm makes the best use
of the link-upgrade capability of nodes to produce shorter
schedules.
2) NODE DENSITY
We assume each node v has three antennas and has rv = 4.
We run 9 groups of experiments by varying the network size
from 30 to 70, with a step size of 5. Figure 6 shows the
FIGURE 7. Schedule length versus u.
VOLUME 4, 2016 1579
www.redpel.com +917620593389
www.redpel.com +917620593389
H. Wang et al.: Minimizing Data Forwarding Schedule
FIGURE 8. Performance under different network sizes.
resulting schedule length. Simulation results show that the
schedule length increases with network size. Algo-PB outper-
forms ScheTree by producing up to 44.6% shorter schedule.
The difference between Algo-PB and the theoretical lower
bound is at most 20.9%.
3) NUMBER OF ANTENNAS
We fix the network size to 30 nodes and vary the number
of antennas. Figure 7(a) shows the schedule length when
the weight of each node is three. On the other hand, in
Figure 7(b), the weight of each node is randomly chosen from
the range [0, 5]. When the number of antennas increases, the
generated schedule length decreases. This is because nodes
are able to receive/forward more packets in each slot with
increasing number of antennas. Compared with ScheTree,
Algo-PB generates at most 45.5% shorter schedule lengths
when all nodes have a weight of three, and 44.2% shorter
schedule lengths when each node has a random weight. The
difference between Algo-PB and the theoretical lower bound
is at most 26.5%.
B. FOREST CONSTRUCTION
We now turn our attention to Algo-FC. We assume all nodes
are stationary and randomly connected. For each node, the
number of requests, i.e., rv, is randomly chosen from the
range [0, 5]. There are three sets of evaluation. First, we
vary the number of nodes from 10 to 70. We fix the number
FIGURE 9. Performance under different node densities.
of gateways to four and node degree to four. Second, we
conducted experiments with 35 nodes and four gateways.
We vary the degree of each node from three to six. Third,
we fix the network size to 35, node degree to four and vary
the number of gateways from two to five.
We compare Algo-FC and ILP with two other solutions,
breadth-first searching (BFS) and weight focus rout-
ing (WFR). Briefly, BFS and WFR work as follows:
• BFS. First we create a virtual node and connect it to all
gateways. Then we perform a BFS from the virtual node.
Finally, we remove the virtual node. This process results
in multiple trees where each node is associated with the
nearest gateway.
• WFR. It repeatedly picks the node v with the largest rv
that is not connected to any tree. It then finds a path p
from node v to the nearest gateway s. WFR connects all
nodes along path p to gateway s. Note that if a node n
on path p is already connected to another tree rooted at
gateway k, WFR connects nodes from v to n to gateway k
and ignores other nodes.
In each experiment, we compute the following metrics:
• Maximum gateway load. This is the load of the heaviest
gateway. It is calculated by summing the weight of all
nodes served by a gateway.
• Computation time. This is the time consumed to generate
the forest, measured in seconds. Matlabs optimization
toolbox is used to solve the ILP.
1580 VOLUME 4, 2016
www.redpel.com +917620593389
www.redpel.com +917620593389
H. Wang et al.: Minimizing Data Forwarding Schedule
FIGURE 10. Performance under different number of gateways.
1) NETWORK SIZE
We vary the network size from 10 to 70 while fixing the
number of gateways to four and node degree to four. Results
in Figure 8 show that with increasing network size, the load
of the heaviest gateway increases and the computation time
increases. Algo-FC, outperforms BFS and WFR by at least
60.6% and 62.2%, respectively. This is because BFS only
considers the shortest path and WFR only focuses on the
heaviest nodes. Also, BFS and WFR do not consider the
load of gateways. Compared to the ILP, Algo-FC results in
the heaviest gateway having at most 8.6% higher load than
the ILP. In terms of computation time, BFS has the best
performance. As shown in Figure 8(b), when the network
size increases, the computation time for ILP increases expo-
nentially as expected. When the network size is 70, it takes
570.1 seconds on average for the ILP solver to get the optimal
solution. However, Algo-FC only requires 1.34 seconds to
get the solution when the network size is 70. Algo-FC bal-
ances the load between gateways, unlike BFS and WFR, and
thus the computation time for Algo-FC is higher than BFS.
2) NODE DENSITY
Increasing node density results in a higher node degree. Thus,
in this group of experiments, we fix the network size to 35
and use four gateways. Figure 9(a) shows that higher node
densities tend to decrease the load of the heaviest gateway.
Compared to ILP, Algo-FC results in the heaviest gateway
having at most 9.1% higher load. Algo-FC outperforms BFS
and WFR by at least 43.1% and 43.7%, respectively as BFS
and WFR do not seek a balanced forest. In terms of compu-
tation time, Figure 9(b) shows that ILP requires the longest
time as expected. When each node has six neighbors, ILP
takes 58.8 seconds. The computation time increases expo-
nentially with node degree. This is because a higher node
degree leads to the ILP having an exponential increase in the
number of decision variables. However, Algo-FC only needs
0.36 second under the same condition.
3) NUMBER OF GATEWAYS
Finally, we test the performance of the four approaches under
different number of gateways. Figure 10(a) indicates that
the load of the heaviest gateway decreases with increasing
number of gateways. This is because adding more gateway
nodes results in more sources that are transmitting packets.
Algo-FC generates at most 6.7% higher load at the heaviest
gateway as compared to ILP and outperforms BFS and WFR
by 60.1% and 44.4% respectively. From Figure 10(b), on
average, Algo-FC runs in 0.48 seconds when there are five
gateways versus 14.6 seconds for ILP.
VIII. CONCLUSION
In this paper, we have addressed the personalized broad-
cast problem and the forest construction problem. We derive
bounds for the personalized broadcast schedule in tree-based
MTR-WMNs and propose a novel link-scheduling algorithm
called Algo-PB to generate a personalized broadcast sched-
ule with minimal makespan. We also formulate the forest
construction problem using an ILP and propose a heuris-
tic algorithm called Algo-FC to generate the routing forest.
Through comprehensive experiments we show that Algo-PB
outperforms current algorithms and is within 34.5% of the
theoretical lower bound. Also, compared to the optimal solu-
tion generated by the ILP, the schedule makespan produced
by Algo-FC is at most 9.1% longer. As a future work, we plan
to investigate the personalized broadcast problem together
with the data collection problem [1] in full-duplex wireless
networks.
REFERENCES
[1] V. Bonifaci, P. Korteweg, A. Marchetti-Spaccamela, and L. Stougie,
‘‘An approximation algorithm for the wireless gathering problem,’’ Oper.
Res. Lett., vol. 36, no. 5, pp. 605–608, Sep. 2008.
[2] D. Zhao, K.-W. Chin, and R. Raad, ‘‘Approximation algorithms for broad-
casting in duty cycled wireless sensor networks,’’ Wireless Netw., vol. 20,
no. 8, pp. 2219–2236, Nov. 2014.
[3] J.-C. Bermond, L. Gargano, S. Perénnes, A. A. Rescigno, and U. Vaccaro,
‘‘Optimal time data gathering in wireless networks with multidirectional
antennas,’’ Theor. Comput. Sci., vol. 509, pp. 122–139, Oct. 2013.
[4] C. Florens, M. Franceschetti, and R. J. McEliece, ‘‘Lower bounds on data
collection time in sensory networks,’’ IEEE J. Sel. Areas Commun., vol. 22,
no. 6, pp. 1110–1120, Aug. 2004.
[5] P. Soldati, H. Zhang, and M. Johansson, ‘‘Deadline-constrained transmis-
sion scheduling and data evacuation in WirelessHART networks,’’ in Proc.
Eur. Control Conf. (ECC), Budapest, Hungary, Aug. 2009, pp. 4320–4325.
[6] Z. Shen, H. Jiang, and Z. Yan, ‘‘Fast data collection in linear duty-cycled
wireless sensor networks,’’ IEEE Trans. Veh. Technol., vol. 63, no. 4,
pp. 1951–1957, May 2014.
VOLUME 4, 2016 1581
www.redpel.com +917620593389
www.redpel.com +917620593389
H. Wang et al.: Minimizing Data Forwarding Schedule
[7] O. D. Incel, A. Ghosh, B. Krishnamachari, and K. Chintalapudi, ‘‘Fast data
collection in tree-based wireless sensor networks,’’ IEEE Trans. Mobile
Comput., vol. 11, no. 1, pp. 86–99, Jan. 2012.
[8] V. Mhatre, H. Lundgren, F. Baccelli, and C. Diot, ‘‘Joint MAC-aware
routing and load balancing in mesh networks,’’ in Proc. ACM CoNEXT,
New York, NY, USA, Dec. 2007, Art. no. 19.
[9] S. Maurina, R. Riggio, T. Rasheed, and F. Granelli, ‘‘On tree-based routing
in multi-gateway association based wireless mesh networks,’’ in Proc.
IEEE Int. Symp. Pers., Indoor Mobile Radio Commun., Tokyo, Japan,
Sep. 2009, pp. 1542–1546.
[10] Y.-F. Wen and F. Y.-S. Lin, ‘‘The top load balanced forest routing in mesh
networks,’’ in Proc. IEEE Consum. Commun. Netw. Conf., Las Vegas, NV,
USA, Jan. 2006, pp. 468–472.
[11] D. Nandiraju, L. Santhanam, N. Nandiraju, and D. P. Agrawal, ‘‘Achieving
load balancing in wireless mesh networks through multiple gateways,’’ in
Proc. IEEE Int. Conf. Mobile Adhoc Sensor Syst. (MASS), Vancouver, BC,
Canada, Oct. 2006, pp. 807–812.
[12] Y. Bejerano, S.-J. Han, and A. Kumar, ‘‘Efficient load-balancing rout-
ing for wireless mesh networks,’’ Comput. Netw., vol. 51, no. 10,
pp. 2450–2466, Jul. 2007.
[13] Y. Dinitz, N. Garg, and M. X. Goemans, ‘‘On the single-source
unsplittable flow problem,’’ Combinatorica, vol. 19, no. 1, pp. 17–41,
Jan. 1999.
[14] H. Wang, K.-W. Chin, R. Raad, and S. Soh, ‘‘A distributed maximal link
scheduler for multi Tx/Rx wireless mesh networks,’’ IEEE Trans. Wireless
Commun., vol. 14, no. 1, pp. 520–531, Jan. 2015.
[15] Q. H. Spencer, C. B. Peel, A. L. Swindlehurst, and M. Haardt, ‘‘An intro-
duction to the multi-user MIMO downlink,’’ IEEE Commun. Mag., vol. 42,
no. 10, pp. 60–67, Oct. 2004.
[16] X. Ge, H. Cheng, M. Guizani, and T. Han, ‘‘5G wireless backhaul net-
works: Challenges and research advances,’’ IEEE Netw., vol. 28, no. 6,
pp. 6–11, Nov./Dec. 2014.
[17] H. Wang, K.-W. Chin, and S. Soh, ‘‘A novel link scheduler for per-
sonalized broadcast in multi Tx/Rx wireless mesh networks,’’ in Proc.
IEEE Int. Conf. Commun. Workshop (ICCW), London, U.K., Jun. 2015,
pp. 532–537.
[18] S. Chu and X. Wang, ‘‘Opportunistic and cooperative spatial multiplexing
in MIMO ad hoc networks,’’ IEEE/ACM Trans. Netw., vol. 18, no. 5,
pp. 1610–1623, Oct. 2010.
[19] H. Zeng et al., ‘‘A scheduling algorithm for MIMO DoF allocation in multi-
hop networks,’’ IEEE Trans. Mobile Comput., vol. 15, no. 2, pp. 264–277,
Feb. 2016.
[20] L. Gargano and A. A. Rescigno, ‘‘Optimally fast data gathering in sensor
networks,’’ in Mathematical Foundations of Computer Science. Berlin,
Germany: Springer, 2006, pp. 399–411.
[21] E. R. Scheinerman. (2007). Matgraph: A MATLAB Toolbox for Graph
Theory. [Online]. Available: http://www.mathworks.com/matlabcentral/
fileexchange/19218-matgraph
HE WANG received the B.E. (Hons.) degree
in telecommunications from the University
of Wollongong, Australia, and Zhengzhou
University, China. He is currently pursu-
ing the Ph.D. degree with the University of
Wollongong. His research interest includes media
access protocol for wireless mesh networks and
load balance routing in wireless mesh networks.
KWAN-WU CHIN is an Associate Professor with
the University of Wollongong. He received the
B.Sc. and Ph.D. (Hons.) degrees from the Curtin
University of Technology, Australia. He is the
vice-chancellor’s commendation. After obtaining
his Ph.D., he joined the Motorola Research Lab-
oratory as a Senior Research Engineer, where he
developed zero configuration home networking
protocols and designed new medium access con-
trol protocols for wireless sensor networks and
next generation bandwidth managers. In addition, he holds nine U.S. patents
and won a major grant from DARPA. In 2004, he joined the University of
Wollongong as a Senior Lecturer before his promotion to Associate Professor
in 2011. He is also the Head of Postgraduate Studies with the School of
Electrical, Computer and Telecommunications Engineering, and the Director
of the Wireless Technologies Laboratory. His current research areas include
medium access control protocols for wireless networks, resource alloca-
tion algorithms/policies for communications networks, routing protocols for
delay tolerant networks, and mathematical programming. He holds four
U.S. patents, and has authored more than 100 conference and journal articles.
SIETENG SOH (M’98) received the B.S. degree
from the University of Wisconsin–Madison, and
the M.S. and Ph.D. degrees from Louisiana State
University, Baton Rouge, all in electrical engineer-
ing. From 1993 to 2000, he was a Faculty Member
with Tarumanagara University, Indonesia, where
he was the Director of the Research Institute from
1998 to 2000. He is currently a Senior Lecturer
with the Department of Computing, Curtin Uni-
versity of Technology, Perth, WA. His research
interests include network reliability, and parallel and distributed processing.
1582 VOLUME 4, 2016
www.redpel.com +917620593389
www.redpel.com +917620593389

More Related Content

PDF
Buffer aided relay selection with reduced packet delay in cooprative network
PDF
Solving QoS multicast routing problem using ACO algorithm
PDF
Networking Articles Overview
PDF
MuMHR: Multi-path, Multi-hop Hierarchical Routing
 
PDF
An Adaptive Routing Algorithm for Communication Networks using Back Pressure...
DOCX
Computing localized power efficient data
PDF
Multipath TCP-Goals and Issues
PPT
8 Packet Switching
Buffer aided relay selection with reduced packet delay in cooprative network
Solving QoS multicast routing problem using ACO algorithm
Networking Articles Overview
MuMHR: Multi-path, Multi-hop Hierarchical Routing
 
An Adaptive Routing Algorithm for Communication Networks using Back Pressure...
Computing localized power efficient data
Multipath TCP-Goals and Issues
8 Packet Switching

What's hot (19)

PPTX
Ch 18 intro to network layer - section 3
PDF
A survey on mac strategies for cognitive radio networks
DOCX
JPJ1410 PACK: Prediction-Based Cloud Bandwidth and Cost Reduction System
PDF
Improved LEACH protocol for increasing the lifetime of WSNs
PDF
Multilevel priority packet scheduling scheme for wireless networks
PDF
Ieeepro techno solutions 2014 ieee java project - cloud bandwidth and cost ...
PDF
Review on Clustering and Data Aggregation in Wireless Sensor Network
DOCX
Polynomial time algorithms for multirate anypath
PPTX
Ch 18 intro to network layer - section 1
PDF
Architecture and Evaluation on Cooperative Caching In Wireless P2P
DOCX
Message switched
PDF
DYNAMIC TASK SCHEDULING BASED ON BURST TIME REQUIREMENT FOR CLOUD ENVIRONMENT
PDF
Throughput Maximization using Spatial Reusability in Multi Hop Wireless Network
PDF
THRESHOLD BASED VM PLACEMENT TECHNIQUE FOR LOAD BALANCED RESOURCE PROVISIONIN...
PDF
Comparison of Various Unicast-Multicast Routing Protocols for Mobile Ad-Hoc N...
PDF
Cost Effective Routing Protocols Based on Two Hop Neighborhood Information (2...
PDF
Improve Convergecasting in Collection Tree Protocol(CTP)
PDF
A Novel Rebroadcast Technique for Reducing Routing Overhead In Mobile Ad Hoc ...
PDF
11.a study of congestion aware adaptive routing protocols in manet
Ch 18 intro to network layer - section 3
A survey on mac strategies for cognitive radio networks
JPJ1410 PACK: Prediction-Based Cloud Bandwidth and Cost Reduction System
Improved LEACH protocol for increasing the lifetime of WSNs
Multilevel priority packet scheduling scheme for wireless networks
Ieeepro techno solutions 2014 ieee java project - cloud bandwidth and cost ...
Review on Clustering and Data Aggregation in Wireless Sensor Network
Polynomial time algorithms for multirate anypath
Ch 18 intro to network layer - section 1
Architecture and Evaluation on Cooperative Caching In Wireless P2P
Message switched
DYNAMIC TASK SCHEDULING BASED ON BURST TIME REQUIREMENT FOR CLOUD ENVIRONMENT
Throughput Maximization using Spatial Reusability in Multi Hop Wireless Network
THRESHOLD BASED VM PLACEMENT TECHNIQUE FOR LOAD BALANCED RESOURCE PROVISIONIN...
Comparison of Various Unicast-Multicast Routing Protocols for Mobile Ad-Hoc N...
Cost Effective Routing Protocols Based on Two Hop Neighborhood Information (2...
Improve Convergecasting in Collection Tree Protocol(CTP)
A Novel Rebroadcast Technique for Reducing Routing Overhead In Mobile Ad Hoc ...
11.a study of congestion aware adaptive routing protocols in manet
Ad

Similar to On minimizing data forwarding schedule in multi transmit receive wireless mesh network (20)

PDF
Concept of node usage probability from complex networks and its applications ...
PDF
NS2 Projects 2014 in HCL velachery
PDF
An Approach for Enhanced Performance of Packet Transmission over Packet Switc...
PDF
Fast Data Collection with Interference and Life Time in Tree Based Wireless S...
PDF
M phil-computer-science-mobile-computing-projects
PDF
M.Phil Computer Science Mobile Computing Projects
PDF
M.E Computer Science Mobile Computing Projects
PDF
Further Investigation on OXLP: An Optimized Cross-Layers Protocol for Sensor ...
PDF
CONGESTION AWARE LINK COST ROUTING FOR MANETS
PDF
Mobile Data Gathering with Load Balanced Clustering and Dual Data Uploading i...
PDF
Enforcing end to-end proportional fairness with bounded buffer overflow proba...
PDF
Clustering based Time Slot Assignment Protocol for Improving Performance in U...
PDF
Clustering based Time Slot Assignment Protocol for Improving Performance in U...
PDF
Enhancing Congestion Control using a Load-Balanced Routing Algorithm for Dist...
PDF
Enhancing Congestion Control using a Load-Balanced Routing Algorithm for Dist...
PDF
Multi-Channel Multi-Interface Wireless Network Architecture
PDF
M.Phil Computer Science Networking Projects
PDF
M phil-computer-science-networking-projects
PDF
Congestion Control in Manets Using Hybrid Routing Protocol
PDF
Congestion Control in Manets Using Hybrid Routing Protocol
Concept of node usage probability from complex networks and its applications ...
NS2 Projects 2014 in HCL velachery
An Approach for Enhanced Performance of Packet Transmission over Packet Switc...
Fast Data Collection with Interference and Life Time in Tree Based Wireless S...
M phil-computer-science-mobile-computing-projects
M.Phil Computer Science Mobile Computing Projects
M.E Computer Science Mobile Computing Projects
Further Investigation on OXLP: An Optimized Cross-Layers Protocol for Sensor ...
CONGESTION AWARE LINK COST ROUTING FOR MANETS
Mobile Data Gathering with Load Balanced Clustering and Dual Data Uploading i...
Enforcing end to-end proportional fairness with bounded buffer overflow proba...
Clustering based Time Slot Assignment Protocol for Improving Performance in U...
Clustering based Time Slot Assignment Protocol for Improving Performance in U...
Enhancing Congestion Control using a Load-Balanced Routing Algorithm for Dist...
Enhancing Congestion Control using a Load-Balanced Routing Algorithm for Dist...
Multi-Channel Multi-Interface Wireless Network Architecture
M.Phil Computer Science Networking Projects
M phil-computer-science-networking-projects
Congestion Control in Manets Using Hybrid Routing Protocol
Congestion Control in Manets Using Hybrid Routing Protocol
Ad

More from redpel dot com (20)

PDF
An efficient tree based self-organizing protocol for internet of things
PDF
Validation of pervasive cloud task migration with colored petri net
PDF
Web Service QoS Prediction Based on Adaptive Dynamic Programming Using Fuzzy ...
PDF
Towards a virtual domain based authentication on mapreduce
PDF
Toward a real time framework in cloudlet-based architecture
PDF
Protection of big data privacy
PDF
Privacy preserving and delegated access control for cloud applications
PDF
Performance evaluation and estimation model using regression method for hadoo...
PDF
Frequency and similarity aware partitioning for cloud storage based on space ...
PDF
Multiagent multiobjective interaction game system for service provisoning veh...
PDF
Efficient multicast delivery for data redundancy minimization over wireless d...
PDF
Cloud assisted io t-based scada systems security- a review of the state of th...
PDF
I-Sieve: An inline High Performance Deduplication System Used in cloud storage
PDF
Bayes based arp attack detection algorithm for cloud centers
PDF
Architecture harmonization between cloud radio access network and fog network
PDF
Analysis of classical encryption techniques in cloud computing
PDF
An anomalous behavior detection model in cloud computing
PDF
A tutorial on secure outsourcing of large scalecomputation for big data
PDF
A parallel patient treatment time prediction algorithm and its applications i...
PDF
A mobile offloading game against smart attacks
An efficient tree based self-organizing protocol for internet of things
Validation of pervasive cloud task migration with colored petri net
Web Service QoS Prediction Based on Adaptive Dynamic Programming Using Fuzzy ...
Towards a virtual domain based authentication on mapreduce
Toward a real time framework in cloudlet-based architecture
Protection of big data privacy
Privacy preserving and delegated access control for cloud applications
Performance evaluation and estimation model using regression method for hadoo...
Frequency and similarity aware partitioning for cloud storage based on space ...
Multiagent multiobjective interaction game system for service provisoning veh...
Efficient multicast delivery for data redundancy minimization over wireless d...
Cloud assisted io t-based scada systems security- a review of the state of th...
I-Sieve: An inline High Performance Deduplication System Used in cloud storage
Bayes based arp attack detection algorithm for cloud centers
Architecture harmonization between cloud radio access network and fog network
Analysis of classical encryption techniques in cloud computing
An anomalous behavior detection model in cloud computing
A tutorial on secure outsourcing of large scalecomputation for big data
A parallel patient treatment time prediction algorithm and its applications i...
A mobile offloading game against smart attacks

Recently uploaded (20)

PDF
Black Hat USA 2025 - Micro ICS Summit - ICS/OT Threat Landscape
PDF
A systematic review of self-coping strategies used by university students to ...
PPTX
GDM (1) (1).pptx small presentation for students
PDF
O7-L3 Supply Chain Operations - ICLT Program
PDF
A GUIDE TO GENETICS FOR UNDERGRADUATE MEDICAL STUDENTS
PDF
Microbial disease of the cardiovascular and lymphatic systems
PPTX
Tissue processing ( HISTOPATHOLOGICAL TECHNIQUE
PDF
Supply Chain Operations Speaking Notes -ICLT Program
PDF
The Lost Whites of Pakistan by Jahanzaib Mughal.pdf
PPTX
Pharma ospi slides which help in ospi learning
PDF
O5-L3 Freight Transport Ops (International) V1.pdf
PDF
STATICS OF THE RIGID BODIES Hibbelers.pdf
PPTX
IMMUNITY IMMUNITY refers to protection against infection, and the immune syst...
PDF
Saundersa Comprehensive Review for the NCLEX-RN Examination.pdf
PDF
ANTIBIOTICS.pptx.pdf………………… xxxxxxxxxxxxx
PDF
01-Introduction-to-Information-Management.pdf
PDF
3rd Neelam Sanjeevareddy Memorial Lecture.pdf
PPTX
Pharmacology of Heart Failure /Pharmacotherapy of CHF
PPTX
Lesson notes of climatology university.
PPTX
master seminar digital applications in india
Black Hat USA 2025 - Micro ICS Summit - ICS/OT Threat Landscape
A systematic review of self-coping strategies used by university students to ...
GDM (1) (1).pptx small presentation for students
O7-L3 Supply Chain Operations - ICLT Program
A GUIDE TO GENETICS FOR UNDERGRADUATE MEDICAL STUDENTS
Microbial disease of the cardiovascular and lymphatic systems
Tissue processing ( HISTOPATHOLOGICAL TECHNIQUE
Supply Chain Operations Speaking Notes -ICLT Program
The Lost Whites of Pakistan by Jahanzaib Mughal.pdf
Pharma ospi slides which help in ospi learning
O5-L3 Freight Transport Ops (International) V1.pdf
STATICS OF THE RIGID BODIES Hibbelers.pdf
IMMUNITY IMMUNITY refers to protection against infection, and the immune syst...
Saundersa Comprehensive Review for the NCLEX-RN Examination.pdf
ANTIBIOTICS.pptx.pdf………………… xxxxxxxxxxxxx
01-Introduction-to-Information-Management.pdf
3rd Neelam Sanjeevareddy Memorial Lecture.pdf
Pharmacology of Heart Failure /Pharmacotherapy of CHF
Lesson notes of climatology university.
master seminar digital applications in india

On minimizing data forwarding schedule in multi transmit receive wireless mesh network

  • 1. Received March 15, 2016, accepted April 4, 2016, date of publication April 12, 2016, date of current version April 29, 2016. Digital Object Identifier 10.1109/ACCESS.2016.2553048 On Minimizing Data Forwarding Schedule in Multi Transmit/Receive Wireless Mesh Networks HE WANG1, KWAN-WU CHIN1, AND SIETENG SOH2, (Member, IEEE) 1School of Electrical, Computer and Telecommunication Engineering, University of Wollongong, Wollongong, NSW 2522, Australia 2Department of Computing, Curtin University of Technology, Bentley, WA 6102, Australia Corresponding author: H. Wang ([email protected]) ABSTRACT A key problem in wireless mesh networks is forwarding packets to/from one or more gateways with connectivity to the Internet. In this respect, a short link schedule, which determines the transmission time of links, is critical. To date, existing link schedulers do not consider routers that incorporate advances in multiple input multiple output communications, i.e., interference cancellation and spatial multiplexing. In particular, these routers are able to transmit or receive distinct packets on all their links concurrently as well as deliver multiple packets to a neighbor simultaneously. To this end, we consider the problem of deriving a time division multiple access schedule that forwards packets to their respective destination quickly. We first consider the personalized broadcast problem, which assumes a single gateway and present Algo-PB, a solution that produces a schedule that is within 34.5% of the lower bound, and is 45.5% shorter than those computed by the state-of-the-art algorithms. We then extend the problem to consider multiple gateways. This so-called forest construction problem is modeled as an integer linear program (ILP). We then outline Algo-FC, a novel heuristic that generates a balanced forest by repeatedly picking a node from the heaviest tree and migrating it to another tree if doing so reduces the overall load. Experiment results show that the resulting forest generated by Algo-FC is within 9.1% of the ILP solution. INDEX TERMS Link scheduler, integer linear program (ILP), NP-complete, multiple gateways, balanced tree. I. INTRODUCTION Wireless Mesh Networks (WMNs) are ideal for use in enterprises, campuses, metro and rural areas. They serve as an easy-to-setup multi-hop wireless backbone that allows applications to upload/download data to/from one or more gateways with connectivity to the Internet. Hence, it is critical that a gateway delivers buffered packets to their respective receiver or mesh router quickly. Conversely, it is important that wireless mesh routers send buffered packets, which have been uploaded by clients, to a gateway promptly. Hence, deriving a link activation schedule that ensures high through- put is important. Figure 1(a) shows an example schedule. The nodes marked s1 and s2 are gateways. Assume s1 has one packet to deliver to all non-gateway nodes. Moreover, each node can only transmit one packet at a time. We see that a Time Division Multiple Access (TDMA) schedule of five slots is used to deliver all packets. Deriving such a schedule is equivalent to solving the per- sonalized broadcast problem [1]. Briefly, consider an arbi- trary tree rooted at a gateway. Each node has a set of packets FIGURE 1. Forest and personalized broadcast schedule. (a) Single tree and schedule. (b) Multiple trees and schedule. buffered at the gateway. The aim is to derive a collision-free link schedule to transfer these packets to their receiver in the shortest possible time or makespan. We emphasize that ‘personalized broadcast’ refers to the fact that the packets to be delivered are unique and has a designated destination. 1570 2169-3536 2016 IEEE. Translations and content mining are permitted for academic research only. Personal use is also permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information. VOLUME 4, 2016 www.redpel.com +917620593389 www.redpel.com +917620593389
  • 2. H. Wang et al.: Minimizing Data Forwarding Schedule Fundamentally, it is different from the traditional broadcast scheduling problem [2] where all nodes receive the same packet from a gateway. As an aside, the authors of [1] have shown that the personalized broadcast problem is equivalent to the data collection or data gathering problem. In particular, we can ‘‘reverse’’ any schedule derived for the personalized broadcast problem and use it for data collection/gathering. That is, links activated in the first, second and subsequent slots in the personalized broadcast schedule are activated last, second last and so forth time slots [3]. Given this fact, we only need to consider deriving a link schedule for packets flowing in one direction. In general, we need to consider multiple gateways. We call this the forest construction problem. To see the advantages of multiple gateways, reconsider Figure 1. Using both s1 and s2, we see that the schedule length or makespan reduces to three slots; see Figure 1(b). Observe that the time to deliver all packets is determined by the personalized broadcast schedule with the longest makespan. To date, there are several link schedulers or Medium Access Control (MAC) protocols that aim to minimize the length of a data collection or personalized broadcast schedule [3]–[7]. In [4], the authors analyze the lower bound for line, multiline and tree topologies and derive the optimal data collection time. The authors of [5] analyze the theoretical lower bound for data collection in line and tree topologies and propose a data collection algorithm for binary tree topologies that achieves the lower bound. In [6], the authors study the fast data collection problem in duty-cycled wireless sensor networks. They first propose a centralized algorithm that achieves the optimal data collection time; i.e., in the non- duty-cycled case. They then propose a distributed algorithm to generate a minimal data collection schedule. The authors of [3] study the data gathering problem with multi-directional antennas. They give an algorithm to construct a schedule for tree topologies. Moreover, they consider nodes with more than one packet and no buffer. The authors in [7] study the fast data collection problem in tree-based wireless sensor networks. They propose two data scheduling algorithms to generate a minimal data collection schedule. The first algo- rithm considers the case where each node generates data periodically and data is aggregated by parent nodes. The second algorithm considers one-shot data collection, which means the generated schedule is only used once. With regards to generating a balanced forest, we are only aware of a few works. In [8], the authors propose a distributed load balancing algorithm that ensures each gateway has equal number of nodes. The algorithm in [9] considers the average queue length and expected availability of gateways. In [10], the authors propose a distributed forest construction approach to create a ‘‘top-load balanced forest’’. This is a forest where the set of links connected to gateways have similar traffic load. We note that the forest construction problem is similar to the load-balanced routing problem [11], [12]. In [11], each gateway monitors its queue length and notifies associated nodes to look for an alternative gateway if its queue length exceeds a given threshold. The authors of [12] maximize network utilization by balancing the traffic load between gateways. They first find a set of paths that maximize the normalized bandwidth allocation of nodes. Then they employ the single-source unsplittable flow algorithm from [13] to extract one path for each node from the generated paths. Different from these works, we consider a fundamen- tally different communication model; in contrast, prior works assume nodes have an omni-directional or directional antenna that only afford one data transmission/reception at a time. In our case, routers are able to transmit or receive from their neighbors simultaneously over the same frequency [14]. This ability, called multiple transmit or receive (MTR), can be achieved via Multi-User Multiple Input and Multiple Out- put (MIMO) [15] technology. That is, as routers have mul- tiple antennas, due to spatial multiplexing, they can transmit multiple data streams to different neighbors [16]. Moreover, they can dedicate some streams to the same neighbor; we refer to this ability as link upgrade. A key constraint, however, is that a node must not transmit and receive concurrently, so called no-tx-rx or half-duplex constraint. Moreover, nodes have finite number of antennas. This means we need to consider whether to upgrade a link at the expense of reducing the number of neighbors that a router can transmit to. Lastly, we will have to use some antenna elements to null nearby interfering transmissions. Given MTR routers, in this paper, we aim to address the personalized broadcast problem by deriving a schedule that allows nodes to transmit/receive packets to/from their neighbors. In addition, when appropriate, a node dedicates multiple antennas to boost the number of packets delivered to a neighbor. We also seek to construct a forest that minimizes the longest schedule. In a nutshell, we make the following contributions: • We present Algo-PB, the first link scheduler that gen- erates the minimal personalized broadcast schedule for arbitrary tree topologies constructed in an MTR WMN. Algo-PB generates up to 45.5% shorter schedule lengths as compared to using the algorithm in [3], and the dif- ference between the schedule produced by our algorithm and the theoretical lower bound is at most 34.5%. • We present an Integer Linear Program (ILP) for the forest construction problem. We also present a heuristic, called Algo-FC, that generates a forest by repeatedly migrating a node and all its descendants from the gate- way with the highest load to another tree with a lower load. Compared with the ILP, Algo-FC has lower com- plexity and generates a near-optimal balanced forest. Experimental results show that when using Algo-FC, the gateway with the highest load has at most 9.1% higher load as compared to the optimal solution generated by ILP. Note, a preliminary version of our work has appeared in [17]. This paper extends the said prior work as follows. First, it adopts a different interference model. Specifically, we consider suppressing interference caused by VOLUME 4, 2016 1571 www.redpel.com +917620593389 www.redpel.com +917620593389
  • 3. H. Wang et al.: Minimizing Data Forwarding Schedule a transmitter and also those from its neighbors by taking advantage of the Degree of Freedom (DoFs) or antenna ele- ments available on each node. Second, it presents the forest construction problem, its solution, analysis and correspond- ing results. Next, in Section II, we present our network model and formalize the personalized broadcast and forest construction problem. Then, in Section III, we present the lower and upper bound for any computed schedule. We present our solutions for both problems in Section IV and V, respectively. Section VI contains an extensive analysis of our solutions. Results supporting both solutions are presented and discussed in Section VII. Section VIII concludes the paper. II. PRELIMINARIES We represent an MTR-WMN as a graph G(V, E) where V denotes the set of static vertices/nodes/routers and E denotes the set of directional links, i.e., link ev,u ∈ E denotes a link from node v ∈ V to u ∈ V. Each node v ∈ V has a transmission range Rt. We say the links ev,u and eu,v exist if the distance between node v and u are within Rt. We assume a node’s interference range Ri is equal to its transmission range, i.e., Rt = Ri. In addi- tion, we assume nodes have the channel state informa- tion (CSI) of their neighbors. This is reasonable as mesh routers are fixed and they can send out pilot symbols peri- odically to obtain the required CSI [18]. Each node v ∈ V has radios/antennas or Degree of Freedoms (DoFs). The number of antennas used by node v for transmissions, recep- tions and to cancel interference caused by neighbors is denoted as + v , − v and ∗ v, respectively. Note that the end nodes of a link must dedicate an antenna whenever it trans- mits or receives a packet. Let Iv be the set of neighbors of a transmitter v that are receiving at least one packet from their neighbor(s) except node v. Then node v must cancel any interference it causes to nodes in Iv. This paper adopts the interference cancellation rule proposed in [19]. Specifically, for each node u ∈ Iv, node v needs to use − u antennas to cancel interference it causes to node u. We then have the following interference cancellation constraint: Constraint 1: A transmitting node v must cancel all inter- ference it causes to its neighboring receivers, meaning it must dedicate ∗ v = u∈Iv − u antennas for this purpose. We also have the following constraint that bounds the number of antennas used by a node: Constraint 2: The total number of antenna elements that a node uses for data transmission/reception and to cancel interference from neighbors must not exceed the total number of antenna elements it has, i.e., + v + − v + ∗ v ≤ . The third constraint mandates that each node only trans- mits or receives; so called no-tx-rx requirement. Formally, Constraint 3: + v × − v = 0. Let S ⊂ V be a set of nodes designated as gateways. For a given node v ∈ V − S, let rv ≥ 0 be the number of requests/packets to be received from one of the gateways. We assume that in the resulting schedule, each non-gateway node receives packets from only one gateway. Let Ts be the tree rooted at gateway s ∈ S and Vs ⊂ V be the set of descendants of gateway s. Note that Vs contains only non- gateway nodes. Formally, ws v = a×rv +b×dist(v, s) denotes the weight of node v ∈ Vs. Here dist(v, s) is the distance (in hops) between node v and its gateway s, while a and b are coefficients that are set depending on the value of , see Section V for a detailed discussion. Let Ws = v∈Vs ws v be the weight/load of gateway s. We assume time is slotted where each slot corresponds to the transmission of one packet. Here, the required synchronization can be achieved using a GPS module. We now formally define the personalized broadcast problem and the forest construction problem. Definition 1: For a given Ts, the personalized broadcast problem asks for a collision-free link schedule with the min- imal makespan, called personalized broadcast schedule, that allows gateway s to transfer rv ≥ 0 packets to each destination node v ∈ Vs subject to constraints 1, 2 and 3. Definition 2: For a given MTR-WMN G(V, E) with |S| gateways, the forest construction problem aims to build a for- est containing |S| trees, i.e., a set of Ts for each gateway s ∈ S, such that the maximum makespan among all personalized broadcast schedules in G is minimized. We remark that the personalized broadcast problem is NP-complete. The authors in [3] proved the NP-hardness of the personalized broadcast problem by reduction from the well-known Partition Problem. Specifically, the decision ver- sion addressed in [3] is as follows: given a network G(V, E), integer weights rv ≥ 0, where v ∈ Vs, and an integer bound K, is there a routing tree in G and a multi-hop personalized broadcast schedule that transmits rv packets from a gateway s to each node v in a collision free manner and has a makespan less than K? In their network model, only one transmission is allowed at a node at a time; i.e., = 1. In this paper, we generalized this NP-complete problem by considering ≥ 1. III. UPPER AND LOWER BOUND In this section, we analyze the theoretical bounds of the personalized broadcast schedule for a tree rooted at s, i.e., Ts, for s ∈ S. We first focus on the upper bound. Denote L to be the number of levels or height of tree Ts, and Dl to be the total packets destined for nodes at level l of Ts, where 1 ≤ l ≤ L. We assume gateways are at level zero. We then have the following proposition. Proposition 1: The schedule length for a tree Ts is upper bounded by (i) D1 slots, for L = 1, (ii) D1 + 2D2 slots, for L = 2, or (iii) D1 + 2D2 + L l=3 l + 3(Dl − 1) slots, for L ≥ 3. Proof: The worst case is when all of the following conditions apply: (a) gateway s transmits packets on a level- by-level basis, i.e., gateway s first transmits all packets for nodes at level L, followed by those for nodes at level L − 1, and so forth, (b) each node can transmit only one packet at a time, and (c) any transmitting node at level l ≥ 1 interferes with all nodes at level l − 1, l and l + 1. 1572 VOLUME 4, 2016 www.redpel.com +917620593389 www.redpel.com +917620593389
  • 4. H. Wang et al.: Minimizing Data Forwarding Schedule We start with L = 1. Following (b), as the gateway s transmits one packet in each slot, we will require D1 slots; the proposition is thus true for L = 1. Next, consider L = 2. For this case, as per (c), a transmitting node at level l = 1 interferes with all nodes at level 1 as well as nodes at level 2. Thus, the first packet for nodes at level 2 arrives in slot 2, the second packet arrives in slot 2 + 2 = 4, the third packet arrives at level 2 in slot 2 + 2 + 2 = 6, and so forth. The last packet arrives in slot 2D2. This means packets for nodes at level l = 2 require 2D2 slots. As the gateway uses D1 slots to deliver packets destined for nodes at level l = 1, part (ii) of the proposition is thus true. For case (iii) of the proposition, first consider L = 3. The first packet from gateway s arrives at level l = 3 in slot 3. In this case, as per (c), a transmitting node at level l = 2 interferes with all nodes at level 1, 2 and 3. Thus, the second packet to level l = 3 arrives in slot l + 3 = 6, the third packet arriving in slot l + 6 = 9 and so forth. Consequently, transferring D3 packets to level l = 3 requires no more than 3D3 slots. In general, when a node at level l is receiving a packet from a node at level l1, the next packet destined to any node at level l can be arriving at a node at level l3 without causing interference, and thus the packet needs three additional slots to arrive at level l. Consequently, for any level l ≥ 3, after the first packet that requires l slots, each subsequent packet arrives at level l every three slots. Thus, packet transmission to a node at level l ≥ 3 is upper bounded by l + 3(Dl1) slots. Lastly, as D2 and D1 require 2D2 and D1 slots, the schedule upper bound is at most D1 + 2D2 + L l=3 l + 3(Dl − 1) slots. This proves case (iii) of the proposition. Our next results concern the lower bound of the personal- ized broadcast schedule. We use Ts i to denote a sub-tree of Ts rooted at the i-th child of s. Further, let δ(v, s) be the makespan of the schedule used to transmit rv packets from s to v. We then have the following propositions. Note that the propositions assume there is no neighboring interference among nodes and thus constitute the best case scenario. The lower bound in the presence of neighboring interference remains an open question. Proposition 2: The makespan lower bound to transmit rv > 0 packets from s to v for Ts is (i) δ(v, s) ≥ dist(v, s)+2× (rv− ) slots for dist(v, s) ≥ 2, or (ii) δ(v, s) ≥ dist(v, s) + (rv− ) slots, for dist(v, s) = 1. Proof: First consider the case where dist(v, s) ≥ 2. Observe that the first packets from s reach v no faster than dist(v, s) slots. For rv ≤ , we have (rv− ) = 0, and thus the proposition is true for this case. However, for rv > , we must consider the no-tx-rx constraint. Specifically, any node in the path from s to v can only transmit or receive up to packets at a time. Thus, v receives the next packets no earlier than two slots after it receives the first packets. In general, in the best case, v can receive up to of the remaining rv − packets every two slots. Thus, v receives the remaining rv − packets in no more than 2 × (rv− ) slots, giving a makespan of dist(v, s) + 2 × (rv− ) slots. For case (ii), since v is only one hop away from s, it receives up to packets every slot. Specifically, for rv ≤ , node v receives its rv packets in dist(v, s) = 1 slot, while for rv > , v receives all rv packets in dist(v, s)+ (rv− ) slots, proving the proposition for case (ii). Let Li be the number of levels in sub-tree Ts i , and Dl i be the total number of packets to be transmitted to level l of sub-tree Ts i . We define Fl i to be the last slot in which a node at level l of sub-tree Ts i receives its last packet. For example, in network shown in Figure 2, suppose node G and H on level 3 of subtree Ts A receive their last packet at slot 4 and 5 respectively, thus F3 A = 5. FIGURE 2. Example topology. Proposition 3: For any node v at level l in a Ts i and Dl i > 0, (i) Fl i = l + 2 × Dl i− + 2 × Li m=l+1 Dm i , for l ≥ 2, or (ii) Fl i = l + Dl i− + 2 × Li m=l+1 Dm i , for l = 1. Proof: For a node v at level l and the i-th child of gate- way s, applying Proposition 2, we obtain (i) δ(v, i) ≥ l + 2 × Li m=l+1 Dm i slots for l ≥ 2, or (ii) δ(v, i) ≥ l + Li m=l+1 Dm i slots, for l = 1. Node v will first relay the packets destined to its descendants. This incures 2× Li m=l+1 Dm i slots. After that, it starts receiving its first packet from the gateway. Each of the relayed packets takes two slots because the gateway transmits at an interval of two slots due to the no-tx-rx constraint. The last busy slot, i.e., Fl i , for level l of sub-tree rooted at i is thus the summation of the time required to relay descendants’ packets plus the time to receive all its packets. As a result of Proposition 2 and 3, if rv = 0, the number of slots for node v to receive packets located at itself is 0. Also, if Dl i = 0, the number of slots needed to transfer packets to level l of sub-tree Ts i is zero. Proposition 4: The makespan of the personalized broad- castschedule for a sub-tree Ts i is lower bounded by Fi = MAX(Fl i ) for l ∈ 1, . . . , Li. Proof: According to Proposition 3, any node v at level l of sub-tree Ts i has Fl i . This implies that the last busy slot of sub-tree Ts i cannot be earlier than MAX(Fl i ), for l ∈ 1, . . . , Li. Proposition 5: The makespan of the personalized broad- cast schedule for a tree Ts with θ sub-trees is lower bounded by MAX(Fmax, v∈Vs rv ), where Fmax = MAX(Fi) for i ∈ [1, 2, . . . θ]. VOLUME 4, 2016 1573 www.redpel.com +917620593389 www.redpel.com +917620593389
  • 5. H. Wang et al.: Minimizing Data Forwarding Schedule Proof: Without lost of generality, the first sub-tree of Ts, i.e., Ts 1, produces Fmax. According to Proposition 3, the root of each sub-tree Ts i will first receive packets located at its sub-tree and forward them onwards. This means the gateway node s cannot serve the same sub-tree for two continuous slots due to the no-tx-rx constraint. Consequently, we can interleave the transmissions of two sub-trees. For example, node s transmits to sub-tree Ts 1 in slots 1, 3, 5, and so forth and transmits to sub-tree Ts 2 in slot 2, 4, 6, . . . and so forth. In Proposition 4 we have shown that Fi is the total number of slots needed to deliver all packets to sub-tree Ts i . We now show the following two facts. • Case 1: F1 > F2 + F3 + . . . + Fθ . All other sub-trees can be interleaved with the transmissions to Ts 1. That is, the transmissions to all sub-trees Ts 2 to Ts θ will finish earlier than F1, thus the total number of slots needed to deliver all packets to nodes in T is lower bounded by F1, i.e., Fmax. • Case 2: F1 ≤ F2 + F3 + . . . + Fθ . In this case, all other sub-trees cannot be fully interleaved with the transmission to Ts 1. Thus, we prove a loose lower bound here, i.e., we consider only the number of slots needed for the gateway to transmit all packets to the nodes located at the first level, which is v∈Vs rv . Thus, the number of slots needed to deliver all packets will not be shorter than v∈Vs rv . We note that the schedule makespan will not be shorter than either Fmax or the number of slots needed for the gateway to inject all packets into the network, and thus we have the personalized broadcast lower bound MAX(Fmax, v∈Vs rv ). We now give a brief example and show how the theo- retical lower bound is calculated. For the topology shown in Figure 2, assume s is the gateway and each node has one packet; rv = 1 for v ∈ Vs = {A, B, C, D, E, F, G, H}. We denote the sub-tree rooted at node A, B and C as Ts 1, Ts 2 and Ts 3, respectively. We also assume each node has = 2 antennas. We now focus on sub-tree Ts 1. The total number of packets destined at level 3 of sub-tree Ts 1 is D3 1 = 2, and nodes located at level 3 do not need to forward packets as there are no nodes located beyond level 3. According to Proposition 3, we have F3 1 = 3. Now consider level 2 of Ts 1. Nodes at level 2 need to forward packets to nodes located at level 3 first. For nodes located at level 2, they need to forward packets located at level 3 before receiving packets located at level 2. As D3 1 = 2, nodes located at level 2 need to forward packets to level 3 Li m=l+1 Dm i times which incurs 2 × Li m=l+1 Dm i slots. We then calculate F2 1 = 4. Similarly, F1 1 = 5. According to Proposition 4, the lower bound for sub-tree Ts 1 is F1 = 5. We apply the same procedure for sub-tree Ts 2 and Ts 3 and we get F2 = 2 and F3 = 1. According to Proposition 5, as Fmax = F1 > F2 + F3, the lower bound of tree Ts is Fmax = 5. IV. PERSONALIZED BROADCAST SCHEDULING We now propose a centralized link scheduling algorithm to solve the aforementioned personalized broadcast problem. Note, we do not consider a distributed solution because information such as the topology and buffered packets are located conveniently at the gateway. Our algorithm, called Algo-PB, generates the schedule in a path-by-path manner. Its key idea is to always schedule one packet to the farthest node that has not received all its packets. It then labels each link along the path from the gateway to that node using our new version of the Conflict Free Coloring (CF-Coloring); see [20]. Briefly, given a path p, our new coloring method, Collision Free Link Upgrade Coloring (CFLU-Coloring), assigns an increasing positive integer to each link along p starting from the source node. Our novel CFLU-Coloring considers both MTR as well as link upgrade. When CFLU- Coloring colors node v’s adjacent links, each color, repre- sented by a natural number, can be used at most times. The coloring result must follow constraints 1, 2 and 3. Further, the number/color assigned to each link along path p is strictly increasing to ensure the final schedule is conflict- free. Specifically, for each path p, CFLU-Coloring generates a tuple <(e1,2, c1), (e2,3, c2) . . . (ei,j, ci)>, where ei,j denotes a link from node i to j and ci is the color/number assigned to link ei,j. Links assigned color ci is scheduled in the ci-th slot, thus the maximum number of colors used in CFLU-Coloring is the makespan of the personalized broadcast schedule. Algorithm 1 CFLU-Color() Input : p Output: Schedule Sched(p) 1 Initialization: c = 1, Sched(p) = ∅; 2 for i ← 1 to |p| − 1 do 3 while DoFCheck(p, i, c) do 4 c = c + 1 ; 5 end 6 Sched(p) = Sched(p) ∪ (ep(i),p(i+1), c); 7 c = c + 1; 8 end We start by explaining the function CFLU-Coloring using Algorithm 1. Its input is a path p, and it outputs the tuple Sched(p). CFLU-Coloring keeps an integer c that denotes the color CFLU-Coloring assigns to a link; see Line 1. Then CFLU-Coloring colors each link along path p, starting with the first link in p; see Line 2-8. Function DoFCheck() is used to test whether assigning color c to link ep(i),p(i+1) sat- isfies constraints 1 to 3. If color c can be assigned to link ep(i),p(i+1), DoFCheck() returns zero, otherwise DoFCheck() returns one; see Line 3-5. After assigning color c to link ep(i),p(i+1), CFLU-Coloring updates Sched(p); see Line 6. Line 7 of Algorithm 1 is used to ensure two consecutive links are not assigned the same color. We now describe Algo-PB in detail with the aid of the pseudocode presented in Algorithm 2. To do this, we need 1574 VOLUME 4, 2016 www.redpel.com +917620593389 www.redpel.com +917620593389
  • 6. H. Wang et al.: Minimizing Data Forwarding Schedule Algorithm 2 Algo-PB Input : Vs, ru for each u ∈ Vs Output: Schedule F, Schedule Length tmax // Sort nodes in Vs in decreasing hop length order from s, and store them in tuple V 1 Initialization: V = Sort(Vs), F = ∅; // Label each path and its schedule 2 k = 1; 3 while V = ∅ do 4 v = V(1); 5 if rv = 0 then 6 V = V − v; 7 continue; 8 else 9 pk = path(s → v); 10 Sched(pk) = CFLUColor(pk); 11 rv = rv − 1; 12 F = F ∪ Sched(pk); 13 k = k + 1; 14 end 15 end // Function makespan(F) will return the maximum color number ci among all (ei,j, ci) ∈ F 16 tmax = makespan(F); 17 return(makespan(F), F); a few notations and definitions. Let V be a sequence of nodes in decreasing distance order from gateway s. Let Sched(p) be a tuple containing the output of CFLU-Coloring given the input p. Denote P as a collection of paths, and F is a set that records all the results from CFLU-Coloring; i.e., F = {Sched(p) | p ∈ P}. Let tmax be the maximum slot used in CFLU-Coloring; i.e., the makespan of the personalized broadcast schedule. Algo-PB first sorts all nodes in V and stores them in V in decreasing distance order from gateway s; see Line 1. Then Algo-PB sets a counter k to label each path and its schedule; see Line 2. Algo-PB works in rounds. In each round, Algo-PB picks the first node in V, say v, and checks whether rv = 0; see Line 4 − 5. In our discussion, we will always use v to denote the first node in V in each round. If rv = 0, Algo-PB removes v from V and moves to the next round; see Line 5−7. If rv = 0, Algo-PB schedules one packet from the gate- way to node v along the path pk using CFLU-Coloring; see Line 9 − 10. Then Algo-PB reduces rv by one as it has scheduled one packet to v; see Line 11. The scheduling result is a tuple Sched(pk) and Algo-PB adds the result to F. After increasing k by one, Algo-PB moves to the next round; see Line 12 − 13. When V = ∅, meaning all packets are scheduled, the set F contains all links and their scheduled slots. Lastly, Algo-PB computes tmax and returns the resulting tmax and F; see Line 16 and 17 respectively. FIGURE 3. Example topology. We show how Algo-PB works using the tree shown in Figure 3, where s is the gateway and each node has = 2 antennas. We have the node set V = {A, B, C}. Suppose rA = rB = 1 and rC = 2. Solid lines denote links in the network and dotted lines indicate interferences. Algo-PB first calculates the distance from the gateway s to each node and sorts nodes in V in decreasing hop length order. We then have V = < C, A, B >, see Line 1. We show all four rounds of Algo-PB in Figure 3. Each arrow denotes the path picked in that round. Initially, the counter k is set to 1; see Line 2. In the first round, C is the first node in V; thus v = C. As rC = 2, Algo-PB then schedules a packet to C; see Line 8 − 14. The path from the gateway s to node C is p1 = s → A → C; see Line 9. Algo-PB then schedules p1 using CFLU-Coloring. As p1 is the first path to be scheduled, i.e., no color is used yet, the smallest positive available number is 1. Algo-PB colors link es,A as 1 and link eA,C as 2; see Line 10. The result of CFLU-Coloring is Sched(p1) = < (es,A, 1), (eA,C , 2) >. Given that Algo-PB has scheduled one packet to C, it reduces rC by one; see Line 11. It then adds Sched(p1) into F and increases k by one; see Line 12−13. In the second round, C is still the first node in V and rC = 1; thus Algo-PB schedules a packet to C along path p2 = s → A → C. Assigning color 1 to link es,A and color 2 to link eA,C satisfies constraints 1 to 3. Thus, the result of CFLU-Coloring on p2 is Sched(p2) = < (es,A, 1), (eA,C , 2) >. Path p3 = s → A is to be scheduled in the third round. Assigning color 1 to link es,A does not satisfy constraint 2. This is because two of ss links are assigned color 1. Further, color 2 cannot be assigned to link es,A because node A cannot transmit and receive simultaneously according to constraint 2. Thus, the result of CFLU-Coloring is Sched(p3) = <(es,A, 3)>. Lastly, Algo-PB schedules a packet to node B along p4 = s → B. Color 1 cannot be assigned to link es,B because it does not sat- isfy constraint 2. Further, Color 2 cannot be assigned to link es,B either. This is because node B is interfered by transmitting node A and node A does not have enough antennas to cancel the interference it caused to node B. The result of CFLU- Coloring on p4 is Sched(p4) = <(es,B, 3)>. After scheduling all packets, Algo-PB sets tmax = makespan(F) = 3 as the schedule length, see Line 16, and returns it together with F = < (es,A, 1), (eA,C , 2), (es,A, 1), (eA,C , 2), (es,A, 3), (es,B, 3) > in Line 17. Table 1 shows the resulting link schedule for the topology in Figure 3. The gateway is responsible for informing nodes the latest schedule. This can be achieved by piggybacking the schedule VOLUME 4, 2016 1575 www.redpel.com +917620593389 www.redpel.com +917620593389
  • 7. H. Wang et al.: Minimizing Data Forwarding Schedule TABLE 1. Link schedule for Figure 3. in downstream packets. Also included is the start time of the schedule in which these slots take effect. Note, if there are no downlink packets, then a dummy packet can be created before the schedule is computed. The schedule generated by Algo-PB will thus include any dummy packets. We note that Algo-PB will be used in conjunction with a protocol that schedules packets in batches. This means any new packets that arrive when a schedule is in effect will not be transmitted in the current schedule; i.e., they will be scheduled in the next batch using a newly derived schedule. Note that the evaluation of such a protocol is out-of-scope because its goal is to determine the optimal batch size that ensures queues are stable, i.e., they do not grow to infinity or ensure packets arrive before their expiration time. It is important to note that at its core, the said protocol needs our algorithm to derive a minimal makespan. We leave the evaluation of the said protocol as a future work. V. FOREST CONSTRUCTION Algo-PB assumes a tree or routing information is available. We now show how this can be constructed for WMNs with multiple gateways. Proposition 2 indicates the data transfer time will decrease if a node chooses to receive packets from a nearby gateway. Proposition 4 and 5 show that it is important to minimize the number of packets as well as hop count to the gateway. That is, the length of the personalized broadcast schedule will decrease if the total number of packets of the tree who has the most packets in the forest is minimized. Further, for a small , say one, gateway node is able to send only one packet every two slots. Thus, the number of packets to be delivered dictates the makespan of the personalized broadcast schedule. However, for a large value, i.e., each node has sufficient antennas to transmit all its packets to its descendants as well as cancel interference caused by neigh- bors, the personalized broadcast time is equal to the number of hops. Recall that the weight of a node v with gateway s is defined as ws v = a × rv + b × dist(v, s), where dist(v, s) is the distance (in number of hops) between node v and the gateway s and rv is the number of packets destined for node v. According to Proposition 3, when is large, the personalized broadcast makespan is determined by the number of levels of the tree. Moreover, when is small, the personalized broadcast makespan is affected by the number of packets buffered at each node. To this end, for a large , a is set to a small value while b needs to be large. For a small , a needs to be large and b is set to a small value. To simplify, we set a = 1 and b = 1 in the following sections. Lastly, recall that given the descendants of gateway s, i.e., Vs, the weight/load of gateway s is defined as Ws = v∈Vs ws v. A. AN ILP We will use the binary decision variable Xs v to indicate whether node v is a descendant of gateway s. Consequently, there are |S| decision variables associated with each node v, i.e., Xs v , where s = 1 . . . |S|. Moreover, as noted before, we assume that each node can only receive packets from one gateway. Thus, each node can only belong to one gateway. Let Ps v be the shortest path from gateway s to node v, and is represented as a set of links {e(s,i), e(i,j), . . . , e(m,v)}, where for each link e(i, j), the endpoint or node i is the parent of node j. Note, we exclude the link from gateway s to its children; e.g., link (s, i), in our ILP formulation, because the gateways are always on. Define the link set Ls = v∈Vs Ps v. Thus, the total load of a gateway s is Ws = v∈V ws vXs v . The ILP for the problem at hand is as follows, MIN MAX{Ws|s ∈ S} (1) Subject to: v∈Vs Xs v = 1, ∀s ∈ S (2) Xs a ≥ Xs b, ∀ea,b ∈ Ls, ∀s ∈ S (3) Xs v ∈ {0, 1}, ∀v ∈ V − S, ∀s ∈ S (4) Constraint (2) ensures each node is connected to only one gateway. Inequality (3) means if a node b is a descendant of gateway s, its parent node a must be a descendant of the same gateway s. Constraint (4) restricts all decision variables to be binary. In the ILP given above, each node v ∈ V − S chooses one of the |S| gateways to receive packets, thus there is |V −S||S| decision variables in total. This means the number of decision variables will increase with the network size. According to Equ. (2), the number of constraints is equal to the number of non-gateway nodes |V − S|. The number of constraints acquired from Equ. (3) is dependent on the ‘shape’ of the network. In the worst case, i.e., each gateway only has one neighbor. Thus, in this case, each gateway s ∈ S, incurs |V − S| − 1 constraints. In total, there are |S|(|V − S| − 1) constraints. According to Equ. (4), there are |V − S||S| additional constraints. So in total, the number of constraints are (2|S| + 1)|V − S| − |S|. Thus, when the network size is large, it is computationally intractable. In the next section, we propose a greedy heuristic algorithm, called Algo-FC, to construct a routing forest. B. ALGO-FC Our heuristic solution is based on the well-known Breadth- First Search (BFS) algorithm. Given a network G and |S| gateways, Algo-FC first creates a tree rooted at a virtual node v where nodes in S are the virtual node’s children. Then Algo-FC creates |S| sub-trees, each rooted at one gate- way s ∈ S by performing a BFS of the tree rooted at v . After removing the virtual node v , we have |S| trees rooted at each gateway. Algo-FC then balances the weight of each gateway starting with the heaviest tree. For the heaviest tree, 1576 VOLUME 4, 2016 www.redpel.com +917620593389 www.redpel.com +917620593389
  • 8. H. Wang et al.: Minimizing Data Forwarding Schedule say Tk, Algo-FC checks nodes level by level, starting from the top, to determine whether a node can be migrated to a different tree. Node migration is required to balance the load between different gateways. Algo-FC migrates a node v and all its descendants from tree Tk to another tree Tm if a) node v has one neighbor that is associated to Tm, and b) the load of gateway m, Wm, plus the weight of node v and all its descendants is less than Wk before migrating nodes. Here Tm is selected from the tree with lowest weight among all trees. Algo-FC migrates node v from Tk to Tm by removing the link between v and its parent on Tk and connects node v to another parent node that belongs to Tm. Note that node v relays packets for all its descendants. This means when node v is migrated to Tm, all its descendants receive packets from Tm. We now describe how our proposed heuristic forest con- struction algorithm, Algo-FC, works in detail with the aid of Algorithm 3. Algo-FC first creates a BFS tree rooted at the virtual node v , where gateway nodes in S are the first level nodes of the BFS tree. After performing BFS and removing the virtual node, we have |S| trees, each rooted at one gateway; see Line 1. Algo-FC then calculates the load of the gateway for each tree by summing up its descendants’ weight; see Line 2 − 4. Algo-FC works in rounds and uses a counter c to record the current tree in which Algo-FC is trying to balance. Initially, c is equal to one, which means Algo-FC starts at the heaviest tree; see Line 5. In each round, Algo-FC picks the c-th heaviest tree, denoted as Tk, and checks whether there is a node on Tk that can be migrated to another tree Tm. Algo-FC uses two variables, namely NF and flag, to indicate whether the current round is finished and whether Algo-FC successfully migrates a node in the current round, respectively; see Line 7 − 8. In each round, Algo-FC checks nodes level-by-level (starting at the root’s children). Algo-FC migrates a node v from Tk to Tm, if after this migration, the Wm is less than the Wk; see Line 9 − 23. Note, in each round, Algo-FC migrates at most one node. If Algo-FC successfully migrates a node in the current round, c is set to 1, otherwise the counter increases by one; see Line 23 − 28. Algo-FC stops when no node can be migrated. To aid our exposition, we now use Figure 4 to provide a concrete example of Algo-FC. Figure 4(a) shows a network with three gateways s1, s2 and s3. Assume each node has rv = 1. The first step is to create a virtual node v and perform BFS; see Line 1. This results in three trees, rooted at s1, s2 and s3 respectively; see Figure 4(b). We use T1, T2 and T3 to represent the tree rooted at s1, s2 and s3 respectively. Algo-FC then calculates the weight of each tree, thus we have W1 = 11, W2 = 8 and W3 = 2; see Line 2 − 4. Initially c is set to one, meaning Algo-FC starts at the heaviest tree, in this example, T1; see Line 5. In the first round, Algo-FC checks whether a node on T1 can be migrated. Starting from the first level, i.e., s1’s children, Algo-FC ignores node A. This is because migrating A means we have W2 = 19, which is greater than W1 = 11 before migration. For the same reason, Algorithm 3 Algo-FC Input : G, S, V, rv for each v ∈ V − S Output: Routing trees Ts for each s ∈ S // Create a BFS tree from G rooted at a virtual node v where nodes in S are the first level nodes 1 Initialization: {T1, T2 . . . T|S|} = BFS(G, S, v ); 2 for s = 1 to |S| do 3 Ws = v∈Ts ws v; 4 end 5 c = 1; 6 while c ≤ |S| − 1 do // Balance the weight between different trees 7 NF = 1; 8 flag = 1; 9 while NF = 1 do 10 NF = 0; 11 k = cth heaviest tree; // Lk denotes the number of levels of the tree rooted at k 12 for i = 1 to Lk do // Uv denotes the descendants of v, Ni the set of nodes at level i, and Tm is another tree that has a descendant as v’s neighbor 13 for each v ∈ Ni do 14 if Wm + wk v + d∈Uv wk d < Wk then // Migrate node u from Tk to Tm 15 Migrate(v, Tk, Tm); 16 Update(Tk, Tm); 17 NF = 1; 18 flag = 0; 19 break; 20 end 21 end 22 end 23 end 24 if flag = 0 then 25 c = 1; 26 else 27 c = c + 1; 28 end 29 end Algo-FC will not migrate node F. In addition, node D and E do not have neighboring nodes associated to either tree T2 or T3, and thus they cannot be migrated; see Line 9 − 23. We see that in this round, Algo-FC did not migrate any node. It thus increases c by one, see Line 24−28, meaning Algo-FC will check nodes on the second heaviest tree rooted VOLUME 4, 2016 1577 www.redpel.com +917620593389 www.redpel.com +917620593389
  • 9. H. Wang et al.: Minimizing Data Forwarding Schedule FIGURE 4. Example topology. (a) Example network. (b) After BFS. (c) Node migration. (d) Balanced forest. at s2 in round two. During round two, Algo-FC first checks s2’s children. Algo-FC does not migrate node B because doing so means we will have W3 = 10, which is larger than W2 before migration. However, if Algo-FC migrates node G to tree T3, we have W3 = 5, which is less than W2 = 8. Thus, Algo-FC migrates node G to tree rooted at s3 and the current round finishes; see Line 9 − 23 and Figure 4(c). As Algo-FC successfully migrated one node in round two, the counter is reset to one; see Line 24−28. In round three, we have c = 1, W1 = 11, W2 = 5 and W3 = 5. Algo-FC checks whether nodes on the heaviest tree T1 can be migrated. During round three, Algo-FC migrates node F to T2. Again as Algo-FC successfully migrates a node in round three, counter is reset to 1. In the following rounds, no more nodes can be migrated, thus the forest construction result of Algo-FC is shown on Figure 4(d). VI. ANALYSIS In this section, we discuss several properties of Algo- PB and Algo-FC. We also analyze their computational complexity. Proposition 6: Te computational complexity of Algo-PB on a tree Ts rooted at s is O(|V − {s}|(log |V − {s}| + 1) + v∈V−s rv). Proof: Referring to Algorithm 2, the time complexity of line 1 is O(|V −{s}| log |V −{s}|). According to lines 3−15, during each iteration, Algo-PB either schedules one packet, see line 9 − 13, or removes a node whose rv = 0, see line 5 − 7. In total, there are v∈Vs rv packets scheduled, which requires v∈Vs rv iterations. In addition, Algo-PB removes |Vs| nodes with rv = 0. This incurs |Vs| iterations. According to line 5−7, removing |Vs| nodes has a complexity of O(|Vs|). We remark that CFLU-Color has a time complex- ity of O(|E|). In line 9 − 13, scheduling v∈Vs rv packets has a complexity of O( v∈Vs rv × |E|). Thus, in total, the computational complexity of Algo-PB is O(|V −{s}|(log |V − {s}| + 1) + v∈V−s rv × |E|). A key computation performed by Algo-FC is balancing trees. This involves a non-negligible number of migrations. We have the following propositions. Proposition 7: The BFS in Step 1 of Algo-FC sets each non-gateway node u to at least one tree Ts, for any gateway s ∈ S. Proof: Step 1 of Algo-FC runs BFS from a virtual gateway v which is the parent of all gateway nodes in S. The BFS will first connect v to all of its one-hop neighbors, i.e., all gateway nodes in S. Since we consider only connected networks, BFS will visit each non-gateway node v and thus each node v must be a descendant of v . In addition, each v must be a descendant of at least one gateway node s ∈ S to be reachable from v , proving the proposition. Proposition 8: For an MTR-WMN that contains |V| nodes and |S| gateways, Algo-FC requires at most 1 × |V|−|S| |S| + 2 × |V|−|S| |S| + 3 × |V|−|S| |S| . . . + (|S| − 1) × |V|−|S| |S| = |S|(|S|−1) 2 × |V|−|S| |S| migrations to get a balanced forest. Proof: To prove the above proposition, we start from the case with |S| = 2 gateways, say gateway 1 and 2. From Proposition 7, in the worst case, BFS sets all |V| − 2 non- gateway nodes to only one tree, say T1, and T2 contains only gateway 2. For this case, Algo-FC needs to migrate |V|−2 2 nodes from T1 to T2 to balance the forest. Further, in the worst case, each migration moves only one node, i.e., migrat- ing a leaf node, and thus it requires |V|−2 2 migrations to get a balanced forest, showing that the proposition is correct is correct for |S| = 2. Next, consider the case with |S| = 3 gateways, say gateway 1, 2 and 3. In the worst case, BFS sets all non-gateway nodes to only one tree, e.g., T1, and Algo-FC needs to migrate 2 × |V|−3 3 nodes from T1 to T2 and T3. We note that migrating |V|−3 3 nodes from T1 to another tree, say T2, requires at most |V|−3 3 migrations. However, in the worst case, Algo-FC may need to migrate up to |V|−3 3 nodes to T2 before migrating them to T3. Thus, migrating the nodes from T1 to T3 may require up to 2 × |V|−3 3 migrations. Therefore, in total, Algo-FC requires |V|−3 3 +2× |V|−3 3 = 3 × |V|−3 3 migrations to get a balanced forest, and thus the proposition is correct for |S| = 3. Finally, consider the general case with |S| gateways, say 1, 2, ...s. In the worst case, all non-gateway nodes connect to one tree, e.g., T1 after the BFS. However, to get a balanced forest, Algo-FC needs to migrate |V|−|S| |S| nodes from T1 to each tree. Algo-FC may need to migrate up to |V|−|S| |S| nodes to tree Ti−1 in the worst case before migrating them to Ti, where 3 ≤ i ≤ |S|. Thus, Algo-FC requires at most 1× |V|−|S| |S| +2× |V|−|S| |S| +3× |V|−|S| |S| +. . .+(|S|−1)× |V|−|S| |S| = |S|(|S|−1) 2 × |V|−|S| |S| node migrations to generate a balanced forest for an MTR-WMN with |V| nodes and |S| gateways. 1578 VOLUME 4, 2016 www.redpel.com +917620593389 www.redpel.com +917620593389
  • 10. H. Wang et al.: Minimizing Data Forwarding Schedule As Proposition 8 bounds the number of migrations carried out by Algo-FC, we thus have the following corollary, Corollary 1: Algo-FC is guaranteed to stop no later than the node migration upper bound. VII. EVALUATION In this section, we evaluate the performance of Algo-PB and Algo-FC in Matlab with the Matgraph [21] toolkit. Our results are an average of 50 simulation runs. For each simulation run, we use a different topology. We plot the confidence interval of 50 simulation runs, where 95% of the results are within the indicated error bar. Next, we describe our evaluation of Algo-PB before focusing on Algo-FC in Section VII-B. A. ALGO-PB We assume all nodes are static and randomly placed on a 100m × 100m square area. If two nodes are placed within the transmission range of each other, which is 25m, they are considered to be neighbors. The gateway node is placed at the center of the square area. We compare the personalized broadcast schedule length generated by Algo-PB with the theoretical upper and lower bound listed in Section III as well as the link scheduler proposed in [3]. To ensure a fair com- parison, we have modified Bermond et al.’s algorithm [3], which we refer to as ScheTree, to include MTR capability, which means in each time slot, a node v is now able to transmit up to packets. We generate the routing tree by performing a BFS at the gateway. We record the schedule length of all algorithms and compute the theoretical upper and lower bound of each topology. 1) NODE DEMAND To study the impact of different node demand, i.e., rv for each node v, we fix the network size to 30 and each node has = 3. We conduct six group of experiments by varying the demand of each node from one to six. Note, we assume all nodes have the same demand in each simulation group, i.e., in the first group, the weight of each node is one. From Figure 5, the difference between Algo-PB and the theoretical lower bound is within 34.5%. Our algorithm FIGURE 5. Schedule length under different node demand. FIGURE 6. Schedule lengths under different node densities. outperforms ScheTree by generating superframe lengths that is up to 33.3% shorter. This is because Algo-PB always preferentially schedules packets to the node farthest from the gateway and does not switch to another node until a node is fully serviced. Thus, our algorithm makes the best use of the link-upgrade capability of nodes to produce shorter schedules. 2) NODE DENSITY We assume each node v has three antennas and has rv = 4. We run 9 groups of experiments by varying the network size from 30 to 70, with a step size of 5. Figure 6 shows the FIGURE 7. Schedule length versus u. VOLUME 4, 2016 1579 www.redpel.com +917620593389 www.redpel.com +917620593389
  • 11. H. Wang et al.: Minimizing Data Forwarding Schedule FIGURE 8. Performance under different network sizes. resulting schedule length. Simulation results show that the schedule length increases with network size. Algo-PB outper- forms ScheTree by producing up to 44.6% shorter schedule. The difference between Algo-PB and the theoretical lower bound is at most 20.9%. 3) NUMBER OF ANTENNAS We fix the network size to 30 nodes and vary the number of antennas. Figure 7(a) shows the schedule length when the weight of each node is three. On the other hand, in Figure 7(b), the weight of each node is randomly chosen from the range [0, 5]. When the number of antennas increases, the generated schedule length decreases. This is because nodes are able to receive/forward more packets in each slot with increasing number of antennas. Compared with ScheTree, Algo-PB generates at most 45.5% shorter schedule lengths when all nodes have a weight of three, and 44.2% shorter schedule lengths when each node has a random weight. The difference between Algo-PB and the theoretical lower bound is at most 26.5%. B. FOREST CONSTRUCTION We now turn our attention to Algo-FC. We assume all nodes are stationary and randomly connected. For each node, the number of requests, i.e., rv, is randomly chosen from the range [0, 5]. There are three sets of evaluation. First, we vary the number of nodes from 10 to 70. We fix the number FIGURE 9. Performance under different node densities. of gateways to four and node degree to four. Second, we conducted experiments with 35 nodes and four gateways. We vary the degree of each node from three to six. Third, we fix the network size to 35, node degree to four and vary the number of gateways from two to five. We compare Algo-FC and ILP with two other solutions, breadth-first searching (BFS) and weight focus rout- ing (WFR). Briefly, BFS and WFR work as follows: • BFS. First we create a virtual node and connect it to all gateways. Then we perform a BFS from the virtual node. Finally, we remove the virtual node. This process results in multiple trees where each node is associated with the nearest gateway. • WFR. It repeatedly picks the node v with the largest rv that is not connected to any tree. It then finds a path p from node v to the nearest gateway s. WFR connects all nodes along path p to gateway s. Note that if a node n on path p is already connected to another tree rooted at gateway k, WFR connects nodes from v to n to gateway k and ignores other nodes. In each experiment, we compute the following metrics: • Maximum gateway load. This is the load of the heaviest gateway. It is calculated by summing the weight of all nodes served by a gateway. • Computation time. This is the time consumed to generate the forest, measured in seconds. Matlabs optimization toolbox is used to solve the ILP. 1580 VOLUME 4, 2016 www.redpel.com +917620593389 www.redpel.com +917620593389
  • 12. H. Wang et al.: Minimizing Data Forwarding Schedule FIGURE 10. Performance under different number of gateways. 1) NETWORK SIZE We vary the network size from 10 to 70 while fixing the number of gateways to four and node degree to four. Results in Figure 8 show that with increasing network size, the load of the heaviest gateway increases and the computation time increases. Algo-FC, outperforms BFS and WFR by at least 60.6% and 62.2%, respectively. This is because BFS only considers the shortest path and WFR only focuses on the heaviest nodes. Also, BFS and WFR do not consider the load of gateways. Compared to the ILP, Algo-FC results in the heaviest gateway having at most 8.6% higher load than the ILP. In terms of computation time, BFS has the best performance. As shown in Figure 8(b), when the network size increases, the computation time for ILP increases expo- nentially as expected. When the network size is 70, it takes 570.1 seconds on average for the ILP solver to get the optimal solution. However, Algo-FC only requires 1.34 seconds to get the solution when the network size is 70. Algo-FC bal- ances the load between gateways, unlike BFS and WFR, and thus the computation time for Algo-FC is higher than BFS. 2) NODE DENSITY Increasing node density results in a higher node degree. Thus, in this group of experiments, we fix the network size to 35 and use four gateways. Figure 9(a) shows that higher node densities tend to decrease the load of the heaviest gateway. Compared to ILP, Algo-FC results in the heaviest gateway having at most 9.1% higher load. Algo-FC outperforms BFS and WFR by at least 43.1% and 43.7%, respectively as BFS and WFR do not seek a balanced forest. In terms of compu- tation time, Figure 9(b) shows that ILP requires the longest time as expected. When each node has six neighbors, ILP takes 58.8 seconds. The computation time increases expo- nentially with node degree. This is because a higher node degree leads to the ILP having an exponential increase in the number of decision variables. However, Algo-FC only needs 0.36 second under the same condition. 3) NUMBER OF GATEWAYS Finally, we test the performance of the four approaches under different number of gateways. Figure 10(a) indicates that the load of the heaviest gateway decreases with increasing number of gateways. This is because adding more gateway nodes results in more sources that are transmitting packets. Algo-FC generates at most 6.7% higher load at the heaviest gateway as compared to ILP and outperforms BFS and WFR by 60.1% and 44.4% respectively. From Figure 10(b), on average, Algo-FC runs in 0.48 seconds when there are five gateways versus 14.6 seconds for ILP. VIII. CONCLUSION In this paper, we have addressed the personalized broad- cast problem and the forest construction problem. We derive bounds for the personalized broadcast schedule in tree-based MTR-WMNs and propose a novel link-scheduling algorithm called Algo-PB to generate a personalized broadcast sched- ule with minimal makespan. We also formulate the forest construction problem using an ILP and propose a heuris- tic algorithm called Algo-FC to generate the routing forest. Through comprehensive experiments we show that Algo-PB outperforms current algorithms and is within 34.5% of the theoretical lower bound. Also, compared to the optimal solu- tion generated by the ILP, the schedule makespan produced by Algo-FC is at most 9.1% longer. As a future work, we plan to investigate the personalized broadcast problem together with the data collection problem [1] in full-duplex wireless networks. REFERENCES [1] V. Bonifaci, P. Korteweg, A. Marchetti-Spaccamela, and L. Stougie, ‘‘An approximation algorithm for the wireless gathering problem,’’ Oper. Res. Lett., vol. 36, no. 5, pp. 605–608, Sep. 2008. [2] D. Zhao, K.-W. Chin, and R. Raad, ‘‘Approximation algorithms for broad- casting in duty cycled wireless sensor networks,’’ Wireless Netw., vol. 20, no. 8, pp. 2219–2236, Nov. 2014. [3] J.-C. Bermond, L. Gargano, S. Perénnes, A. A. Rescigno, and U. Vaccaro, ‘‘Optimal time data gathering in wireless networks with multidirectional antennas,’’ Theor. Comput. Sci., vol. 509, pp. 122–139, Oct. 2013. [4] C. Florens, M. Franceschetti, and R. J. McEliece, ‘‘Lower bounds on data collection time in sensory networks,’’ IEEE J. Sel. Areas Commun., vol. 22, no. 6, pp. 1110–1120, Aug. 2004. [5] P. Soldati, H. Zhang, and M. Johansson, ‘‘Deadline-constrained transmis- sion scheduling and data evacuation in WirelessHART networks,’’ in Proc. Eur. Control Conf. (ECC), Budapest, Hungary, Aug. 2009, pp. 4320–4325. [6] Z. Shen, H. Jiang, and Z. Yan, ‘‘Fast data collection in linear duty-cycled wireless sensor networks,’’ IEEE Trans. Veh. Technol., vol. 63, no. 4, pp. 1951–1957, May 2014. VOLUME 4, 2016 1581 www.redpel.com +917620593389 www.redpel.com +917620593389
  • 13. H. Wang et al.: Minimizing Data Forwarding Schedule [7] O. D. Incel, A. Ghosh, B. Krishnamachari, and K. Chintalapudi, ‘‘Fast data collection in tree-based wireless sensor networks,’’ IEEE Trans. Mobile Comput., vol. 11, no. 1, pp. 86–99, Jan. 2012. [8] V. Mhatre, H. Lundgren, F. Baccelli, and C. Diot, ‘‘Joint MAC-aware routing and load balancing in mesh networks,’’ in Proc. ACM CoNEXT, New York, NY, USA, Dec. 2007, Art. no. 19. [9] S. Maurina, R. Riggio, T. Rasheed, and F. Granelli, ‘‘On tree-based routing in multi-gateway association based wireless mesh networks,’’ in Proc. IEEE Int. Symp. Pers., Indoor Mobile Radio Commun., Tokyo, Japan, Sep. 2009, pp. 1542–1546. [10] Y.-F. Wen and F. Y.-S. Lin, ‘‘The top load balanced forest routing in mesh networks,’’ in Proc. IEEE Consum. Commun. Netw. Conf., Las Vegas, NV, USA, Jan. 2006, pp. 468–472. [11] D. Nandiraju, L. Santhanam, N. Nandiraju, and D. P. Agrawal, ‘‘Achieving load balancing in wireless mesh networks through multiple gateways,’’ in Proc. IEEE Int. Conf. Mobile Adhoc Sensor Syst. (MASS), Vancouver, BC, Canada, Oct. 2006, pp. 807–812. [12] Y. Bejerano, S.-J. Han, and A. Kumar, ‘‘Efficient load-balancing rout- ing for wireless mesh networks,’’ Comput. Netw., vol. 51, no. 10, pp. 2450–2466, Jul. 2007. [13] Y. Dinitz, N. Garg, and M. X. Goemans, ‘‘On the single-source unsplittable flow problem,’’ Combinatorica, vol. 19, no. 1, pp. 17–41, Jan. 1999. [14] H. Wang, K.-W. Chin, R. Raad, and S. Soh, ‘‘A distributed maximal link scheduler for multi Tx/Rx wireless mesh networks,’’ IEEE Trans. Wireless Commun., vol. 14, no. 1, pp. 520–531, Jan. 2015. [15] Q. H. Spencer, C. B. Peel, A. L. Swindlehurst, and M. Haardt, ‘‘An intro- duction to the multi-user MIMO downlink,’’ IEEE Commun. Mag., vol. 42, no. 10, pp. 60–67, Oct. 2004. [16] X. Ge, H. Cheng, M. Guizani, and T. Han, ‘‘5G wireless backhaul net- works: Challenges and research advances,’’ IEEE Netw., vol. 28, no. 6, pp. 6–11, Nov./Dec. 2014. [17] H. Wang, K.-W. Chin, and S. Soh, ‘‘A novel link scheduler for per- sonalized broadcast in multi Tx/Rx wireless mesh networks,’’ in Proc. IEEE Int. Conf. Commun. Workshop (ICCW), London, U.K., Jun. 2015, pp. 532–537. [18] S. Chu and X. Wang, ‘‘Opportunistic and cooperative spatial multiplexing in MIMO ad hoc networks,’’ IEEE/ACM Trans. Netw., vol. 18, no. 5, pp. 1610–1623, Oct. 2010. [19] H. Zeng et al., ‘‘A scheduling algorithm for MIMO DoF allocation in multi- hop networks,’’ IEEE Trans. Mobile Comput., vol. 15, no. 2, pp. 264–277, Feb. 2016. [20] L. Gargano and A. A. Rescigno, ‘‘Optimally fast data gathering in sensor networks,’’ in Mathematical Foundations of Computer Science. Berlin, Germany: Springer, 2006, pp. 399–411. [21] E. R. Scheinerman. (2007). Matgraph: A MATLAB Toolbox for Graph Theory. [Online]. Available: http://www.mathworks.com/matlabcentral/ fileexchange/19218-matgraph HE WANG received the B.E. (Hons.) degree in telecommunications from the University of Wollongong, Australia, and Zhengzhou University, China. He is currently pursu- ing the Ph.D. degree with the University of Wollongong. His research interest includes media access protocol for wireless mesh networks and load balance routing in wireless mesh networks. KWAN-WU CHIN is an Associate Professor with the University of Wollongong. He received the B.Sc. and Ph.D. (Hons.) degrees from the Curtin University of Technology, Australia. He is the vice-chancellor’s commendation. After obtaining his Ph.D., he joined the Motorola Research Lab- oratory as a Senior Research Engineer, where he developed zero configuration home networking protocols and designed new medium access con- trol protocols for wireless sensor networks and next generation bandwidth managers. In addition, he holds nine U.S. patents and won a major grant from DARPA. In 2004, he joined the University of Wollongong as a Senior Lecturer before his promotion to Associate Professor in 2011. He is also the Head of Postgraduate Studies with the School of Electrical, Computer and Telecommunications Engineering, and the Director of the Wireless Technologies Laboratory. His current research areas include medium access control protocols for wireless networks, resource alloca- tion algorithms/policies for communications networks, routing protocols for delay tolerant networks, and mathematical programming. He holds four U.S. patents, and has authored more than 100 conference and journal articles. SIETENG SOH (M’98) received the B.S. degree from the University of Wisconsin–Madison, and the M.S. and Ph.D. degrees from Louisiana State University, Baton Rouge, all in electrical engineer- ing. From 1993 to 2000, he was a Faculty Member with Tarumanagara University, Indonesia, where he was the Director of the Research Institute from 1998 to 2000. He is currently a Senior Lecturer with the Department of Computing, Curtin Uni- versity of Technology, Perth, WA. His research interests include network reliability, and parallel and distributed processing. 1582 VOLUME 4, 2016 www.redpel.com +917620593389 www.redpel.com +917620593389