You are on page 1of 5

A Congestion-Aware Multipath Routing with Cross

Layer Design for Wireless Mesh Networks


Wenming Song
South China University of Technology
Guangdong Nortel Tel. Eq. Co. Ltd., China
Email: wmsong5261@gmail.com
Shengming Jiang (Senior member, IEEE)
School of Elec. & Inf. Engineering
South China University of Technology
Email: shmjiang@scut.edu.cn
Gang Wei (Member, IEEE)
School of Elec. & Inf. Engineering
South China University of Technology
Email: eegwei@scut.edu.cn
AbstractMany existing routing protocols for wireless mesh
networks (WMNs) are based on minimal hop counts and cannot
t WMNs because they did not take into account congestions
in networks. Although other multipath routing protocols use
node- or link-disjoint routes, they are still based on minimal
hop counts and may even cause extra congestion into networks.
This is because a node-disjoint path may contain link-joined
segments, which could be congested as many ows use them
to forward packets. This paper proposes two congestion-aware
routing metrics to enable routing protocols to consider congestion
issues by exploring information available at the data link layer.
One metric is called buffer occupancy ratio which considers the
congestion status of nodes. The other metric is called successful
frame sending rate which considers the congestion status of
links. These two metrics are used to design a multipath routing
protocol to nd multiple less congested routes to improve network
throughput. The simulation study has shown that the proposed
routing scheme achieves signicant throughput improvement
with much more reliable packet delivery.
Index TermsWireless mesh networks (WMNs), Congestion-
aware multipath routing and Cross layer design.
I. INTRODUCTION
With an increasing users expectation on connectivity and
quality of service (QoS) guarantees anywhere and anytime,
new wireless technologies are developed to enable wireless
networks to have versatility, easy deployment and low costs.
Wireless mesh networks (WMNs) provide a promising way
in this direction with extended network coverage by using
mixed wireless technologies through multi-hop communica-
tions. Usually a WMN consists of mesh routers and mesh
clients, in which mesh routers are static to form the backbone
of WMNs [1]. A WMN also supports ad hoc networking for
end nodes with self-forming and self-healing a capability, easy
deployment and low cost. The backbone performs dedicated
routing and conguration, which signicantly decreases the
operation load of mesh clients and other end nodes [2].
Routing in WMNs extends network connectivity to mesh
clients via mesh routers which include access points and net-
work gateways. Unlike in ad hoc networks, routing in WMNs
is primarily performed by a xed backbone consisting of non-
energy constrained nodes. Therefore, WMNs routing protocol
should be more concerned on resources management and QoS
guarantees. Traditional ad hoc network routing schemes such
This research was supported partially by The National Hi-Tech Research
and Development Program of China (863) under Grant No. 2007AA01Z210.
as DSDV [3], DSR [4] and AODV [5] could be still used in
WMNs. However, they did not take into account the above
characteristic of WMNs, and most of them are based on
minimum hop count. This kind of routing schemes may work
well in low trafc loads because of few congestion in this case.
However, with heavy trafc loads, if every node tries to nd
a route with a minimal hop count, then many routes will pass
through the same node or the same area. This could cause
the related nodes congested, resulting in degraded network
performance especially in the backbone.
One way to resolve the above problem is to nd routes
with a maximal node disjoint degree, which is often used
in the multi-path routing such as Split Multipath Routing
(SMR) [6]. SMR builds two paths with a Route Request Packet
(RREQ). One path is the shortest delay route taken by the rst
RREQ. When receiving the rst RREQ, the destination records
the entire path and sends a Route Reply Packet (RREP) via
this route. Then the destination waits certain time duration in
order to receive more RREQs. At the end of this duration,
the destination chooses second maximal-node-disjoint path.
However, it does not consider the congestion status of the
network and may also cause some areas congested.
Similar to other networks, routing metrics are also critical to
the performance of WMNs. Hop count is the most commonly
used routing metric in existing routing protocols such as
Dynamic Source Routing (DSR) [4] and Ad hoc On Demand
Distance Vector (AODV) [5]. Since shortest-path metrics such
as the minimum hop count do not take into account variable
congestion status of links, some new metrics aware of link
quality have been proposed in the literature such as the
success rate of each link proposed in [7]. In [8], a cross
1ayer QoS routing algorithm is proposed and called QoS-
aware Routing Algorithm with Congestion Control and Load
Balancing (QRCCLB) with adaptation to trafc distribution
under dynamic topologies. However, it still does not consider
congestion status at nodes. In [9] and [10], Expected Transmis-
sion Count (ETX) is proposed to compute the expected number
of MAC layer transmissions that is needed to successfully
deliver a packet through a wireless link. To compute ETX, a
node must periodically broadcast probe packets, which wastes
wireless resources. Draves et al. propose the following three
metrics in [9]: Expected Transmission Time (ETT), ETX and
Weighted Cumulative ETT (WCETT). ETT improves ETX by
Proceedings of the 15th Asia-Pacific Conference on Communications (APCC 2009)-157

978-1-4244-4785-5/09/$25.00 2009 IEEE


considering differences in link transmission rates and WCETT
is based on ETT to reduce intra-ow interferences. This
scheme tries to provide the routing layer with an overview
of the network to allow less congested routes to be selected to
improve the overall performance. However, ETT may choose
a path that only uses one channel because the protocol will
choose the path with the least ETT, which will cause many
ows to choose the same link. Similarly, WCETT may route
ows to congested areas since it will also make different paths
to choose the same link to forward packets.
Having a cross layer approach for routing should be helpful
in nding routes that are more reliable and efcient for optimal
performance since more information on links and networks
can be exploited. [11] proposed a cross layer metric called
packet success rate, which considers the quality of physical
links. However, this metric may be highly variable because of
the rapid changes in channel conditions, which could make
the network unstable. In [12], a cross layer routing metric
called expected transmission efciency (ETE) is proposed
while Expected Throughput (ETP) is proposed in [13]. ETE
takes into account the MAC layer link quality in terms of
the number of packet retransmissions on wireless links and
the contention level along the paths. ETP incorporates the
bandwidth sharing mechanism of the IEEE 802.11 DCF to
determine the expected throughput of a wireless link. Both
metrics are obtained from the MAC layer but only consider
the link quality. Furthermore, [14] proposes a cross generation
heterogeneous recombination cataclysmic mutation generic al-
gorithm for QoS-based multicast routing. However, congestion
issues have not be addressed adequately.
This paper focuses on how to take into account conges-
tion status in routing metrics by exploring some information
available at the MAC layer. Basically, we use two dynamic
metrics which consider the congestion status at nodes and over
links to select less congested routes with good link quality. To
obtain these metrics, some cross layer information is used as
discussed later. Furthermore, a DSR based routing protocol for
multipath routing using these metrics is also discussed. The
main objective of this protocol is to use less congested route
to reduce congestion and improve throughput.
The remainder of this paper is organized as follows. Section
II discusses the two proposed routing metrics and how to use
them to nd routes. Section III investigates the performance of
the proposed routing protocol through simulation study with
NS2 [15]. Section IV concludes the paper.
II. A CONGESTION-AWARE MULTIPATH ROUTING
Here, we rst discuss the proposed congestion-aware rout-
ing metrics and then how to use them to nd better routes.
A. Congestion-aware routing metrics
The proposed metrics here try to take into account the con-
gestion status of a network. As mentioned earlier, the metric
most commonly used by existing ad hoc routing protocols is
the minimum hop count. This approach implicitly assumes
that a link either works well or does not work at all since
it uses ACK from the receiver for a sent packet to judge the
availability of the receiver. However, in wireless environments,
some links may temporarily suffer from intermediate loss. In
a dense network where there may be many routes with the
same minimum length but widely varying qualities, the routing
choice made according to the minimum hop count metric is
unlikely to select the best path in terms of other metrics such
as packet loss rates and bandwidth availability. Furthermore,
multiple routes selected according to the minimum hop count
metric may pass the same node and/or the same area. This will
cause some nodes or areas to be more congested than others,
resulting in degraded network performance. In this case, less
congested routes with more hops will have better performance
since they have more resources available with less contention.
Obviously, if many trafc ows pass the same node, this
node will run out its resource (e.g., CPU and buffer) quickly
so that its ability of packet forwarding will be decreased,
resulting in packet dropping. Therefore, we dene a quantity
Buffer Occupancy Ratio (BOR) to indicate the utilization
of the resource available in a node and its ability of packet
forwarding packet. Furthermore, the congestion status of links
is also considered to identify so-called hot areas, which are
very common in wireless networks. In a hot area, there
are more contentions, collisions and higher packet loss. So
we dene another quantity Successful Frame Sending Rate
(SFSR) to indicate the contention of an area and the cost for
sending packets through this area.
The cause for a congestion to happen at a node is its limited
resource with respect to incoming trafc. The typical resource
for routing is buffer, which is used to cache data packets when
packets cannot be sent out immediately upon their arrivals. The
more packets the buffer caches, the more a node is congested.
Here, BOR is dened to reect the congestion status at a node:
BOR = Occupied Buffer Size / Buffer Size, and SFSR to
estimate both channel condition and link congestion: SFSR
= Number of received ACKs / Number of sent frames.
The calculation of the SFSR metric is based on the retrans-
mission mechanism widely employed in wireless networks
such as the IEEE 802.11. That is, a retransmission occurs if
an ACK or a CTS frame is not received in the response to
a transmitted data or an RTS frame. If a CTS frame is not
received, it means an RTS frame should be retransmit. After
retransmitting an RTS frame for certain time, a node can learn
whether the area in which it is located is congested. If an ACK
is not received, a node will retransmit the failed frame. No
matter which of the above cases happens, it means the related
link either busy or congested. Furthermore, channel contention
is a pre-process for sending each data frame. Therefore, the
number of received ACKs for each successful transmission
at the MAC layer represents the link congestion status and
contention degree in the related area. Therefore, we use it as
a metric to choose the best quality links.
Note that the information used to calculate both metrics
is available at or can be collected by relevant nodes without
periodical broadcast. In the implementation, every node should
maintain a timer to update statistic data to avoid using extra
A Congestion-Aware Multipath Routing with Cross Layer Design for Wireless Mesh Networks

wireless network resources for information updating.


B. The Proposed Routing Protocol
[Source node having no route to the destination]:
1. Initiate an RREQ packet by setting
-Maximum acceptable delay;
-Maximum SFSR;
2. Send this RREQ packet.
[Intermediate node]:
1. Drop RREQ if one of following conditions holds
-Its BOR is larger than the threshold;
-Lifetime of this RREQ packet expires;
-Its sequence number is less than the previous one;
-The processed RREQ is already in this path;
-The path hits the predened maximum length.
2. If its SFSR is less than the recorded
-Replace the SFSR in this RREQ with its SFSR;
-Forward this RREQ packet.
[Destination node]:
If it is the rst RREQ received, then
-Add route recorded in this RREQ;
-Record SFSR in this RREQ;
-Initiate and send an RREP packet;
Else if its SFSR is less than that of the rst received one
-Drop this RREQ packet;
Else
-Add route recorded in this RREQ;
-Initiate and send an RREP packet.
Fig. 1. Nodal behaviors of the proposed routing algorithm
This section discusses how to nd less congested routes with
the proposed routing metrics by modifying DSR with these
cross-layer designed metrics (or simply MDSR-C henceforth)
for multipath routing. As illustrated in Fig. 1, when a node
wants to send data to another node, it should check its route
table to learn whether it has a route available for this the
destination. If there is no route for the specied destination, it
initiates a route discovery procedure by broadcasting a route
request (RREQ) packet, which is similar to that of DSR but
three elds are added here. The rst one is a time stamp to
record the sending time of a packet. The second one is used to
record the minimum SFSR of the route along which the RREQ
packet travels. The third one records the maximum acceptable
delay, which is set by the source node along with the sending
time stamp when an RREQ packet is created.
When an intermediate node receives an RREQ packet,
it needs to decide whether this RREQ packet should be
forwarded. Firstly, it checks the value of BOR. If BOR is larger
than the threshold, it means this node is already congested or
becoming congested. In this case, the node drops this RREQ
packet. Secondly, it calculates the time that this RREQ packet
has been already survived and compares this time with the
maximum acceptable delay. If it is less than the maximum
acceptable delay, forward it; or drop it otherwise. Once the
intermediate node decides to forward this RREQ packet, it
compares its SFSR with the one recorded in RREQ. If the
recorded one is larger, replace it with this SFSR.
When a destination node receives the rst RREQ packet, it
checks whether this packet is valid. If yes, the reverse route
recorded in this RREQ packet is added into its routing table,
and the SFSR of this route is also recorded. Then, a route reply
(RREP) packet is initiated and sent to the source node with
the reverse route. For multipath routing, more RREQ packets
may be received. In this case, their SFSRs are compared with
the recorded one. If the recorded one is larger, this RREQ
packet is dropped; otherwise, its reverse route is added into the
routing table and an RREP packet is sent to the source node.
Each intermediate node drops the overdue RREQ packets, and
the destination dose not need to set a timer to control this
procedure. Once the destination node initiates a reply to this
RREQ packet, it sends the RREP packet immediately.
When a source node receives an RREP packet, it adds the
route in RREP into its routing table, and checks if there are
packets to be sent with this route and sends them immediately
if any. If the source node has multiple routes for the same
destination, it randomly selects a route for each packet.
A link of a route can be disconnected because of congestion
and/or packet collisions. With the proposed routing protocol,
when a node fails to deliver a packet to the next hop of a
route, it sends a route error (RERR) packet to the source
node. When the source node receives an RERR packet, it
can be handled in two ways as discussed below. One way
is no matter whether the source node has another route for
the destination, it just initiates the route recovery process. The
other way is that it initiates the route recovery process only
when all routes of the session are broken. Since the route
discovery procedure needs to broadcast RREQ packets, which
will waste wireless resources and may even cause congestions,
we adopt the second method here.
III. SIMULATION STUDIES
We conducted simulation studies for a static grid backbone
of WMNs (e.g., a 55 grid) using NS2. Since energy con-
sumption and hardware problems can be ignored, the link will
not break. We just consider broken links caused by congestion.
Trafc is generated with NS2s CBRGEN.
As discussed in Section II-A, the proposed routing scheme
(i.e., MDSR-C) takes into account the congestion of both node
and link. Thus, the destination could choose routes with less
congested nodes and links for high successful sending rates,
and the overall network throughput is improved. Fig. 2 shows
throughput against the number of nodes in the network, per-
ow sending rates and packet sizes. As we can see, MDSR-
C performs better than DSR since it uses less congested
routes. As illustrated in Fig. 2(a), the more nodes are present
in the network, the better MDSR-C outperforms DSR. This
is because in a large network, it is easy to nd multiply
paths to balance trafc loads, resulting in improved network
throughput. For different CBR sending rates, Fig. 2(b) shows
that MDSR-C is also better than DSR. This is because a node
has limited resource and cannot handle packets in time when
Proceedings of the 15th Asia-Pacific Conference on Communications (APCC 2009)-157

25 36 49 64 81 100
120
140
160
180
200
220
240
260
280
Node number
A
v
e
r
a
g
e
e
f
f
e
c
t
iv
e
t
h
r
o
u
g
h
p
u
t
(
k
b
it
\s
)
(a)
32 64 128 256
80
90
100
110
120
130
140
150
160
170
Sending rate (kbit\s)
(b)


MDSRC
DSR
1 2 4 8 15.6
40
60
80
100
120
140
160
180
Packet size (64bytes)
(c)
Fig. 2. Network throughput with MDSR-C and DSR
25 36 49 64 81 100
0.1
0.15
0.2
0.25
0.3
0.35
Node number
P
a
c
k
e
t
lo
s
s
r
a
t
io
(a)
32 64 128 256
0
0.1
0.2
0.3
0.4
0.5
Sending rate (kbit\s)
(b)
1 2 4 8 15.6
0
0.2
0.4
0.6
0.8
1
1.2
1.4
Packet size (64bytes)
(c)


MDSRC
DSR
Fig. 3. Packet loss rate with MDSR-C and DSR
the trafc rate is high. Then the node will be congested and
packet forwarding capability is decreased. However, DSR does
not take into account the above situation in selecting routes but
MDSR-C does. As illustrated in Fig. 2(c), MDSR-C performs
better than DSR when the packet size becomes larger. This
is because, for a constant trafc rate, the less the packet size,
the more packets will be generated. Too many packets in the
network will cause heavy channel contention, which will cause
more collisions in some areas for broadcast packets.
In a static wireless backbone, collision and congestion are
the main causes of packet loss. The proposed routing scheme
based on the congestion of both node and link could avoid
congested nodes and congested links with less congested
routes being selected to deliver packets. Therefore, MDSR-C
reduces the packet loss probability caused by buffer overow
and link congestion as illustrated in Fig. 3. Particularly, against
the number of nodes in the network as shown in Fig. 3(a),
MDSR-C has lower packet loss rate than DSR, not only
because MDSR-C could avoid congested nodes and links but
also due to the use of multiply paths, both of which could
make the route more reliable. As shown in Fig. 3(b), MDSR-
C also outperforms DSR when the sending rate is increased.
In this case, more packets per seconds need to be sent, which
increases contention accordingly. For DSR, if a node of the
route is congested, all its upstream nodes could be congested
consequently too, which most likely causes the buffer to
overow. Furthermore, too many packets passing the same
area would cause heavy contention and collision therein. The
proposed routing scheme uses less congested nodes to reduce
buffer overow and less congested links to avoid contention
and collision. Similarly, as illustrated in Fig. 3(c), MDSR-C
also performs better than DSR against packet sizes.
Now we discuss packet delays versus the mean number
of hops of paths. As we know, the longer a packet travels,
the larger the delay is. MDSR-C is not based on minimum
hop counts; instead it tries to use routes with better quality,
which however may be longer. That is, MDSR-C may increase
the mean number of hops and packet delays. As illustrated in
Figs. 4-5, the delay is also larger for a larger mean number
of hops. In Fig. 4(b) and Fig. 5(b), when the sending rate is
below 128 kbit/s, DSR uses a larger mean number of hops
to send packets, and the delay is also larger than MDSR-C.
This is because the proposed routing protocol considers the
congestion of both nodes and links, making the route is more
reliable than DSR. Also, this could reduce route rediscovery
operations. But in DSR, it allows the intermediate node to
reply the RREQ packet, making the delay and mean number
of hops unstable since the node just knows a part of the
path while the unknown part is unpredictable. The results
are similar for sending rates larger than 128 kbit/s. Besides
using longer hop count but less congested routes in MDSR-
C, another reason leading to this result is that MDSR-C does
A Congestion-Aware Multipath Routing with Cross Layer Design for Wireless Mesh Networks

25 36 49 64 81 100
0.4
0.5
0.6
0.7
0.8
0.9
1
Node number
A
v
e
r
a
g
e
d
e
la
y
(
s
)
(a)
32 64 128 256
0
0.2
0.4
0.6
0.8
1
1.2
1.4
1.6
Sending rate (kbit\s)
(b)


MDSRC
DSR
1 2 4 8 15.6
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
1.1
Packet size (64bytes)
(c)
Fig. 4. Packet delay with MDSR-C and DSR
25 36 49 64 81 100
2
2.5
3
3.5
4
4.5
5
5.5
6
6.5
7
7.5
Node number
M
e
a
n
n
u
m
b
e
r
o
f
h
o
p
s
(a)
32 64 128 256
5
5.5
6
6.5
7
7.5
8
Sending rate (kbit\s)
(b)


MDSRC
DSR
1 2 4 8 15.6
5
5.5
6
6.5
7
7.5
8
8.5
9
Packet size (64bytes)
(c)
Fig. 5. Mean path length in the number of hops with MDSR-C and DSR
not allow an intermediate node to initiate an route discovery
procedure to save broken links. This could increase the delay
and mean number of hops. As illustrated in Fig. 4(c) and Fig.
5(c), MDSR-C has similar results.
IV. CONCLUSION
In this paper, we propose two congestion-aware routing met-
rics, BOR and SFSR, to enable routing protocols to consider
congestion issues. Then we use these two metrics to modify
DSR to nd multiple less congested routes to improve the
throughput of networks. The simulation study has shown that
the proposed routing scheme achieves signicant throughput
enhancement with much more reliable packet delivery. There
are some issues still open. In our scheme, once a route is
selected, it will not be changed unless it is broken. This may
decrease the performance of this route if some nodes become
congested. Furthermore since multipath routing is not suit for
TCP applications, we do not add TCP trafc in our simulation.
Therefore, our future work is to make the routing protocol to
automatically adjust packet delivery strategy according to the
congestion information on a route and support TCP trafc.
REFERENCES
[1] I.F. Akyildiz, X.D. Wang and W. Wang, Wireless mesh networks: a
survey, Computer Networks, vol. 47, Mar. 2005, pp. 445-487.
[2] I.F. Akyildiz and X.D. Wang, A Survey on Wireless Mesh Networks,
IEEE Radio Communications Magazine, vol. 43, Sept. 2005, pp. 23-30.
[3] C. Perkins and P. Bhagwat, Highly Dynamic Destination Dequenced
Distance-vector Routing (DSDV) for Mobile Computers, ACM SIG-
COMM, 1994.
[4] D.B. Johnson and D.A. Maltz, Dynamic Source Routing in Ad Hoc
Wireless Networks, Mobile Computing, 1996, vol. 353.
[5] C. Perkins, Ad-hoc on-demand distance vector routing, MILCOM
panel on Ad Hoc Networks, 1996.
[6] S-J. Lee and M. Gerla, Split multipath routing with maximally disjoint
paths in ad hoc networks, in Proc. of International Computer Congress
(ICC), Hong Kong, China, Dec. 2001.
[7] G. Karbaschi and A. Fladenmuller, A link-quality and congestion-aware
cross layer metric for multi-hop wireless routing, in Proc. IEEE Int.
Conf. Mobile Adhoc and Sensor Systems, Washington, USA, Nov. 2005.
[8] W. Song and X.W. Fang, Routing with Congestion Control and Load
Balancing in Wireless Mesh Networks, in Proc. IEEE Int. Conf. ITS
Telecom., Chengdu, China, Jun. 2006.
[9] R. Draves, J. Padhye and B. Zill, Routing in multi-radio, multi-hop
wireless mesh networks, in Proc. Annual Int. Conf. Mobile Computing
and Networking, Philadelphia, USA, Sept. 2004.
[10] D.S.J. De Couto, D. Aguayo, J. Bicket and R. Morris, A high-
throughput path metric for multi-hop wireless routing, Wireless Net-
works, vol. 11, Jul. 2005.
[11] L. Iannone, R. Khalili, K. Salamatian and S. Fdida, Cross-layer routing
in wireless mesh networks, in Proc. Int. Sym. Wireless Com. Systems,
Mauritius, Sept. 2004.
[12] L.Y. Jiang and G.Z. Feng, A MAC Aware Cross-Layer Routing
Approach for Wireless Mesh Network, in Proc. WiCOM, Wuhan, China,
Sept. 2006.
[13] V.P. Mhatre, H. Lundgren and C. Diot, MAC-aware routing in wireless
mesh networks, in Proc. of WONS 07, Obergurgl, Austria, Jan. 2007.
[14] Z.W. Ke, L.Y. Li, Q. Sun and N.S. Chen, A QoS Multicast Routing
Algorithm for Wireless Mesh Networks, in Proc. SNPD, Qingdao,
China, Jul. 2007.
[15] The Network Simulator NS-2, http://www.isi.edu/nsnam /ns/.
Proceedings of the 15th Asia-Pacific Conference on Communications (APCC 2009)-157

You might also like