core: a coding-aware opportunistic routing mechanism ... - IEEE Xplore

1 downloads 0 Views 277KB Size Report
packet, which are ordered based on some metric, .... Routing in Ad Hoc Networks (OPRAH) Proto- ..... for different refereed journals and magazines, including.
ZHANG2 LAYOUT

6/9/10

10:42 AM

Page 96

ACCEPTED FROM OPEN CALL

CORE: A CODING-AWARE OPPORTUNISTIC ROUTING MECHANISM FOR WIRELESS MESH NETWORKS YAN YAN AND BAOXIAN ZHANG, GRADUATE UNIVERSITY OF THE CHINESE ACADEMY OF SCIENCES JUN ZHENG, SOUTHEAST UNIVERSITY JIAN MA, NOKIA RESEARCH CENTER

ABSTRACT

C p1 (b) E

p2

p2 B D

p2

C p1

The authors explore the combination of opportunistic routing and network coding for improving the performance of a WMN.

Opportunistic routing is a new routing paradigm that takes advantage of the broadcast characteristic of a wireless channel for data delivery in a wireless mesh network. Network coding has recently emerged as a new coding paradigm that can significantly improve the throughput performance of a WMN. In this article we explore the combination of opportunistic routing and network coding for improving the performance of a WMN. We first review existing opportunistic routing and coding-aware routing protocols, respectively, classify these protocols based on different criteria, and discuss their merits and drawbacks. We then propose a coding-aware opportunistic routing mechanism that combines hop-by-hop opportunistic forwarding and localized inter-flow network coding for improving the throughput performance of a WMN. Through opportunistic forwarding, CORE allows the next-hop node with the most coding gain to continue the packet forwarding. Through localized network coding, CORE attempts to maximize the number of packets that can be carried in a single transmission. Simulation results show that CORE can significantly improve the throughput performance of a WMN as compared with existing protocols.

INTRODUCTION Wireless mesh networks (WMNs) have been widely considered as a promising solution to providing high bandwidth for the broadband wireless Internet. In a WMN, a network node This work was supported in part by NSFC under Grants 60702074 and 60970137, by the National Key Special Program under Grants 2008ZX03006-001 and 2009ZX03006-006, and by the Research Fund of National Mobile Communications Research Laboratory, Southeast University, under Grant 2009B07.

96

1536-1284/10/$25.00 © 2010 IEEE

transmits its data via a wireless channel, which has inherent broadcast and lossy characteristics. Routing is one of the key components for delivering data in a WMN. To improve network performance, the design of a routing protocol must take into account the lossy characteristic of a wireless channel. Opportunistic routing [1–5], also called opportunistic forwarding, has recently been proposed as an effective routing paradigm for increasing forwarding reliability and network throughput in a WMN. In opportunistic routing, a packet holder selects a subset of its neighboring nodes as the potential next hops (or forwarder candidates) to the destination of the packet, which are ordered based on some metric, such as hop count or geo-distance, and then transmit the packet downstream. Among those forwarder candidates that receive the packet, the one with the highest order is selected as the next forwarder. The next forwarder will repeat the same operations and this process will continue until the packet reaches its intended destination. With opportunistic routing, a transmission can be received independently with a certain successful probability by each of the nodes in the forwarder set, which can largely reduce the retransmission probability and thus increase network throughput. Further, opportunistic routing can exploit those long but low-quality links to reduce the total number of transmissions for sending a packet to its destination, which can thus reduce the end-to-end delay. Network coding has recently emerged as a new coding paradigm that has demonstrated a wide range of applications for improving the performance of a WMN [6]. Network coding allows the information (or data) received from multiple links to be mixed at an intermediate network node for further transmission, which may significantly improve the network performance in terms of throughput. COPE [6] is the first practical network coding mechanism for supporting efficient unicast communication in a

IEEE Wireless Communications • June 2010

Authorized licensed use limited to: Nokia Information Services. Downloaded on June 25,2010 at 07:51:51 UTC from IEEE Xplore. Restrictions apply.

ZHANG2 LAYOUT

6/9/10

10:42 AM

Page 97

WMN. It employs opportunistic listening to enable each node to learn local state information and encoded packet broadcasting to improve the network throughput. Motivated by COPE, several coding-aware routing mechanisms have been proposed, which are aimed at improving the network throughput by combining routing with inter-flow network coding. However, neither COPE nor its variants consider the opportunistic characteristic of a wireless channel in packet delivery and the dynamic availability of network coding opportunities at a network node, which can be caused by traffic and network dynamics. This largely limits their capabilities for improving network throughput. In this article, we explore the combination of network coding and opportunistic routing for improving the performance of a WMN. We first review existing opportunistic routing and codingaware routing protocols for WMNs, respectively, and discuss their merits and drawbacks. To improve the throughput performance, we propose a coding-aware opportunistic routing mechanism (CORE), which combines hop-byhop opportunistic forwarding and localized inter-flow network coding. The motivation comes mainly from an observation that additional coding gain is obtainable if a decision on packet forwarding can be made in a way such that the coding opportunities at the next hop are maximized. Through opportunistic forwarding, CORE allows the next-hop node with the most coding gain to continue the packet forwarding. Simulation results show that CORE can significantly improve the throughput performance of a WMN as compared with existing protocols. To the best of our knowledge, this is the first work that combines hop-by-hop opportunistic forwarding and localized inter-flow network coding for improving the performance of a WMN. The rest of this article is organized as follows. The next section reviews existing work in opportunistic routing and coding-aware routing, respectively. We then present CORE, discuss its major design issues, and describe its major components. We then evaluate the performance of CORE through simulation experiments. The final section concludes this article.

OPPORTUNISTIC ROUTING AND CODING-AWARE ROUTING This section briefly introduces the concepts of opportunistic routing and coding-aware routing, reviews existing opportunistic routing and coding-aware routing protocols, and discusses their merits and drawbacks.

OPPORTUNISTIC ROUTING Opportunistic routing is a routing paradigm that takes advantage of the broadcast characteristic of a wireless channel for data delivery in a WMN. In opportunistic routing, a transmission can be overheard by multiple neighbors of its sender. If one of the sender’s neighbors receives the packet, this neighbor node can continue to forward this packet further to its destination node provided that the neighbor meets certain conditions. This significantly differs from tradi-

tional fixed next-hop forwarding where a single next hop is chosen for forwarding a particular packet. Opportunistic routing includes two main components: forwarder set selection and forwarder candidates prioritization. In forwarder set selection, a set of next-hop forwarder candidates is selected for a sender to forward a packet to the intended destination. In forwarder candidates prioritization, the forwarder candidates in the forwarder set are prioritized based on some criteria, such as how close a node is to the destination, whether the nodes in the forwarder set are fully reachable, and so on. Some metrics used for forwarder candidates prioritization in existing opportunistic routing protocols include expected transmission count (ETX) [1, 2], hop count [3, 4], and geo-distance [5]. Next we briefly review typical opportunistic routing protocols based on the metrics they use.

ETX-Based Protocols — The extremely opportunistic routing protocol (ExOR) [1], which is designed for forwarding packet batches, selects a forwarder set and prioritizes the forwarder candidates based on the ETX value to the destination. In ExOR, those nodes with smaller ETX values to the destination node than that of the source node are chosen to be forwarder candidates. The smaller is the distance, the higher is the priority. After the source node broadcasts a batch of data packets, the nodes in its forwarder candidates set will forward these data packets in the order of their priorities. The nodes with higher priorities will forward the overhead packets first. A node with a lower priority will only forward those packets that have not been acknowledged by any higher-priority nodes, which is indicated in the BITMAP option encapsulated in the packets. However, ExOR reduces spatial frequency reuse because it requires global coordination among forwarder candidates.

Opportunistic routing is a routing paradigm that takes advantage of the broadcast characteristic of a wireless channel for data delivery in a WMN. In opportunistic routing, a transmission can be overheard by multiple neighbors of its sender.

Opportunistic Any-Path Forwarding — In ExOR, the condition for a node to be chosen into a forwarder set is too loose, which may cause data packets to be forwarded to low-quality routes. To remedy this, Opportunistic Any-Path Forwarding (OAPF) [7] introduces an expected anypath count (EAX) metric. When computing the forwarder set, a node considers the fact that the next forwarder will also perform opportunistic forwarding. Thus, OAPF recursively calculates its near-optimal forwarder set to reach the destination. The extra cost introduced is the high computational overhead and the global network state information required. MAC-Independent Opportunistic Routing & Encoding Protocol — Medium access control (MAC)-Independent Opportunistic Routing & Encoding Protocol (MORE) [2] is an enhancement of ExOR. MORE incorporates intra-flow randomized network coding and ExOR. It divides original data packets into batches, each containing K packets. The source code continuously broadcasts the random linear combination of the K original data packets in the same batch. An intermediate forwarder only stores innovative packets. A packet is an innovative packet if it is linearly independent of the previously received packets belonging

IEEE Wireless Communications • June 2010

Authorized licensed use limited to: Nokia Information Services. Downloaded on June 25,2010 at 07:51:51 UTC from IEEE Xplore. Restrictions apply.

97

ZHANG2 LAYOUT

6/9/10

10:42 AM

Page 98

p2

p1 A

R p2

B p1

(a)

p1 A

p2 R

B

= p1 + p2 (b)

Figure 1. A simple example illustrating the concept of network coding: a) without coding; b) with coding.

Geo-Distance-Based Protocols — Location information can be used to ease opportunistic forwarding as well as forwarder set selection and prioritization. The Geographic Random Forwarding Protocol (GeRaF) [5] is a typical protocol of this type. Specifically, each packet holder selects only those neighbors closer to the destination in terms of geo-distance than itself as forwarder candidates and the one closest to the destination has the highest priority is selected as the next sender. GeRaF is a hop-by-hop opportunistic routing protocol with good scalability. Although existing opportunistic routing protocols can improve the performance of wireless networks compared to the traditional best-path routing protocols, most of them adopt traditional metrics such as ETX and hop count, which largely limits their capability in improving the network throughput. In this article, we propose a fully distributed opportunistic routing protocol, which introduces a new coding-chance-based metric for prioritizing forwarder candidates to improve the network performance.

CODING-AWARE ROUTING to the same batch. MORE further exploits a credit-based forwarding strategy at each intermediate forwarder to reduce the total number of transmissions for end-to-end delivery. Upon receipt of K linearly independent packets, the destination node can restore the K original data packets and then send an acknowledgment (ACK) back to the source to allow the source to move to the next batch. Compared to ExOR, MORE can significantly improve the network throughput and also eliminate the requirement of global coordination among forwarder candidates.

Hop-Count-Based Protocols — The Opportunistic Routing in Ad Hoc Networks (OPRAH) Protocol [3] is an on-demand multipath (opportunistic) routing protocol for mobile ad hoc networks. To increase path diversity, OPRAH builds a braid multiple-path set between a source-destination pair during a request-reply route searching cycle. In OPRAH, each intermediate node in the braid route set broadcasts every data packet received. In Resilient and Opportunistic Routing Solution for Mesh Networks (ROMER) [4], each data packet carries a credit value, which records the maximum distance that a data packet is allowed to deviate from the shortest distance between the packet source and its destination in hop-by-hop forwarding. Each node on the shortest path between a source-destination pair forwards the packet with probability 1. In contrast, a node not on the shortest path forwards the packet with a probability based on the throughput of its downstream outgoing link. This constraint creates a resilient ellipse-type forwarding region, centered on the long-term shortest path connecting the source-destination pair. Both OPRAH and ROMER are suitable for highly dynamic wireless environments, and require a network-wide routing protocol to provide the distance information from all the network nodes or some of them to the packet destination. Moreover, their implementations may cause much more duplicate end-to-end transmissions.

98

The combination of localized network coding and route selection can increase the network throughput and reduce the number of transmissions in WMNs. COPE is the first practical network coding mechanism in this aspect. Figure 1 gives a simple example illustrating how network coding reduces the total number of transmissions in a network. In this example, node A and node B want to exchange packets via a common relay node R, A sends a packet p1 to B, and B sends a packet p2 to A. After R receives both p1 and p2, it will generate a new packet by performing “p 1 XORp 2 ” and then broadcast it to the air. Upon the receipt of the new packet, both A and B can decode the XOR-ed packet and obtain their interested packet by using the information that they locally maintain, respectively. In this way, the number of transmissions becomes three instead of four. Inspired by COPE, several coding-aware routing mechanisms have been designed in the literature, which will be introduced next. Coding-aware routing is a routing paradigm that takes into account network coding opportunities at network nodes in route selection for data delivery in a WMN. Coding-aware routing protocols can be classified into two categories: centralized and distributed. In the context of centralized protocols, Sengupta et al. proposed linear-programming-based inter-flow coding-aware routing protocols [8], which obtain a theoretical formulation for computing the network throughput on any wireless network topology and any pattern of concurrent unicast sessions by making a routing decision with the awareness of network coding opportunities, and take into consideration the impact of radio interference and broadcast transmission scheduling into consideration. Ni et al. [9] proposed a coding-aware routing scheme using linear programming to reduce the total number of coded transmissions by defining the coding gain as the expected number of coded transmissions for a successful exchange of packets between two nodes through an intermediate node. Although

IEEE Wireless Communications • June 2010

Authorized licensed use limited to: Nokia Information Services. Downloaded on June 25,2010 at 07:51:51 UTC from IEEE Xplore. Restrictions apply.

ZHANG2 LAYOUT

6/9/10

10:42 AM

Page 99

these routing protocols can improve the network performance in terms of resource utilization and throughput, their centralized characteristic causes the scalability problem. Therefore, they are not suitable for being employed in multi-hop wireless networks. In distributed coding-aware routing, each node independently makes a local routing decision based on the network state information it maintains. In this context, there are two types of distributed protocols: source routing protocols and hop-by-hop routing protocols. In source routing, the source node of a flow locally computes an end-to-end path from source to destination with more coding opportunities. However, source routing requires a node to maintain global network state information, for example, the network topology, state information on each link, and flow-related information (e.g., path and data rate), which has the scalability problem. In hop-by-hop routing, each node only maintains limited state information. A routing decision is made based only on the limited information that a node maintains. Hop-by-hop routing has the advantage of low protocol overhead and complexity, and is thus suitable for being used in dynamic WMNs. In the context of hop-by-hop routing, several coding-aware routing protocols been proposed. Motivated by COPE, Wu et al. proposed a Markovian routing metric in [10] to support more efficient inter-flow network coding, which is the cost of sending a packet across a link and depends on the link the packet comes from. This metric can be used in an existing routing protocol to discover paths with more network-coding opportunities. However, it can only identify whether there is a coding opportunity on a link with no ability to know how many coding opportunities there are on the link, which limits its efficiency in reducing transmissions through network encoding. In [11], Le et al. proposed an on-demand Distributed Coding-Aware Unicast Routing Protocol (DCAR) for selecting a high throughput path with more potential coding opportunities by introducing a coding-aware routing metric called CRM, which jointly considers coding opportunities, congestion levels, and related factors for comparing coding-possible and coding-impossible routes when multiple routes are available. In addition, DCAR can detect coding opportunities on an entire path, thus eliminating the two-hop coding limitation in COPE. However, both of these existing codingaware routing protocols are based on the traditional best-path routing protocol, and neither of the protocols proposed in [10, 11] considers the impact of the lossy characteristic of a wireless channel on the efficiency of packet forwarding. Moreover, they do not consider the fact the coding opportunities for different packets belonging to a given flow at a node can change over time on a per-packet basis. This can be caused by the inherent traffic characteristic of each flow, packet delivery jitter, and dynamic flow arrivals and departures. Therefore, the number of coding opportunities available on a path could change significantly with traffic and/or network dynamics, which may lead to suboptimal path selection. Unlike the above coding-aware routing protocols that deal with the route selection issue in

data delivery, this work focuses on the packet forwarding issue in WMNs. By exploiting the lossy characteristic of a wireless channel, CORE aims to improve the link-level data delivery reliability and network throughput through combined hop-by-hop opportunistic forwarding and localized inter-flow network coding.

CORE This section presents CORE for WMNs. We first give a brief overview of CORE, and then describe its major components. For ease of description, we first define the following few terminologies: • Sender: A node that initializes a packet transmission • Primary packet: The original packet stored at the head of the output queue of a node and selected for transmission at the node • Primary forwarder: The next-hop node selected for continuing to transmit a packet • Forwarder (candidate) set: The set of nexthop candidates for transmitting a packet

OVERVIEW

By exploiting the lossy characteristic of a wireless channel, CORE aims to improve the link-level data delivery reliability and network throughput through combined hop-by-hop opportunistic forwarding and localized inter-flow network coding.

CORE is a coding-aware opportunistic routing mechanism for improving the performance of a WMN. It combines hop-by-hop opportunistic forwarding and localized inter-flow network coding, which makes CORE able to fully utilize the broadcast characteristic of a wireless channel and tolerate packet loss. Through opportunistic forwarding, CORE allows the next-hop node with the most coding gain to continue the packet forwarding. Through localized network coding, CORE attempts to maximize the number of packets that can be carried in a single transmission. As a result, the total number of packet transmissions in the network can be significantly reduced. In CORE, when a node has a packet to send, it simply broadcasts the packet to the air, possibly encoded with other packet(s), which may be received by some of the forwarder candidates in its forwarder set. The forwarder candidates receiving the packet collaborate to select the primary forwarder among them in a localized manner, which is the one with the most coding opportunities. This hop-by-hop packet forwarding process is repeated until the packet reaches its intended destination. To better understand the basic idea of CORE, let us take a look at the example given in Fig. 2a. Node A wants to send a packet p1 to node D, while node E wants to send a packet p2 to node A. Node B and node C are forwarder candidates for node A. Node C is closer to node D than node B. After nodes A and E finish their transmissions, nodes B and D have received p2, and nodes B and C have received p1, as shown in Fig. 2b. The next step is to select the primary forwarder for p2 to reach A and for p1 to reach D. A traditional opportunistic routing protocol will select C as the forwarder to reach D because C is closer to D than B. However, this is not the best selection because it will lead to two transmissions, one for packet p 1 to D and the other for packet p 2 to A, as shown in Fig. 2c In contrast, if both B and C can know that B has more

IEEE Wireless Communications • June 2010

Authorized licensed use limited to: Nokia Information Services. Downloaded on June 25,2010 at 07:51:51 UTC from IEEE Xplore. Restrictions apply.

99

ZHANG2 LAYOUT

6/9/10

10:42 AM

The design of COPE is based on the fixed shortest-path routing, which means that each coding node must know the next hop of each original packet it will forward or encode in advance. In contrast, with opportunistic routing, the next hop of each packet is not known in advance.

Page 100

E

E

p2

p2

p1 p2 B

B D

A p1

p1

C

(a)

p2

p1 (b)

A

E

p2

p1 p 2

B D

p2 p1

p1

p2

p1 p2

= p1 ⊕ p2 B

A

p2

C

Packet destination p1 D E

D

A

p2

C

D

A p1

C

p1 (c)

p2

p1 (d)

Figure 2. Example illustrating the forwarder selection with and without network coding: a) the next hop of each packet; nodes B and C constitutes the forwarder set for A to reach D. Nodes B and D constitutes the forwarder set for E to reach A; b) the packets that each node received after the source nodes sent out their respective packets, respectively; c) nodes B and C are respectively selected as the forwarder for the two packets without using network coding; d) the optimal selection is to select B as the only forwarder, which sends out the encoded packet p1 ⊕ p2.

network coding opportunities than C and B is selected as the forwarder, only one transmission is needed to forward the two packets, as shown in Fig. 2d. Therefore, if the node with the most coding opportunities is selected as the forwarder in each packet transmission, the throughput of a network could be significantly improved.

CORE DESIGN CORE consists of four major components: forwarder set selection, coding opportunity calculation, forwarder selection, and priority-based forwarding.

Forwarder Set Selection — When a sender has a primary packet to send, it first selects a set of forwarder candidates for its transmission. A node can be selected into the forwarder set if it meets the following conditions: • It is a direct neighboring node of the sender. • It is closer to the destination than to the sender in terms of a specific routing metric. In this article, we choose geo-distance to the intended destination as the primary metric for forwarder selection. Each transmitted packet carries the location of the sender and the location of the destination of each original packet that is encoded into this transmitted packet. Coding Opportunity Calculation — CORE introduces the opportunistic listening and periodic reception-report broadcasting used in COPE. With the opportunistic listening and receptionreport broadcasting, a node can know the nec-

100

essary information for performing localized network coding. The next questions are How to calculate the coding opportunities at a node itself? How to perform network coding before a node transmits? and Which packets should be encoded together to maximize the coding gains? In this article, we assume that all nodes know their positions by equipping GPS receivers or using some other localization techniques, and there is no limitation on power or processing capability at a node. Moreover, the destination node of a flow is able to perform necessary packet reordering. In COPE, each node maintains a first-in first-out (FIFO) output queue and a virtual queue for each of its neighbors. The virtual queue for a neighbor contains pointers to the packets in the FIFO output queue, whose nexthop is the neighbor. When performing network coding, COPE only selects the first packet (i.e., the queue-head packet) in each virtual queue to generate an encoded packet. In lossy wireless environments, however, the coding algorithm of COPE is not the best choice. This is because in such an environment the FIFO strategy may cause a penalty on coding opportunities because the coding opportunities are bounded by the number of neighbors that have overheard a common subset of these queuehead packets. Therefore, the performance of COPE is suboptimal in highly lossy environments. The design of COPE is based on the fixed shortest-path routing, which means that each coding node must know the next hop of

IEEE Wireless Communications • June 2010

Authorized licensed use limited to: Nokia Information Services. Downloaded on June 25,2010 at 07:51:51 UTC from IEEE Xplore. Restrictions apply.

ZHANG2 LAYOUT

6/9/10

10:42 AM

Page 101

each original packet it will forward or encode in advance. In contrast, with opportunistic routing, the next hop of each packet is not known in advance. To address the above problems, CORE introduces a coding algorithm to meet the requirements of both network coding and opportunistic forwarding, and tries to increase the coding gains in a lossy wireless environment. In CORE, when a node has a primary packet p to send, it picks packet p from its output queue and considers the next k (k > 1) packets in its output queue as seeds for possible encoding with the primary packet p. The node checks different coding patterns of these packets to obtain the maximum possible coding gains of its next transmission. The number of the neighbor nodes that can decode a coding pattern and obtain an original packet is defined as the coding gains of that coding pattern. It may happen that multiple nodes can decode the coding pattern and obtain the same original packet, say px, from a coding pattern. However, only when this node is in the forwarder set of px can it be counted in the coding gains of this coding pattern. This coding algorithm can greatly increase the coding opportunities in a lossy wireless environment as compared with the FIFO strategy adopted in COPE because the coding opportunities are not limited to the first stored packet of each flow. Moreover, it does not require the next-hop information of each packet to perform the encoding and decoding. The stored packet information is the only required information to be carried in reception reports. In COPE, the one-way FIFO order for packet coding leads to a limitation on the coding opportunities that can be created. In CORE, all the extra coding gain, computational overhead, and extra packet delivery latency (if any) are controllable by adjusting the value of k. Suppose that a network node has an average degree of D (D > 1). The time for checking whether an encoded packet is decodable at intended receivers is O(D). Because there are O(D) virtual output queues at a node, the one-way coding computation in COPE has a total computational time of O(D 2 ). In CORE, the time for computing the coding opportunities for a primary packet is O(2kD). Moreover, heuristic encoding (e.g., considering the successful coding patterns that a node has used recently) can be employed when the computational overhead is a big concern. Each node in a forwarder set will execute the same procedure.

Primary Forwarder Selection — After a sender sends out an encoded packet, a node that receives the packet, and successfully decodes it and obtains the original packet will first determine if the node is in the forwarder set of the obtained packet. If the node is in the forwarder set, it will calculate its local coding opportunities for further retransmitting the packet using the coding and opportunity calculation algorithm introduced earlier. When it is ready for transmission, it becomes a new sender and will perform the priority-based forwarding process (see next). This forwarding process will continue until the packet reaches its intended destination.

Priority-Based Forwarding — Upon hearing a packet, a node x first decodes the packet and then checks whether it is in the forwarder set of the original packet that it obtained. If the node is in the forwarder set, it will set the value of its retransmission timer (Tx) proportional to the reciprocal of its local coding opportunities (denoted by Cx) for this received (primary) packet, i.e., Tx: = T/Cx, where T is a time interval. To encourage the decoded packet to be transmitted along with other packets, if possible, by either the current node or any other node in the forward set, T should be set to a large value (e.g., 100 milliseconds). Once the timer times out, node x will forward the packet, possibly encoded with other packet(s), if applicable. In this way, the node with more coding opportunities will forward the packet earlier. Other nodes hearing this forwarding will cancel their timers in order to avoid duplicate forwarding. This mechanism can also prevent redundant transmission if forwarder selection at different nodes is inconsistent.

SIMULATION RESULTS

This coding algorithm can greatly increase the coding opportunities in a lossy wireless environment as compared with the FIFO strategy adopted in COPE because the coding opportunities are not limited to the first stored packet of each flow.

In this section we evaluate the performance of CORE through simulation experiments using ns2. For evaluation, we compare CORE with two different mechanisms: • COPE with min-hop routing, simply called COPE • A pure opportunistic routing protocol, which implements the functions of CORE except the network coding function, simply called OP In the experiments we used 802.11b as the underlying MAC-layer protocol for all the mechanisms. We considered 200 static nodes that were deployed in an 800 × 800 m2 square field. The radio range is approximately 100 meters. With this setting, the resulting average node degree is approximately between eight and nine. We randomly generated UDP flows and varied the offered load by adjusting the number of flows. Each flow has a packet arrival rate ranging from 200 kb/s to 2 Mb/s with a random duration. The source and destination of each flow were randomly chosen. The channel rate was set to be 11 Mb/s. For CORE, k was set to 10. To evaluate the performance of opportunistic routing in lossy wireless environments, we assume that each link has a packet loss rate randomly chosen in the range of [0, 15 percent] by using the link-related parameter setting option in ns-2. We use the overall end-to-end throughput of all flows in the network as the performance metric, and only data packets are counted. For each setting, five random network topologies were considered. Each simulation lasts for 900 seconds. The network nodes work in a promiscuous mode to enable promiscuous listening. Figure 3 shows the network throughput with CORE, COPE, and OP, respectively. It is seen that CORE can improve the network throughput significantly as compared with COPE and OP under different offered loads. On average, CORE achieves 22 percent throughput gain over COPE and OP with a maximum gain of 33 percent (over COPE) and 55 percent (over OP), respectively. When the offered load is

IEEE Wireless Communications • June 2010

Authorized licensed use limited to: Nokia Information Services. Downloaded on June 25,2010 at 07:51:51 UTC from IEEE Xplore. Restrictions apply.

101

ZHANG2 LAYOUT

6/9/10

10:42 AM

Page 102

5

retransmissions) in this case prevents COPE from creating coding opportunities to improve network throughput. Therefore, by combining localized network coding and opportunistic forwarding, CORE obtains improved throughput performance in loss wireless networks as compared with COPE and OP. Figure 4 shows the percentage of encoded transmissions over the total number of transmissions with CORE and COPE, respectively. It is seen that although the percentage of encoded transmissions with both of them increases and reaches a stable level as the offered load increases, the percentage of encoded transmissions with CORE is much higher than that with COPE, especially when the offered load is high. Figure 5 shows the total number of reduced transmissions with COPE and CORE, respectively. It is obvious that CORE always has a larger number of reduced transmissions than COPE. Figure 6 shows the percentage of encoded transmissions versus the number of the original packets that are encoded together into a single transmission using COPE and CORE, respectively. It is seen that CORE can generate more encoded transmissions than COPE when the number of original packets encoded together is larger than two, in which case an encoded transmission can carry more information.

4

CONCLUSION

small, the probability with which paths for different flows overlap is small. In this case, it is hard to create more coding opportunities through inter-flow network coding. As a result, CORE performs similarly to COPE and OP. As the offered load increases, CORE and COPE achieve higher network throughput than OP due to the introduction of network coding operations, which help reduce the number of transmissions. Furthermore, CORE outperforms COPE because it can create much more coding opportunities through opportunistic forwarding. With the offered load increasing further, the network throughputs with CORE and COPE become close again because in this case paths for different flows become more likely to overlap. The reason that OP outperforms COPE when the offered load goes beyond a threshold is that the congestion (and thus more link-layer

8

“CORE” “OP” “COPE”

Network throughput (Mb/s)

7 6

3 2 1 0 2

4

6

8

10 12 Offered load (Mb/s)

14

16

18

20

Figure 3. Network throughput vs. offered load.

50

“CORE” “COPE”

Percentage of encoded transmissions

45 40 35 30

REFERENCES

25 20 15 10 5 0 2

4

6

8

10 12 Offered load (Mb/s)

Figure 4. Encoded transmissions vs. offered load.

102

In this article we explore the combination of opportunistic routing and network coding for improving the performance of a WMN. We first reviewed existing work on opportunistic routing and coding-aware routing, and then proposed a coding-aware opportunistic routing protocol called CORE for improving the throughput performance of a WMN. CORE combines hop-byhop opportunistic forwarding and localized inter-flow network coding, which allow the nexthop node with the most coding opportunities to continue the packet forwarding and attempt to maximize the number of packets that can be carried in a single transmission, respectively. The simulation results show that CORE can significantly improve the throughput performance of a WMN as compared with COPE and OP. It should be pointed out that the combined hop-by-hop opportunistic forwarding and localized inter-flow network coding mechanism used in CORE can be incorporated into any existing routing protocols for WMNs, which is simple to implement.

14

16

18

20

[1] S. Biswas and R. Morris, “ExOR: Opportunistic Routing in Multi-Hop Wireless Networks,” Proc. ACM SIGCOMM ‘05, Philadelphia, PA, Aug. 2005, pp. 133–44. [2] S. Chachulski et al., “Trading Structure for Randomness in Wireless Opportunistic Routing,” Proc. ACM SIGCOMM ‘07, Kyoto, Japan, Oct. 2007, pp. 169–80. [3] C. Westphal, “Opportunistic Routing in Dynamic Ad Hoc Networks: The OPRAH Protocol,” Proc. IEEE MASS ‘06, Vancouver, Canada, Oct. 2006, pp. 570–73. [4] Y. Yuan et al., “ROMER: Resilient Opportunistic Mesh Routing for Wireless Mesh Networks,” Proc. IEEE WiMesh ‘05, Santa Clara, CA, Sept. 2005. [5] M. Zorzi and R. R. Rao, “Geographic Random Forwarding (GeRaF) for Ad Hoc and Sensor Networks: Multihop Performance,” IEEE Trans. Mobile Comp., vol. 2, no. 4, Oct.–Dec. 2003, pp. 337–48.

IEEE Wireless Communications • June 2010

Authorized licensed use limited to: Nokia Information Services. Downloaded on June 25,2010 at 07:51:51 UTC from IEEE Xplore. Restrictions apply.

6/9/10

10:42 AM

Page 103

[6] S. Katti et al., “XORs in the Air: Practical Wireless Network Coding,” Proc. ACM SIGCOMM ‘06, Pisa, Italy, Sept. 2006, pp. 243–54. [7] Z. Zhong et al., “On Selection of Candidates for Opportunistic AnyPath Forwarding,” ACM SIGMOBILE Mobile Comp. Commun. Rev., Oct. 2006, pp. 1–2. [8] S. Sengupta, S. Rayanchu, and S. Banerjee, “An Analysis of Wireless Network Coding for Unicast Sessions: The Case for Coding-Aware Routing,” Proc. IEEE INFOCOM ‘07, Anchorage, AK, May 2007, pp. 1028–36. [9] B. Ni et al., “Routing with Opportunistically Coded Exchanges in Wireless Mesh Networks,” Proc. IEEE WiMesh ‘06, Reston, VA, Sept. 2006, pp. 157–59. [10] Y. Wu, S. M. Das, and R. Chandra, “Routing with a Markovian Metric to Promote Local Mixing,” Proc. IEEE INFOCOM ‘07, Anchorage, AK, May 2007, pp. 2381–85. [11] J. Le, J. C. S. Lui, and D. M. Chiu, “DCAR: Distributed Coding-Aware Routing in Wireless Networks,” Proc. IEEE ICDCS ‘08, Beijing, China, June 2008, pp. 462–69.

80,000 Total number of reduced transmissions

ZHANG2 LAYOUT

BIOGRAPHIES

J IAN M A received his B.Sc. and M.Sc. in 1982 and 1987, respectively, from Beijing University of Posts and Telecom-

60,000 50,000 40,000 30,000 20,000

0 2

4

6

8

10 12 Offered load (Mb/s)

14

16

18

20

Figure 5. Number of reduced transmissions vs. offered load.

70 COPE CORE Percentage of encoded transmissions

J UN Z HENG [S‘99, M‘01, SM‘09] is a professor with the National Mobile Communications Research Laboratory, Southeast University (SEU), China. He received his Ph.D. degree in electrical and electronic engineering from The University of Hong Kong in 2000. Before joining SEU, he was with the School of Information Technology and Engineering, University of Ottawa, Canada. He serves as an editor or associate editor of IEEE Communications Magazine, IEEE Communications Surveys & Tutorials, IEEE/OSA Journal of Optical Communications and Networking, and several other refereed journals. He has co-edited 10 special issues for different refereed journals and magazines, including IEEE Journal on Selected Areas in Communications and IEEE Network, all as the lead Guest Editor. He has served as the funding General Chair of ADHOCNETS ‘09, General Chair of AccessNets ‘07, and TPC or Symposium Co-Chair of several international conferences and symposia, including IEEE GLOBECOM ‘08, IEEE ICC ‘09, IEEE GLOBECOM ‘10, and IEEE ICC ‘11. He has also served on the technical program committees of a number of international conferences and symposia. His research interests include wireless ad hoc and sensor networks, and mobile communication systems. He co-edited (chief editor) the book Wireless Sensor Networks: A Networking Perspective (Wiley-IEEE Press), and has published more than 80 technical papers in refereed journals and magazines and peer-reviewed conference proceedings.

70,000

10,000

YAN YAN [S] is currently a Ph.D. candidate with the Institute of Computing Technology, Chinese Academy of Sciences, Beijing, China. His research interests cover protocols and algorithm design and network coding for wireless ad hoc and sensor networks. He has published 10 papers in archival journals and conference proceedings. BAOXIAN ZHANG [M‘02] ([email protected]) is currently a full professor with the College of Computing and Communication Engineering, Graduate University of Chinese Academy of Sciences (GUCAS), Beijing, China. He is vice director of the Key Laboratory of Wireless Sensor Network and Communications, Chinese Academy of Sciences, Shanghai, China. Before joining GUCAS he was a research scientist with the School of Information Technology and Engineering, University of Ottawa, Canada. He received his B.S., M.S., and Ph.D. degrees from Beijing Jiaotong University, China, in 1994, 1997, and 2000, respectively. He has served as Guest Editor of several special issues for several journals including IEEE Journal on Selected Areas in Communications and ACM Mobile Networks and Applications. He has served as Symposium Co-Chair for several international conferences including ChinaCom ‘08 and IWCMC ‘09. He has served on theTechnical Program Committees for many international conferences and symposia. He has published over 70 refereed technical papers in archival journals and conference proceedings. His research interests cover network architecture, protocol and algorithm design, wireless ad hoc and sensor networks, and P2P applications.

“CORE” “COPE”

60

50 40

30 20

10 0

2

3 4 5 Number of native packets coded together

6

Figure 6. Percentage of encoded transmissions vs. number of original packets encoded together. munications, and his Ph.D. degree in 1994 from the Department of Electronics Engineering in Helsinki University of Technology. He is now a principal member of research staff, Nokia Research Center, Beijing, and is responsible for university cooperation in China and other APACs, the Nokia Postdoc Working Station, and the NokiaTsinghua Joint Research Laboratory. He has 11 patents granted, and is author or co-author of more than 150 papers in archival journals and conference proceedings, and a couple of books and book chapters. He is also an adjunct professor of Beijing University of Posts and Telecommunications, the Graduate University of the China Academy of Science, Tongji University, and Beihang University, China. His current research interests are consumer services on wireless sensor networks, mobile Internet applications, pervasive computing, and ad hoc and P2P networking.

IEEE Wireless Communications • June 2010

Authorized licensed use limited to: Nokia Information Services. Downloaded on June 25,2010 at 07:51:51 UTC from IEEE Xplore. Restrictions apply.

103

Suggest Documents