Vous êtes sur la page 1sur 5

2009 International Conference on Communications and Mobile Computing

Link Probability Based Opportunistic Routing Metric in Wireless Network

Yanhua Li, Yuan-an Liu ∗, Pengkui Luo†

Abstract the nodes in the list to do the forwarding. And the nodes in
forwarder list are prioritized with some metric. Each node
Opportunistic routing is a new design trend of wireless only forwards the packets which haven’t been received by
network routing protocol. It takes good advantages of the any high priority node. This would efficiently reduce the
broadcast nature of wireless network. The source can use transmissions of duplicate packets. ETX is a routing met-
multiple potential paths to deliver the packets to the desti- ric to choose the candidate set. ETX captures the minimum
nation. The routing metric used for selecting the forwarder number of total transmissions to send a packet from a cer-
lists is very important for designing the opportunistic rout- tain node to the destination. ExOR [3, 1] uses the ETX to
ing scheme. In this paper, we propose a novel routing metric choose a candidate forwarder set. It can provide better per-
STR (successful transmission rate) to choose the forwarder formances over traditional routing protocols shown in [7].
list, which is based on total successful transmission rate. But there are still some problems in ExOR. After a transmis-
It considers multi-links contribution, instead of one “best” sion, all the nodes in the candidate set have to wait for the
link information used in ETX. We also introduce the fair op- forwarding of the nodes with higher priority in order. It is
portunistic routing with linear coding (FORLC) scheme us- not an efficient way to do the spatial reuse. Moreover mul-
ing our STR metric. The extensive simulation results show ticast is not implemented. MORE (MAC-independent Op-
that the opportunistic routing with our STR metrics can al- portunistic Routing Protocol) randomly mixes packets be-
ways outperform ETX based ExOR scheme. The maximum fore forwarding them. This randomness ensures the routers
benefit of the throughput using the STR based FORLC can that overhear the same transmission will not forward the
be 30% more than the ETX based MORE. It also has at most same packets. In this way, MORE doesn’t need special
10 times throughputs than traditional routing protocol. scheduler to coordinate routers and can run directly on top
of 802.11. In other words, MORE introduces network cod-
Keywords: Opportunistic routing, routing metric, wire- ing to Opportunistic Routing Protocol. It can also support
less routing. both unicast and multicast. In Chachulski’s paper [4], ETX
is used as a routing metric to select the forwarder list. Us-
1. Introduction ing ETX in MORE is not suitable because MORE is a fair
scheme, unlike ExOR which is an unfair scheme to use the
nodes based on their priorities. It does not need ETX to se-
The traditional routing protocols we used, such as
lect candidate nodes with priorities, and treat them based on
AODV, DSR and etc., are all based on single “best” path
the different priorities. MORE does not find a good way to
to deliver packets. This would easily cause a lot of retrans-
the process of forwarding in both unicast and multicast ei-
missions and high frequent route rediscovery. Multi-path
ther. Moreover, it does not introduce error control and rate
routing protocol [5, 6] is an improvement to single path
control schemes. ETX is not an optimal metric to choose
routing protocol. It selects multi-paths to deliver packets.
the forwarder list in opportunistic routing, because it only
It indeed increases the delivery ratio, but it increases the
considers one link with the lowest cost. When the node can
duplicate transmissions of packets as well, since there is no
reach multiple neighbors, these multi-links can increase the
efficient scheduling scheme for these paths. Opportunistic
transmission rate and reduce the delivery cost. So the cost
routing [2, 3, 4, 8, 10, 9] uses multi-paths to deliver packets,
depends on not only the single link probabilities, but also
and do not increase the transmission cost. A forwarder list is
the number of links it can leads to. The more number of
maintained for each flow. Any packet in the flow may use all
links it can use, the less cost it needs to take. Based on
∗ Yanhua Li and Yuan-an Liu are with Beijing U. of Posts & the differences between ExOR and MORE, we suppose a
Telecommunications, Beijing, China.(Email: yanhua2008@gmail.com, novel metric STR (successful transmission rate) for fair op-
† Pengkui Luo is with Dep. of CS, U. of Minnesota, Minneapolis, USA. portunistic routing protocols, and present a fair opportunis-
(Email: pengkui.luo@gmail.com.) tic routing protocol (FORLC) which uses STR as a metric

978-0-7695-3501-2/09 $25.00 © 2009 IEEE 308

DOI 10.1109/CMC.2009.170
to select the forwarder list. The rest of the paper is orga- mission to decide which packets should be forwarded. Ob-
nized as follows. Section 2 introduces the difference be- viously, in Fig. 1, if the source sends a batch of 125 pack-
tween fair scheme and unfair scheme of opportunistic rout- ets out, A and B would both receive 100 packets respec-
ing protocols, using ExOR and MORE as examples. STR tively as expected. Then A would send the 100 packet out
is described in Section 3. In Section 4, we illuminate the to Dst along A → C → Dst and A → D → Dst. Dst
FORLC protocol. Section 5 gives the analysis of proposed would receive totally 60 packets from both C and D re-
protocol and provides simulation results. We conclude our spectively. Now the question is how many distinguished
paper in Section 6. packets would be received by Dst through A’s forward-
ing? We can easily get that this number of the different
packets obeys to the hyper-geometric distribution. Let X
2. Fair and Unfair opportunistic routing
denote the number of distinguished packets received by the
scheme destination. Dst would receive E(X) = 84 distinguished
packets through A’s transmissions, and will similarly re-
In this section, we are in the position of introducing the ceive 64 different packets from B’s transmissions. So, A
existing opportunistic routing schemes. Kindly, there are can send more packets to B’s in this particular case. This
two types scheme, unfair/fair opportunistic routing. Unfair also illustrates that ETX does not always make good de-
opportunistic routing scheme often builds a candidate for- cision, since it does not consider the multiple links infor-
warder set, in which many forwarders are prioritized with mation for each potential forwarder. There are also more
orders. The higher priority indicates that the node is closer issues in ExOR, such as not supporting spatial reuse and
to the destination. So in ExOR, every node chooses the multi-cast. MORE makes some progress over ExOR. It can
highest prioritized node to forward the packets it received support spatial reuse and multi-cast, but it still uses ETX as
first. And the nodes with lower priorities have to wait and the routing metric to choose the candidate set. This would
listen to the nodes with higher priorities, so that every node be a big issue, since non-optimal forwarder list would re-
only forwarder the packets that have not been received by sults directly in many duplicate transmissions. In MORE,
any higher priority node. Fair opportunistic routing scheme because all the packets from the nodes are coded, just a few
also builds a candidate forwarder set. But all the nodes in coded packets which are not linearly independent with oth-
it are fair without any priority. The set just includes some ers are considered as duplicate packets. Even though the
closer nodes to the destination than the source. MORE is node A and node B may receive the same packets using
a typical fair opportunistic routing. Node forwards coded MORE, they would generate some new linear combinations
packet, once it receives an innovative packet from others of these packets to send. This will reduce the number of
and the credit value is positive. The node need neither a duplicate transmissions. Hence, opportunistic routing will
special scheduler to coordinate with other routers, nor wait- result in higher throughputs for each source destination pair,
ing for other nodes. Fig. 1 shows an example topology, and since it takes advantage of multiple links to the destination.
ETX values are marked for each node. But if the source only uses this “best” route to deliver all the
packets, the total number of duplicate transmissions will be
the least in this graph. So, how to get lower number of du-
plicate transmissions from the source to the destination, as
well as getting higher throughput is a big challenge.

3. STR: Successful Transmission Rate

We introduce a novel routing metric, Successful Trans-

mission Rate (STR) to construct the forwarder lists. STR
denotes the expected successful transmission rate between
a certain node and the destination. Each node calculates its
Figure 1. Connective Graph with ETX metric STR to the destination, and chooses some of the neighbors
values marked. with the higher STR values into its forwarder set. The exact
approach used to calculate the STR is showed below: (1) If
the node X and the destination are within one hop (showed
In ExOR, the Source chooses the candidate forwarder in Fig. 2), the STR of node X is
set as {B, A}, because B has lower ETX than A. Then, ST RX = PXD . (1)
ExOR tries to send more packets through B to destination,
and the other nodes have to wait until B finishes its trans- (2) If there are two hops between node X and the desti-

nation (showed in Fig. 3), the STR of node X is Algorithm 1 For Node X Selecting the forwarder set.
1: /* Generate a preliminary forwarders Set R*/
2: R := φ

i−1 3: for each vertex vi in N (X) do
ST RX = PX1 P1D + PXi PiD (1 − PXj ). (2) 5:
if ET X(vi , Des) < ET X(X, Des) then
R := R ∨ {vi }
i=1 j=1 6: end if
7: end for
If there are more than 2 hops from node X to destination 8: /*Choose useful forwarders C from R */
9: ST Ro := 0
(showed in Fig. 4), the graph could always be transferred 10: ST Rn := 0
to an equivalent graph in which the node X and Dst are 11: C := φ
12: while TRUE do
within 2 hops. We reserve the node X’s one hop forwarders, 13: /*find the next best candidate v*/
and simply replace the subgraph between these one hop for- 14: for each vertex vj in R do
15: if ST Rn > ST RX (C ∨ {vj }) then
warders and Dst to a set of equivalent one hop probabilities. 16: v := vj
These equivalent one hop probabilities are exactly the STR 17: ST Rn := ST RX (C ∨ {vj })
18: end if
values of each node. With this approach, we can calculate 19: end for
STR for every node in a common graph. The STR of node 20: if (ST Rn < T hreshold) ∨ (R = φ) then
21: C := C ∨ {v}
X is 22: R := R − {v}
23: ST Ro := ST Rn

i−1 24: else
ST RX = PX1 ST R1D + PXi ST RiD (1 − PXj ). 25: Break
26: end if
i=1 j=1 27: end while
(3) 28: RETURNC
So, in this algorithm, node needs to know its on-hop for-
warder’s STR values to calculate its own STR value. The
STRs should be calculated from the nodes, which are closer from one batch to another. These K uncoded packets are
to destination, to the node farther away from the destina- called native packets. When the 802.11 MAC is ready to
tion. For example, we calculate the STRs for the topology send, the source creates a random linear combination of
shown in Fig. 1. Node C, D and E’s STRs can simply be the K native packets in the current batch and broadcasts
calculated by using equation 1. Node A, B’s STRs can be the coded packet. FORLC scheme uses STR as metric to
calculated with equation 2. When calculating the STR of choose the forwarder list. Every node maintains a local for-
node Source, we use the A’s STR value to replace the sub- warder list. Before forwarding the packet, node would up-
graph between node A and node Dst, similarly for node B. date the packet’s forwarder list with its local one.
Then we can use equation 3 to get the STR value of node After receiving a packet, the node checks whether it is
source. All the STRs of nodes in Fig. 1 are listed in Table. 1. in the packet’s forwarder set. If so, it would check whether
the packet is linearly independent with the packets in its
Table 1. List of STR for each node in Fig. 1 cache. Then, it stores the innovative packet into its cache,
Node Src A B C D E Dst and makes a new linear combination of the packets it has.
STR 84% 84% 64% 80% 80% 80% 100%
The packets received by destination are all linearly coded
packets. When the destination receives a packet, it will
also check whether the packet is linear independent with
4. FORLC: Fair Opportunistic Routing With the packets in its cache. Destination only caches the pack-
Linear Coding ets, which are independent with each other. When destina-
tion receives K independent packets, it resumes the orig-
In this section, we will introduce fair opportunistic rout- inal K packets and sends ACKs back to source along the
ing with linear coding (FORLC) protocol, in which STR is best route. An ACK packet indicates that the current batch
used to choose the forwarder set for every node. Every 20 has been received successfully by the destination. Each for-
minutes, hello messages are broadcasted to exchange link warder stops sending packets of the current batch, when it
quality information between each node pair. receives the ACK. If source receives the ACK, it would stop
When a source requires a route to its destination, nodes sending the current batch, and start the next batch.
would use the algorithm below to select the local forwarder In dense wireless network, not all of the neighbors of a
sets. These forwarder sets include all the efficient nodes certain node would be involved into the forwarder set, be-
which can be used as a potential forwarder of the data pack- cause that will result in more duplicate transmissions and
ets. more power consumptions. So, in FORLC, we introduce
Like in MORE scheme, the source breaks up the file a STR threshold to select the forwarder set. We always
into batches of K packets, where batch size K may vary choose the highest STR forwarder nodes into forwarder set,

Figure 2. One hop node Figure 3. Two hops node Figure 4. Substitution with
pair. pair STR value.

until the nodes own STR is more than a certain threshold line (shown in Fig. 5(b)).
or there is no qualified forwarders any more. We choose Since the linear coded packets received by destination
95% as the threshold. This threshold is got by our simu- might not be independent with each other, these duplicate
lations. We randomly changed the density of the network transmissions are a huge waste of network resources. The
many times, and varied the threshold with different values transmissions for the linear correlative packets are actually
in each topology to compare the performances, in terms of the duplicate transmissions. The total number of duplicate
total cost rate and duplicate transmission rate. The results transmissions divided by the total number of packets will be
show that 95% is the best value as the threshold. When the referred to the duplicate transmission rate, which captures
threshold is greater than 95%, the cost of transmissions will the number of duplicate transmissions for each data packet.
increase rapidly. More detailed analysis is shown in sec- In the simulations, we varied the batch size from 20 packets
tion 5. to 600 packets, we could see that the duplicate transmis-
sion cost decreases as the batch size increases, and the STR
5. Evaluation based FORLC always gets less duplicate transmission cost
than ETX based MORE, as shown in Fig. 5(c).
In this part, we generate a random topology with 50
In this section, we evaluate the performances of the STR
nodes in it, among them there are 10 source-destination
based FORLC protocol. In the simulations, we use 1 Mbps
pairs. We still use 1 Mbps as the transmission rate. For the
as the transmission rate. Each simulation period is 300 sec-
whole simulation time, each pair completed 1 megabytes
onds, and the payload size of each packet is 1 Kbytes. We
data transmissions from the source to the destination. We
randomly generate the scenarios with a certain number of
recorded the throughputs for each routing protocol. The
intermediate nodes for the source-destination pair. The link
Fig. 5(d) shows that the comparison of throughputs between
qualities between these nodes are all randomly generated.
traditional routing, MORE and FORLC protocol. Each bar
At the beginning of each random scenario, nodes exchange
in the figure is the average value of 100 simulations.
hello messages to collect the link qualities information of
the topology for 60 seconds. Then, the source sends the In Fig. 5(d), the bars are sorted by the values of the
packets to the destination using FORLC, MORE and AODV throughputs of the FORLC protocol. The figure shows
protocols, respectively. The simulation in each scenario is that the opportunistic routing always has higher throughputs
repeated 100 times, in order to reduce the effect of skew than the traditional routing. For most of the node-pairs, the
from a limited sample size. We choose the batch size as FORLC has higher throughputs than the MORE protocol.
100. It has the same throughput as MORE for other node pairs,
We recorder the total numbers of transmissions needed because the forwarder sets selected by STR and ETX are
for delivering all the packets successfully to the destination. the same for these node pairs.
The average number of transmissions for each packet can be In dense network, each node may have lots of neighbors.
calculated easily by dividing the total numbers of transmis- Many nodes may be qualified for the forwarder set. If we
sions by the total number of data packets in each simulation. choose all these nodes in to the local forwarder set, it will
This value will be referred to the Packet Transmission Cost result in the more duplicate transmissions. So, we introduce
(PTR). The Fig. 5(a)and Fig. 5(b) show that the STR based a STR threshold in the FORLC protocol. When the STR
FORLC can outperform ETX based MORE and the tradi- value of the current node is larger than the threshold after
tional routing in all of the scenarios. Since the forwarder choosing some neighbors into forwarder set, the node will
lists selected by STR and ETX are the same for some node stop introducing new forwarders. The results show that 95%
pairs, we could see some points are located on the 45 degree is the best value as the threshold. When the threshold is

The Packet Transmission Cost: FORLC

The Packet Transmission Cost: FORLC

70 40

Duplicate Transmission Cost

60 ETX based MORE
30 0.2

10 0.1

0 0 0
0 10 20 30 40 50 60 70 0 10 20 30 40 0 100 200 300 400 500 600
The Packet Transmission Cost: Tranditional Routing The Packet Transmission Cost: ETX Based MORE Batch Size

(a) Packet transmission cost: Traditional (b) Packet transmission cost: MORE vs. (c) Duplicate Transmission Cost:
routing vs. FORLC FORLC FORLC vs. MORE

35 0.25 3.5
Tranditional Routing
Duplicate Tx. Cost(times/packet)
30 STR Based FORLC 3

Packet Tx. Cost (times)

25 2.5

20 2

15 1.5

10 1
5 0.5

0 0 0
#1 #2 #3 #4 #5 #6 #7 #8 #9 #10 0~60% 65%70%75%80%85%90%95%100% +Infinity 0~60% 65%70%75%80%85%90%95%100% +Infinity
Node Pair ID
STR Threshold STR Threshold

(d) Throughputs comparison (e) Duplicate Transmissions Cost varies (f) The Packet Transmission Cost varies
with the STR threshold with the STR threshold

Figure 5. Simulation results.

greater than 95%, the cost of transmissions will increase [2] S. Biswas and R. Morris. Opportunistic routing in multi-
rapidly. hop wireless networks. SIGCOMM Comput. Commun. Rev.,
34(1):69–74, 2004.
[3] S. Biswas and R. Morris. Exor: Opportunistic routing
6. Conclusion in multi-hop wireless networks. In Proceedings of the
ACM SIGCOMM ’05 Conference, Philadelphia, Pennsylva-
nia, August 2005.
In this paper, we propose a novel routing metric STR, [4] S. Chachulski, M. Jennings, S. Katti, and D. Katabi. Trading
which is based on the successful transmission rate from structure for randomness in wireless opportunistic routing.
a node to the destination, to choose forwarder set for fair In SIGCOMM, 2007.
opportunistic routing. We also propose FORLC protocol, [5] S.-J. Lee and M. Gerla. AODV-BR: Backup routing in ad
which uses the STR metric to select the forwarder set, and hoc networks. In WCNC’2000.
[6] M. K. Marina and S. R. Das. Ad hoc on-demand multipath
do the linear coding for the data packets. It can improve
distance vector routing. SIGMOBILE Mob. Comput. Com-
the network performances, in terms of throughputs and the mun. Rev., 6(3):92–93, 2002.
packet transmission cost. Comparing with the MORE, the [7] C. Perkins and E. Royer. Ad hoc on demand distance vector
FORLC protocol can increase the throughput 30% more routing, mobile computing systems and applications. In In
than the MORE protocol at most, and 10 times than the tra- Proceedings of WMCSA 99, 1999.
ditional routing at most in our simulations. The STR based [8] B. Sadeghi, V. Kanodia, A. Sabharwal, and E. Knightly. Op-
FORLC can also reduce the packet transmission cost. portunistic media access for multirate ad hoc networks. In
MobiCom ’02.
[9] C. Westphal. Opportunistic Routing in Dynamic Ad Hoc
References networks. In Proc. of IEEE MASS, Oct. 2006.
[10] C. Yu, K. G. Shin, and L. Song. Link-layer salvaging for
making routing progress in mobile ad hoc networks. In Mo-
[1] MIT roofnet. http://pdos.csail.mit.edu/roofnet/. biHoc ’05.