290 IEEE JOURNAL ON SELECTED AREAS IN COMMUNICATIONS, VOL. 30, NO. 2, FEBRUARY 2012can be adjusted by intermediate forwarders. Furthermore,as these packets are forwarded along the new route,such updated information is propagated upstream rapidlywithout any additional overhead. As a result, all upstreamnodes learn about the new route at a rate much faster thanvia periodic route exchanges.• We take opportunistic data forwarding to another levelby allowing nodes that are not listed as intermediateforwarders to retransmit data if they believe certainpackets are missing.The rest of this article is organized as follows. Section IIreviews related work on utilizing the broadcasting natureof wireless links, with special focus on ExOR. Section IIIdescribes the basic idea of CORMAN. The details of COR-MAN are presented in Sections IV and V. We use computersimulation to test the performance of CORMAN, and thesettings and results of these experiments are in Section VI.In Section VII, we discuss some of our crucial design choicesand their effects on the overall of CORMAN. Section VIIIconcludes the article with an outlook to future research.II. RELATED WORKThe utilization of the broadcasting nature of wireless channelsat the link layer and above has a relatively recent historycompared to the efforts at the physical layer. Larsson proposes an innovative handshake technique, called SelectionDiversity Forwarding (SDF), to implement downstreamforwarder selection in a multihop wireless network, wheremultiple paths are provided by the routing module. In thiscase, a sender in the network can dynamically choose froma set of usable downstream neighbors that present high transientlink quality. For the sender to make the decision, theIEEE 802.11 Distributed Coordination Function (DCF)-basedDATA/ACK handshake is enhanced. Such a handshake is thefirst opportunistic utilization of link quality variation in multihopwireless networks at the link and network layers. Thecoordination in SDF is somewhat expensive and its overheadneeds to be significantly reduced for it to be more practical.ExOR  is an answer to that. It is an explorative crosslayeropportunistic data forwarding technique in multi-hopwireless networks by Biswas and Morris. It fuses the MAC(Medium Access Control) and network layers so that theMAC layer can determine the actual next-hop forwarder aftertransmission depending on the transient channel conditions atall eligible downstream nodes. Nodes are enabled to overhearall packets transmitted in the channel, whether intended for itor not. A multitude of forwarders can potentially forward apacket as long as it is included on the forwarder list carriedby the packet. Thus, if a packet is heard by a listed forwardercloser to the destination with a good reception condition, thislong-haul transmission should be utilized. Otherwise, shorterand thus more robust transmissions can always be used toguarantee reliable progress. The challenge is to ensure thatexactly one of the listed forwarders should relay the packetthat is likely to be the closest to the destination at the sametime. This is addressed by prioritized scheduling among thelisted forwarders according to their priority indicated in theforwarder list.We adopt the following terms defined in ExOR to describesimilar concepts in CORMAN:• Batch size — number of packets in a batch. It has thesame value for all packets in a given batch.• Forwarder list size — number of forwarders on theforwarder list. It has the same value for all packets ina given batch.• Packet number — index of the packet in the batch.• Forwarder number — index of the forwarder on theforwarder list. It indicates which node on the list has justtransmitted the data packet.• Batch map — an array whose size equals the batch size.Each element of the map is indexed by the packet number,and its value is the forwarder number of the highestpriorityforwarder that this packet has reached.• Fragment — a subset of packets in the current batchwhich are sent together from a given forwarder.In ExOR, data packets are prepended with an ExOR header,which includes some of the above information. They arefurther prepended with an 802.11 DATA frame header beforebeing broadcasted. For more details of the packet formats, thereaders are referred to .The idea of ExOR has since inspired a number of interestingextensions. Here, we just name a few of these without tryingto be complete. MORE  enhances ExOR to further increasethe spatial reuse in a single flow from source to destinationvia intra-flow network coding . Leontiadis and Mascolo and Yang et al.  propose using position information forthe routing module to support mobile multi-hop wirelessnetworks. Therein, it is assumed that every node is aware ofthe positions of all other nodes in the network. This is possibleif some sort of universal positioning service and out-of-banddissemination of such information in the network are available.To generalize the idea behind ExOR to more different typesof networks, such as mobile wireless networks, lightweightrouting algorithms with proactive source routing capabilitiesare preferred. Path Finding Algorithm (PFA)  was developedbased on the distance vector algorithm, which incorporatesthe predecessor of a destination in a routing update.Hence, the entire path to a destination can be reconstructedby the source node. On the other hand, the Link Vector (LV)algorithm  reduces the overhead of link-state algorithmsto a great deal by only including links to be used in dataforwarding in routing updates. The extreme case of LV whereonly one link is included per destination coincides withPFA. While the two algorithms above were initially proposedto address the routing scalability issue in the Internet, theWireless Routing Protocol (WRP)  attempts to apply theidea of PFA to mobile wireless networks. The update messagesin WRP are event-driven and it requires reliable link-layerbroadcast, which incurs a significant amount of overhead.III. OVERVIEW OF CORMANCORMAN is a network layer solution to the opportunisticdata transfer in mobile ad hoc networks. Its node coordinationmechanism is largely inline with that of ExOR and it is anextension to ExOR in order to accommodate node mobility.Here, we first highlight our objectives and challenges in order
WANG et al.: CORMAN: A NOVEL COOPERATIVE OPPORTUNISTIC ROUTING SCHEME IN MOBILE AD HOC NETWORKS 291to achieve them. Later in this section, we provide a generaldescription of CORMAN. The details of CORMAN will bepresented in Sections IV and V.A. Objectives and challengesCORMAN has two objectives. 1) It broadens the applicabilityof ExOR to mobile multi-hop wireless networkswithout relying on external information sources, such as nodepositions. 2) It incurs a smaller overhead than ExOR byincluding shorter forwarder lists in data packets.The following challenges are thus immanent.1) Overhead in route calculation — CORMAN relies onthe assumption that every source node has completeknowledge of how to forward data packets to any nodein the network at any time. This calls for a proactivesource routing protocol. Link state routing, such asOLSR, would meet our needs but it is fairly expensivein terms of communication costs. Therefore, we needa lightweight solution to reduce the overhead in routecalculation.2) Forwarder list adaptation — When the forward list isconstructed and installed in a data packet, the sourcenode has updated knowledge of the network structurewithin its proximity but its knowledge about furtherareas of the network can be obsolete due to nodemobility. This error becomes worse as the data packetis forwarded towards the destination node. To addressthis issue, intermediate nodes should have the abilityto update the forwarder list adaptively with their newknowledge when forwarding data packets.3) Robustness against link quality variation — When usedin a dynamic environment, a mobile ad hoc networkmust inevitably face the drastic link quality fluctuation.A short forwarder list carried by data packets impliesthat they tend to take long and possibly weak links.For opportunistic data transfer, this could be problematicsince the list may not contain enough redundancy inselecting intermediate nodes. This should be overcomewith little additional overhead.B. CORMAN fundamentalsCORMAN forwards data in a similar batch-operated fashionas ExOR. A flow of data packets are divided into batches.All packets in the same batch carry the same forwarder listwhen they leave the source node. To support CORMAN,we have an underlying routing protocol, Proactive SourceRouting (PSR), which provides each node with the completerouting information to all other nodes in the network. Thus, theforwarder list contains the identities of the nodes on the pathfrom the source node to the destination. As packets progressin the network, the nodes listed as forwarders can modify theforwarder list if any topology change has been observed in thenetwork. This is referred to as large-scale live update in ourwork. In addition, we also allow some other nodes that arenot listed as forwarders to retransmit data if this turns out tobe helpful, referred to as small-scale retransmission. Note thatCORMAN is a completely network layer solution and can bebuilt upon off-the-shelf IEEE 802.11 networking commoditieswithout modification.Therefore, the design of CORMAN has the following threemodules. Each module answers to one of the challenges statedpreviously.1) Proactive source routing — PSR runs in the backgroundso that nodes periodically exchange network structureinformation. It converges after the number of iterationsequal to the network diameter. At this point, eachnode has a spanning tree of the network indicating theshortest paths to all other nodes. PSR is inspired by pathfinding ,  and link-vector  algorithms but islighter weight. Technically, PSR can be used withoutCORMAN to support conventional IP forwarding.2) Large-scale live update — When data packets are receivedby and stored at a forwarding node, the nodemay have a different view of how to forward them tothe destination from the forwarder list carried by thepackets. Since this node is closer to the destination thanthe source node, such discrepancy usually means that theforwarding node has more updated routing information.In this case, the forwarding node updates the part of theforwarder list in the packets from this point on towardsthe destination according to its own knowledge. Whenthe packets with this updated forwarder list are broadcastby the forwarder, the update about the network topologychange propagates back to its upstream neighbor. Theneighbor incorporates the change to the packets in itscache. When these cached packets are broadcast later,the update is further propagated towards the source node.Such an update procedure is significantly faster than therate at which a proactive routing protocol disseminatesrouting information.3) Small-scale retransmission — A short forwarder listforces packets to be forwarded over long and possiblyweak links. To increase the reliability of data forwardingbetween two listed forwarders, CORMAN allows nodesthat are not on the forwarder list but are situatedbetween these two listed forwarders to retransmit datapackets if the downstream forwarder has not receivedthese packets successfully. Since there may be multiplesuch nodes between a given pair of listed forwarders,CORMAN coordinates retransmission attempts amongthem extremely efficiently.The details of PSR and its improvements are in separate workof ours , . The second and third modules are describedin subsequent sections.IV. LARGE SCALE LIVE UPDATECORMAN generalizes the opportunistic data forwardingin ExOR to suit mobile wireless networks. That is, when abatch of packets are forwarded along the route towards thedestination node, if an intermediate node is aware of a newroute to the destination, it is able to use this new route toforward the packets that it has already received. There area few implications of this. First, this new route will also beused to forward the subsequent packets of the same batch.Second, when packets are forwarded along the new route, such
WANG et al.: CORMAN: A NOVEL COOPERATIVE OPPORTUNISTIC ROUTING SCHEME IN MOBILE AD HOC NETWORKS 293• Third, node r uses a scoring function F(d(f 1 ,r),d(r, f 2 ))in the positive real domain to measure how “suitable” it isas a retransmitter for f 1 and f 2 . F can be any function thatfavors a node close to the midpoint of the line segmentbetween f 1 and f 2 but not too close to either one ofthem. In addition, node r is also able to calculate thissuitability value for all other nodes satisfying the firsttwo conditions. This is possible if node r is aware ofthe RSSI measurements of all links incident on a nodein N(r). This can be realized simply by every nodebroadcasting the RSSI of all incident links periodically.This last condition ensures that node r should have thebest suitability score among those satisfying the first twoconditions.Suppose r decides that it is indeed the retransmitter betweenf 1 and f 2 . It should retransmit the packets that f 2 or anyhigher-priority node has missed. For us to keep track of theprogression of data packets in the batch, each element of thebatch map can have a value p (0 ≤ p ≤ 2(l − 1)), wherel isthe number of nodes in the forwarder list. We use the parity ofp to distinguish if the corresponding node is a listed forwarderor not. That is, when it is even, p/2 is the offset of the nodein the list that the corresponding packet has reached. When pis odd, the packet has reached the retransmitter between the(p − 1)/2-th and (p +1)/2-th forwarders. Once node r haslearned what packets should be retransmitted and what batchmap they should carry, it retransmits them as if it were a listedforwarder.VI. PERFORMANCE EVALUATIONIn this section, we study the performance of CORMAN byrunning computer simulation using Network Simulator ns-2(version 2.34). We compare it against AODV with varyingnetwork densities and node mobility rates. The performanceimprovement and explanations of these results are explainedin the rest of this section.A. Experiment settingsThe channel propagation model used in ns-2 had beenpredominantly the Two-Ray Ground Reflection model earlyon. However, this model is realized to be a simplified a pathloss model without considering fading. In our work, we choosethe Nakagami propagation model to test CORMAN in a morerealistic fading environment. In ns-2, when a node has receiveda packet, it first calculates the received power using path lossbased on the Frii Free-Space model. This value is compensatedwith Nakagami’s fluctuation before further processing. Weconfigure the nominal data rate at the 802.11 links to 1 Mbps,We compare the performance of CORMAN with that ofAODV . We select AODV as the baseline because AODVis a widely adopted routing protocol in MANETs, and itsbehavior both in ns-2 and real network operations is wellunderstood by the research community.In modeling node motion, we adopt the random waypointmodel to generate the simulation scenarios. In this model,each node moves towards a series of target positions. Therate of velocity for each move is uniformly selected from[0,v max ]. Once it has reached a target position, it may pausefor a specific amount of time before moving towards the nextposition. In our tests, we have two series of mobile scenariosusing this mobility model. The first series of scenarios have afixed v max , a constant number of nodes, but varying networkdimensions. The second series have the same network size anddimension but varying v max .We inject CBR (constant bit rate) data flows in the network,which are carried by UDP. Specifically, a source node generates50 packets every second, each has a payload of 1000bytes. This translates to a traffic rate of 400 kbps injectedby a node. When comparing CORMAN to AODV, we recordthe packet delivery ratio (PDR), i.e. the fraction of packetsreceived by the destination out of all the packets injected,and end-to-end delay average and variance. We observe thatCORMAN outperforms AODV in terms of all of these metrics.B. Performance versus network dimensionWe first compare the performance of CORMAN andAODV with different network dimensions. Specifically, wehave network tomographies of l × l (m 2 ), where l =250, 300, 350,...,1000. We deploy 50 nodes in each of thesenetwork dimensions to test the protocols with differing nodedensities. These nodes move following the random waypointmodel with v max =10m/s. For each dimension scenario, wetest CORMAN and AODV’s capabilities in transporting CBRdata flows between a randomly selected source-destinationpair. We repeat this process 5 times for a given scenario.We measure the PDR, end-to-end delay, and delay jitter forboth protocols and average them over the 5 repetitions of eachscenario, as plotted in Figures 3, 4, and 5, respectively.We observe that CORMAN has a PDR (Figure 3) of about95% for dense networks (i.e., 250 ≤ l ≤ 500 m). As thenode density decreases, this rate gradually goes down to about60%. In contrast, AODV’s PDR ranges between 60% and80% for dense networks and quickly drops to around 20%for sparse networks. (We use a red plotting series to indicatethe relative performance of CORMAN over PDR in all ofour figures.) There are two reasons for the PDR penalty forAODV to operate in sparse networks. First, data packets areforwarded using traditional IP forwarding in AODV. Whenchannel quality varies (as emulated by the Nakagami model),a packet may be lost at the link layer. After a few failed retransmits,it will be dropped by the network layer. CORMAN,however, is designed to utilize such link effects so that atleast one downstream node would be available despite the linkvariation. CORMAN facilitates opportunistic data forwardingusing the link quality diversity at different receivers and allowsthem to cooperate with each other with a minimal overhead.Consequently, CORMAN has a strong resilience to link qualityfluctuation and node mobility. Second, the route search ofAODV does not function well with unreliable links. Recallthat, in AODV, when a node finds that it does not have anext hop available for a given data packet, it broadcasts aRREQ (route request) to find one. Both the destination andany intermediate node that has a valid cached route can replywith a RREP. When links were perfectly symmetric, the RREPpacket would take the inverse path leading to the initiatingnode of the route search. However, when links suffer from
294 IEEE JOURNAL ON SELECTED AREAS IN COMMUNICATIONS, VOL. 30, NO. 2, FEBRUARY 2012PDR (%)Fig. 3.1009080706050403020100650600550500450400350300250PDR vs. network dimensionNetwork dimension (m)1000950900850800750700CORMANAODVRelativefading, the RREP packets may not be able to propagate backto the initiator because of transient low link quality in thereverse direction. As a result, it takes AODV much longer toobtain stable routes. In fact, this performance loss has beenobserved in earlier studies of AODV when large numbers ofunidirectional links are present in the network . In ourns-2 simulation using the Nakagami propagation model, theindependent link quality fluctuation in both directions essentiallyproduces temporary unidirectional links. This negativeeffect of fading links on AODV can be mediated to a degreewhen the node density increases. Therefore, in our next setof tests (Section VI-C), all simulation scenarios have a fairlyhigh node density for AODV to function reasonably well.We are also interested in the end-to-end delay and itsvariance of CORMAN and AODV. Figure 4 presents theend-to-end delay of these protocols in different dimensionscenarios. We see that, when the node density is higher (i.e.,250 ≤ l ≤ 500 m), CORMAN has a shorter delay thanAODV. For sparser scenarios (i.e., 550 ≤ l ≤ 1000 m), COR-MAN’s delay is slightly longer than AODV but comparable.In CORMAN’s implementation, a node determines that it canno longer contribute to a batch’s progression if it has not seenan update of the map after 10 retransmits of its fragment. Thisis similar to 10 retries at the link layer in IP style forwarding.(The default retry limit in 802.11 is 7.) Thus, the not-so-shortend-to-end delay of CORMAN is caused by the larger numberof data retransmits. This is a relatively small cost to pay for asignificantly higher PDR (Figure 3). The delay jitter (standarddeviation) measured for CORMAN and AODV has similarrelative performance for these scenarios as in Figure 5. This isalso because of the larger retry limit of CORMAN (10 times)compared to AODV over 802.11 (7 times).C. Performance versus velocityWe also study CORMAN’s performance and compare itto AODV in different rates of node velocity. We conductanother set of tests in a network of 100 nodes deployedin a 300 × 300 (m 2 ) space with a varying v max , wherev max = 0, 2, 4, 6,...,20 (m/s). For each velocity scenario,we test CORMAN and AODV’s performance in transportingCBR data flows again between a randomly selected sourcedestinationpair. We repeat this process 5 times for a givenscenario. We collect the PDR, end-to-end delay, and delay400350300250200150100500Relative performance (CORMAN vs. AODV %)Average delay (s)0.90.80.70.22.214.171.124.20.10Fig. 4.Delay variance (s)1.11.00.90.126.96.36.199.188.8.131.52Fig. 5.650600550500450400350300250Network dimension (m)Packet delay vs. network dimension650600550500450400350300250Network dimension (m)Delay jitter vs. network dimension10009509008508007507001000950900850800750700CORMANAODVRelativeCORMANAODVRelativejitter for both protocols averaged over each scenario, and plotthem in Figures 6, 7, and 8, respectively. Note that these arefairly dense networks so that AODV has a reasonably highPDR. Since the network diameter is rather small in this case,the measurements are fairly consistent across these differentvelocity scenarios.From Figure 6, we observe that CORMAN’s PDR is constantlyaround 95% while that of AODV varies between 57%and 82%. With this very high network density, AODV’s routesearch succeeds in majority of the cases. Yet, it still doesnot have the same level of robustness against link qualitychanges as CORMAN. Compared to AODV, CORMAN hasonly a fraction of the end-to-end delay and variance (Figures7 and 8) for two reasons. First, the opportunistic dataforwarding scheme in CORMAN allows some packets toreach the destination in fewer hops than AODV. Second, theproactive routing (PSR) in CORMAN maintains full-on routeinformation, whereas AODV still has to search for them ifa route is broken. Although route search in AODV usuallysucceeds in dense networks with fluctuating link quality, thedelay introduced by this process is inevitable.Based on these observations, CORMAN can maintain itsperformance despite high rate of node velocity with realisticchannels emulated by the Nakagami model. Hence, it is verysuitable for a number of mobile ad hoc network applications,e.g., Vehicular Ad-hoc Network (VANET).018016014012010080604020020018016014012010080604020Relative performance (CORMAN vs. AODV %)Relative performance (CORMAN vs. AODV %)
WANG et al.: CORMAN: A NOVEL COOPERATIVE OPPORTUNISTIC ROUTING SCHEME IN MOBILE AD HOC NETWORKS 295PDR (%)100908070605040302010CORMANAODVRelative20018016014012010080604020Relative performance (CORMAN vs. AODV %)Delay variance (s)0.40.3184.108.40.206.150.10.05CORMANAODVRelative5045403530252015105Relative performance (CORMAN vs. AODV %)00 2 4 6 8 10 12 14 16 18 20v max (m/s)000 2 4 6 8 10 12 14 16 18 20v max (m/s)0Fig. 6.PDR vs. node velocityFig. 8.Delay jitter vs. node velocityAverage delay (s)0.3220.127.116.11.150.10.05Fig. 7.0CORMANAODVRelative0 2 4 6 8 10 12 14 16 18 20v max (m/s)Packet delay vs. node velocityVII. DISCUSSIONWe would like to direct the readers’ attention to the followingdiscussion before concluding our article.• The primary routing metric in PSR is hop count, withETX to break ties. We decided to take this different approachfrom ExOR because we would like to utilize longlinks opportunistically as much as possible. Besides fasterprogression of packets from the source to the destination,the shorter forwarder lists also incur a smaller communicationoverhead in CORMAN in two aspects. First, theCORMAN protocol header is shorter compared to that ofExOR. Second, a compact forwarder list simplifies andexpedites the coordination of downstream nodes in thata node in CORMAN does not need to wait for a largernumber of higher-priority nodes before it can go forthto transmit the data. This inevitably pushes CORMANto include forwarders linked by weak channels in datapackets. The unreliability of these links is overcomeby allowing nodes between consecutive forwarders toretransmit missing data packets.• CORMAN is a network layer solution and its couplingwith the link layer is minimal. Since the only 802.11link layer service used by CORMAN is the unreliablebroadcast of DATA frames, it can be built using off-theshelfequipment. As with ExOR, CORMAN implementspart of the functionality which would otherwise have ex-6050403020100Relative performance (CORMAN vs. AODV %)isted at the link layer. For example, the acknowledgementof receiving packets is conveyed implicitly by the batchmaps carried in the packets forwarded by downstreamnodes.• Our framework is completely compatible with the IEEE802.11 standard family and can co-exist with conventional802.11 traffic in the same network. After all,CORMAN is encapsulated as generic payload in 802.11broadcast DATA frames.• CORMAN is designed to support multiple simultaneousdata flows. When a node overhears a packet from anearby node, it records the time that this happens toestimate how long it will take that node to completetransmitting all packets in the fragment. The overhearingnode uses this estimate to decide when it should starttransmitting its own fragment. Such an estimation incorporatesthe backoff time of the DATA frame in orderto reflect the traffic load in the network. As a result, ifmultiple flows are competing for the network resources,CORMAN allows them to share the network in an orderlyfashion.VIII. CONCLUSION AND FUTURE WORKIn this article, we have proposed CORMAN as an opportunisticrouting scheme for mobile ad hoc networks. COR-MAN is composed of three components. 1) PSR — a proactivesource routing protocol, 2) large-scale live update of forwarderlist, and 3) small-scale retransmission of missing packets. Allof these explicitly utilize the broadcasting nature of wirelesschannels and are achieved via efficient cooperation amongparticipating nodes in the network. Essentially, when packetsof the same flow are forwarded, they can take different pathsto the destination. For example, in Figure 9, the route betweennodes X and Y as determined by the routing module isindicated by the yellow band. The solid circles represent thelisted forwarders and the hollow ones are the small-scaleretransmitters. In actual operations of CORMAN, packets p 1 ,p 2 ,andp 3 can take separate routes around this band dependingon the transient link quality in the network. Such a decisionis made on a per-hop and per-packet basis. Through computersimulation, CORMAN is shown to have superior performancemeasured in PDR, delay, and delay jitter. Research based on
296 IEEE JOURNAL ON SELECTED AREAS IN COMMUNICATIONS, VOL. 30, NO. 2, FEBRUARY 2012Xp1Fig. 9.p2p3Packet trajectoriesCORMAN can be extended in the following interesting ways.1) It would be informative to further test CORMAN. Forexample, we can compare CORMAN to ExOR and IPforwarding in static multi-hop networks with varyinglink quality to study their relative capabilities in datatransfer. We will also test these data transfer techniqueswith multiple simultaneous flows are present to studyhow well they share the network resources. Throughthese tests, we will be able further optimize someparameters of CORMAN, such as the retry limit.2) The coordination among multiple qualified small-scaleretransmitters can be achieved with better measures thanRSSI. In particular, if the “suitability” score is based ontransient link quality rather than historical information,we will be able better utilize the receiver diversity.Apparently, this would require non-trivial coordinationamong these retransmitters, which could be challengingespecially when we aim for zero extra overhead.3) Nodes running CORMAN forward data packets in fragments.When the source and destination nodes are separatedby many hops, it should allow nodes at differentsegment of the route to operate simultaneously. That is,a pipeline of data transportation could be achieved bybetter spatial channel reuse. The design of CORMANcan be further improved to address this explicitly. Thismay involve timing node backoff more precisely andtightly, or even devising a completely different coordinationscheme.The potential of cooperative communication in multi-hopwireless networks is yet to be unleashed at higher layers, andCORMAN is only an example.Y S. Yang, F. Zhong, C. K. Yeo, B. S. Lee, and J. Boleng, “Position BasedOpportunistic Routing for Robust Data Delivery in MANETs,” in Proc.2009 IEEE Conference on Global Telecommunications (GLOBECOM),Honolulu, Hawaii, USA, December 2009, pp. 1325–1330. S. Murthy, “Routing in Packet-Switched Networks Using Path-FindingAlgorithms,” Ph.D. dissertation, University of California - Santa Cruz,1156 High Street, Santa Cruz, CA 95064, United States, 1996. J. Behrens and J. J. Garcia-Luna-Aceves, “Distributed, Scalable Routingbased on Link-State Vectors,” in Proc. ACM SIGCOMM, 1994, pp. 136–147. S. Murthy and J. J. Garcia-Luna-Aceves, “An Efficient Routing Protocolfor Wireless Networks,” Mobile Networks and Applications, vol. 1, no. 2,pp. 183–197, October 1996. Z. Wang, C. Li, and Y. Chen, “PSR: Proactive Source Routing in MobileAd Hoc Networks,” in Proc. 2011 IEEE Conference on Global Telecommunications(GLOBECOM), Houston, TX USA, December 2011. Z. Wang, Y. Chen, and C. Li, “A New Loop-Free Proactive Source RoutingScheme for Opportunistic Data Forwarding in Wireless Networks,”IEEE Communications Letters, to appear. C. E. Perkins and E. M. Royer, “Ad hoc On-Demand DistanceVector (AODV) Routing,” RFC 3561, July 2003. [Online]. Available:http://www.ietf.org/rfc/rfc3561.txt M. K. Marina and S. R. Das, “Routing Performance in the Presence ofUnidirectional Links in Multihop Wireless Networks,” in The Third ACMInternational Symposium on Mobile Ad Hoc Networking and Computing(MobiHoc’02), Lausanne, Switzerland, June 2002, pp. 12–23.Zehua Wang is an M.Eng. student at Memorial Universityof Newfoundland, St. John’s, Canada. He receivedhis B.Eng. from Wuhan University, with OutstandingThesis and Outstanding Graduand Awards,in 2009. He has served as the technical programcommittee (TPC) member for the IEEE ICC’12,IEEE GLOBECOM’12 and IEEE WiMob’11. Hisresearchinterests include wireless ad hoc networking,mobile and distributed computing, and generic datanetworks.Yuanzhu Chen is an Associate Professor in theDepartment of Computer Science at Memorial Universityof Newfoundland, St. Johns, Newfoundland.He received his Ph.D. from Simon Fraser Universityin 2004 and B.Sc. from Peking University in 1999.Between 2004 and 2005 he was a post-doctoralresearcher at Simon Fraser University. His researchinterests include computer networking, graph theory,Web information retrieval, evolutionary computation.REFERENCES I. Chlamtac, M. Conti, and J.-N. Liu, “Mobile Ad hoc Networking:Imperatives and Challenges,” Ad Hoc Networks, vol. 1, no. 1, pp. 13–64, July 2003. R. Rajaraman, “Topology Control and Routing in Ad hoc Networks: ASurvey,” SIGACT News, vol. 33, pp. 60–73, June 2002. S. Biswas and R. Morris, “ExOR: Opportunistic Multi-Hop Routing forWireless Networks,” in Proc. ACM Conference of the Special InterestGroup on Data Communication (SIGCOMM), Philadelphia, PA, USA,August 2005, pp. 133–144. P. Larsson, “Selection Diversity Forwarding in a Multihop Packet RadioNetwork With Fading Channel and Capture,” ACM Mobile Computingand Communications Review, vol. 5, no. 4, pp. 47–54, October 2001. S. Chachulski, M. Jennings, S. Katti, and D. Katabi, “Trading Structurefor Randomness in Wireless Opportunistic Routing,” in Proc. ACMConference of the Special Interest Group on Data Communication(SIGCOMM), Kyoto, Japan, August 2007, pp. 169–180. C. Fragouli, J.-Y. L. Boudec, and J. Widmer, “Network Coding: anInstant Primer,” SIGCOMM Computer Communication Review, vol. 36,pp. 63–68, January 2006. I. Leontiadis and C. Mascolo, “GeOpps: Geographical OpportunisticRouting for Vehicular Networks,” in Proc. IEEE International Symposiumon a World of Wireless Mobile and Multimedia Networks(WoWMoM), Helsinki, Finland, June 2007, pp. 1–6.Cheng Li received the B.Eng. and M.Eng. degreesfrom Harbin Institute of Technology, Harbin, P. R.China, in 1992 and 1995, respectively, and the Ph.D.degree in Electrical and Computer Engineering fromMemorial University, St. John’s, Canada, in 2004.He is currently an Associate Professor at the Facultyof Engineering and Applied Science of MemorialUniversity, St. John’s, Canada. His researchinterests include mobile ad hoc and wireless sensornetworks, wireless communications and mobilecomputing, switching and routing, and broadbandcommunication networks. He is an editorial board member of Wiley WirelessCommunications and Mobile Computing, an associate editor of Wiley Securityand Communication Networks, and an editorial board member of Journal ofNetworks, International Journal of E-Health and Medical Communicationsand KSII Transactions on Internet and Information Systems.He has serveda technical program committee (TPC) co-chair for the IEEE WiMob’11 andQBSC’10. He has served as a co-chair for various technical symposia of manyinternational conferences, including the IEEE GLOBECOM and ICC. Hehasserved as the TPC member for many international conferences, includingthe IEEE ICC, GLOBECOM, andWCNC. Dr. Li is a registered ProfessionalEngineer (P.Eng.) in Canada and is a Senior Member of the IEEE and amember of the IEEE Communication Society, Computer Society, VehicularTechnology Society, and Ocean Engineering Society.