School Work

Opportunistic Any-Path Forwarding in Multi-Hop Wireless Mesh Networks

Description
Opportunistic Any-Path Forwarding in Multi-Hop Wireless Mesh Networks Zifei Zhong, Junling Wang, Srihari Nelakuditi University of Texas, Austin University of South Carolina, Columbia Abstract Routing protocols
Categories
Published
of 9
All materials on our website are shared by users. If you have any questions about copyright issues, please report us to resolve them. We are always happy to assist you.
Related Documents
Share
Transcript
Opportunistic Any-Path Forwarding in Multi-Hop Wireless Mesh Networks Zifei Zhong, Junling Wang, Srihari Nelakuditi University of Texas, Austin University of South Carolina, Columbia Abstract Routing protocols for multi-hop wireless networks have traditionally focused on finding the best path for forwarding packets between a pair of nodes. While such single-path forwarding is suitable for wired networks with relatively stable point-topoint links, it is not an ideal approach for wireless networks with broadcast links of time varying qualities. Opportunistic routing schemes, which exploit the broadcast nature of wireless transmissions, have been proposed to make packet forwarding insensitive to link quality variations. However, previously proposed opportunistic schemes select candidates and prioritize them based on single-path metrics such as ETX, which do not capture the real closeness between a node pair under opportunistic forwarding. In this paper, we propose a new metric expected any-path transmissions (EAX) for a pair of nodes with a given set of candidates that captures the expected number of transmissions between them under opportunistic forwarding. Based on EAX, we develop a candidate selection and prioritization method which guarantees that each candidate contributes to packet delivery. We then design a hop-by-hop routing scheme, opportunistic any-path forwarding (), which can handle multiple interactive traffic flows. We evaluate the performance of using NS2 and show that provides significant throughput improvement over traditional best-path routing. I. INTRODUCTION Multi-hop wireless mesh networks are increasingly gaining popularity because of its easy deployment, low cost, and reliable service. A multi-hop wireless mesh network consists of a number of wireless nodes, which each could be a wireless router or a laptop with wireless antenna, and these nodes and their adjacencies (potential neighbors) are typically stationary. This type of wireless network infrastructure is decentralized and relatively inexpensive. In a wireless mesh network, nodes act as repeaters to transmit data from nearby nodes to peers that are far away, resulting in a wireless network that can span large distances, especially over rough or difficult terrain. Capacity and coverage of a wireless mesh network is extendable. Extra capacity or coverage could be easily installed by simply adding more nodes. With these many good features of wireless mesh networks, several industry players are developing 82.-based mesh networking platforms and services [], [2]. Large-scale, metropolitan wide mesh networks are also planned [3]. For multi-hop wireless mesh networks to be a viable wireless technology, ideally they should offer similar level of service availability and reliability as wired networks. Unfortunately, apart from the component failures that are common in wired networks, wireless links have additional sources of degradation such as external interference, channel fading, and inclement weather. Therefore, reliable routing despite such fluctuations is essential for overcoming a potential hurdle to widespread deployment of wireless mesh networks. Routing protocols for wireless networks, however, have traditionally focused on finding the best path for forwarding packets between a pair of nodes. While such single-path forwarding is suitable for wired networks with relatively stable point-to-point links, it is not an ideal approach for wireless networks with broadcast links of time varying qualities. Fluctuations in the quality of any of the links along the predetermined single path can cause excessive retransmissions at the link layer or reroutings at the network layer. Consequently, opportunistic routing schemes that mitigate the impact of link quality variations by exploiting the broadcast nature of wireless transmissions are being actively explored [4] []. The general idea behind these schemes is that, for each destination, a set of candidate next-hops are selected in-advance and one of them is chosen for forwarding on a per-packet basis according to its reachability at that instant. By employing such opportunistic forwarding, these schemes reduce the number of transmissions needed for reliable delivery of a packet to its destination. Candidate selection and prioritization are the two key issues that need to be addressed by any opportunistic routing scheme. Previously proposed opportunistic schemes such as ExOR [4], [5], [] select many possible next-hops as candidates and prioritize them based on the closeness from a candidate to the destination estimated using single-path metrics such as ETX [2] and hop count. These schemes could generate candidate set and priority that degrade routing performance, because the single-path metrics they use to estimate closeness do not account for the fact that packets are delivered by candidates in turn under opportunistic forwarding. Forwarding duplication among candidates does harm to the potential gain of opportunistic routing. Some earlier proposed schemes [8], [] assume that acknowledgments have a delivery probability of %, and thus they do not take care of duplicated forwarding. A recently proposed opportunistic scheme ExOR [5], [] employs a batch mechanism to ensure robust acknowledgments and successfully eliminate duplicated transmissions. However, the batch mechanism of ExOR limits its application to only single-flow bulk transfer. This paper presents Opportunistic Any-Path Forwarding (), an opportunistic routing protocol in multi-hop wireless mesh networks. aims to exploit the broadcast nature of wireless transmission and fit applications with multiple simultaneous interactive traffic. In this paper, we propose a new metric Expected Any-path Transmissions (EAX) [3] 2 A E.6.8 B.8 F Fig...4 C.5.8 Topology used for illustration D TABLE I ACK DELIVERY PROBABILITY WITH ROBUST ACK MECHANISM batch size A B A E B E D F A F B C C D B D D E for a pair of nodes with a given set of candidates that captures the expected number of transmissions between them under opportunistic forwarding. With this EAX metric, selects candidates which really contribute to packet delivery and correctly prioritizes candidates. employs a specific robust acknowledgment (RACK) design and a sliding window mechanism, which together make possible multiple interactive traffic transmit simultaneously under opportunistic forwarding. The rest of the paper is organized as follows. Section II describes EAX metric and candidate selection and prioritization. Section III provides the design with details on RACK and sliding window mechanisms. Section V presents evaluation results of s throughput performance. Section VI discusses related work, and section VII concludes. II. EAX METRIC, CANDIDATE SELECTION AND PRIORITIZATION The candidate selection and prioritization are key issues that need to be addressed by any opportunistic routing scheme. Previously proposed opportunistic schemes such as ExOR [4], [5], [] select many possible next-hops as candidates and prioritize them based on the best-path ETX from a candidate to the destination. We argue that, instead of many candidates, it is desirable to select those that do help reduce the number of transmissions. This would decrease the overheads in reaching forwarding agreements among candidates or the amount of delay in the delivery of a batch of packets. In addition, candidate selection and prioritization based on the best-path ETX from candidate to destination does not account for the fact that the candidates also in turn employ opportunistic forwarding. In this section, we propose a new metric expected any-path transmissions (EAX) for a pair of nodes with a given set of candidates that captures the expected number of transmissions between them under opportunistic forwarding. We then describe a candidate selection and prioritization method based on EAX to select candidates which really help packet delivery. The following of this section provides details of the EAX metric, and the procedures of candidate selection and prioritization based on EAX. A. EAX Metric We now define the EAX for a source s and a destination d. Let C s,d be the set of candidate next-hops from s to d, and C s,d i be the candidate with priority i (with being the highest). λ i represents the probability that the i-th priority candidate does not get informed any higher priority candidates receiving of the same packet. Suppose the packet and ACK delivery probability from s to C s,d i is f i and a i respectively. Then, we have EAX(s, d) = S(s, d) + Z(s, d) () S(s, d) = Z(s, d) = i ( f ia i ) i λ if i EAX(C s,d i, d) i ( f i) With considerations on loss of ACKs, it is quite complex to accurately calculate λ i. As an alternative, we choose to approximate λ i using the following formula λ i = j i ( f j + f j ( a i j) k i( a k j a i kf k ) Formula 4 generates exactly the value of λ i when the size of candidate set is less than four, otherwise it does not count for the ACK delivery among candidates with priorities lower than i. In our observation, formula 4 is actually an approximation close enough for generating valid candidate selection and prioritization. In case a robust acknowledgment (RACK) mechanism like batch [] is employed, the delivery probability of ACKs varies with different RACK size. Suppose a single ACK delivery probability is a and RACK size is n, the resulting ACK delivery probability is ( a) n. Consider the network illustrated in Fig., where it is assumed on each bidirectional link a single ACK has the same delivery probability as that of a data packet, then with a RACK mechanism the resulting ACK delivery probability on each link is shown in Table I. As shown in Table I, that with a large RACK size, ACKs could have a delivery probability of.. In this case, completely eliminating forwarding duplication becomes possible. To this end And then ) (2) (3) (4) λ i = j i( f j ) (5) 3 TABLE II DISTANCE UNDER ETX AND EAX METRIC metric A B C D E F ETX EAX TABLE III DIFFERENCE IN CANDIDATES, PRIORITIZATION, AND TRANSMISSION metric (src, dst) size candidates priority # Tx ETX (A, D) 3 B, E, F E B F 5.33 EAX (A, D) 2 B, E B E 3.28 EAX(s, d) = + i i EAX(Cs,d i, d)f i j= ( f j) i ( f i) With the definition of EAX metric, we show the difference between EAX and ETX by taking the illustration network in Fig. as an example. Suppose D is the destination, and RACK size is 2. Further assume that A selects B and E as candidates and similarly B selects C and D, while all other nodes each have just one candidate (the bestpath next-hop). The corresponding EAX and best path ETX from each node to the destination D are given in Table II. B. EAX Candidate Selection It is possible that the candidate selection based on an inappropriate metric can actually degrade network throughput. For example, under ExOR two next-hop nodes c and c 2 are both selected as candidates by source s if the ETX distance from c and c 2 to destination d are both closer than that from s to d. This could lead to duplicated forwarding by c and c 2 in case these two candidates can not communicate with each other at all. The proposed new metric EAX accounts for the duplicated forwarding among candidates and helps determine the contribution of a candidate to the delivery of packets between a node pair and enables judicious selection of candidates. The selection of candidates based on EAX can be performed as follows at a node s for a specific destination d. First, a set of potential candidates Ĉs,d is determined based on the best path ETX. A neighbor j is included in Ĉs,d only if ETX(s, d) ETX(j, d). Then, a subset of Ĉs,d is selected as the actual candidate set C s,d. Note that the candidate selection for all the nodes in Ĉs,d is done before it is done for s. The set C s,d is initialized with the next hop having the smallest ETX to d. The rest of the candidates are selected incrementally as follows. A potential candidate is considered for inclusion in the set C s,d only if it reduces the EAX(s, d) by a factor of at least ψ which is a configurable parameter. Among such potential candidates, the one that reduces EAX(s, d) by most is added to C s,d. This process is repeated till no new candidates are added to the set. The candidate selection based on ETX and EAX is illustrated using Fig.. Assume node A is the source and node D is the destination. The results are summarized in Table III. By using ETX, node A will choose 3 candidates: B, E, and F. Because paths from these nodes to D have smaller ETX than that from A to D. If we use EAX, then only 2 nodes, B and E, will be selected by source A. Because with these two candidates the EAX from A to D is less than the EAX from F to D, adding F to the candidate set does not decrease EAX between A and D. Similarly prioritization based on EAX yields different ordering among the candidates. Based (6) on EAX, B gets higher priority than E. The differences in the candidate selection and prioritization based on ETX and EAX result in different number of transmissions needed to deliver a packet from A to D: with ETX, 5.3 transmissions are needed on average, while it is only 3.3 transmissions if using EAX. Selecting F as a candidate causes severe forwarding duplication. III. DESIGN Our EAX metric solves one of the challenges in opportunistic routing design that there have to be a metric reflecting the likely cost of moving a packet from any node to the destination, because EAX captures the expected number of transmissions between a node pair over multiple paths under opportunistic forwarding. In ExOR [4], [5], [], using to many nodes as candidates increases the costs of achieving forwarding agreement among candidates, and ExOR s ETX based candidate selection might not select the optimal collection of candidates. With EAX based candidate selection, our avoids those drawbacks as candidates are selected based on their contribution to packet delivery. To achieve agreements among candidates on packet forwarding and avoid duplication, we propose a robust acknowledgment (RACK) mechanism, which eliminates explicit ACK frames and instead includes a collection of ACKs in the header of data frames. RACK is similar to the Piggybacked- ACK mechanism introduced in [4]. However, it differs in that RACK involves more elaborated designs specifically for opportunistic forwarding. RACK is also similar to the Batch mechanism in [] since both of them resist ACK loss by including a collection of ACKs within packet header and thus each ACK gets transmitted multiple times. However, RACK works on per-packet basis for multiple flows while Batch only works with single flow on the basis of a batch of packets. A. Packet Header and RACK Field The key idea of our approach is to replace explicit ACK frames in 82. by piggybacking ACKs within data frames. This can be implemented by including a RACK field in the header of each data frame. A collection of ACKs are filled in the RACK filed. A RACK Field has several entries, each of them functionally acts as a single ACK. An entry is represented by src, dst, sqn, sid where src identifies a sender uniquely using its node ID in the network, dst is the ID of the destination node that the packet is transmitted to, sqn is the sequence number of that packet, and sid is the ID of the node that has the shortest distance to destination among those nodes that are known to have a copy of that packet. Fig. 2 illustrates the packet header and format of the 4 Ethernet Header Ver HdrLen PayloadLen Fig. 2. RACK Field Checksum Payload RACK Field src dst sqn sid. M src dst sqn sid Format of packet header and RACK filed RACK Field. For a wireless mesh network that has less than 256 nodes, 8 bits are sufficient to represent a node ID. For the packet sequence number, we set it 6 bits. Therefore, each entry in the RACK Field occupies 5 bytes. Totally 5 bytes are needed to carry ACKs for ten packets in a RACK field. In a RACK field of a size of M, each ACK has the opportunity of being totally transmitted M times. The collection of ACKs in a RACK field could be for packets that were originated from different sources. This enables the works with multiple flows on per-packet transmission basis. RACK Field is similar in structure but functionally superior to batch map given that ACKs in bath map are only for a single flow of packets transmitted between the same sourcedestination pair. B. Sliding Window Another important design in is a TCP-like sliding window, which is maintained by each node for packet transmission. With sliding window, packets are not required to be ACKed immediately after being transmitted out. This sliding window together with the RACK field design make ACK delivery robust, because within a sliding window period multiple packets could be delivered, and thus each ACK gets multiple opportunity of being transmitted as part of the RACK field in packet header. It should be noted that packets within the sliding window at a sender are re-numbered with local sequence numbers with respect to the sender and the packet destination, regardless of the packet source. The space of local sequence number of packets is assumed to be much less than that of real sequence number. The sliding window also manages packet retransmissions. Retransmission is triggered upon timeout events or packet loss. A timeout event happens when an un-acked packet reaches the end of sliding window. Packet loss can be detected at a sender by checking the local sequence number in the RACK Field of the packets received from candidates. The sliding window mechanism of is different from TCP sliding window in that it is maintained per node. Each node maintains a a sliding window, which allows the sender to transmit multiple packets without waiting for an immediate acknowledgment, and the sliding window size, N, is the maximum allowable number of unacknowledged packets. C. Packet Transmission Each node maintains a local RACK Table. A node s RACK Table with a size of K contains K entries, which record information of K packets that are received most recently by this node and could be potentially forwarded by this node (Note that not every packet received at a node could have a corresponding record in RACK Table). Each entry of a RACK Table has the same format as that of entries of the RACK field in packet header. When transmitting a packet, a sender first checks/senses the channel status. If the channel is busy, the sender increases its contention window and then backoff transmission. If the channel is idle, the sender includes M entries from RACK Table into the packet s RACK Field, encapsulating the packet with a new header, and then broadcasts the packet out. The sliding window moves forward one step after each packet transmission. D. Packet Reception It is assumed that in a wireless mesh network every node is aware of the global topology and long term link-level packet delivery ratio, based on which it can calculate the candidate collection of each node pair, the priority of each candidate in its collection, and the EAX distance between each node pair. Each node maintains a local Candidate Table and a local Dist Table. The Candidate Table includes all the candidate information for every node pairs in the network, while the Dist Table stores the EAX distance between all node pairs. Upon receiving a packet from a sender, a receiver firstly extracts the RACK Field from packet header. The receiver updates its local RACK Table with information from the packet RACK Field. The receiver also updates local Packet Queue and transmission timers with information from the RACK Table. At a node, the Packet Queue stores all the packets that need to be forwarded by this node, and each packet in Packet Queue is associated with a transmission timer, which sets the waiting time before transmitting that packet. When updating the local RACK Table, if there is an entry in the received
Search
Related Search
We Need Your Support
Thank you for visiting our website and your interest in our free products and services. We are nonprofit website to share and download documents. To the running of this website, we need your help to support us.

Thanks to everyone for your continued support.

No, Thanks