Close
About
FAQ
Home
Collections
Login
USC Login
Register
0
Selected
Invert selection
Deselect all
Deselect all
Click here to refresh results
Click here to refresh results
USC
/
Digital Library
/
University of Southern California Dissertations and Theses
/
Efficient media access and routing in wireless and delay tolerant networks
(USC Thesis Other)
Efficient media access and routing in wireless and delay tolerant networks
PDF
Download
Share
Open document
Flip pages
Contact Us
Contact Us
Copy asset link
Request this asset
Transcript (if available)
Content
EFFICIENT MEDIA ACCESS AND ROUTING IN WIRELESS AND DELAY TOLERANT NETWORKS by Thrasyvoulos Spyropoulos A Dissertation Presented to the FACULTY OF THE GRADUATE SCHOOL UNIVERSITY OF SOUTHERN CALIFORNIA In Partial Fulfillment of the Requirements for the Degree DOCTOR OF PHILOSOPHY (ELECTRICAL ENGINEERING) May 2006 Copyright 2006 Thrasyvoulos Spyropoulos UMI Number: 3237161 3237161 2007 UMI Microform Copyright All rights reserved. This microform edition is protected against unauthorized copying under Title 17, United States Code. ProQuest Information and Learning Company 300 North Zeeb Road P.O. Box 1346 Ann Arbor, MI 48106-1346 by ProQuest Information and Learning Company. Dedication This dissertation is dedicated to my lovely parents Angelos and Lila, without the support of whom I wouldn’t have made it here. ii Acknowledgements I would like first of all to thank my advisors, Professor Cauligi S. Raghavendra and Pro- fessor Konstantinos Psounis. Their constant support and guidance have been invaluable throughout the completion of this work. I hope they have enjoyed our years of working together as much as I have, and I look forward to continuing our always fruitful and entertaining discussions, and exchange of ideas. Also, I would like to thank Professor Viktor Prasanna, Professor Ramesh Govindan, Professor Ahmed Helmy, and Professor Bhaskar Krishnamachari for their always useful feedback on this work, as well as their valuable support in my academic endeavors. Finally, I would like to thank all my friends, in United States and in Greece, who have always been there for me. They have helped turn the difficult task of pursuing a Ph.D. degree, many miles away from home, into an enjoyable experience. iii Contents Dedication ii Acknowledgements iii List Of Tables vii List Of Figures viii Abstract xi 1 Introduction 1 Part I: Using Directional and Smart Antennas to Improve the Per- formance of Wireless Ad-hoc Networks 9 2 Efficient Media Access Using Adaptive Array Antennas 14 2.1 Introduction................................... 14 2.2 Related Work and Contributions . . . .................... 17 2.3 ADAPT: MAC Layer Guided Interference Suppression . . . ........ 19 2.3.1 Antennamodel . ............................ 19 2.3.2 Semi-staticbeamforming ....................... 20 2.4 The Effect of Mobility and Node Deafness . . ................ 23 2.4.1 The effect of mobility . ........................ 24 2.4.2 Theeffectofnodedeafness ...................... 33 2.5 SimulationResults ............................... 39 2.5.1 Single-hopnetworkofstaticnodes(ScenarioA)........... 41 2.5.2 Multi-hopnetworkofstaticnodes(ScenarioB) ........... 44 2.5.3 Multi-hopnetworkofmobilenodes(ScenariosC) . ......... 46 2.6 Conclusion and Future Directions . . . .................... 47 3 A Theoretical Framework to Analyze the Capacity of Wireless Ad-hoc Networks 49 3.1 Introduction................................... 49 3.2 Preliminaries . ................................. 53 3.2.1 Problemformulation . ......................... 53 iv 3.2.2 Antennamodels ............................ 57 3.2.3 Arbitraryvs. RandomNetworks ................... 58 3.3 The Omni-directional Case . . ........................ 59 3.3.1 Theneedforasilenceregion . .................... 59 3.3.2 Joint Interference and Protocol Model ................ 61 3.3.3 Capacityoffinitenetworks ...................... 62 3.3.4 Asymptotic capacity bounds . .................... 65 3.4 The Directional Case . . ............................ 69 3.4.1 DMACprotocolimproved(DMAC+) ................ 75 3.4.2 CapacitycomparisonbetweenDMACandDMAC+ ........ 79 3.4.3 Asymptotic capacity bounds . .................... 81 3.5 HeterogeneousNetworks ............................ 81 3.6 Conclusion ................................... 86 4 Improving Energy Efficiency Using Phased-Array Antennas: A Joint Scheduling and Routing Algorithm 88 4.1 Introduction................................... 88 4.2 JointSchedulingandRouting ......................... 91 4.2.1 Initialization, broadcast, and distributed algorithm . ........ 96 4.3 SimulationResults ............................... 99 4.4 DiscussionandRelatedWork ......................... 101 4.5 Conclusion ................................... 103 Part II: Routing in Intermittently Connected Mobile Networks 104 5 Efficient Routing in Intermittently Connected Mobile Networks: The Single-Copy Case 107 5.1 Introduction................................... 107 5.2 Related Work and Contributions . . . .................... 110 5.3 SingleCopyRoutingStrategies ........................ 115 5.4 PerformanceAnalysis . ............................ 121 5.4.1 Direct Transmission – An upper bound on delay . . ........ 123 5.4.2 “Oracle-based” optimal algorithm – A lower bound on delay . . . 126 5.4.3 Performanceofrandomizedrouting.................. 127 5.4.4 Performance of schemes using utility functions . . . ........ 131 5.4.5 Simulationvs. analysis......................... 139 5.5 SimulationResults ............................... 141 5.6 Conclusion ................................... 144 6 Efficient Routing in Intermittently Connected Mobile Networks: The Multi-Copy Case 147 6.1 Introduction................................... 147 6.2 RoutingStrategies ............................... 149 6.2.1 Single-copyrouting........................... 150 6.2.2 Flooding-based and utility-based algorithms . ............ 151 v 6.2.3 Sprayrouting .............................. 153 6.3 PerformanceAnalysis . ............................ 156 6.3.1 PerformanceofSprayandWaitrouting ............... 156 6.3.2 Simulationvs. analysis......................... 163 6.4 Optimizing Spray and Wait to Meet Desired Performance Constraints . . 164 6.4.1 Choosing L to achieve a required expected delay . . ........ 165 6.4.2 Estimating Lwhennetworkparametersareunknown ....... 167 6.4.3 Scalability of Spray and Wait . .................... 170 6.5 SimulationResults ............................... 173 6.5.1 ScenarioA:effectoftrafficload.................... 174 6.5.2 ScenarioB:effectofconnectivity ................... 175 6.6 Conclusion ................................... 178 7 A Theoretical Framework to Analyze the Performance of Mobility- Assisted Routing 179 7.1 Introduction................................... 179 7.2 RelatedWork .................................. 182 7.3 Hitting and Meeting Times Under Popular Mobility Models ........ 185 7.3.1 Random Direction mobility model . . ................ 187 7.3.2 Random Waypoint mobility model . . ................ 191 7.3.3 Community-based mobility model . . ................ 195 7.3.3.1 Hitting times under homogeneous mobility ........ 198 7.3.3.2 Hittingtimeforheterogeneousnodes ........... 203 7.4 Delay of Mobility-assisted Routing . . .................... 204 7.4.1 Upper and lower bounds on delay . . . ................ 205 7.4.2 Delayofotherroutingschemes .................... 208 7.5 Conclusions ................................... 210 Bibliography 212 Appendix A AppendixforChapter2 ............................... 221 Appendix B AppendixforChapter3 ............................... 224 Appendix C AppendixforChapter5 ............................... 226 Appendix D AppendixforChapter7 ............................... 229 vi List Of Tables 2.1 End-to-EndDelayforScenarioB........................ 46 2.2 End-to-End Delay for Scenario C (low mobility) . . . ............ 47 6.1 Minimum L to Achieve Expected Delay aED opt ............... 166 7.1 Notation. .................................... 186 7.2 AdditionalNotationforSection7.3.3 ..................... 197 vii List Of Figures 2.1 ADAPT flowchart for packet transmission and downlink beamforming (left), and packet reception and uplink beamforming(right) ............ 24 2.2 The coordinates system defined by the relative movement of two nodes A andB. . ..................................... 28 2.3 Probability of success, due to node deafness, as a function of the number of concurrent transmissions M. ........................ 37 2.4 Scenario A — 10 static nodes in an area of 400× 400m and 5 CBR con- nectionsactiveinparallel. ........................... 41 2.5 Network throughput comparison for Scenario A. . . ............ 42 2.6 Distribution of available bandwidth among the 5 competing connections, for the 4 configurations considered. . . .................... 43 2.7 Network throughput comparison for Scenario B. . . ............ 45 2.8 Network throughput for Scenario C: low mobility (left) and high mobil- ity (right). ADAPT1 only implements semi-static beamforming, while ADAPT2implementsreal-timeadaptivebeamforming,aswell. ...... 47 3.1 Normalizedflat-toppedantennapattern ................... 58 3.2 Antenna, propagation and radio parameter effect on the capacity behavior ofDMAC. .................................... 74 3.3 Example of spatial underutilization using DMAC. . . ............ 75 3.4 Antenna, propagation and radio parameter effect on the capacity behavior ofDMAC+. ................................... 79 viii 3.5 Capacity improvement of a directional scenario (DMAC or DMAC+) an omni-directional scenario. . . . ........................ 81 4.1 Two optimal edge colorings for an example graph. Edge weights represent the time fraction a link has to be up, while edge letters denote different colors. . ..................................... 96 4.2 Time axis consisting of normal operation and schedule update periods. . . 97 4.3 Comparison of a binomial and a spanning tree used for broadcasting in an example ad hoc network consisting of nodes with directional antennas. Edge numbers indicate during which time cycle a link is up. ........ 99 4.4 Network lifetime comparison between cost 1 and minimum hop routing for directional and omni-directional settings. . . . ................ 101 4.5 Network lifetime comparison between cost 1 and cost 2 for directional and omni-directional setting ............................ 101 5.1 Probability density function for the distance from the destination given different timer values for that destination (80×80grid). .......... 137 5.2 Probability density function for the timer value far from the destination with and without transitiviy (N = 100× 100)................. 138 5.3 Comparison of analytical and simulation results for upper and lower bounds ondelay(left)andRandomizedRouting(right). .............. 139 5.4 Comparison of analytical and simulation results for Utility-based Routing (left) and Seek and Focus (right) as a function of K ............ 140 5.5 Number of transmissions for Random Walk mobility. ............ 143 5.6 Delivery delay for Random Walk mobility. . . ................ 144 5.7 Number of transmissions for Random Waypoint mobility. . ........ 145 5.8 Delivery delay for Random Waypoint mobility. . . . ............ 145 6.1 Expected progress of a forwarding step for the randomized and utility- basedpolicies................................... 152 6.2 Comparison of Source Spray and Wait, Binary Spray and Wait, and Opti- mal schemes (100×100networkwith100nodes).. ............. 159 ix 6.3 Comparison of analytical and simulation results for Spray and Wait. . . . 164 6.4 Online estimator of number of nodes (M) — 200× 200 grid, transmission range = 0, a=0.98, mixing time = 4000. . . ................ 170 6.5 Required percentage of nodes L min /M receiving a copy for spray and wait to achieve an expected delay of aED opt ................... 171 6.6 Scenario A - performance comparison of all routing protocols under varying trafficloads.................................... 175 6.7 Scenario B - Random Waypoint Mobility: Total transmissions and delay as a function of transmission range K (respective connectivity values are showninparentheses). . ............................ 177 6.8 Scenario B - Random Walk Mobility: Total transmissions and delay as a function of transmission range K (respective connectivity values are shown inparentheses). . ................................ 178 7.1 Comparison of theoretical and simulations results under the Random Di- rection model (0 pause time). . ........................ 191 7.2 Comparison of theoretical and simulations results under the Random Way- pointmodel.................................... 195 7.3 Community-based Mobility Model . . .................... 197 7.4 Hitting Times under the Community-based RD model for small (left) and large(right)communities. ........................... 203 7.5 Upper and lower bounds on the delay of any mobility-assisted routing scheme under Random Direction mobility. . . ................ 207 7.6 Upper and lower bounds on the delay of any mobility-assisted routing scheme under Community-Based mobility. . . ................ 207 7.7 Simulation and analytical results for the expected delay of Randomized andL-copyroutingschemes........................... 210 x Abstract The huge success of cellular telephony, on the one hand, and the emergence of novel applications that aim to automate and optimize a variety of tasks, on the other, have intensified the need for efficient wireless networking. The Internet is going wireless. How- ever, the wireless environment is significantly more challenging for the network designer. Two of the biggest limitations of wireless networking are the scarce power resources of wireless nodes and the limited bandwidth of the wireless medium. Although a large num- ber of power-efficient and throughput-improving protocols have been proposed, these are still far from optimal. In the first part of this dissertation, the use of directional antennas is proposed to overcome these limitations. Directional antennas can concentrate the radiated power towards a given direction, resulting in (i) less transmission power needed to reach a given destination, and (ii) less interference generated towards unintended directions. However, in order to take advantage of advance antenna capabilities, appropriate communication protocols are necessary. This work proposes novel media access and routing schemes for directional antennas that are both efficient and lightweight enough for wireless devices. In the second part of this dissertation we introduce an additional complication. Rout- ing in wireless networks has been traditionally envisioned as choosing a minimum cost xi path on a connected graph. However, it has been recently recognized that departing from this paradigm is often necessary. Networks that are partitioned most of the time arise in the context of many emerging wireless applications. In these networks, often referred to as Delay Tolerant Networks (DTNs), traditional routing algorithms fail. “Mobility- assisted” routing schemes are necessary that often make a mobile node store and carry a message, until a communication opportunity arises. In Part II, an extensive exploration of the solution space for mobility-assisted routing is performed. An efficient protocol is proposed that significantly outperforms existing solutions, in terms of both energy-efficiency and delay. Also, it is shown how this protocol can be optimized in practice. Finally, a theoretical framework is presented that can be used to analyze the performance of mobility-assisted routing, under a large range of mobility models. xii Chapter 1 Introduction In the past two decades the Internet has exploded from a small experimental network into a vast worldwide infrastructure that has changed the way we experience the world nowadays. We have become so accustomed to the convenience, on the one hand, and the vast amount of information within reach on the other, that it would be hard to imagine living without it. Despite these groundbreaking advances, the future toward which the information superhighway is pointing at seems to be even more exciting. The huge success of cellular telephony all around the world, on the one hand, is pushing the Internet into the wireless realm. New terms like “pervasive computing” and “ubiquitous access” imply a global telecommunication infrastructure that can be accessed anytime, anywhere, in a largely seamless manner. On the other hand, novel applications that aim to automate and optimize a variety of tasks, ranging from wildlife tracking to building surveillance, require the networking of a large number of wireless devices. As a result, the field of wireless networks has become a very exciting and influential field of research. Nevertheless, many a new and important challenges face today’s wireless network researcher or designer, in addition to the well-known ones of wired networks. Limited 1 power of wireless devices, shared access to a common medium of limited bandwidth, time- varying channels and mobility, significant interference from other wireless applications, are some of the novel obstacles that stand in the way of today’s network researcher, before the ubiquitous access dream starts being realized. One type of such wireless networks are ad-hoc (or mesh) networks that are multi- hop networks where all nodes cooperate in delivering traffic between end-points. The ability to be set up fast and operate without the need of any wired infrastructure (e.g. base stations, routers, etc.) makes them a promising candidate for military, disaster relief, law enforcement, and a number of other emerging applications. Furthermore, the rapidly growing interest in sensor network applications has created a need for protocols and algorithms for large scale self-organizing ad-hoc networks, consisting of hundreds or thousands of nodes. Designing efficient protocols for wireless ad hoc networks is a challenging task. In addition to the wireless media characteristics and the limited resources of nodes, here one needs to also deal with the fact that every node needs to act as a relay. Combined with the lack of large scale deployed ad hoc networks, and the variety of application requirements, there’s no surprise that no widespread agreement exists on the protocols to be used. Despite a large number of existing protocols [82], the ongoing research in the field is expected to continue unabated for some time to come. The same characteristics that complicate protocol design also render theoretical analysis for such networks an equally, if not more difficult endeavor. As a result, a number of fundamental questions about ad hoc networks remain largely unclear or unanswered. 2 What is more, a number of novel applications emerging for wireless ad hoc networks have challenged the traditional view of such networks. Following the Internet example, routing in wireless networks has been commonly envisioned as choosing a minimum cost path on a connected weighted graph. However, it has been recently recognized that de- parting from this paradigm may be necessary or even quite beneficial. Many new wireless applications require to operate over a network that is disconnected for the majority of time. Such networks, often referred to as Delay Tolerant Networks (DTNs) [30], include applications like low-cost Internet provision in remote or underdeveloped areas, and peer- to-peer vehicular networks. Two general categories of ad-hoc networks can, thus, be defined, based on connec- tivity: (i) connected networks, where at any time there exists with high probability an end-to-end path between any two nodes, and (ii) disconnected or intermittently connected networks, where at most times there does not exist a contemporaneous end-to-end path between two nodes. Although a large majority of the aforementioned complications re- lated to the wireless media apply equally to both types of networks, radically different approaches are often necessary on the protocol design arena. Additionally, a number of scenarios with hybrid connectivity characteristics may arise. In this work, we set to design efficient protocols for both types of ad hoc networks. We identify what we deem are the main problems to be solved for each of the two categories, proceed to recognize inherent limitations, and try to come up with solutions that cope with these limitations successfully. At the same time, considering the important overlap between the two categories, we aim to make good use of existing knowledge and migrate or adapt solutions between the two areas, whenever this can prove beneficial. 3 Connected Networks: Many wireless applications have stringent delay require- ments and/or need guaranteed delivery of messages sent. Examples of such applications are real-time monitoring and surveillance networks, interactive applications like voice and video phones, etc. In order for these requirements to be met, it is evident that there must be at least one path between any two nodes at any time over which traffic can be routed swiftly. In other words, the underlying network needs to be connected. This has been the traditional assumption all the way since the precursor of ad-hoc networks, namely Packet Radio Networks [61] had been introduced. Consequently, there exists a large body of literature regarding most aspects of connected wireless networks [82]. Nevertheless, there are still many challenges facing researchers in this area. Two of the most important ones are the efficient utilization of the single shared channel, and maximization of the operational lifetime of the nodes and the network (i.e. energy-efficiency). Network capacity, usually defined as the maximum network throughput that can be sustained by the network 1 is an important attribute of a wireless ad-hoc network. The need for nodes to compete in order to gain access to the shared wireless media, com- bined with the relatively low bandwidth compared to wired networks, raises important questions: How many nodes can be allowed to communicate concurrently in the network, without garbling each other transmissions? How is this affected by physical layer charac- teristics (e.g. propagation environment, radio technology, etc.), and how well do different protocols manage to utilize the available capacity? 1 There is often confusion between the information theoretic capacity of the wireless shared channel, and capacity as the total amount of traffic or flow that can be routed per time unit through the network. We will be using the latter definition whenever we refer to capacity. 4 There have been a number of papers trying to answer some of these questions. In their very influential paper, Kumar and Gupta examine the capacity of wireless networks as the number of nodes increase to infinity and derive tight asymptotic bounds [47]. Their most important result was that in a wireless network of N nodes, the capacity available to each node for its own traffic scales as Θ 1 N 2 , even if nodes’ positions and communication pairs are chosen arbitrarily. What is worse, if nodes are uniformly distributed and communication pairs are randomly chosen, capacity decreases further to Θ 1 N log N . Despite the pessimistic implications of these results, another seminal work by Grossglauser et al. [46] demonstrated how node mobility could be exploited in order to overcome the bounds established by Kumar and Gupta and achieve a per node capacity of Θ(1). The price paid for this improvement is that no delay guarantees are provided. A number of works has since then explored how capacity can be traded off for delay [76, 41, 81]. Although we’re also interested in the assympotic behavior of different protocols or technologies on asymptotic behavior as well, our focus lies more on techniques that can significantly improve the performance of practical networks consisting of a finite number of nodes. Asymptotic results fail to capture constant factor improvements achieved by using a given technology over another. Such improvements though may well be invaluable for the viability of some ad hoc network applications. A second distinguishing feature of ad-hoc networks is that nodes are highly energy- constrained. Nodes are untethered and battery-operated. Frequent recharging or replace- ment of batteries may be undesirable or even impossible, and in some cases nodes might 2 We use Knuth’s suggested notation for asymptotic formulas. For example g =Θ(f)⇔∃a> 0,b> 0,x0 :∀x>x0,af(x)≤g(x)≤bf(x). 5 be required to operate on a single battery for months or years [44]. Consequently, any protocol designed for ad-hoc networks must have as one of its foremost goals to conserve the battery life of nodes. Many different power-aware algorithms and protocols have been proposed [44, 93, 23]. Among the different techniques that have been proposed one of the most promising and commonly used is to shut down different modules of the node or even the node itself, when it is anticipated that the specific module will not be used for some time [92, 116, 24]. Appropriate protocols are needed though, to synchronize the on and off periods of nodes, and ensure that messages can still be delivered promptly. On a global level, another method is to try to avoid using nodes with depleted energy re- sources, in order to maximize the overall lifetime of the network. Finally, researchers have also attempted to slow down specific operations (e.g. computation, data transmission) whenever possible, in order to achieve the same task with less power. Our proposal to cope with both limited bandwidth and power is to use directional and smart antennas. Directional antennas can concentrate the radiated energy towards a specific direction. This way, the amount of energy expenditure for any given trans- mission can be significantly reduced. Furthermore, the reduction of radiation towards unintended directions results in a lower overall noise profile from a given number of con- current transmissions. As a result, a much larger number of communications could take place in parallel, without interfering with each other. Part I of this dissertation deals with the design and evaluation of efficient media access and routing protocols that can fully take advantage of the capabilities of directional and smart antennas to significantly improve performance. Additionally, we aim to quantify the theoretical limitations on the 6 performance improvement that could be achieved by using advanced antenna technolo- gies. Intermittently Connected Networks: Recently, a number of new wireless appli- cations have emerged that are tolerant to large delays lasting sometimes up to days [30]. These applications need to operate over an underlying networking infrastructure that is often disconnected either due to the nature of the application itself (e.g. Inter-Planetary Networks - IPN [17, 115]) or for reasons of cost-effectiveness. An example of the latter is the provision of low-cost Internet to remote areas [55, 79, 114]. A small village might only be connected to the Internet for small periods of time through a low orbit satellite or may carry its Internet traffic back and forth to the city using the local community bus [55, 114]. Although interactive applications would not run properly over such a net- work, e-mail and web page caching could easily withstand the incurred delays. Finally, a number of existing applications that often assume an underlying connected network, could benefit significantly by relaxing the requirement for connectivity. In that case, very low power radios and algorithms of lower complexity could be used, considerably reducing the cost per node. Channel utilization and energy efficiency remain crucial issues in these networks. However, an even bigger challenge in this context is how to actually route a message to its destination, when there exists no end-to-end path most of the time. Conventional routing schemes fail in such networks, because they assume the existence of such end-to-end paths, and try to discover one before they send any data. Consequently, new routing paradigms are necessary. ”Mobility-assisted” routing schemes have been proposed that often make a mobile node store and carry a message around, until an appropriate communication 7 opportunity arises. Such schemes not only can help overcome fundamental capacity limitations of traditional routing for wireless networks, but can also enable the delivery of data in emerging, non-traditional networks that are partitioned most of the time and may experience long delays. In Part II of this work we focus on the design of efficient routing algorithms that can overcome the unique problems posed by lack of connectivity. At the same time, we leverage from the existing body of knowledge available for connected ad-hoc networks, in order to ensure that our algorithms are bandwidth and energy-efficient. Finally, we per- form a thorough theoretical analysis to fully understand the capabilities and limitations of routing in this new context. 8 Part I: Using Directional and Smart Antennas to Improve the Performance of Wireless Ad-hoc Networks Directional antennas can concentrate the radiated energy towards a specific direction. They are characterized by their transmission gain G tx , which is defined as EIRP P tx , where P tx is the transmission power needed by the directional antenna to induce a specific amount of received power at a given receiver, at a known distance. EIRP is the effective isotropically radiated power, which is defined as the power that would need to be transmitted by an isotropical (or omni-directional in 2-dimensions) antenna, in order to induce the same received power at the same receiver. Consequently, by definition a directional antenna would only consume a fraction P tx EIRP of the power consumed by an omni-directional antenna to perform the same transmission. This implies a dual potential benefit of directional antennas. On the one hand, less power is needed to reach the same distance, helping reducing this way the overall energy dissipation. On the other hand, the total energy radiated by the same transmission to the environment, and therefore to unintended directions, is lower. Consequently, the overall interference or noise level experienced by a nearby node is also lower. Finally, the reciprocity theorem implies that using a directional antenna at the receiver also will double the foreseen gains. As an example of the potential gains, using a Yagi-type of antenna [6] of 14dBi gain at both the receiver 9 and the transmitter could, in theory, reduce energy dissipation over the omni-directional scenario by 28dB or almost 1000 times. Despite these benefits, there are some important practical considerations that the designer of protocols for directional antennas needs to be aware of. The power savings and interference suppression of a directional antenna depend on how narrow the primary beam (lobe) of the antenna pattern is and also how suppressed the secondary lobes are compared to the primary one [6]. Furthermore, the antenna efficiency, or how much of the power fed into the antenna by the power amplifier is effectively transformed into radiated power, is another important issue. This depends: (i) on how well “matched” the antenna is to the transceiver, and (ii) on the physical size of the antenna compared to the operating wavelength. It is a well-known fact that the antenna size must be in the same order as the operating wavelength for efficiency close to 100% to be achievable. This creates some important limitations on the actual gain that one could achieve for a wireless node antenna. The size of the terminal is the major restricting factor. If more than one antenna elements (e.g. dipoles, patch antennas, etc.) are used to increase gain, those elements must be placed apart at distances of the same order of magnitude with the wavelength. Hence, depending on the size of the terminal (i.e. sensor, PDA, laptop, vehicle, etc.), one cannot easily use more than 3-4 elements for most frequency bands currently used for ad- hoc networks (e.g. 2.4GHz). Finally, high-gain aperture and horn antennas (commonly used in satellite and terrestrial microwave communications) are not appropriate for ad-hoc networks. The large amount of power needed to mechanically steer such antennas in order to point to a specific direction can monopolize the energy consumption of the wireless 10 terminal. For this reason, one could only consider electronically steerable directional antennas like linear or circular arrays of dipoles [6]. As a last note on practical considerations, it is important to understand that direc- tional antenna savings come only in the amplifier part of the radio. However, a con- siderable amount of power is also consumed in the electronics of the transmitter or re- ceiver, even when no transmission or reception is ongoing. Using an energy model similar to [93, 38], the energy to transmit and receive a bit of information is given by: E tx = E elec + E amp d n and E rx = E elec . E elec is the energy consumed in the electronics part of the transmitter (receiver) in order to transmit (receive) a bit of information, and E amp is the energy consumed in the power amplifier part of the transmitter per bit. Hence, the reduction in overall transmission energy E tx depends on the specific radio parameters E elec and E amp , distance d and attenuation factor n. If nodes are not close by and/or environmental conditions are harsh (high n), the energy consumption at the power amplifier part is expected to dominate. Furthermore, continuing advances in low-power electronics are expected to bring E elec further down, unlike E amp which is lower bounded by the power needed to reach a specific node. Nevertheless, numerous studies have indicated that power consumed in electronics when the node is idling constitutes a significant part of the power budget with current technology [38]. Consequently, it is important to keep in mind that using directional antennas is not a panacea, but rather needs to be combined with other power saving techniques, like powering down nodes, in order to maximize the node’s lifetime. 11 These technology issues related to antennas define how much performance improve- ment the network designer can except in practice, and are an important consideration for protocol design. Nevertheless, even with these practical considerations in mind, direc- tional antennas have a tremendous potential to improve performance. However, in order to achieve any improvement at all, an equally important issue needs to be addressed, which is the synchronization of antennas. Since directional antennas transmit or receive most of their energy through the main beam, it is a basic problem to decide where this beam should be pointed at at any time. The protocol designer needs to cope with the following two problems, in order to realize al the aforementioned advantages: (i) how does the transmitter know where to point its antenna, in order to communicate with a given receiver, and (ii) where should the receiver turn its antenna to, in order to be able to hear an incoming transmission. Part I aims to answer these questions. Chapter 2 presents a media access protocol that can efficiently utilize an advanced antenna technology, namely smart antennas, which can cancel a number of independent interferers in addition to tracking the signal of inter- est. Such antennas usually require complicated, power-hungry real-time beam-forming algorithms. However, our MAC protocol, ADAPT, proposes a cross-layer design that uses MAC-layer information to significantly reduce the power and computational over- head of real-time algorithms with little penalty on performance. Chapter 3 then proposes an analytical framework to quantify the potential capacity improvement by using direc- tional antennas, both for finite and infinitely large networks. Additionally, it introduces a method to evaluate the efficiency, in terms of network throughput, of a given MAC protocol for a given set of physical layer parameters, and identify if it can be improved 12 any further. These two chapters look at optimizing performance on a local level, that is looking at a given node. Chapter 4, instead, looks at the whole network and aims at optimizing performance on a global level. Specifically, the network is viewed as a graph whose links change based on which direction each antenna is pointing to. A given traffic flow needs to be routed optimally over this graph. To do so, a joint scheduling and routing scheme is proposed that, first, chooses paths in order to route all traffic with minimum energy, and then decides where each antenna should point, and for how long, in order to minimize the amount of time to serve the previous routing choices. 13 Chapter 2 Efficient Media Access Using Adaptive Array Antennas 2.1 Introduction As we mentioned earlier, the use of directional antennas can result in significant capacity improvements. This is possible due to the reduced amounts of power radiated by direc- tional antennas towards unintended directions, lowering this way the average interference level experienced at any node. However, appropriate MAC protocols are required, in or- der to synchronize transmitting and receiving antennas and successfully take advantage of the advanced antenna capabilities. Two types of directional antennas have attracted most researchers’ attention for use in ad-hoc networks. These are switched-beam antennas [75, 9] and phased-array anten- nas [102, 27, 74, 64]. The former can only choose between a small set of fixed beams (more correctly, between a set of fixed antenna patterns). The latter can steer the main beam towards any direction but have no control over the accompanying sidelobes in the antenna radiation pattern. This lack of control on the whole antenna pattern results in significant 14 sidelobe interference, the cumulative effect of which can significantly deteriorate perfor- mance [97]. This becomes even more pronounced due to the physical size limitations of wireless terminals. Recall from our earlier discussion that only a few antenna elements can be placed on a small terminal, due to radiation efficiency issues (at least for common operating frequencies). As is known from elementary antenna theory [6] the fewer the number of elements, the larger the size of the sidelobes, and thus the larger the amount of interference towards unintended directions. One way to overcome this difficulty and further improve the capacity of wireless net- works is to use fully adaptive antennas (aka. “smart antennas”). Fully adaptive array antennas have the ability to automatically respond to an unknown interference environ- ment, in real time, by steering nulls and reducing side lobe levels in the direction of the interference, while retaining some desired signal beam characteristics. This process is often referred to as beamforming. These systems usually consist of an array of weighted antenna elements, whose individual weights are controlled, in real time, in order to pro- duce the desired radiation pattern. A digital processing unit is usually responsible for controlling the element weights towards some kind of optimization of output SINR (Sig- nal to Interference and Noise Ratio), in accordance with a control algorithm [43, 40, 68]. Finally, in addition to minimizing interference, adaptive antennas can be used to esti- mate the Direction-Of-Arrival (DOA) of one or more incoming signals using algorithms like MUSIC, ESPRIT, etc. [43, 68]. The use of adaptive array antennas has so far been limited to military applications and in base stations for cellular systems [68, 112, 65]. One of the reasons for this has been the high cost, complexity, and power consumption of their digital implementation. 15 However, low cost, low power, analog adaptive array designs have recently been proposed and prototyped, specifically targeting the market of ad-hoc networks [78]. Another reason is that smart antennas usually require sophisticated algorithms that use extra synchro- nization information, like training sequences, etc., to automatically beamform. Exam- ples of some recent efforts to apply such techniques in ad-hoc networks can be found in [10, 91, 117, 36, 8]. In these works, each transmitter-receiver pair is assumed to share a unique training sequence or some other information in order to be able to recognize the “signal-of-interest” (SOI) and iteratively adapt the antenna pattern. However, in the highly resource-constrained and no-single-adminstration context of many ad-hoc networks the requirements of such schemes may render their application extremely challenging and costly. Therefore, a novel protocol is necessary that efficiently takes advantage of the increased capabilities of adaptive array antennas, yet is simple enough to be implemented by resource-limited ad hoc wireless terminals. We propose a protocol called ADAPT, which extends the basic mechanisms of 802.11 in a simple and efficient manner, in order to take advantage of fully adaptive antenna capabilities. Its distinguishing features are the following: (i) it only uses MAC layer information to adapt the antenna pattern, and (ii) the antenna pattern is adapted on a per-packet basis (instead of real-time). We shall use the term semi-static beamforming to refer to this type of beamforming, hereafter. We have used the ns-2 simulator [13] to compare our protocol to typical omni-directional and directional settings. We show that our protocol achieves superior performance, in terms of network throughput and end-to-end delay, in most scenarios considered. 16 In the next section, we discuss some previous work related to ours. In Section 2.3 we present the antenna model, and describe the details of ADAPT. Then, in Section 2.4 we analyze the effect that mobility and a phenomenon called node deafness have on the performance of ADAPT. Simulation results are given in Section 2.5, and we conclude this chapter with a discussion and some future directions in Section 2.6. 2.2 Related Work and Contributions One of the earliest efforts to modify existing MAC protocols to operate with directional antennas can be found in [120]. In [75], the authors propose the use of multiple directional antennas, which can be switched on and off, to restrict the transmission to only specific sectors, as well as to track and locate intended communication partners by noting the angle of arrival (AOA) of the incoming signal. They modify 802.11 to send DATA and ACK packets directionally, so as to reduce interference. However, RTS and CTS packets are sent in every direction. Multiple directional antennas are also assumed in [62]. There, however, it is assumed that the global positioning system (GPS) is used to locate com- munication peers. Furthermore, the authors explore the use of directional RTS packets, in order to allow for a higher number of simultaneous transmissions. A further increase in the number of simultaneous transmissions is accomplished in [102, 27], by sending both RTS and CTS packets directionally. This way, only nodes that can subsequently interfere with the upcoming transmission are silenced, and any other node is free to engage in com- munication towards a non-interfering direction. The 360 o azimuth plane is divided into sectors and virtual carrier sensing [53] is performed separately for each sector. We shall 17 be referring to this protocol as directional virtual carrier sensing (DVCS) or Directional MAC (DMAC). Finally, a thorough evaluation of the impact of sending different 802.11 packets directionally or omni-directionally is attempted in [73]. A common characteristic of all the aforementioned protocols is their being random access protocols in nature. Departing from this model, the authors in [9] propose a dis- tributed scheduling scheme to arbitrate media access between competing nodes, so as to eliminate collisions. Their scheme requires knowledge of transmission intention informa- tion in a 2-hop neighborhood, and it assumes that nodes are capable of simultaneously receiving multiple transmissions through the use of multi-beam adaptive arrays (MBAAs). There has also been a large amount of research in the field of smart antennas for the use in cellular, satellite, and military systems. A good presentation of the field and different adaptive algorithms can be found in [43, 68]. In the context of ad-hoc networks adaptive antennas have been used in [10, 91, 117, 36, 8]. In [10, 117, 36] each node is assumed to be using a training sequence, in order to allow the intended receiver to distinguish the signal-of-interest from interfering ones, and to adapt its antenna pattern to maximize the Signal to Interference and Noise Ratio (SINR). An extensive, simulation- based evaluation of how the number of antenna elements, excitation pattern and training sequence length affect the capacity of the network can be found in [10]. DOA estimation algorithms like MUSIC [68] are used in [91], in conjunction with the emission of a tone by all nodes, in order to identify all potential interferers in the neighborhood of a node and beamform accordingly. Finally, the promising technology of analog smart antennas for wireless terminals is described in [78], with appropriate MAC and routing protocols for the use of analog smart antennas in ad-hoc networks proposed in [8]. Nevertheless, 18 all these proposals either require the use of reference signals and thus would not scale well in large ad-hoc networks, or involve sophisticated real-time beamforming algorithms that may not be applicable for small, energy-constrained terminals. Simpler protocols, like ADAPT, are necessary that utilize higher layer information to eliminate the need for sophisticated physical layer beamforming algorithms. A proposal similar to our ADAPT protocol can be found in [25]. However, there only downlink semi-static beamforming is used. Furthermore, all nodes are assumed to be static and the effects of mobility and deafness are ignored. 2.3 ADAPT: MAC Layer Guided Interference Suppression 2.3.1 Antenna model Our adaptive antenna model consists of a linear array of K +1 omni-directional elements, each of which is independently weighted at the output. Specifically, let us denote with s i (t) the complex signal incident on element i∈{1,K +1},and w i the complex weight of element i∈{1,K+1}. Then, the combined signal z(t) at the output (or input) of the antenna is given by z(t)= i w i (t)s i (t). (2.1) There exist a large number of algorithms and techniques for adapting the antenna weights w i to achieve the desired radiation pattern, some of which can automatically respond to an unknown interference environment, in real time, with almost no information about the desired signal. However, the complexity of some of the algorithms, and the 19 digital hardware required, may render their use for resource-constrained wireless terminals prohibitive. It is out of the scope of this paper to describe all existing algorithms or discuss the appropriateness of each one of them in the context of ad-hoc networks. A good presentation can be found in [1] [17] [23]. In this work, in order to keep the implementation complexity low and our assumptions realistic, we use a much simpler method to adjust the antenna weights, which we call semi-static beamforming. We will assume that the adaptive array pattern is similar to a simple phased-array pattern, with a main beam and side lobes, except that it can additionally form K independent “nulls” in the pattern, areas of small width θ null where the antenna gain G null is close to 0. 2.3.2 Semi-static beamforming ADAPT is based on a mechanism called smart virtual carrier sensing (SVCS). SVCS is an extension of the basic virtual carrier sensing mechanism of 802.11, and uses similar ideas to the virtual carries sensing mechanism of [102]. It is implemented using two tables, where overheard information regarding the direction-of-arrival (DOA) and duration of nearby communications is maintained as follows: DOA table: The DOA table consists of entries of the form {node ID, angle}.It is a cache of the most recently encountered nodes along with the direction at which the node is expected to be found. Each node operates in promiscuous mode [53]. Whenever a packet is overheard indicating the presence of a new node, its ID and DOA are logged in the table 1 1 The issue of how DOA information is obtained is out of the scope of this work. In the simplest case, a node could include its coordinates (e.g. available through GPS) in every packet it sends. 20 SVCS table: This table consists of K entries of the form {angle, duration},one entry for each potential interferer that the antenna is capable of suppressing. As in 802.11, each packet transmitted carries a value indicating the remaining communication duration. When a packet overheard from angle φ carries a duration value of t an entry {φ, t} is added in the table (using a shortest time to completion replacement policy). This entry implies that, until time t: (i) interference from direction φ may be experienced, and (ii) radiated energy from the node to which the table belongs, to that direction, may harm the ongoing communication. Semi-static beamforming uses the DOA and SVCS tables to adjust the node’s trans- mitting or receiving antenna pattern, in order to create nulls and minimize interference towards or from any other ongoing communication in its vicinity. Semi-static downlink beamforming: Let’s assume a node S wants to send a packet to another node D. Node S acquires node D’s DOA with respect to itself, say φ D ,from its DOA table. Furthermore, let there exist up to K active entries in the SVCS table of node S, whose DOAs are equal to φ i ,i∈ [1,K]. Finally, let ∆ x denote the inter-element spacing, λ the signal’s center wavelength, and β be defined as β = 2π λ . Then, downlink beamforming consists of solving the following (K +1)× (K + 1) system of equations, on a per packet basis, for the K + 1 element weights w n : K+1 n=1 w n e −jβ(n−1)∆ xcos φ D =1, K+1 n=1 w n e −jβ(n−1)∆ xcos φ i =0, ∀i∈ [1,K]. (2.2) 21 The solution vector w =[w 1 ,w 2 ,··· ,w K+1 ] forms a transmission beam, which minimizes the interference towards known ongoing communications, and is used to send node D an RTS packet. Note that, like any other cache, the DOA table is there only to improve performance. A miss may occur during the DOA table lookup, in which case an omni- directional RTS is sent instead. Finally, after node D receives the RTS from S it can use the same method to form a receiving beam towards S, that maximizes the SINR. Semi-static uplink beamforming: Eq.(2.2) works only if the direction of the de- sired signal is known. As shown in the following example, a variant of the “exposed terminal problem” [104], arising in the adaptive antenna case, may prevent such knowl- edge. Let’s assume some node A needs to transmit a packet to another node B, who is overhearing a number of ongoing transmissions in its vicinity. If B was aware of A’s DOA, and A’s intention of sending B a packet, it could adapt its antenna weights to cre- ate a semi-static receiving beam aimed at A, and cancel interference from other nearby nodes. However, B cannot ever find out, because RTS packets from A get garbled at B by interfering signals. Semi-static uplink beamforming tries to resolve this problem. Once more, there exist up to K interfering signals whose DOA φ i is known. However, the node is in listening mode and there does not exist a signal-of-interest (SOI) at that moment. In this case, the node wishes to maximize the chance of intercepting a future incoming signal from any direction other than the interfering ones. Hence, it is desirable that nulls are formed towards all φ i , while the receiving gain remains close to 1 for all remaining directions. This can be achieved by solving the following constrained optimiza- tion problem. Let superscript H denote the complex conjugate transpose of a vector or 22 matrix, w the vector of antenna weights, and R N the array correlation matrix for AWGN (Additive White Gaussian Noise). Then, the optimal weight vector w is found by: maximize w w H R N w, subject to K+1 n=1 w n e −jβ(n−1)∆ xcos φ i =0,∀i. (2.3) It is easy to calculate the optimal weights when the noise is AWGN. R N is a just a diagonal matrix with all entries equal to the average noise power received by each omnidirectional element, and can easily be reversed [43, 68]. In Figure 2.1 we depict a flowchart diagram of ADAPT for semi-static downlink and uplink beamforming. In order to clarify the functionality related to the adaptive array antenna, we do not depict the detailed FSM of the protocol, but rather the parts that are changed from 802.11. Most other protocol mechanisms (e.g. backoff, deferring, etc,) remain more or less unchanged from the basic 802.11 implementation. It is an advantage of ADAPT that it retains the general semantics of 802.11 and requires only a few changes to be implemented. 2.4 The Effect of Mobility and Node Deafness As we mentioned earlier, semi-static beamforming is performed on a per packet basis. This basically means that while a single packet is being transmitted or received, no changes will occur in the antenna pattern. Semi-static beamforming suffices for situations where node mobility is low and traffic is moderate. However, the effect of high mobility and increased node deafness can reduce the efficiency of semi-static beamforming. In this 23 Idle Check AOA table packet to be transmitted to D send omni RTS i) downlink beamforming using SVCS table ii) send RTS D not found D found Perform Smart Virtual Carrier Sensing D lies inside a null Backoff No comm towards D Update weights and send DATA received CTS received CTS send omni DATA received ACK received ACK TO counter timeout < short retry count = short retry count TO counter < long retry count = long retry count timeout TO counter timeout < TO D = TO D TO counter timeout = TO D < TO D Update SVCS and DOA tables Idle packet received destined for this node No Yes i) update weights ii) receive packet send back appropriate packet (e.g. CTS, ACK) using the new weights update weights for receiving pattern uplink beamforming to avoid exposed terminal Packet Transmission Packet Reception Idle Check AOA table packet to be transmitted to D send omni RTS i) downlink beamforming using SVCS table ii) send RTS D not found D found Perform Smart Virtual Carrier Sensing D lies inside a null Backoff No comm towards D Update weights and send DATA received CTS received CTS send omni DATA received ACK received ACK TO counter timeout < short retry count = short retry count TO counter < long retry count = long retry count timeout TO counter timeout < TO D = TO D TO counter timeout = TO D < TO D Update SVCS and DOA tables Idle packet received destined for this node No Yes i) update weights ii) receive packet send back appropriate packet (e.g. CTS, ACK) using the new weights update weights for receiving pattern uplink beamforming to avoid exposed terminal Packet Transmission Packet Reception Figure 2.1: ADAPT flowchart for packet transmission and downlink beamforming (left), and packet reception and uplink beamforming(right) section we will analyze each of these two phenomena separately, to see what their effect is on performance. 2.4.1 The effect of mobility The DOAs used in semi-static beamforming to calculate the optimal antenna weights are taken from the DOA and SVCS tables, described in the previous section. Therefore, they are outdated in the sense that they correspond to the respective angles at some time in the past. If node mobility is low, then these values can serve as good estimates. However, consider the following scenario that provides some intuition of what can go wrong: 24 • Anode Y at angle φ Y gets logged at time t 1 in the SVCS table of another node X, as currently receiving some packet until time T. • At time t 2 <T,node X starts transmitting a packet of its own. In order to avoid causing any interference at node Y , X creates a null in its antenna pattern towards φ Y . • If node Y moves fast enough with respect to node X, then Y might move outside the sector corresponding to the null formed by node X towards Y , before it has finished receiving its packet (i.e. before T). In that case, Y ’s reception will be ruined by X’s transmission. Consequently, if nodes move with high speeds, many DOA and SVCS table entries will go stale quickly, before they can be of any use in the beamforming process. The important problem here is not as much that of tracking the desired signal, as would be for example in the case of directional antennas. Rather, it is more important to make sure that all interfering signals are suppressed throughout the duration of a packet reception. This latter goal is more challenging than the former, since the angle of a null is much more narrow than that of a main beam. Theorem 2.4 calculates the probability that a packet transmission will succeed despite node mobility, as a function of nodes’ speed, and average number of concurrently communicating nodes within a node’s neighborhood. Throughout our analysis we make the following assumptions: a. All nodes are moving independently according to the random direction model [12], with zero stopping time. Specifically, a node chooses a direction uniformly dis- tributed in [0, 2π), and moves towards that direction for an exponentially distributed 25 amount of time, with a speed uniformly distributed in [v L ,v H ]. After a move has finished it repeats the above process. b. Arrivals of packets to be transmitted at any node are Poisson distributed with parameter λ. Packet arrivals at different nodes are independent. c. The duration of any transmission is exponentially distributed with rate µ and is independent from any other transmission. d. A node does not change its direction or speed of movement throughout the duration of a single transmission. e. Any point-to-point packet exchange between two nodes A and B consists of the following packet transmissions: RTS(A → B), CTS(B → A), DATA(A → B), ACK(B → A). Each of these packets carries in its header a value indicating the estimated time until completion of the full packet exchange (i.e. end of ACK’s transmission). Furthermore, a packet exchange is considered successful if and only if all four packets are received correctly. During these four transmissions (phases), both nodes A and B take turns being transmitters and receivers. Therefore, we consider both nodes involved in a packet exchange simply as active for the full duration of the exchange. An active node is considered as both a source and subject of interference at any time until completion of the packet exchange. Although the assumptions of Poisson arrivals (b) and exponential transmissions times (c) may not hold in most real life situations, they allow us to provide some analytical insight into how mobility affects the performance of our protocol. Furthermore, in many 26 scenarios where 802.11-like MAC protocols are being used, DATA packets are of fixed size (or at least bounded) size. Consequently, there is much more determinism in the residual time of any transmission recorded in the SCVS table than in the memoryless context assumed. This implies that our analytical results will only be slightly pessimistic compared to reality. The following definition expresses the velocity of an interferer in a coordinates system relative to the node of interest. Definition 2.1 Let two nodes A and B, currently at positions → x A and → x B , have velocities → v A and → v B , respectively. Further, let → a, → b denote the inner product of two vectors → a and → b. We define the unit vectors → u ⊥ AB and → u AB , such that (see also Figure 2.2) → u ⊥ AB : → u ⊥ AB , → x B − → x A =0; → u AB : → u AB , → x B − → x A = → x B − → x A . Lemma 2.2 Let two nodes A and B move with speeds → v A and → v B , respectively, and let node A be pointing its main beam or null towards B. Let further v ⊥ AB denote the rate by which node B drifts away from the sector corresponding to this beam or null (i.e. v ⊥ AB =| → v B − → v A , → u ⊥ AB |); Finally, let v AB denote the rate by which the distance between A and B changes along → u AB (i.e. v AB =| → v B − → v A , → u AB |); Then, it holds that E[v AB ]= E[v ⊥ AB ]= v L + v H π + 4(2v 3 H +4v 2 H v L + v H v 2 L +3v 3 L ) 15π 2 . (2.4) Proof. See Appendix A. 27 r x A x B v A v B A B θ ⊥ AB u r || AB u r r x A x B v A v B A B θ ⊥ AB u r || AB u r Figure 2.2: The coordinates system defined by the relative movement of two nodes A and B. Lemma 2.3 Let node A point a sector S of angle θ towards a node B at distance r from A (starting at time 0). S may correspond to A’s main beam or a null formed to that direction. Then, the average time T c (r) it takes B to leave sector S, is given by: T c (r)= 1 2 r sin(0.5θ) E[v ⊥ AB ](1− sin(0.5θ)) + 1 2 r sin(0.5θ) E[v ⊥ AB ](1 + sin(0.5θ)) . (2.5) Proof. See Appendix A. Theorem 2.4 Let a node A initiate a packet transmission at time t, at which time the are M ≤ K active entries in A’s SVCS table. Further, let θ null denote the angle of a null created by A’s antenna, R denote the maximum transmissions range, and let 28 α = µsin(0.5θ null ) E[v ⊥ AB ] . Then the probability P m succ that A’s transmission will not collide due to mobility with any one of the M concurrent transmissions is at least P m succ ≥ 1− 2e −αR (−1+ e αR − αR) α 2 R M . (2.6) Proof. From the definition of ADAPT, A will form a null towards each of the M nodes corresponding to the M active entries in its SVCS table. Let A M denote the set of all M active nodes and let all nodes j ∈ A M lie within range R from A. Then, the probability of a collision P coll =1− P m succ is defined as the probability P(∃j ∈ A M : j leaves null sector before its transmission is finished∧ A is still transmitting when this occurs). Now, let us define the following quantities: • r j = → x j − → x A , j ∈ A M ; • X j : residual transmission time, j ∈ A M ∪{A}; • ˆ A M (t)={j ∈ A M : T c (r j )<t}. Then, the probability that A will not collide with any of the M concurrent transmissions is equal to P m succ = X A P(X i ≤ T c (r i ),∀i∈ ˆ A M (t))P(X A = t)dt. 29 However, all M active nodes move independently of each other and independently of A, and their average speed relative to node A is given by {E[v ⊥ AB ],E[v AB ]} (Lemma 2.2). Furthermore, all r j are also I.I.D. and distributed according to P(r j = r)= ⎧ ⎪ ⎪ ⎨ ⎪ ⎪ ⎩ 2r R 2 ,r∈ (0,R] 0 , otherwise. Finally, according to assumption (c) the residual transmission times X j are also I.I.D., and exponentially distributed with parameter µ. Consequently, we can express P m succ as a product of independent probabilities. Now let us denote as P(n|t) the probability P( ˆ A M (t)= n). Since an ideal null in the antenna pattern has a very small angle null we can approximate T c (r) from Eq.(2.5) with ˜ T c (r)= r sin(0.5θ null ) E[v ⊥ AB ] . Furthermore, ˜ T c (r)≤ ˜ T c (R),∀r∈ (0,R]. Therefore, we can calculate P(n|t)as P(n|t≥ ˜ T c (R)) ∼ = ⎧ ⎪ ⎪ ⎨ ⎪ ⎪ ⎩ 1 ,n = M 0 ,n = M ⎫ ⎪ ⎪ ⎬ ⎪ ⎪ ⎭ P(n|t≥ ˜ T c (R)) ∼ = B(n;M,f(t)), 30 where B(n;M,f(t)) = ⎛ ⎜ ⎜ ⎝ M n ⎞ ⎟ ⎟ ⎠ (f(t)) n (1− f(t)) M−n denotes the binomial distribution with parameters M,f(t)= E[v ⊥ AB ]t R sin(0.5θ) 2 . We can now expand the integral in the deriva- tion of P m succ into P m succ = ∞ ˜ T c(R) R 0 P(X ≤ T c (ρ))P(r = ρ)dρ M P(X A = t)dt + ˜ T c(R) 0 n=0 MP(n|t) R √ f(t) 0 P(X ≤ T c (ρ))P(r = ρ|t)dρ n P(X A = t)dt. Noth that, for t ≤ ˜ T c (R), r may only take values less than R f(t) in the second inner integral and hence P(r = ρ|t)= ⎧ ⎪ ⎪ ⎨ ⎪ ⎪ ⎩ 2ρ sin(0.5θ) E[v ⊥ AB ]t 2 ,r∈ 0, sin(0.5θ) E[v ⊥ AB t] 0 , otherwise. Let us denote the first integral in the P m succ equation as I1 and the second as I2. After performing some calculations we get I1= e −µ ˜ T c(R) 1− 2e −αR (−1+ e αR − αR) α 2 R 2 M ,α = µsin(0.5θ) E[v ⊥ AB ] , I2= M n=0 ˜ T c(R) 0 B(n;N,f(t)) e −µt (−2+ µ 2 t 2 + e −µt (2 + 2µt)) n µ 2n−2 t 2n dt. Adding I1and I2 gives the exact P m succ .Now, I1 is the probability that X A is long enough, such that any node j ∈ A M that drifts out of its null, will collide with A, provided that j is still communicating. On the other hand, I2 captures the cases where some node j 31 does drift away from its null, but A has already finished its transmission/reception. If we ignore this latter case, we can define the approximate ˜ P m succ as ˜ P m succ = R 0 P(X ≤ T c (ρ))P(r = ρ)dρ M . It is evident by the above discussion and preceding equations that ˜ P m succ is a more pes- simistic value than P m succ , since it assumes that any active node drifting out of its null, while still active, will certainly interfere with A. Thus, P m succ ≥ ˜ P m succ = 1− 2e −αR (−1+ e αR − αR) α 2 R M . Note that the above bound becomes tighter when the traffic load is high. For example, in the extreme case where most nodes send packets back-to-back all the time, Eq.(2.6) approaches equality. Eq.(2.6) implies that the probability of a successful transmission, in the presence of node mobility, is a decreasing function of average speed, and number of concurrently active nodes. This is a result that agrees with our intuition. Finally, Theorem 2.5 calculates the probability that a node’s main beam can track a desired signal for the duration of a packet transmission. This result is more relevant to a directional (phased-array) antenna. 32 Theorem 2.5 Let a node A point its antenna main beam of angle θ w towards some node B, and start sending a packet to B. Then, the probability that A will be able to track B throughout the duration of A’s packet transmission is given by P track =1− exp −µ 2R sin(0.5θ w ) 3E[v ⊥ AB ]cos 2 (0.5θ w ) . (2.7) Proof. This is straightforward to show that P track =1− R 0 P(X A >T c (r)|I =1)+ P(X A >T c (r)|I =−1) 2 dr, where I is again the same indicator function as in the proof of Lemma 2.3. Using Eq.(2.5) and the fact that X A is exponentially distributed, we get Eq.(2.7) after some calculations. 2.4.2 The effect of node deafness Node deafness occurs when an ongoing transmission in the vicinity of some node does not get recorded in the SCVS table. Since a node performs beamforming only based on information recorded in the SVCS table it may potentially interfere with a transmission not logged there, if it decides to engage itself in communication. An example of how deafness can occur can be seen in the following sequence of events. We use the notation pkt(T)todenoteapacketoftype pkt containing a remaining duration of time T in its header: 33 • at time t1: node B overhears RTS(T1) from A; B forms a null towards A, to last until t1+ T1. • at time t2 ∈ (t1,t1+ T1): B sends CTS(T2) : t2+ T2 >t1+ T1. A is busy transmitting and cannot receive B’s CTS. • at time t1+ T1: B removes the null formed towards A. • at time t3 ∈ (t1+ T1,t2+ T2): A transmits a new packet; A is not aware of B’s ongoing communication and does not form a null in its downlink beam towards B; B’s reception gets garbled due to A’s transmission. The following theorem quantifies the effect of deafness on probability of a successful transmission, as a function of the average amount of activity in the surrounding area of anode. Theorem 2.6 Let a node A initiate a packet transmission at time t, at which time there are M ≤ K active entries in A’s SVCS table. Then, the probability P d succ that A’s transmission will not collide, due to node deafness, with any one of the M concurrent transmissions, is at least P d succ ≥ 1− 1 M +1 M j=1 jλ µ + jλ . (2.8) Proof. According to the specification of ADAPT, whether A is going to send or receive a packet, it is going to form a null towards each of the M nodes corresponding to the M active entries in its SVCS table. Let A M denote again the set of all such nodes. The probability of deafness is defined here as the probability that a forthcoming 34 communication within a node’s vicinity does not get recorded in its SVCS table (otherwise it would be able to create a null and avoid any interference towards or from the recorded direction). Let us denote this probability as P deaf . Furthermore, let us define the following quantities: • X j : residual transmission time, j ∈ A M ∪{A}; • T j : time until next packet arrival, j ∈ A M ∪{A}; • ˆ A M ={j ∈ A M : X j <X A }. Now, if there are M active entries in A’s SVCS table at the time where A initiates a packet exchange itself, P deaf is equal to P deaf = K j=1 P( ˆ A M = j|M)P(∃i∈ ˆ A M : T i+1 ≤ X A − X i |j). In other words, it is the probability that j of the nodes in A M finish before A, and at least one of these j nodes starts again before A finishes, summed over all possible j. In that case, the new activity of the node in question will not get recorded in A’s SVCS table, since A is busy. Furthermore, since any node in A M is busy when A starts transmitting and does not record A’s activity in its SVCS table either, it will not form a null towards 35 A when (and if) it restarts, and therefore may interfere with it. Now, since all X j are I.I.D and exponentially distributed with parameter µ it follows that P( ˆ A M = j|M)= ⎛ ⎜ ⎜ ⎝ M j ⎞ ⎟ ⎟ ⎠ ⎛ ⎜ ⎜ ⎝ M +1 j ⎞ ⎟ ⎟ ⎠ 1 M − j +1 = 1 M +1 . This is reasonable since the above probability equals the probability that an exponential clock competing with another M exact same clocks, will be the j +1 th to expire. This probability is equal 1 M+1 for any j. Furthermore, packet interarrival times T j are also I.I.D, exponentially distributed and independent from packet service times. Therefore, P(∃i∈ ˆ A M : T i+1 ≤ X A − X i |j)=1− µ µ + jλ = jλ µ + jλ . Substituting the previous two equations in the equation for P deaf we get that P deaf = 1 M +1 K j+1 jλ µ + jλ . This is the probability of deafness, as defined earlier. However, the fact that an ongoing or incipient transmission does not get recorded in the node’s SVCS table, does not necessarily mean that there will be a collision. For example, even if some j ∈ ˆ A M restarts before A finishes, if A is still transmitting the same packet (e.g. not waiting say for an ACK packet), it won’t remove its null towards j, before the packet transmission gets completed 36 Lower bound for P{success} under deafness 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 34 56 7 8 9 10 M = number of concurrent transmissions probability of success Series2 Series3 λ=µ/4 λ=µ/10 Lower bound for P{success} under deafness 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 34 56 7 8 9 10 M = number of concurrent transmissions probability of success Series2 Series3 λ=µ/4 λ=µ/10 Figure 2.3: Probability of success, due to node deafness, as a function of the number of concurrent transmissions M. (remember that semi-static beamforming is performed on a packet-per-packet basis). Hence if j finishes its new communication (e.g. transmission or reception of a short RTS or CTS packet) before A’s DATA packet is sent they still will not collide. It is evident therefore that P coll ≤ P deaf .Thus, P d succ =1− P coll ≥ 1− 1 M +1 M j=1 jλ µ + jλ . In Figure 2.3 we depict how the lower bound of Eq.(2.8) decreases with increasing M, for two different arrival to service rate ratios. We note that those are relatively high rates for a shared media. Real-time Uplink Beamforming: In order to combat both the effect of high mo- bility and node deafness, ADAPT could be complemented by a real-time uplink beam- forming module as follows: Let’s assume that only the direction φ S of the desired signal is known, while the interference environment is unknown. (Note that, since the width 37 of the antenna main beam is much larger than that of a null, we can safely use the φ S entry from the DOA table in most cases.) Let further s(t)=[s 1 (t),s 2 (t),··· ,s K+1 (t)] denote the adaptive array received signal vector, R = E[ss H ] denote the array correlation matrix, and sv s =[1,e jβ∆ xcos φ S ,··· ,e jKβ∆ xcos φ S ] denote the array steering vector as- sociated with the direction of the desired signal. Then the beamforming algorithm solves the following constrained optimization problem. minimize w w H Rw, subject to w H sv s =1. This algorithm seeks to minimize the mean output power of the array, while maintaining unity response towards φ s . This is equivalent to maximizing the output SINR. We are not concerned here with the specific algorithm to be used to estimate matrix R online in order to calculate the optimal weights. The interested reader in the available alternatives is referred to [43, 68]. Remark: It is important to note that this scheme, although real-time, does not require training sequences or sophisticated blind beamforming algorithms. Also, the real-time module is only necessary in scenarios of increased mobility and/or high traffic loads. In most other cases, it does not need to be implemented or used. 38 2.5 Simulation Results We have used the ns-2 network simulator, with the CMU wireless extensions, for all our simulations. Our goal was to thoroughly evaluate the performance of our ADAPT proto- col, running on an ad-hoc network of nodes with adaptive array antennas, by extensively comparing it to typical directional and omni-directional configurations. In order to do so we have developed the following modules in ns-2: • Directional antenna models: We have implemented models for a flat-topped an- tenna [102], and a circular array of dipoles. However, we shall only present here results for the former. • Adaptive array antenna model: We have implemented an adaptive array antenna model with the capability of independently steering a main beam and K nulls to any direction in the 360 o plane. We assume, throughout, that the number of elements K in the adaptive array is 10, and we calculate the parameters for the flat-topped model based on a linear end-fire array of 10 elements [6] 2 . Each null is assumed to be of 2 o width, and have a gain of −50dB [25]. We have also implemented the real time beamforming algorithm described in Section 2.4.2. As mentioned earlier, it is not our focus here to delve into the details of different real-time adaptive algorithms. Therefore, we have not dealt with issues like convergence speed of the algorithm, and other physical layer details. Instead, we have assumed that 2 We also experimented with different parameters and found that the basic conclusions we draw hold regardless. 39 the antenna pattern adapts to the interference environment automatically (in one cycle), using only knowledge of the SOI (signal-of-interest) direction. • Cumulative Interference Model: ns-2 did not implement a correct model for noise and interference, at least up until version 2.1b9 that we used. Specifically, it only considers each interfering packet sequentially, in order to determine whether a cur- rently received packet should be captured or a collision/error should occur. How- ever, as has been noted in [97], this is not an accurate way to model the effect of interference. Interference from all concurrently transmitting nodes is added incoher- ently at a receiver (i.e. the power of the combined signal equals the sum of powers of all individually received signals) and is experienced as additive noise. Even if no single communicating node can garble the transmission of any other concurrently communicating node, the combined interference may be high enough to prohibit capture of the useful signal. This could result in quite optimistic results in high interference environments, which are of highest interest when trying to maximize the number of parallel transmissions, and thus throughput). We have therefore replaced ns-2’s original model, with an accurate cumulative interference and noise model that adjusts the SINR level according to incoming signals, and is used to determine errors and/or collisions. • Directional virtual carrier sensing (DVCS): We have implemented the basic direc- tional virtual carrier sensing mechanism, to our best understanding, as described in [102], to be used in combination with flat-topped directional antennas. The rea- son for this choice is the simplicity and good performance of this protocol, as well 40 0 7 2 9 6 1 8 4 3 5 Figure 2.4: Scenario A — 10 static nodes in an area of 400×400m and 5 CBR connections active in parallel. as its being a random access MAC protocol and therefore more appropriate to be compared to ADAPT. • ADAPT: We have implemented all the mechanisms of ADAPT, as described in Section 2.3. 2.5.1 Single-hop network of static nodes (Scenario A) We start our performance evaluation with a simple, proof-of-concept scenario, namely a single-hop network of 10 static nodes. Our motivation for this is to isolate, as much as possible, the effect of the routing and transport protocols, as well as that of mobility, from the effect of the specific MAC protocol and antenna type chosen. We will look into multi-hop scenarios in the next sections. The 10 nodes are distributed in an area of 400× 400m. There exist 5 active connections, namely 3→ 5, 1→ 6, 4→ 8, 9→ 2, 0→ 7, as depicted in Figure 2.4. Although not all nodes are within range (transmission range is equal to 250m), they all interfere with each other and compete for the shared channel. 41 Single Hop Network (10 nodes - 5 connections) 0 5000 10000 15000 20000 25000 0.02 0.016 0.012 0.009 0.007 0.005 packet interrarival time (sec) network throughput omni directional ADAPT (MAC) ADAPT (full) Figure 2.5: Network throughput comparison for Scenario A. Each connection is sending CBR traffic, with packet sizes of 512 Bytes. We de- fine network throughput as the total amount of traffic that successfully gets through by all connections in the network, throughout the simulation run. In some cases, we use the terms total or aggregate throughput interchangeably with network throughput. In Figure 2.5, we compare the network throughput for traffic rates of 50 packets/sec (i.e. average packet inter-arrival time of 0.02 seconds) up to 200 packets/sec (i.e. av- erage packet inter-arrival time of 0.005 seconds), for the following four configurations: omni = {omni-directional, 802.11}, directional = {directional, DVCS}, ADAPT(MAC) ={adaptive array, semi-static downlink beamforming}, ADAPT(full) ={adaptive array, semi-static uplink/downlink beamforming + real-time algorithm}. It can be seen in Figure 2.5 that the network is saturated in the omni-directional case for the range of traffic loads considered. All connections compete with each other, resulting in a channel utilization that is merely as high as that of a single one. The use of directional antennas improves the situation, achieving a maximum total throughput of around 14000 packets, which is about 2.2 times that of a single connection. However, we have noticed in our simulations that this comes at the cost of increased average 42 OM NIDIRECTIONAL 0 500 1 000 15 0 0 2000 2500 3000 3500 0.02 0.01 6 0.01 2 0.008 DIRECTIONAL 0 100 0 2000 3000 4000 5000 6000 7000 0.02 0.01 6 0.01 2 0.008 ADAPT ( full) 0 1 000 2000 3000 4000 5000 6000 7000 0.02 0.01 6 0.01 2 0.008 3->5 1->6 4->8 9->2 0->7 ADAPT (M AC only) 0 1 000 2000 3000 4000 5000 6000 7000 0.02 0.01 6 0.01 2 0.008 Figure 2.6: Distribution of available bandwidth among the 5 competing connections, for the 4 configurations considered. packet delay and a large number of dropped packets. It is evident that the adaptive array configuration achieves the best performance. Even using only downlink semistatic beamforming, performance is considerably better, reaching a total throughput of around 3 times that of a single connection. Furthermore, using the full ADAPT stack, a high of 21000 packets is reached (for input rate equal to 200 packets/sec). Some insight into the performance of the four configurations is provided in Figure 2.6. There, it is depicted how the available bandwidth gets distributed among the five com- peting connections by each of the four configurations. It is clear from this figure, that the bandwidth allocation achieved is not balanced among all connections. Specifically, due to the exposed terminal problem, some connections get almost shut down, being unable to capture incoming transmission requests due to excessive interference, and receive much less than their fair share of the bandwidth. 43 The omni-directional configuration is in the worse standing achieving a fair allocation for only 3 of the 5 connections, and that only for lower traffic loads. On the other hand, DVCS and ADAPT using only downlink semistatic beamforming, manage to distribute the bandwidth in a fair manner among 4 out of 5 of the connections, for lower traffic loads. Additionally, the first ADAPT configuration manages to allocate a considerable, albeit not equal, share to the fifth connection, as well, for this same range of traffic loads. As is expected, the ADAPT configuration that implements semi-static uplink beamform- ing, alleviates the exposed terminal problem, and achieves the most fair allocation of bandwidth for the whole range of traffic loads considered. We should note here that the real-time part of ADAPT, although implemented in the latter configuration, does not play an important role in the achieved performance (only in the few occurrences of node deafness), due to absence of any mobility. 2.5.2 Multi-hop network of static nodes (Scenario B) It has been noted in many recent works that, in the wireless context, there exists a strong interaction between protocols operating in different layers [70]. Therefore, in order to correctly account for the effect of the full protocol stack, we consider a multi-hop network, where each connection spans a number of nodes. Specifically, we consider a scenario where 30 nodes are uniformly distributed on a plane of size 1000× 1000m. All nodes are still assumed to be static, in order to isolate the effects of mobility. We consider the performance of the network, with an increasing number of simultaneous TCP connections with randomly chosen endpoints. All nodes run the Ad-hoc On-Demand Distance Vector (AODV) routing protocol [83]. A comparison of the aggregate throughput achieved by 44 Multi Hop Network - No Mobility 10000 15000 20000 25000 30000 610 14 18 number of connections throughput (pkts) omni directional fully adaptive Figure 2.7: Network throughput comparison for Scenario B. all connections, for the omni-directional, directional, and adaptive array configurations, is presented in Figure 2.7 as a function of the number of connections. As can be seen from the plots, ADAPT achieves the highest network throughput in all cases considered. The improvement becomes more evident with a higher number of connections. Nevertheless, the attained improvement is not as large as that of the relative improvement in SINR for a single reception, both for the directional and the adaptive case. The reason for this is that, in the multi-hop setting, a significant number of routing and other broadcast packets are exchanged, which do not take advantage of the additional antenna capabilities (due to their broadcast nature). Delay also plays an important role in the context of ad-hoc networks, especially for real-time/multimedia applications. In order to evaluate the effect of each configuration on end-to-end delay, we run simulations of 10 CBR connections each of rate 100 packets/sec. Connection endpoints are randomly chosen among all 30 nodes. Average end-to-end delay results for the 3 configurations are given in Table 2.1. As is evident from this table, in 45 Table 2.1: End-to-End Delay for Scenario B. Antenna Type omni directional adaptive End-to-end Delay (sec) 0.8630 0.6643 0.5222 the case of a multi-hop network of non-mobile nodes adaptive array antennas offer the best performance in terms of end-to-end delay, as well. 2.5.3 Multi-hop network of mobile nodes (Scenarios C) In this last section we consider two multi-hop scenarios, where all nodes are mobile. 30 nodes are constantly moving according to the ns-2 random waypoint mobility model on a 1000× 1000m (pause time is zero). In the first scenario nodes move with an average speed of 1.5 m/s. This is a relatively low speed, better modeling walking speeds. In the second scenario nodes move with average speed of 10 m/s. This scenario could model vehicles moving with moderate speed (e.g. cars in city traffic, or heavy military vehicles). We run simulations for an increasing number of TCP connections, randomly assigned between all nodes. The attainable network throughput, for the omni, directional, and fully adaptive configurations is depicted in Figure 2.8. When mobility is low, it is evident that the adaptive antenna configuration attains superior performance than the other two configurations. This becomes especially pronounced when the network is heavily loaded. For the high mobility scenario results for both ADAPT implementing only semistatic downlink beamforming and the full ADAPT are shown, in order to demonstrate the de- tailed effect of mobility. As was noted in Section 2.4, increased mobility has a detrimental effect on the performance of semi-static beamforming. Nevertheless, ADAPT using only 46 Multi Hop Network - Speed: 1.5m/s 10000 15000 20000 25000 30000 610 14 18 number of connections throughput (pkts) omni directional adaptive array Multi Hop Network - Speed: 10 m/s 4000 8000 12000 16000 20000 24000 6 101418 number of connections throughput (pkts) omni directional ADAPT1 ADAPT2 Figure 2.8: Network throughput for Scenario C: low mobility (left) and high mobility (right). ADAPT1 only implements semi-static beamforming, while ADAPT2 implements real-time adaptive beamforming, as well. Table 2.2: End-to-End Delay for Scenario C (low mobility) Antenna Type omni directional adaptive End-to-end Delay (sec) 0.5761 0.4453 0.2878 semi-static beamforming still provides better performance in the majority of cases. Fur- thermore, when the full ADAPT stack is employed the adaptive antenna configuration retains a clear performance advantage. Finally, we have evaluated the 3 configurations in terms of average packet end-to-end delay for the low mobility scenario. We have used 10 CBR connections, each of rate 100 pkts/sec, randomly assigned among all nodes. Results are given in Table 2.2. It is evident from that table, that the adaptive configuration provides a clear advantage over the other two in terms of end-to-end delay, as well. 2.6 Conclusion and Future Directions We have shown throughout this paper that ADAPT can exploit the capabilities of adap- tive array antennas, and improve the performance of a mobile ad-hoc network, compared to the cases when omni-directional or directional antennas are used. Although one might 47 argue that these gains come from the use of an advanced antenna technology, it is im- portant to note that simply equipping each node with an adaptive antenna is not merely sufficient to improve performance. An appropriate protocol is necessary that will deal with the issues of antenna synchronization and estimation of the surrounding interference environment, and will do so using only the little resources of low cost wireless terminals. Finally, although we demonstrated that ADAPT performs very efficiently under the simple propagation model we assumed, it remains to be shown how it would perform in more realistic conditions. Real-life propagation phenomena like fading and shadowing can, on the one hand, have an adverse effect on the successful packet reception, yet on the other, they apply also to interfering signals and could sometimes help increase spatial reuse. In the future, we intend to extend our model to include fading (e.g. Rayleigh) and shadowing (e.g. log-normal), in order to evaluate their theoretical effect on perfor- mance. Additionally, multi-path propagation, in general, introduces an angular spread in the direction of arrival for both the signal-of-interest and interfering signals. This makes it considerably more difficult to pinpoint and cancel interferers using only higher-layer, ”semi-static” information, as in ADAPT. We plan to look into how ADAPT could be modified to cope with multi-path propagation, as well as calculate its effect on perfor- mance. 48 Chapter 3 A Theoretical Framework to Analyze the Capacity of Wireless Ad-hoc Networks 3.1 Introduction We saw in the previous chapter how to design an efficient MAC protocol that can improve the performance of ad-hoc networks by appropriately utilizing fully adaptive array anten- nas. In this chapter we are interested in the theoretical limitations on the performance improvement that can be achieved by using advanced antenna technologies. Specifically, we would like to answer questions like: how many nodes can be allowed to communicate concurrently in the network, without garbling each others’ transmissions? how is this number affected by propagation environment, radio technology (e.g. receiver sensitivity, antenna type, etc.), and access protocols used? There have been a number of papers trying to answer some of these questions. As we mentioned in the beginning, Kumar and Gupta in a very influential paper performed a capacity analysis for networks consisting of nodes using omni-directional antennas, and 49 derived tight asymptotic bounds for a variety of cases [47]. Since then, researchers have been looking for techniques that can improve on these bounds. The anticipated gains of using directional antennas, in terms of energy efficiency [95], increased throughput [84], etc., has led a number of researchers to extend the analysis of [47] to the cases of directional [118, 96] or even smart antennas [10, 96]. Am alternative approach is taken by the authors of [80], where concepts from network flow theory are used to reevaluate Kumar’s results and extend them to the case of directional antennas. On a different level, the authors in [46] explore how node mobility can be exploited in order to overcome the fundamental capacity bound established in [47] and achieve a per node capacity of Θ(1). The price paid for this improvement is that no delay guarantees are provided. On the other hand, when there is a maximum allowable delay requirement d, it was shown in [81] that there is a critical value for d, below which no significant improvement can be achieved through node mobility, and above which capacity increases as d 2 3 . A number of these works base their analysis on the assumption that the media ac- cess protocol establishes disjoint silence regions around each communicating node (e.g. 802.11 [53]), and compute network capacity using geometric arguments to bound the maximum number of such disjoint regions. Others employ an elementary interference model, where the Signal to Interference and Noise Ratio (SINR) at each receiving node must remain above a radio-specific threshold value. It is common to call the former, the Protocol Model and the latter the Interference or Physical Model [47]. It is important to understand though that it is the subtle interplay between the in- terference level requirement and MAC protocol behavior that defines the actual network 50 throughput achievable in a given scenario. For example, in a harsh operating environ- ment, where attenuation of signals is quite large (e.g. path loss exponent >4),orwhere nodes are using highly directional antennas, the average interference level at each node is expected to be relatively low. In such environments, it is the MAC protocol’s mechanisms that will most probably impose a bound on the capacity. On the other hand, when each transmitting node is contributing a large amount of interference in the surrounding envi- ronment, far less concurrent transmissions can occur successfully than the MAC protocol would allow. It is for this reason that we introduce in this paper the Joint Interference and Protocol Model that accurately models these interactions. An important consequence of it is that, whenever the capacity is bounded by the MAC protocol used, it implies that the spatial resources of the network are underutilized and the protocol can be improved. Finally, although asymptotic results are useful to evaluate the potential scalability of various approaches, they often fail to capture important differences between the perfor- mance of two schemes in practical, finite size networks. In addition to the scalability of a given approach, network designers are also interested in the specific improvement this technique can offer over the other, in a real scenario. Such differences may frequently be overlooked by asymptotic analysis, because the might amount to only constant factor differences (even though this constant might be really large). Therefore, in this chapter we care about the potential capacity improvement in both small and large networks. We will utilize the Joint Interference and Protocol Model to perform a detailed ca- pacity analysis for the cases of: 51 • networks of nodes using omni-directional antennas • networks of nodes using directional antennas • heterogeneous networks where only a percentage of nodes are using directional an- tennas, while the rest are using omni-directional ones. For each of these cases, we investigate the effect that antenna parameters, propagation environment, radio sensitivity and MAC protocol have on the maximum capacity. Our results describe both the exact (constant factor), as well as asymptotic behavior of the capacity. In the next section we describe the Joint Interference and Protocol Model in more detail, and go over some models and quantities that we shall use in our analysis. In Section 3.3 we perform a thorough analysis for the case of nodes using omni-directional antennas. After we justify the importance of a silence region established by the MAC protocol around a communicating node, we derive analytic results for the capacity under different propagation environments. We also re-evaluate the scaling laws of Kumar and Gupta, and prove that they need to be scaled by a factor of 1 log N , when free space propa- gation is assumed. In section 3.4 we assume that all nodes are using directional antennas and implement the DMAC protocol, a directional version of 802.11 that we introduced in Chapter 2. We derive analytic capacity results and quantify the achievable performance improvement, under different operating environments, over the omni-directional case, as a function of important antenna parameters like gain and beamwidth. We also identify the conditions under which DMAC becomes the bounding factor for the capacity, and propose a modified version, called DMAC+, which improves the capacity under these 52 conditions. The importance of this methodology comes from a network designer’s point of view and is twofold: • One can choose the right (i.e. most efficient) MAC protocol to use, if antenna type, radio, and propagation environment are known. • It can be generalized to analytically compare the performance of different MAC protocols and identify conditions under which one will be more efficient than the other. We close Section 3.4 by proving that the asymptotic behavior for both protocols is the same as that for the omni-directional case. Our analysis is concluded in Section 3.5 with the case of a heterogeneous network consisting of a fraction p of nodes being equipped with omni-directional antennas, while the remaining 1− p are using directional ones. We prove that the performance degradation over the fully directional case is linear on p,a result which is encouraging for the gradual deployment of directional antennas. Finally, in Section 3.6 we conclude this chapter. 3.2 Preliminaries The setup for our problem is similar to that used in many capacity related papers on ad-hoc networks [47, 96, 118], generalized or simplified wherever deemed appropriate. 3.2.1 Problem formulation Throughout our analysis we make the following assumptions: 53 • There are N nodes uniformly distributed on a planar disk of radius k and area A = πk 2 . • Time is assumed to be slotted and nodes synchronized. A slot is assumed to be long enough to contain a complete communication exchange between two nodes, depending on the protocol used (e.g. RTS, CTS, DATA, ACK, etc). The assumption of slotted time is only used to facilitate our analysis. It is not however necessary for our results to hold. • Without any loss of generality, we assume that a single channel is shared among all nodes. The channel capacity and slot duration can be easily scaled to achieve same performance as the multiple channel case (see [47]). • Any node engaged in communication within a time slot is considered as active during that slot. An active node may receive (or transmit) data throughout the duration of the slot, and thus incur (or generate) interference by (or towards) other active nodes. • ρ act denotes the average density of active nodes in the network. • Network throughput C N is measured in terms of the number of active nodes that can successfully communicate, during any time slot. If we include in the definition of an active node that its communication needs to be a successful one to be considered as active, then ρ act = C N A (active nodes/m 2 ). Definition 3.1 (Network Capacity) We define the network capacity C MAX as the maximum achievable network throughput C N . 54 We also assume that each node is transmitting with the same power P. We assume that P may not be high enough to reach every node in the network, and therefore relaying of packets may be required. We assume a log-distance path loss model, where the received power P r of a node at distance d from the transmitter is given by [85] P r = c P d n (3.1) We let the path loss exponent n take different values (roughly ranging from 2 to 6), in order to capture in our analysis the effect of different propagation environments [14]. c is a parameter of the model. We ignore any shadowing and small-scale fading effects. The receiver is characterized by two sensitivity values, namely P min and SINR min . These two values depend on the receiver technology, coding scheme, modulation scheme, etc., and are defined as follows: • P min is the minimum received signal power that can be used to successfully recover the useful data, when there is no interference. Based on it, we get maximum transmission range R s of a node as follows: R s = n c(P/P min ) (3.2) • SINR min is the minimum Signal to Interference and Noise Ratio that allows the receiver to capture (i.e. successfully recover) the intended signal in a noisy envi- ronment. Interference from different sources is added incoherently at the receiver. Consequently, the total interference power at the receiver is equal to sum of the 55 power received by each individual interference source. We assume that interferers are uniformly distributed with density ρ act in the interference region U(I). Then the requirement for successful reception at distance d is given by cPd −n N + U(I) dI ≥ SINR min (3.3) Since we are trying to maximize the number of concurrent transmissions, it is safe to assume that the interference level at any node will be considerably higher than internal noise N. Up to this point the model described is a form of the typical Interference Model used in related literature. We shall use this model in the next section, in order to demonstrate the shortcomings of the lack of a silence region. Definition 3.2 (Silence Region) In the Joint Interference and Protocol Model, a Si- lence Region U(NI) is an area around an active node inside which no other node can be active at the same time. The interference zone for a node is then defined as U(I)= A− U(NI). We assume that no overlap between silence regions is allowed. Any node in U(NI) is forced to refrain from transmission throughout the duration of this slot, and hence cannot act as a source of interference. This could be achieved, for example, by means of RTS and CTS packets, as in the case of 802.11. On the other hand, any node outside the silence region may potentially cause interfere. Finally, we note that in a real setting silence regions may partly overlap. However, we assume that aslack factor is included in the establishment of the silence region, so as to guarantee that silence regions are disjoint (i.e. the maximum transmission range is assumed to be equal to R s + ). This assumption will make our results only slightly more pessimistic. 56 3.2.2 Antenna models In Section 3.3 we will assume that all nodes are using omni-directional antennas that have uniform gain G = 1 towards every direction in the azimuth plane, for both transmission and reception. Then, in Section 3.4 we will assume instead that all nodes are using directional an- tennas characterized by a gain function G(φ, θ)= EIRP(φ, θ) P . (3.4) EIRP(φ, θ) is the effective isotropically radiated power towards direction (φ, θ), defined as the amount of power that would need to be transmitted by an ideal isotropical antenna, in order to achieve the same power density at that direction. We assume further that nodes use the same directional antenna for both transmission and reception. Therefore, we know that G T (φ, θ)= G R (φ, θ)(reciprocity theorem). Our log-distance path loss model needs to be modified, in order to include antenna gain as follows: P r = cP G T G R d n (3.5) The model used for directional antennas, throughout this paper, is that of an ideal, flat-topped antenna, with an antenna pattern as depicted in Figure 3.1. This is a useful directional antenna model, frequently used in related studies [102], which is analyti- cally tractable, yet captures successfully important antenna characteristics like antenna 57 G main = 1 G s < 1 φ φ - 2π 0 φ Figure 3.1: Normalized flat-topped antenna pattern beamwidth and sidelobe gain. Since all nodes are placed on the plane we are only inter- ested in the gain G(φ). Additionally, we normalize G(φ) to 1, that is, we assume that the transmitting power P is adjusted so as to achieve the same maximum transmission range R s , as an omni-directional antenna. R s (and consequently P) are dictated by desired con- nectivity characteristics in the network [12] [13]. The gain function for the flat-topped antenna is given by G(φ)= ⎧ ⎪ ⎪ ⎨ ⎪ ⎪ ⎩ 1 |φ− φ 0 |≤ θ 2 G s |φ− φ 0 | > θ 2 (3.6) where φ 0 is the direction the antenna is pointing, θ is the antenna beamwidth, and G s (< 1) is the sidelobe gain. Finally we assume that the flat-topped antenna pattern is electronically steerable towards any desired direction. 3.2.3 Arbitrary vs. Random Networks The concept of Arbitrary Networks and Random Networks is introduced in [2]. Here, we differentiate between these two types only in regards to the placement of nodes in the disk and the resulting connectivity requirement on the transmission range R s . Furthermore, 58 in contrast to the common assumption of a fixed size disk, we assume that the size of the network grows along with the number of nodes N, in order to retain specific density characteristics. Specifically: • The area|A| of the network grows as Θ(N). Alternatively, the radius k of the disk grows as Θ( √ N). • Nodes in Random Networks are uniformly distributed on the plane. The transmis- sion range R s need to be scaled as Θ( √ log N), in order to guarantee connectivity with high probability [12] [13]. • Nodes in Arbitrary Networks can be placed in an arbitrary fashion on the plane. A constant transmission range R s = Θ(1), is adequate for connectivity with high probability, provided that nodes are placed appropriately (e.g. in a grid-like man- ner). We note that our approach is equivalent to the fixed size disk, if we scale by a factor of |A| all capacity results for the fixed size disk case, as the authors in [2] also note. 3.3 The Omni-directional Case 3.3.1 The need for a silence region Our methodology for calculating C MAX when using the Interference Model is the follow- ing: The interference level depends on the number of active nodes in the network. The more the active nodes, the higher the interference level at any node. We are therefore 59 interested in the maximum interference level that does not violate Eq.(3.3). The interfer- ence dI from an infinitesimal area dU in U(I), at angle φ and distance r from the receiver, is equal to dI = I(φ, r)ρ act dU. Substituting dI in Eq.(3.3) and solving for ρ act we derive the maximum active node density. Multiplying this by the total area |A| = πk 2 ,weget C MAX ≤ cPd −n πk 2 SINR min U(I) I(φ, r)dU . (3.7) Let’s assume that there is no restriction on the minimum distance d min between two active nodes: d min → 0. The total number of active nodes is only bounded by Eq.(3.3). Lemma 3.3 When active nodes are allowed to be arbitrarily close, the capacity C MAX of a network with nodes using omni-directional antennas goes to 0 as the number of nodes goes to infinity. Proof. The average number of interferers in a ring of infinitesimal width dr at distance r around the node is equal to dN = ρ act dU = ρ act 2πrdr. The interference by any node inside this ring is I(φ, r)= I(r)= cPr −n . We integrate I(r)dU in U(I) (i.e. r∈ [d min ,k]) and replace in Eq.(3.3). Taking the limit as d min → 0, we get: C MAX ≤ lim d min →0 k 2 2SINR min k d min r −n+1 dr . Calculating the integral in the denominator gives us C MAX ≤ ⎧ ⎪ ⎪ ⎨ ⎪ ⎪ ⎩ lim d min →0 k 2 R −n s (n−2) 2SINR min (d −n+2 min −k −n+2 ) n> 2 lim d min →0 k 2 R −n s 2SINR min log(k/d min ) n=2 ⎫ ⎪ ⎪ ⎬ ⎪ ⎪ ⎭ 60 If we take the limit as d min →0and k→∞ we get that C MAX → 0. Lemma 3.3 states that if the active nodes are allowed to be arbitrary close to each other, and if the number of uniformly distributed nodes is high enough, then almost no node would be able to communicate successfully on average. The intuitive reason for this is that the expected distance of the closest interferer to any node, as N goes to infinity approaches 0. In other words, if a high number of nodes have traffic to send at most times, without arbitration any transmission attempt by a node would collide with some other nearby transmission attempt, with high probability. Hence, a MAC protocol is necessary to arbitrate media access and prevent goodput from going to zero. This motivates the introduction of the Silence Region in our Joint Interference and Protocol Model. This region is established by the MAC protocol around any active node, and its size and shape depend on physical layer characteristics. 3.3.2 Joint Interference and Protocol Model We would like to calculate once more the capacity C MAX of the network. We can use the same methodology as in the previous section and maximize the acceptable interference level in Eq.(??), to derive a bound C I MAX for C N . This bound is imposed only by physical layer parameters. On the other hand, we saw that the MAC protocol needs to establish a silence region U(NI)ofarea |U(NI)| around any active node. Consequently, using a geometric argument we can derive a bound C P MAX = πk 2 |U(NI)| on the maximum number of active nodes that the protocol itself imposes. It is obvious that C MAX cannot exceed either bound, or else the capture requirement and the definition of the silence region would be violated. 61 Lemma 3.4 The capacity C MAX of the network, in the joint interference and protocol model, is given by C MAX =min{C I MAX ,C P MAX }. We say that the capacity of a network is protocol-bound, whenever C P MAX <C I MAX . Otherwise we say that the capacity is interference-bound. Lemma 3.5 A network whose capacity is protocol-bound is under-utilized. Thus, the MAC protocol used is not efficient enough for this setting, and can be improved. The intuition behind Lemma 3.4 is the following. It is the interference level that defines Bit Error Rate (BER) and is related to Shannon’s information theoretic capacity limit. Thus, the real capacity bound is the one imposed by interference, namely C I MAX . If the capacity is bound by the protocol, it means that a higher number of concurrent transmissions could be allowed to successfully occur within one slot. Consequently, the MAC protocol can be improved to allow for this higher number. 3.3.3 Capacity of finite networks We can now go on to calculate the two individual bounds, in order to derive C MAX . Lemma 3.6 The interference-imposed capacity bound C I MAX for a wireless network con- sisting of nodes using omni-directional antennas is given by: C I MAX ≤ ⎧ ⎪ ⎪ ⎨ ⎪ ⎪ ⎩ k 2 R −n s (n−2) 2SINR min (d −n+2 min −k −n+2 ) n> 2 k 2 R −n s 2SINR min log(k/d min ) n=2 ⎫ ⎪ ⎪ ⎬ ⎪ ⎪ ⎭ (3.8) Proof. The proof is the same as that of Lemma 3.3, with d min = R s . 62 Lemma 3.7 The protocol-imposed capacity bound C P MAX for a wireless network consist- ing of nodes using omni-directional antennas is given by: C P MAX ≤ k 2 R 2 s (3.9) Proof. We will use a packing argument. The area |U(NI)| of the silence region is equal to πR 2 s , while the total disk area |A| is equal to πk 2 . Thus at most |U(NI)|/|A| non-overlapping silence regions can coexist in the network. Theorem 3.8 The capacity of a wireless ad-hoc network, whose size is infinitely large (k→∞), and consists of nodes using omni-directional antennas, is : C MAX ≤ ⎧ ⎪ ⎪ ⎨ ⎪ ⎪ ⎩ C I MAX if n=2 or 2SINR min n−2 > 1 C P MAX if n > 2 and 2SINR min n−2 ≤ 1 (3.10) Proof. We calculate the ratio L = lim k→∞ C P MAX /C I MAX . For n> 2 using Eq.(3.8) and Eq.(3.9) we get: L = lim k→∞ k 2 R 2 s k 2 R 2 s (n−2) 2SINR min (R −n+2 s −k −n+2 ) = 2SINR min n− 2 . For n = 2, using Eq.(3.8) and Eq.(3.9) we get: L = lim k→∞ k 2 R 2 s k 2 R 2 s 2SINR min log(k/R s) =∞. 63 It is evident that L> 1 ⇔ min{C I MAX ,C P MAX } = C I MAX , L< 1 ⇔ min{C I MAX ,C P MAX } = C P MAX . The above theorem states that whether the capacity of the network is protocol-bound or interference-bound, depends on the specific propagation environment (through the path loss exponent n), as well as the specific radio technology, (through the minimum SINR that allows capture). Our intuition confirms this. For small n and large SINR min we expect that interference levels will be high enough to hinder the capture of the intended signal, even for a modest number of active nodes in a slot. On the other hand, the larger n is, the higher the attenuation of interfering signals, and the higher the number of active nodes C N needed for the SINR to drop to SINR min . It is also evident that a smaller SINR min allows for increased C N . However, if C I MAX keeps increasing, there will be a turning point where it is going to be the geometry (finite number of disjoint silence regions inside the disk A) rather than interference that will limit the number of active nodes during a slot. As an example of the application of Theorem 3.8 let us examine the capacity behav- ior for two different SINR min values: (i) SINR min =10 (10dB is a typical threshold value for a number of radio cards frequently used in wireless LAN or multi-hop ad-hoc network implementations), and SINR min =1 (0dB may model modern radio technolo- gies with sophisticated coding and error correction schemes). It is easy to verify that 64 when SINR min = 10 the capacity of the network (in the limit k→∞) is interference- bound for all practical n. However, for the smaller SINR min = 1, the capacity becomes protocol-bound for attenuation factors n larger than 4. This implies that, in that specific environment, 802.11 fails to fully utilize the available bandwidth, and could be improved. 3.3.4 Asymptotic capacity bounds We now focus our attention into the asymptotic behavior of the capacity of a wireless ad-hoc network. In other words we are interested on the rate of growth of the network throughput, as the number of nodes in the network N grows to infinity. This behavior is important to evaluate the scalability of the network. The following Lemma calculates the asymptotic capacity of an ad-hoc network, when communication end-points are chosen to be one hop away, defined as single-hop capacity. Lemma 3.9 The single-hop capacity of a wireless ad-hoc network consisting of nodes using omni-directional antennas grows asymptotically with the number of nodes N in the network as C MAX (N)= O N log N n=2, C MAX (N)= O(N) n> 2. Proof.For n = 2 the network capacity is always interference-bound. Replacing k = √ N into Eq.(3.8) we get C MAX ≤ NR −2 s SINR min log N − 2SINR min log R s . 65 For large N the right-hand side is approximately C N log N , where C =(R −2 s /SINR min ), and therefore for n=2, C MAX (N)= O N log N . Similarly, for n> 2and N →∞, replacing k = √ N into Eq.(3.8) and Eq.(3.9), respectively, we get: C I MAX (N)≤ NR −2 s (n− 2) 2SINR min (R −n+2 s − N −n 2 +1 ) C I N, C P MAX (N)≤ N R 2 s C P N, where C I = R −2 s (n−2) 2SINR min and C P = R −2 s . Consequently, for n> 2 C MAX (N)= O(N). We have discussed earlier that the transmission range R s of each node is not large enough to cover the whole network, so that relaying of packets from intermediate nodes may be necessary. Consequently, an end-to-end communication exchange between two arbitrary nodes may involve forwarding of packets over a number of intermediate hops. The average number of such hops is given by the following Lemma. Lemma 3.10 The average number of intermediate hops L in a path between two ran- domly chosen nodes, in a network with N uniformly distributed nodes, is Θ √ N R s . Proof. See Appendix B The need for each node to relay packets neither originating from nor destined to that node, implies that only a fraction of the available capacity is available to each node for its own traffic. The scaling law for the capacity available to each node, as the number N of nodes in the network grows to infinity, was initially derived by Kumar and Gupta [2]. 66 We re-evaluate and generalize this scaling law in the following two theorems, based on our analysis performed using the more detailed Joint Interference and Protocol Model. Theorem 3.11 In an Arbitrary Network of N nodes using omni-directional antennas the asymptotic capacity available to each node for its own traffic is Θ 1 √ N log N n=2, (3.11) Θ 1 N n> 2. (3.12) Proof. In Lemma 3.9 we derived the asymptotic behavior of the single-hop capacity C MAX (N). However, Lemma 3.10 implies that each end-to-end packet will need to be successfully relayed by at least intermediate nodes, which view this packet as overhead traffic. Since communication pairs are randomly chosen, the overhead of relaying packets, as N grows large, will be uniformly distributed among all nodes in the network. Con- sequently, the capacity available for end to end traffic is only a fraction C MAX (N) L of the total single-hop capacity. This capacity is shared among all N nodes. Therefore, the capacity available to each node for its own end-to-end traffic is a fraction 1 N of the total. Substituting C MAX (N) from Lemma 3.9 and from Lemma 3.10, and noting that in the case of Arbitrary Networks R s does not need to scale with N, we derive Eq.(3.13). 67 Theorem 3.12 In a Random Network of N nodes using omni-directional antennas the asymptotic capacity available to each node for its own traffic is Θ 1 √ N(log N) 3 2 n=2, (3.13) Θ 1 √ N log N n> 2. (3.14) Proof. We repeat our methodology of Lemma 3.9, this time however leaving R s into the asymptotic equation. In this case the capacity available to each node for its own traffic is Θ R −1 s √ N log( √ N/R s ) n=2, Θ R −1 s √ N n> 2. However, in a Random Network R s needs to scale with N as Θ( √ log N), in order to ensure connectivity with a high probability. Therefore, Θ ⎛ ⎝ (log N) − 1 2 √ N log( √ N)− log( √ log N) ⎞ ⎠ =Θ 1 √ N(log N) 3 2 n=2, Θ 1 √ N log N n> 2. 68 3.4 The Directional Case In this section we analyze the capacity of wireless ad-hoc networks utilizing flat-topped directional antennas as described in Section 3.2. DMAC (or DVCS) is assumed to be implemented by all nodes, in order to access the shared channel using their directional antennas. This protocol was independently proposed in [6] and [7], and has been shown to perform quite efficiently. It is essentially an adaptation of the collision avoidance and virtual carrier sensing mechanisms of the original 802.11, for ad-hoc networks utilizing directional antennas to communicate. We will briefly describe here the protocol features that are needed for our analysis. More details can be found in the references: • All nodes have two modes of operation, directional and omni-directional. • When nodes are idle, they’re listening to the media omni-directionally. All non- broadcast packets (i.e. RTS, CTS, DATA and ACK) are transmitted directionally. • On reception of an RTS packet a node switches to directional mode and points its antenna back to the transmitting node, based on the direction-of-arrival of the RTS packet or knowledge of the location of that sender. • Directional virtual carrier sensing is implemented as follows. Each node keeps a directional NAV table with a similar use to the NAV value in 802.11. When it overhears an RTS or CTS packet not destined to itself it marks the direction-of- arrival in its NAV table as “busy” for the time duration contained inside the packet. This is how the silence region gets established. 69 • When a node has a packet to transmit, it checks the direction of the intended recipient in its NAV table to see whether there is any ongoing transmission in that direction. If there is, it backs off and tries again later. The characteristics of the silence and interference regions, established by this protocol are described in the following Lemma. Lemma 3.13 The silence region U(NI) and interference region U(I), established by the DMAC protocol, around any active node, whose antenna is pointing at direction φ 0 is given as follows: U(NI)= ⎧ ⎪ ⎪ ⎨ ⎪ ⎪ ⎩ r, φ:0≤ r≤ R s and |φ− φ 0 |≤ θ 2 r, φ:0≤ r≤ R s and |φ− φ 0 | > θ 2 ⎫ ⎪ ⎪ ⎬ ⎪ ⎪ ⎭ U(I)= ⎧ ⎪ ⎪ ⎨ ⎪ ⎪ ⎩ r, φ : R s <r≤kand |φ− φ 0 |≤ θ 2 r, φ : R s <r≤kand |φ− φ 0 | > θ 2 ⎫ ⎪ ⎪ ⎬ ⎪ ⎪ ⎭ where R s = R s √ nG s ,and k is the radius of the network area. Proof. When a node sends an RTS or CTS packet, it is transmitted with gain G T =1 inside the main beam, and gain G T = G s outside the main beam. Furthermore, any node that receives the packet receives it with G R = 1, since nodes in idle mode listen to the media omni-directionally. Replacing G T and G R in Eq.(3.5) and taking P r = P min , we can compute the maximum distance d max up to which an RTS or CTS packet will be heard correctly as follows: (i) if |φ− φ 0 |≤ θ 2 then d max = √ nc(P/P min ), and (ii) if |φ− φ 0 | > θ 2 then d max = √ nc(P/P min )G s . In other words, d max defines the border of 70 the silence region. Thus, replacing R s from Eq.(3.2) we can derive U(I)(inside d max ) and U(NI) (outside d max ). Lemma 3.14 The average antenna gain for an arbitrary interfering signal coming from U(I), when nodes are using flat-topped directional antennas, is given by G = θ+(2π− θ)G s 2π (3.15) Proof. An active node in the interference region U(I) may be pointing its antenna towards any direction with equal probability. Therefore, G can be easily computed from Eq.(3.6). We will now proceed with the computation of the network capacity using the Joint In- terference and Protocol Model. The interference imposed and protocol imposed capacity bounds C I MAX and C P MAX , respectively, are given by the following two Lemmas. Lemma 3.15 The interference-imposed capacity bound C I MAX for a wireless network consisting of nodes using directional antennas and implementing the DMAC protocol in order to communicate is given by: C I MAX ≤ SINR −1 min πk 2 R −n s θG log k R s +(2π−θ)GG 2 n s log k R s √ G s n=2, C I MAX ≤ (n−2)SINR −1 min πk 2 R −n s R −n+2 s [θG+(2π−θ)GG 2 n s ]−k −n+2 [θG+(2π−θ)GG s] n> 2. (3.16) Proof. The reception antenna gain G R for an arbitrary interfering signal depends on its angle of arrival in respect to the receiving antenna orientation φ 0 . Without any loss of generality we assume that φ 0 = 0. Additionally, the transmission antenna gain G T for any 71 interfering node is given by Lemma 3.14. For this reason we divide the interference area U(I)into U θ (I)={r, φ : R s <r ≤ k and |φ|≤ θ/2}, that lies within the main beam of the receiving antenna and the remaining U 2π−θ (I)={r, φ : R s <r ≤ k and |φ|>θ/2}. Consequently, U(I) I(φ, r)dU = U θ (I) I(φ, r)dU + U 2π−θ (I) I(φ, r)dU. The area of an arc in U θ (I), that has an angle θ and infinitesimal width dr at distance r from the node is equal to dU = θrdr. The interference by any node inside this arc is then I(φ, r)= cPGr −n , |φ|≤ θ/2. Similarly, for an arc in U 2π−θ we get I(φ, r)= cPGG s r −n , |φ| >θ/2and dU =(2π− θ)rdr. We can now integrate I(r)dU within U(I): U(I) I(φ, r)dU = cP θ k R s Gr −n+1 dr+(2π− θ) k R s GG s r −n+1 dr = ⎧ ⎪ ⎪ ⎨ ⎪ ⎪ ⎩ cP θG log(k/R s )+(2π− θ)GG s (log(k −n+2 − R s −n+2 ) (n=2), cP 2−n θG(k −n+2 − R −n+2 s )+(2π− θ)GG s (k −n+2 − R s −n+2 ) (n> 2). Substituting R s from Lemma 3.13 and using Eq.(3.3) we get C I MAX . Lemma 3.16 The protocol-imposed capacity bound C P MAX for a wireless network consist- ing of nodes using directional antennas and implementing the DMAC protocol in order to communicate is given by: C P MAX = πk 2 θ 2 + π− θ 2 ! G 2 n s R 2 s . (3.17) 72 Proof. The area of the silence region is given by |U(NI)| = θ 2 R 2 s + π− θ 2 ! R s 2 = θ 2 R 2 s + π− θ 2 ! G 2 n s R 2 s . Hence, the maximum number of disjoint silence regions that can fit inside disk A is πk 2 |U(NI) . Theorem 3.17 The capacity of a wireless ad-hoc network, whose size is infinitely large (k→∞), and consists of nodes using directional antennas and implementing DMAC, is equal to: C MAX = ⎧ ⎪ ⎪ ⎨ ⎪ ⎪ ⎩ C I MAX n=2 or 2SINR min G n−2 > 1, C P MAX n> 2 or 2SINR min G n−2 < 1. (3.18) Proof. Using a similar methodology with Theorem 3.8 and some calculus we can easily derive the above equation. As is evident from Eq.(3.18), it depends on the specific antenna parameters (G s and θ), propagation environment (n), and radio technology (SINR min ), whether the capacity is protocol or interference-bound. The general rule is that the network capacity is expected to be protocol-bound for: (i) highly directional antennas (i.e. low G ), (ii) large path loss exponent n, and (iii) low SINR threshold. In Figure 3.2 we depict the capacity behavior of DMAC, as a function of G s , θ, n,and SINR min . Each line in the chart represents the ratio L = lim k→∞ C P MAX /C I MAX for the specific parameters mentioned. The dividing point corresponds to L equal to 1. Finally, the following Corollary of Theorem 3.17 gives the capacity improvement of using DMAC with directional antennas instead of using 802.11 with omni-directional ones, for different cases. It follows easily from the results of this and the previous section. 73 Figure 3.2: Antenna, propagation and radio parameter effect on the capacity behavior of DMAC. Corollary 3.18 The capacity improvement of using directional antennas and DMAC, over the case of using omni-directional antennas and an 802.11-like protocol is given by: (i) 1 G |U(NI) OMNI | |U(NI) DMAC | if 2SINR min n−2 > 1 G , (ii) 2SINR min n−2 |U(NI) OMNI | |U(NI) DMAC | if 1 < 2SINR min n−2 < 1 G , (iii) |U(NI) OMNI | |U(NI) DMAC | if 2SINR min n−2 < 1. As explained earlier, when capacity is protocol-bound, it means that DMAC is not efficient enough. The reason why this under-utilization of available spatial resources oc- curs is the following: Let a node AN 2 receive an RTS or CTS by some active node AN 1 , which lies within its silence region. Node AN 2 will defer from initiating (or accepting) any communication of its own, until the ongoing communication finishes. However, this may not be necessary. It may be the case that the two nodes will not generate enough interference to garble each others communication (one such example is depicted in Fig- ure 3.3). This occurs because of the directional nature of the antenna pattern, for both the transmitting and the receiving node. In cases like that, AN 2 could be allowed to be active in parallel with AN 1 , despite its being within AN 1 ’s range. For this reason we 74 R s2 R s1 R s AN1 AN2 () min P -2 s G n AN2 AN1 Pc min P -1 s G < − − < () min P -1 s G n AN2 AN1 Pc min P < − − < Figure 3.3: Example of spatial underutilization using DMAC. propose a modified version of DMAC that can efficiently handle situations like this, and improve performance. We call this protocol DMAC+. 3.4.1 DMAC protocol improved (DMAC+) The difference between DMAC+ and DMAC is that DMAC+ divides the silence region of DMAC into a smaller silence region U(NI) and a soft (indirect) interference region U(SI). This takes place as follows: any node overhearing an RTS or CTS packet by some active node AN decides whether it is likely to interfere with AN through its sidelobe, if it engages in communication. If it would interfere, then it refrains from any transmission. Otherwise it can go ahead and transmit “away” from the ongoing transmission. The specific decision rule is given by the following Lemma: Definition 3.19 (DMAC+) Consider a network of nodes using directional antennas, where a node A, implementing DMAC+, receives an RTS or CTS from some node B.Let φ B denote the angle of arrival (AOA) and P r the received power of the incoming signal. Then node A: (i) cannot transmit towards any φ,if G s P r ≥ P min (silence region U(NI)), (ii) is allowed to transmit to any direction φ/ ∈ [φ B − θ,φ B + θ],if G s P r <p min="" for=""> θ 2 ⎫ ⎪ ⎪ ⎬ ⎪ ⎪ ⎭ U(SI)= ⎧ ⎪ ⎪ ⎨ ⎪ ⎪ ⎩ r, φ : R s ≤ r≤ R s and |φ− φ 0 |≤ θ 2 r, φ : R s ≤ r≤ R s and |φ− φ 0 | > θ 2 ⎫ ⎪ ⎪ ⎬ ⎪ ⎪ ⎭ U(I)= ⎧ ⎪ ⎪ ⎨ ⎪ ⎪ ⎩ r, φ : R s <r≤kand |φ− φ 0 |≤ θ 2 r, φ : R s <r≤kand |φ− φ 0 | > θ 2 ⎫ ⎪ ⎪ ⎬ ⎪ ⎪ ⎭ where R s = R s √ nG s , R s = R s √ nG 2 s . 76 In the following two Lemmas we calculate the capacity bound imposed by interference and DMAC+, respectively. Lemma 3.22 The interference-imposed capacity bound C I MAX for a wireless network consisting of nodes using directional antennas and implementing the DMAC+ protocol in order to communicate is given by: C I MAX ≤ SINR −1 min πk 2 R −n s H I +H SI n=2, C I MAX ≤ (n−2)SINR −1 min πk 2 R −n s M I +M SI n> 2. (3.19) where H I = θG log k R s +(2π− θ)GG 2 n s log k R s √ G s , H SI = θG s +(2π− θ)G 2 s log(G −0.5 s ), M I = R −n+2 s [θG+(2π− θ)GG 2 n s ]− k −n+2 [θG+(2π− θ)GG s ], M SI = R −n+2 s θ G 2 n s +(2π− θ) G 4 n s − G n+2 2 s . Proof. H I and M I are the interference-related terms coming from the interference area U(I), for n = 2 and n> 2, respectively. The total interference stemming from U(I) is the same for both DMAC and DMAC+. The only difference between these two cases is an extra term in the denominator, for the case of DMAC+, corresponding to the total (indirect) interference coming from the soft interference region U(SI). These terms are H SI and M SI and are calculated using a similar methodology to Lemma 3.15, by 1 cP U(SI) I(φ, r)dU = θ R s R s G s r −n+1 dr+(2π−θ) R s R s G 2 s r −n+1 dr. Substituting R s and R s from Lemma 3.21 and computing the integral for n =2 (n> 2) we derive H SI (M SI ). 77 Lemma 3.23 The protocol-imposed capacity bound for a wireless network consisting of nodes using directional antennas and implementing the DMAC+ protocol in order to communicate is given by: C P MAX = πk 2 θ 2 G 2 n s + π− θ 2 ! G 4 n s R 2 s . (3.20) Proof. The area of the silence region for DMAC+ is given by |U(NI)| = θ 2 R s 2 + π− θ 2 ! R s 2 = θ 2 G 2 n s R 2 s + π− θ 2 ! G 4 n s R 2 s . Since only the non-interference areas are re- quired by DMAC+ to be disjoint, the protocol-bound capacity is |A| |U(NI)| . Theorem 3.24 The capacity of a wireless ad-hoc network, the size of which is infinitely large (k →∞), and consists of nodes using directional antennas and implementing DMAC+, is equal to: C MAX = ⎧ ⎪ ⎪ ⎨ ⎪ ⎪ ⎩ C I MAX if n=2 or L > 1, C P MAX if n > 2 or L < 1. (3.21) where L = 2SINR min n−2 θ(G+G 2/n s −G s)+(2π−θ)(GG 2/n s +G 4/n s −G (n+2)/n s ) θG 2/n s +(2π−θ)G 4/n s . Proof. The proof follows similar methodology to that of Theorems 3.8 and 3.17. In Figure 3.4 we depict how the interference-imposed and protocol-imposed bounds on the capacity relate to each other, as a function of antenna parameters and path- loss exponent (in a manner similar to Figure 3.2). We only depict the behavior for SINR min = 1, because we have found that for high values for SINR min (e.g. equal to 10) the capacity is interference-bound in the vast majority of practical cases. 78 Capacity Behavior of DMAC+ (SINR min = 1) Capacity Behavior of DMAC+ (SINR min = 1) Capacity Behavior of DMAC+ (SINR min = 1) Figure 3.4: Antenna, propagation and radio parameter effect on the capacity behavior of DMAC+. 3.4.2 Capacity comparison between DMAC and DMAC+ Let us compare the performance of DMAC and DMAC+ by evaluating the ratio L = lim k→∞ C MAX (DMAC+) C MAX (DMAC) . L> 1 implies that DMAC+ performs better than DMAC, while L< 1 the opposite. Theorem 3.25 Consider a network of nodes using directional antennas. Then the ca- pacity improvement (degradation) L, when using DMAC+ instead of DMAC, as k→∞, is given by (i) L = G G 2 n s 1 M < 1 if n=2 or 2SINR min n−2 > 1 G , (ii) L = G G 2 n s > 1 if 2SINR min n−2 < 1 M , (iii) G G 2 n s 1 M <L< G G 2 n s if 1 M < 2SINR min n−2 < 1 G . where M = θ(G+G 2/n s −G s)+(2π−θ)(GG 2/n s +G 4/n s −G (n+2)/n s ) θG 2/n s +(2π−θ)G 4/n s . 79 Proof. i) This is the case when the capacity for both DMAC and DMAC+ is inter- ference bound. It occurs when 2SINR min n−2 >max{ 1 M , 1 G } (see Theorems 3.17 and 3.24). However,M> G⇒ max{ 1 M , 1 G } = 1 G . When DMAC is interference-bound (i.e. C MAX = C I MAX ), using DMAC+ will only increase the average interference level at every node, due to the extra interference from U(SI), thus decreasing the capacity C I MAX . Therefore L< 1. The exact value of L is calculated from Lemmas 3.15 and 3.22. ii) This is the case when the capacity for both DMAC and DMAC+ is protocol bound, which occurs when 2SINR min n−2 <min{ 1 M , 1 G } = 1 M . It is straightforward that DMAC+ performs better, because of the smaller silence region established by a factor of 1 G 2 n s . iii) This the case when DMAC capacity is protocol-bound, while DMAC+ capacity is interference-bound, and occurs when 1 M < 2SINR min n−2 < 1 G . Again, using Lemmas 3.15 and 3.22 we compute L as n−2 2SINR min 1 G 2 n s M , whose value lies between the extreme values of cases (i) and (ii). The importance of Theorem 3.25 comes from a designer’s point of view. Specifically, if we know the operating environment, antenna type, and radio sensitivity, we can choose the right MAC protocol that can achieve better performance. This argument can be generalized for many interesting cases where the performance of different protocols is compared. In Figure 3.5 we compare the capacity improvement of DMAC and DMAC+ over the omni-directional case, for different scenarios 1 1 Note that it would not be meaningful to quantitatively compare the performance for different propa- gation environments (e.g. between DMAC for n = 3 and DMAC for n = 4), but only in terms of general behavior. The reason is that the constant c in the propagation equation is actually a complex function of n. 80 Performance Comparison of DMAC vs. DMAC+ 1 10 100 10 30 50 70 90 110 130 150 170 antenna beamw idth Improvement over omni-directional (log scale) n=4,Gs=0.2,SINR=1 (DMAC) n=4,Gs=0.2,SINR=1 (DMAC+) n=3,Gs=0.3,SINR=1 (DMAC) n=3,Gs=0.3,SINR=1 (DMAC+) n=3,Gs=0.3,SINR=1 0 (DMAC) n=3,Gs=0.3,SINR=1 0 (DMAC+) Figure 3.5: Capacity improvement of a directional scenario (DMAC or DMAC+) an omni-directional scenario. 3.4.3 Asymptotic capacity bounds Theorem 3.26 The asymptotic capacity behavior, when nodes are using directional an- tennas of finitely large gain, is the same as when nodes are using omni-directional ones, for both Arbitrary and Random Networks. Proof. Let us use the subscripts “D” and “O” to denote quantities relevant to the directional and omni-directional case, respectively. Then, C D|MAX ≤ C P D|MAX = U(NI) O U(NI) D C P O|MAX ⇒ C D|MAX = O(C P O|MAX )= O(C D|MAX ), if U(NI) D > 0. Finally, U(NI) D > 0 ⇔ θ> 0,G s > 0, that is, the antenna must have finite directionality (finite gain). 3.5 Heterogeneous Networks In this section we consider a network consisting of nodes, some of which are using omni- directional antennas and others using directional ones. We shall call the former ones O-nodes and the latter ones D-nodes, hereafter. We assume that: 81 • The fraction of O-nodes in the network is equal to p. • The MAC protocol used by O-nodes (802.11) and the MAC protocol used by D- nodes (DMAC) are able to interoperate. This is a reasonable assumption to make, if we look into the detailed functional descriptions of the two protocols. • The percentage of active O-nodes in the network is equal to p. This last assumption needs some more discussion. It is anticipated that in a mixed network with both O-nodes and D-nodes, D-nodes might overwhelm O-nodes and seize more than their fair share (1− p) of the bandwidth, if there is a high enough traffic load. Consequently, there is a need for a MAC access protocol that would be able to distribute the available bandwidth to O-nodes and D-nodes in a fair manner. We plan to look into this MAC fairness issue in a heterogeneous network, in a future work. However, here we assume, for our analysis purposes that 802.11 and DMAC allow a fair media access. Lemma 3.27 In a heterogeneous network consisting of a fraction p of O-nodes and a fraction 1− p of D-nodes, the average transmission antenna gain for an arbitrary inter- fering signal is given by G ∗ = p+(1− p) θ+(2π− θ)G s 2π . (3.22) Proof. An active node in the interference area U(I) is an O-node with probability p and a D-node with probability 1− p. Furthermore, an O-node interferes with an average transmission antenna gain of 1, while a D-node interferes with an average transmission gain as given by Lemma 3.14. 82 Lemma 3.28 The following statements hold for a network with both directional and omni-directional nodes: i. The capacity of a heterogeneous network, as k→∞, is defined by the SINR re- quirement of O-nodes. ii. The average SINR for a D-node will be higher than that for an O-node, and higher than SINRmin in the limit that maximizes capacity. Proof. Using a similar methodology to Lemmas 3.6 and 3.15, we can compute the average SINR, for an O-node and a D-node, respectively, namely SINR O and SINR D . SINR O = cPR −n s cPρ act k R s G ∗ r −n 2πrdr = ⎧ ⎪ ⎪ ⎨ ⎪ ⎪ ⎩ R −n s G ∗ 2πρ act log( k R s ) ,n=2 R −n s (n−2) G ∗ 2πρ act(R −n+2 s −k −n+2 ) ,n> 2 SINR D = R −n s ρ act G ∗ θ k R s r −n+1 dr(2π− θ) k R s1 G s r −n+1 dr = ⎧ ⎪ ⎪ ⎪ ⎪ ⎨ ⎪ ⎪ ⎪ ⎪ ⎩ R −n s ρ actG ∗ [θ log( k R s )+(2π−θ)log( k R s G 1 n s )] ,n=2 R −n s (n−2) ρ actG ∗ [θ(R −n+2 s −k −n+2 )+(2π−θ)(G 2 n s R −n+2 s −G sk −n+2 )] ,n> 2 We calculate the ratio L = lim k→∞ SINR D SINR O as n> 2⇒ L = 2π θ+(2π− θ)G 2 n s = θ+(2π− θ) θ+(2π− θ)G 2 n s >1since G s < 1 n=2⇒ L = lim k→∞ 2π log( k R s ) θ log( k R s )+(2π− θ)G s log( k R sG 1 n s ) = lim k→∞ θ log( k R s )(2π− θ)log( k R s ) θ log( k R s )+(2π− θ)[G s log( k R s )− 1 n G s log G s ] > 1. 83 We can now calculate the interference-imposed and protocol-imposed capacity bounds for the heterogeneous case. Lemma 3.29 The interference-imposed capacity bound for a wireless network consisting of a fraction p of O-nodes and a fraction 1− p of D-nodes is given by: C I MAX ≤ ⎧ ⎪ ⎪ ⎪ ⎨ ⎪ ⎪ ⎪ ⎩ k 2 R −n s 2SINR min G ∗ log( k R −1 s ) ,n=2 k 2 R −n s (n−2) 2SINR min G ∗ (R −n+2 s −k −n+2 ) ,n> 2 (3.23) Proof. As Lemma 3.28 states, C I MAX is imposed by the average SINR requirement at an active O-node. Therefore, the proof is exactly the same with that of Lemma 3.6, with the only difference being that an arbitrary active node in U(I) interferes with an average transmission antenna gain equal to G ∗ . Lemma 3.30 The protocol-imposed capacity bound for a wireless network consisting of a fraction p of O-nodes and a fraction 1− p of D-nodes is given by C P MAX = πk 2 pπR 2 s +(1− p) θ 2 + π− θ 2 ! G 2 n s R 2 s . (3.24) Proof. The proof is straightforward. We only need to calculate the average area of a silence region, when there is a fraction p of active nodes in the network, and then bound the maximum number of such disjoint silence regions. 84 Theorem 3.31 The capacity of a wireless ad-hoc network, the size of which is infinitely large (k→∞), and consists of a fraction p of O-nodes and a fraction 1− p of D-nodes is equal to: C MAX = ⎧ ⎪ ⎪ ⎨ ⎪ ⎪ ⎩ C I MAX ,n=2 or L> 1 C P MAX ,n > 2 and L< 1 (3.25) where L = n−2 4πSINR min 2pπ+(1−θ)[θ+(2π−θ)G 2 n s ] p+(1−p)[θ+(2π−θ)G s] . Proof. We define L as L = lim k→∞ C P MAX C I MAX and substitute C I MAX and C P MAX from Eq.(3.23) and (3.24). Theorem 3.32 C MAX (DMAC) C MAX (p -mixed ) = αp + β, (3.26) where α = 2π(1−G) G[θ(1−G 2 n s )+2πG 2 n s ] ,and β = 2π 2π+θ(1−G 2 n s ) , when both cases are interference bound. Proof. The proof follows from Theorem 3.31 and Theorem 3.17. The linearity of Eq.(3.26) is a very promising result from the network designer’s point of view. The notion of a heterogeneous network, as introduced in this section, is very useful to model the situation where existing networks with nodes using omni-directional antennas, are gradually upgraded to work with directional antennas. Such an upgrade is not expected to take place at once. Instead, one can envision a scenario were some nodes in the network are new and equipped with directional antennas, while the old ones are still using omni-directional ones. Eq.(3.26) implies that even if all nodes have not yet been upgraded, the performance degradation will only be linear on the number of such 85 nodes. On the other hand, looking closely at this equation we see that there exists a performance degradation equal to β, even when p→ 0, that is, when very few nodes in the network carry omni-directional antennas. This is because we have assumed that the MAC protocol is fair in distributing the bandwidth among D- and O-nodes. Therefore, even if there exists only one O-node in the network, the interference level is required to be low enough (lower than in the purely directional case), to allow the SINR at the O-node to stay above the threshold. This assumption might be too restrictive, and we intend to reconcile it in future work. 3.6 Conclusion In this chapter we have conducted a thorough capacity analysis for wireless ad-hoc net- works of nodes using omni-directional or directional antennas. We have provided re- sults and intuition for the detailed dependence of the capacity, on important antenna parameters, and on propagation environment and radio sensitivity. Furthermore, we have re-evaluated known asymptotic capacity results, using a different, more accurate methodology, and have strengthened their holding, or corrected them where necessary. We have demonstrated the subtle interplay between physical layer (i.e. interference and SINR requirement) and MAC protocol layer (i.e. silence region), in terms of defining the maximum network capacity, and have explained how a MAC protocol that becomes the bottleneck for the throughput can be improved. As an example of the latter, we have analyzed the capacity of the DMAC protocol for directional antennas and have proposed a modified version of it that can overcome DMAC’s shortcomings and achieve a higher 86 network throughput. Finally, we have analyzed the capacity of a heterogeneous network, where a percentage p of nodes uses omni-directional antennas and the remaining 1−p use directional ones. We have proven that the performance degradation over the fully direc- tional case is linear on p, a result which is very encouraging for the gradual deployment of directional antennas. 87 Chapter 4 Improving Energy Efficiency Using Phased-Array Antennas: A Joint Scheduling and Routing Algorithm 4.1 Introduction We have seen how directional or smart antennas can be used to increase capacity and improve the performance of wireless ad-hoc networks, in terms of delay and throughput. As we mentioned at the beginning, directional antennas have also the ability to reduce the energy expenditure in order to transmit a message. In theory, if a directional antenna of gain G is used both at the transmitter and the receiver, a given transmission can be performed with only a fraction 1 G 2 of the power needed. In practice, power is also spent in the electronics of the transmitter and the receiver. As we mentioned, this power is not affected by the use of directional antennas. Thus, the overall gain is somewhat smaller. Nevertheless, constant advances in low power electronics guarantee that the power radiated in the air (i.e. the power used by the antenna) will remain the dominant part of the overall power consumption of a wireless transceiver. 88 When directional antennas are used, one needs to deal with the issue of how to direct each antenna to the right node at the right time. As one might note from the discussion in the previous chapter, one method is to let the MAC protocol handle this issue, and use some ad hoc routing protocol like DSR [57] or AODV [83] for routing. Such a scheme would save energy on a local level, since every data transmission would require less power than if omni-directional antennas were used. However, on a global level, reactive routing protocols (as well as proactive ones) heavily rely on broadcasting, in order to discover end-to-end paths. Hence, the energy consumed in finding routing paths would be similar to the omni-directional case, since broadcasting does not exploit most of the gains offered by directional antennas. In order to overcome this problem, some researchers have assumed that the source node knows the direction of the destination, and directs routing requests towards it [74, 110]. However, this approach simply shifts the problem to the location discovery service. Although it would be safe to assume that nodes can acquire location info of their neigh- bors (e.g. past communications, overheard packets, beacons, etc.), disseminating such information globally would still require frequent broadcasting. Finally, in some wireless networks the antennas used are strictly directional (e.g. aperture antennas [6] for satellite or interplanetary networks) and cannot be used in omni-directional mode. This makes broadcasting or even the use of directional MAC protocols of the kind described earlier very challenging. It is evident that routing needs to be involved as well in the process of synchronizing the directional antennas, if a packet is to be delivered, end-to-end, with the minimum possible energy expenditure. Therefore, we propose a joint scheduling and routing scheme 89 that chooses end-to-end paths in an energy efficient way, and schedules accordingly which nodes point to each other at any time, and for how long. First, taking into account every possible link that could be formed by any two node antennas pointing towards each other, we solve a network flow problem. The solution assigns packets to links in a manner that aims to minimize the energy spent to route a given flow. Then, a scheduling algorithm tries to parallelize the previous link flow assignment in a way that: (i) ensures no antenna is scheduled to point at more than one direction at any time, (ii) two antennas forming a link point toward each other at the same time, and (iii) the time to serve all links for the amount of time require by the previous link flow assignment is minimal, given the previously chosen paths. It is evident that energy efficiency is our primary concern; Delivery delay is only dealt with after routing has chosen minimum energy paths, and thus may not be the minimum possible. Finally, note that delay itself may also affect the overall energy consumption as a side-effect. For example, in a network where traffic is bursty, the faster a given amount of traffic is delivered the sooner nodes could switch back to sleep mode and conserve energy [92]. In the next section we describe our scheduling and routing algorithm. Then, in Sec- tion 4.3 we present simulation results for two different scenarios. We proceed with a discussion of some implementation considerations, as well as related work in the field in Section 4.4, and conclude this chapter in Section 4.5. 90 4.2 Joint Scheduling and Routing Our problem setting is similar to the one in [22, 103, 49] with the difference that here nodes are equipped with directional antennas instead of omni-directional ones. Specifically, there are N static nodes forming a wireless ad-hoc network, each equipped with a (strictly) directional antenna of gain G. The amount of traffic generated by each node i for every other node j is modelled by a stochastic process (e.g. Poisson) with average arrival rate f ij . Wechoosetomeasure f ij in terms of packets per time unit (packet size is fixed), without loss of generality. Finally, we assume that the process is stationary, and f ij are constant. Our goal is to deliver all f ij in an energy-efficient manner. Tassiulas et al. [103] have shown that the problem of “evacuating” a given amount of end-to-end flow in the minimum amount of time (i.e. optimally) can be decomposed into separate optimal routing and optimal scheduling problems. Optimal routing consists of assigning flows to links so as to optimize a given metric (e.g. minimize the time until all traffic is delivered). In other words, it converts the end-to-end flow matrix into a link flow matrix optimally. Optimal scheduling then is responsible to minimize the total time it takes to activate all links for the amount of time necessary to transmit their assigned flow. We also decompose our problem into separate routing and scheduling problems. Our primary goal is to route the end-to-end flow matrix F = {f ij } in an energy-efficient manner. Unlike related works, we choose to use different optimization metrics for the two problems. Minimum energy dissipation (or maximum network lifetime) is the goal 91 of routing and end-to-end delay is the goal of scheduling. Routing ignores any end- to-end delay issues, and scheduling is performed after all routing decisions are made. Consequently, end-to-end delay is a secondary goal here, and the resulting end-to-end delay is not the minimum possible, but rather the minimal one, given the link flow assignment 1 . We will now look into the two steps of our algorithm, routing and scheduling. Energy-efficient Routing (Step 1): We first construct the connectivity graph of the network with all the possible links formed by pointing one’s antenna to different directions. In other words, if node A can talk to nodes B, C,and D by pointing its antenna to direction φ B , φ C ,and φ D , respectively, we include all links AB,AC,and AD in the graph. We do so in order to form all possible paths, and thus ensure that we can find the minimum cost ones among them. Obviously, a node cannot point its antenna towards two different directions at the same time. This is why scheduling of links is necessary after paths have been chosen. We assign each link a cost c ij that appropriately captures the energy consumption when sending a packet through this link. A number of different energy-related cost assign- ments could be advocated for. A discussion of different energy-aware metrics and their application can be found in [93]. We choose to work with two different cost assignments that we believe are representative of different energy-efficiency goals: • Minimize Total Energy - MTE(cost 1): This metric is concerned with the total energy spent per packet delivered. Let E tx ij and E rx ij denote the energy consumption 1 One might reasonably object here that routing and scheduling seem to be performed separately rather than joint as claimed. However, the “joint” part goes to the fact that both routing and scheduling jointly work together towards a common goal, that is, to fully synchronize the antennas of all nodes and, thus, minimize energy consumption. 92 to transmit a packet from node i to node j, and receive it at node j, respectively. Then c (1) ij = E tx ij + E rx ij . • Maximize Network Lifetime - MLE (cost 2): Here we would like to avoid routing traffic through nodes with depleted energy, in order to keep every node alive for as long as possible. Therefore, we assign each node i a cost c i that is an increasing function of the battery level consumed so far. Then, c (2) ij = αf(c i +c j )+(1−α)c (1) ij , where f(·) is a function that depends on policy. In other words, c (2) ij is a function of both node remaining battery and power to transmit a packet over the given link. A number of other cost functions have been proposed that also try to combine the two goals of minimizing energy per packet and maximizing network lifetime. However, it is not our focus to come up with the optimal cost assignment (if any). A brief review and comparison of the performance of each cost function can be found in [23]. The problem of minimum cost routing of a given end-to-end flow matrix has been formulated as a Linear Program (LP) in [22] and therefore could be solved optimally in polynomial time. Solving the LP could be practical in the first case, where costs are independent from traffic already routed through that link, and routing could be performed once, for all end-to-end pairs. However, in the second case costs are a function of the amount of flow already chosen to be routed through that link. In practice, routing schemes can at best know only the current state of other nodes. For these reasons, we choose to use Dijkstra’s algorithm [11] to route each packet individually, while updating the link costs between every packet routed. This is a greedy approach in essence, and thus may 93 not yield optimal results. However, it was shown in [23] that, if the cost function is chosen appropriately, a greedy approach performs very close to the optimal. After the routing algorithm has found a path for each end-to-end flow, we can easily calculate the total number of packets per time unit f kl that need to go over each link kl as follows: for every end-to-end flow f ij ,let L ij denote the set of links over which the flow will be routed, and let I kl ij be an indicator variable that is equal to 1 when kl∈ L ij ; then f kl = ij I kl ij , where. If two nodes k and l are not connected, then obviously f kl =0. Link Scheduling (Step 2): F ={f kl } represents the traffic that needs to be routed per time unit over each link kl. Our goal is to deliver F in the minimum amount of time. Due to the directional nature of antennas used, we can assume that disjoint links do not interfere with each other. However, no two links that have a common endpoint can be up at the same time. Hence, we would like to come up with a schedule that: (i) tries to minimize the total time to activate all links once; we refer to this time as the schedule “cycle”; (ii) allows each link to carry the amount of flow assigned to it within a cycle; (iii) ensures that only disjoint links are up transmitting together. As noted in [49], a number of different interpretations can be given to the link flows{f kl } and thus to the physical meaning of a cycle. Our choice of stochastic end-to-end arrival processes with averages f ij corresponds to Interpretation 2 in [49]. This in few words means that the schedule produced is such that, in the long run, each link is able to sustain a flow of f kl pkts/sec. It is easy to see that each node has to turn its antenna to each of its neighbors for an amount of time that is proportional to the amount of traffic that needs to go over that link, in order to avoid idling nodes. Furthermore, a node will in most cases have to both 94 transmit and receive traffic over a link. Therefore, assuming the links are half-duplex a total amount of l ij = f ij + f ji goes over link ij.Letnow l out i denote the total traffic leaving a node i. Then l out i = j f ij . Similarly, the total traffic l in i entering node i is j f ji . Consequently, if we define as t ij the fraction of a cycle link ij needs to be up, it is easy to see that t ij = l ij l out i +l in i . Note that we have not yet specified what the duration of a cycle is. This is because the cycle can be set arbitrarily, since t ij represent here fractions of this cycle (e.g. one second, the time until every link can send an amount of flow equal to its flow assignment per time unit, etc.). However, the energy cost and time lag to steer the antenna dictate that the duration of the cycle should not be too short. Having calculated the uptime fraction t ij for all links, we now need to schedule each link. Our goal is to minimize the total time it takes for all links to go up for their designated uptime t ij . Intuitively, we would like to schedule as many links together as possible, in order to minimize the number of rounds until all links are scheduled. If we ignored t ij the problem would become that of edge coloring, that is, to find the minimum number of colors to color every edge, such that no two edges with a vertex in common have the same color [28]. It is known that the optimal solution to this problem is between d max and d max + 1, where d max is the maximum node degree. However, traditional edge- coloring is not sufficient in our case. As is clearly shown in Figure 4.1, two different optimal colorings could have quite difference performance. In our scheduling problem, we also need to be scheduling links with similar t ij together, in addition to trying to maximize the number of links scheduled in parallel. This problem is a difficult one. A couple of polynomial algorithms have been proposed in [49, 77] that take O(N 4 )-O(N 5 ). 95 26% better! 0.04 0.12 0.32 0.4 12 3 45 0.04 0.4 6 0.44 optimal edge coloring 1 Frame length = 1.36 13 4 a d a c 2 5 b b 6 a 13 46 c optimal edge coloring 2 Frame length = 1.00 b d a c 2 5 b a c 26% better! 0.04 0.12 0.32 0.4 12 3 45 0.04 0.4 6 0.44 optimal edge coloring 1 Frame length = 1.36 13 4 a d a c 2 5 b b 6 a 13 46 c optimal edge coloring 2 Frame length = 1.00 b d a c 2 5 b a c Figure 4.1: Two optimal edge colorings for an example graph. Edge weights represent the time fraction a link has to be up, while edge letters denote different colors. Our proposal is a scheduling algorithm that performs a series of maximum weight matchings [28]. We start by finding a maximum weight matching for the initial connec- tivity graph with edge-weights t ij (efficient maximum weight matching algorithms can be found in [28]). The links in the matching are scheduled in the first round. We then remove these links from the graph, and perform a second matching for the pruned graph. The links in this matching are scheduled in the second round. We continue until there are no more links left to be scheduled. If T n denotes the time duration of round n (i.e. the maximum link uptime t ij among all links scheduled in round n), then the total scheduling time is obviously T sch = n T n . 4.2.1 Initialization, broadcast, and distributed algorithm We have assumed up to this point that our algorithm is centralized and static. Con- sequently, the routing decisions and the resulting schedule is calculated in some central 96 node based on static traffic information and is then distributed to all nodes in the net- work. Alternatively, each node may receive all necessary info (i.e. topology and flow matrix) during initialization, and calculate the same optimal schedule on its own. It is quite important though to see how our algorithm could be converted to a dynamic and distributed one. We mentioned earlier that the end-to-end traffic flow matrix F is slowly varying in time. Hence, it can be considered constant over a certain time period T max . This way, we know that the final schedule our algorithm produces will be good for at least T max .If, however, we observe the system over a longer time period we’ll, it is expected that F will change, sometimes significantly. Therefore, the existing schedule will not be optimal any more. Furthermore, it may not even be able to handle the offered amount of traffic. This means that our algorithm has to be rerun and a new schedule has to be produced for every cycle of duration T max . If the traffic pattern is slowly varying then T max will be much higher than the amount of time it takes to produce a new schedule, denoted as T init . Therefore, the overhead of periodically re-calculating the schedule will be insignificant and our algorithm can be adaptive. The time axis will consist of many long normal operation and short schedule update periods, interleaved as depicted in Figure 4.2. T max T init T max T init Figure 4.2: Time axis consisting of normal operation and schedule update periods. In order for the algorithm to be distributed, as well, we need a scheme to communicate the necessary flow information from each node to every other node. This way, all nodes will have the same version of F. If every node runs, subsequently, the same algorithm 97 on the same F, then every node will obviously produce the same correct version of the schedule. We assume that the topology is known in advance (i.e. no mobility), or topology updates are made known using some link-state algorithm (e.g. the distributed version of Dijkstra’s algorithm to calculate shortest cost paths). The communication of traffic flows from each node to every other node occurs during T init . Each node i has a vector of values to broadcast, which we’ll call traffic vector L i . Each value represents the average amount of traffic node i generates for a specific destination. Then, L i ={f i1 ,f i2 ,...,f iN } We need a broadcast algorithm that will, send L i to every other node j = i,∀i (within T init ). A good way to perform this all-to-all communication of L i ’s is to choose one node in the network, say node R, and construct a spanning tree rooted on this node. Then, we define two distinct phases, namely the “gather phase” and the “broadcast phase”. During the gather phase, each node i sends its L i to node R, following the schedule computed for the tree, towards the root. We assume that all nodes know the spanning tree and root node. It’s out of the scope of this paper how this binomial tree is computed and how the root is chosen 2 . We plan however, to explore this issue and define an efficient solution for it, in future work. After R has collected all L i ’s, it goes the broadcast phase. During this phase node R broadcasts a packet containing all L i ’s (including L R ) utilizing 2 A different node could be chosen for every schedule update cycle, in a round-robin fashion, in order to be the root of the tree. This way, the communication overhead of gathering and broadcasting back every L i, is equally divided among all nodes. 98 Root (R) 2 4 5 6 1 3 1 2 3 2 3 3 Spanning Tree Binomial Tree Broadcast ends after 6 cycles Broadcast ends after 3 cycles RR Figure 4.3: Comparison of a binomial and a spanning tree used for broadcasting in an example ad hoc network consisting of nodes with directional antennas. Edge numbers indicate during which time cycle a link is up. the same binomial tree. We argue that a good choice for the spanning tree is a binary tree. Figure 4.3 provides some insight into why that is the case. 4.3 Simulation Results We run simulations in randomly generated topologies of 10 and 20 nodes, respectively. We vary the average degree k of a node, that is, the average number of neighbors of each node, from 2 to 5. Obviously, the higher k, the more paths are available for the routing algorithm to choose from, and the better the expected energy reduction by our routing algorithm. The end-to-end flow matrix F is generated randomly, and results are averaged over 100 random topologies and traffic matrices. Finally, the transmitting and receiving antenna gain is equal to 2 (3dB) adding up to about a 4× power improvement for the 99 link. We choose as our performance metric the network lifetime measured as the time until the 1 st node dies out 3 . In Fig. 4.4 we compare the performance of 4 different configurations: (i) omni- directional antennas with minimum hop routing, (ii) omni-directional antennas with our algorithm (cost 1), (iii) directional antennas with minimum hop routing, and (iv) di- rectional antennas with our algorithm (cost 1). We do so in order to identify which part of the overall energy savings come from the use of directional antennas, and which from energy-efficient routing. As can be seen there, the improvement in network life- time stemming from the use of directional antennas instead of omni-directional ones is approximately equal to the expected 4× value. The additional gain from routing using the energy-aware cost 1 increases with the average node degree k,reachinguptoa25% improvement. Finally, in Figure 4.5 we compare the performance of the two energy-aware costs. As is evident there, cost 2 does a better job than cost 1 in keeping all nodes alive, resulting in an up to 45% increase in network lifetime over the omni-directional case. Putting it all together, our joint scheduling and routing scheme not only efficiently realizes the potential savings from using directional antennas, but also achieves a further increase in network lifetime by use of energy-aware link cost assignment. 3 One might argue that, even if a node (or more than one nodes) dies, the network might still re- main functional. However, because it would be application-dependent and very difficult to agree on an appropriate number of nodes, we decide to use the first node that dies as means for comparison. 100 Cost 1 vs. Minimum Hop (20 Nodes) 0 50 100 150 200 250 300 350 12 3 4 5 Connectivity k Network Lifetime MTE (cost 1) / directional Minimum Hop / directional MTE(cost 1) / omni-directional Minimum Hop / omni-directional Cost 1 vs. Cost 2 (10 Nodes) 0 100 200 300 400 500 600 700 12 34 5 Connectivity k Network Lifetime cost 2 / directional cost 1 / directional cost 2 / omni-directional cost 1 / omni-directional Figure 4.4: Network lifetime comparison be- tween cost 1 and minimum hop routing for directional and omni-directional settings. Figure 4.5: Network lifetime comparison be- tween cost 1 and cost 2 for directional and omni-directional setting 4.4 Discussion and Related Work The problems of routing and scheduling have been extensively studied in the context of Packet Radio Networks. Nevertheless, proposed solutions and ideas need to be adapted to emerging technologies (e.g. directional antennas) and requirements (e.g. energy- efficiency) for wireless ad-hoc and sensor networks. As can be inferred from the initial discussion in Section 4.2, most optimal solutions for the routing and scheduling problems in hand are centralized (and offline) in nature. Yet, centralized solutions require global knowledge of network characteristics (such as topology or remaining battery level) making them rather costly to be applied to large-scale, self- organized ad-hoc networks. Furthermore, future traffic demand is unpredictable in most practical scenarios. Therefore, distributed online versions of the optimal algorithms need to be designed, that can achieve similar performance to the optimal one, using mostly local information. An effort to that direction has been made for the energy-efficient routing problem using omni-directional antennas [23]. There, node energy-level information is 101 disseminated more often inside the neighborhood of a node and less often further away, to reduce the routing overhead. The relatively inaccurate knowledge about nodes far away, does not seem to affect the performance of the protocol significantly [23]. Distributed scheduling algorithms have also been proposed for both omni-directional [5, 45] and directional antennas [36]. However, when strictly directional antennas are used and/or nodes are mobile as well, it becomes quite challenging for each node to acquire enough information to calculate an efficient and accurate distributed schedule. Broadcast- ing of relevant information also requires that the antennas are synchronized (if antennas are strictly directional), creating somewhat of a vicious circle. We have discussed some preliminary ideas on how to deal with this issue in [95]. Another crucial issue is that of second level interference, as its usually called. Through- out our discussion of scheduling, we have assumed that any two disjoint links can transmit concurrently (i.e. we assume first level interference only) . However, as should be evident by the discussion in the previous chapter, sharing the single channel may cause two links to interfere with each other, even if they have no endpoints in common. The problem of coming up with link schedules that ensure no two links cause significant interference to each other is NP-complete. Consequently, appropriate heuristic methods are necessary that can schedule non-interfering links in an efficient, albeit suboptimal, manner. Some efforts toward this direction can be found in [37]. Finally, the problem of joint routing and scheduling as described in this chapter could also be applied to emerging Interplanetary Networks (IPN) [19]. The additional twist to the original problem is that link propagation delays are now significant, many times larger than transmission delays (sometimes as long as hours or days). This implies that 102 scheduling must now be performed on a node level, instead of a link level. Furthermore, global network information is almost impossible to be acquired by each node promptly enough in this setting. This makes centralized solutions impractical, unless all network characteristics (node movement, traffic requirements etc.) are fairly static or predictable for very long periods of time. Useful ideas for routing and scheduling in IPN-like networks could be drawn from the field of dynamic flow theory [2, 63, 39, 3]. 4.5 Conclusion In this chapter we presented an energy-efficient algorithm to route a given traffic load over a wireless network of nodes communicating using strictly directional antennas. Our algorithm has energy-minimization as its foremost goal, but also tries to minimize delay as a secondary objective. Our algorithm achieves: (i) one a local level, to synchronize transmitting and receiving directional antennas and reduce the power for a given trans- mission, and (ii) on a global level, to choose routes for packets such as to maximize the network lifetime. Although in this chapter we describe a centralized version of the al- gorithm that requires relatively stable or known end-to-end traffic requirements (as for example would be the case in a deep space network), we intend to look deeper into how it could be adapted for more dynamic or distributed scenarios. 103 Part II: Routing in Intermittently Connected Mobile Networks Traditionally, ad hoc networks have been viewed as a connected graph over which end-to- end routing paths need to be established to enable data delivery. Mobility of nodes was considered a necessary evil that invalidates existing routing entries over time, and needs to be intelligently overcome to allow for seamless communication between nodes. We have seen a number of approaches in that direction in Chapter 2. However, it has recently been recognized that mobility can be transformed into a useful ally and be exploited to improve ad hoc network performance [46, 30]. The seminal paper by Kumar and Gupta [47] showed that the traditional model of ad hoc network routing is not scalable. Maintaining multi-hop paths and transmitting data over these paths results in excessive relay transmissions that dominate the available bandwidth. This quickly diminishes the capacity available per node for end-to-end traffic. To deal with this inherent difficulty, researchers proposed to allow only a fixed number of transmissions per message [46]. A message is handed over to the first few relays encountered, and each relay will then carry the message all the way to its destination itself [46, 89, 29]. This method guarantees a constant per node capacity, regardless of network size. 104 On a different note, there has been a growing interest in the past few years in ap- plications that can operate over networks that are disconnected most of the time. Such applications often target environments where constant connectivity might be difficult, as is the case for example in deep-space interplanetary networks (IPN [17]), Vehicular Ad hoc Networks (VANET [115]), sensor networks for wildlife tracking [59], etc. Alterna- tively, operation over disconnected networks may be desirable for economic reasons, as for example in the case of low-cost Internet provision in remote communities [32] or third- world countries [55, 79]. Such networks are often collectively referred to as Delay Tolerant Networks (DTN) [30]. In Delay Tolerant Networks traditional routing approaches fail, because they require the existence of complete end-to-end paths to be able to deliver any data. To overcome this issue, messages need to get carried by mobile nodes between disconnected parts of the network [122, 88]. A message gets forwarded to some other relay encountered, carried further, gets forwarded again, and so on and so forth until it reaches its destination. What the above two approaches share in common is that node mobility is exploited to carry messages around the network as part of the routing algorithm. We will refer to these schemes collectively as mobility-assisted routing (in related literature they are also referred to as encounter-based or store-carry-and-forward). Mobility-assisted routing consists of a series of independent forwarding decisions, that take place when two nodes meet each other, and these nodes are completely oblivious of the specific path the message will end up following. Nodes carry a set of messages, possibly for long periods of time, until other nodes are encountered, exchange messages according to the specific protocol, and continue their trip. This constitutes an important departure from the existing routing paradigm. 105 New challenges arise as the ever-present requirement for generic, bandwidth-efficient and energy-efficient algorithms must now be achieved with little knowledge about the network topology. Furthermore, the introduction of mobility as a necessary component of the routing algorithm, rather than an impediment to its normal functionality, dictates the need for different theoretical tools and models to analyze the performance of such schemes. In the next two chapters we will deal with the issue of efficient routing for inter- mittently connected mobile ad-hoc networks, a special type of Delay Tolerant Networks. Although most of the protocols will be presented in the context of sparse, disconnected networks, many of the solutions discussed apply also to mobility-assisted schemes used in connected networks to increase capacity. Specifically, in Chapter 5 we will explore the problem space of routing solutions that use only one copy per message similar to traditional routing approaches. Then, in Chapter 6 we look into routing solutions that route multiple copies of the same message in parallel. We will show that such redun- dancy is necessary to achieve the desire performance in the highly problematic context of intermittently connected networks. However, as we shall see, choosing the amount of redundancy as well as the specific method to route each message copy is not a trivial is- sue. Finally, in Chapter 7 we present a theoretical framework that can be used to analyze the performance of mobility-assisted routing, under a large number of popular mobility models. Additionally, a novel community-based model is introduced in Chapter 7 and used in our analytical framework. This model successfully capture a number of important characteristics of real-life mobility, unlike commonly used mobility models, and is also analytically tractable. 106 Chapter 5 Efficient Routing in Intermittently Connected Mobile Networks: The Single-Copy Case 5.1 Introduction Intermittently connected mobile networks (ICMN) are mobile wireless networks where most of the time there does not exist a complete path from a source to a destination, or such a path is highly unstable and may change or break soon after it has been discovered (or even while being discovered). This situation arises when the network is quite sparse, in which case it can be viewed as a set of disconnected, time-varying clusters of nodes. There are many real networks that follow this paradigm. Examples include wildlife tracking and habitat monitoring sensor networks [59], military networks [31], inter-planetary networks (IPN) [17], pocket switched networks (PON) [20], low-cost Internet provision to remote communities [55], etc. In some of these cases the network might be intermittently con- nected by nature (e.g. due to movement of celestial bodies in inter-planetary networks) while in others it might be by choice for cost-effectiveness reasons (e.g. to provide low cost Internet to remote communities). Intermittently connected mobile networks belong 107 to the general category of Delay Tolerant Networks (DTN) [30], that is, networks were incurred delays can be very large and unpredictable. Conventional mobile ad-hoc network routing schemes, such as DSR, AODV, OLSR, etc. [16], assume that a complete path exists between a source and a destination, and try to discover minimum cost paths before any useful data is sent. Since no such end-to-end paths exists most of the time in ICMNs, such protocols would fail in this context. Specifi- cally, reactive schemes will fail to discover a complete path, while proactive protocols will fail to converge, resulting in a deluge of topology update messages. However, this does not mean that packets can never be delivered in such networks. Over time, different links come up and down due to node mobility. If the sequence of connectivity graphs over a time interval are overlapped, then an end-to-end path might exist. This implies that a message could be sent over an existing link, get buffered at the next hop until the next link in the path comes up, and so on and so forth, until it reaches its destination. This approach imposes a new model for routing. Routing consists of a sequence of independent, local forwarding decisions, based on current connectivity information and predictions of future connectivity information. Further, node mobility needs to be exploited in order to deliver a message to its destination. This is reminiscent of the work in [46]. However, there mobility is exploited in order to improve capacity, while here it is used to overcome the lack of end-to-end connectivity. Depending on the number of copies of a single message that may coexist in the net- work, one can define two major categories of hop-by-hop routing schemes. In single-copy schemes, for each message, there’s only one node in the network that carries a copy of the message at any given time. We call this node the “custodian” of the message. When 108 the current custodian forwards the copy to an appropriate next hop, this becomes the message’s new custodian, and so on and so forth until the message reaches its destination. On the other hand, multiple-copy (or multi-copy) routing schemes may generate multiple copies of the same message which can be routed independently for increased robustness and performance. The majority of routing schemes proposed in the literature in the context of ICMNs are flooding-based, and, therefore, multi-copy in nature [42, 59, 69, 109]. Despite their increased robustness and low delay, flooding-based protocols consume a high amount of energy, bandwidth, and memory space (all scarce resources in low-cost sensors) as has been noted in [59, 69, 101]. Further, under high load they suffer from severe contention, which yields a large number of drops and can significantly degrade their performance and scalability [107, 101]. These shortcomings may render such algorithms prohibitive for energy-constrained and bandwidth-constrained applications, a common case in wireless networks. Consequently, it is highly desirable in many situations to design efficient single- copy routing schemes for resource-constrained ICMNs. Additionally, single-copy schemes constitute the building blocks of multi-copy schemes. In many multi-copy schemes a number of copies may be generated each of which is routed independently using a single- copy algorithm [101]. For this reason, it is important to have a good understanding of the tradeoffs involved in single-copy routing, in order to design efficient multi-copy schemes, as well. With this in mind we perform in this chapter a thorough investigation of single-copy routing for intermittently connected mobile networks. In the next chapter, we study the same problem using multi-copy approaches.) We present a number of increasingly “smart” 109 schemes, exposing their individual advantages and shortcomings, and demonstrate that competitive performance can often be achieved without the overhead and logistics of using redundant copies. The champion algorithm of our study turns out to be one that combines the simplicity of a simple random policy, which is efficient in finding good leads towards the destination, with the sophistication of utility-based policies that efficiently follow good leads. Finally, we analyze the performance of all routing schemes presented, under the assumption of Random Walk mobility. We also derive lower and upper bounds on the delay of any single-copy (and multi-copy) routing scheme. (In Chapter 7 we extend this analysis for a number of other mobility models.) In the next section we go over some existing related work. Section 5.3 describes a number of single-copy routing algorithms, including our proposed solution and an optimal scheme. Then, in Section 5.4 we present our analysis of the expected performance of all routing schemes presented. Section 5.5 provides simulation results where the performance of all the strategies is compared. Finally, Section 5.6 concludes the paper and gives some directions for future work. 5.2 Related Work and Contributions Although a large number of routing protocols for wireless ad-hoc networks have been proposed in the past [16, 71], traditional ad-hoc routing protocols are not appropriate for networks that are sparse and disconnected as the rule. The performance of such protocols would be poor even if the network was only slightly disconnected. To see this, note that the expected throughput of reactive protocols is connected with the average path 110 duration PD and the time to repair a broken path t repair with the following relationship: throughput =min{0,rate(1− t repair PD )} [87]. When the network is not dense enough (as in the ICMN case), even moderate node mobility would lead to frequent disconnections. This reduces the average path duration significantly. Additionally, t repair is at least 2 times the delay of the optimal algorithm. Consequently, in most cases t repair is expected to be larger than the path duration, which implies that the expected throughput will be close to zero. Proactive protocols, on the other hand, would simply declare lack of a path to the destination under intermittent connectivity, or result into a deluge of topology updates that would dominate the available bandwidth under high mobility. One approach to deal with very sparse networks or connectivity “disruptions” [31] is to reinforce connectivity on demand, by bringing for example additional communication resources into the network when necessary (e.g. satellites, Unmanned Aerial Vehicles - UAVs, etc.). Similarly, one could force a number of specialized nodes (e.g. robots) to follow a given trajectory between disconnected parts of the network in order to bridge the gap [122, 67]. In other cases connectivity might be predictable, even though its intermittent (e.g. planetary and satellite movement in IPN [17]). Traditional routing algorithms could then be adapted to compute shortest delivery time paths by taking into account future connectivity [55, 58]. Nevertheless, such approaches are orthogonal to our work; our aim is to study what can be done when connectivity is neither enforced nor predictable, but rather opportunistic and subject to the statistics of the mobility model followed by nodes. 111 Despite a significant amount of work and consensus existing on the general DTN architecture [30], there hasn’t been a similar focus and agreement on DTN routing algo- rithms, especially when it comes to networks with “opportunistic” connectivity. One of the simplest possible approaches is to let the source or a moving relay node (DataMule) carry the message all the way to the destination (Direct Transmission) [88]. Although this scheme performs only one transmission, it is extremely slow [46]. A faster way to perform routing in ICMNs, called Epidemic Routing, is to flood the message through- out the network [109]. Although this scheme is guaranteed to find the shortest path when no contention exists for shared resources like wireless bandwidth and buffer space, it is extremely wasteful of such resources. What is worse, in realistic scenarios where bandwidth, memory space, and energy resources are scarce, the performance of flooding degrades significantly [101, 69, 107]. A number of approaches have been taken to reduce the overhead and improve the performance of epidemic routing [59, 94, 69, 107, 121, 113]. In [94] the authors examine a number of different schemes to suppress redundant transmissions and clean up valuable buffer space after a message has been delivered in epidemic routing. In [107, 121] a message is forwarded to another node with some probability smaller than one (i.e. data is “gossiped” instead of flooded), in order to reduce the number of nodes that try to access the medium at the same time. Finally, in [59] a simple method to take advantage of the history of past encounters is implemented in order to make fewer and more “informed” forwarding decisions than epidemic routing. The concept of history-based or utility-based routing is further elaborated in [69, 26, 66]. Results from these studies indicate that using the age of last encounter with a node, when making a forwarding decision, results in 112 superior performance than flooding. The concept of history-based routing has also been studied in the context of regular, connected, wireless networks in [34]. Finally, it has also been proposed that ideas from the area of Network Coding could be useful to reduce the number of bytes transmitted by flooding [113]. Although all these schemes, if carefully tuned, can improve to an extent the performance of epidemic routing, they are still flooding-based in nature, and thus often exhibit the same shortcomings as flooding [100]. A different approach to significantly reduce the overhead of epidemic routing, while still maintaining good performance, is to distribute only a bounded number of copies [101, 111, 94, 89]. In a manner similar to the 2-hop scheme of [46] a copy is handed over to a fixed number of relays, each of which can then deliver it only directly to the destination. This scheme, despite its frugality in transmissions, can deliver very competitive perfor- mance in some scenarios [101, 94, 89]. (We will go in detail over this scheme in the next chapter.) Nevertheless, in many situations where node movement is strongly correlated or predominantly local, the performance of the simple 2-hop scheme deteriorates [100, 20]. Despite the variety of existing approaches, the majority of them are multi-copy ones. Furthermore, the minority that deals with single-copy techniques only studies direct trans- mission [88] or some form of utility-based schemes in a different context [34, 66]. In this work we perform a detailed inquiry into the problem space of single-copy routing, and show how competitive performance can be achieved without using multiple copies. We look into how utility functions can be designed to fully take advantage of stochastic in- formation contained in the “field” of past encounters, and propose a function that is 113 shown to achieve up to an order of magnitude improvement in ICMNs, compared to ex- isting utility functions [34]. Finally, we propose a novel, hybrid routing scheme that uses randomization to overcome some inherent shortcomings of utility-based forwarding. In the theory arena, a large body of work has recently emerged trying to analyze the trade-offs involved between the asymptotic capacity and the asymptotic delay of the 2-hop scheme [46], and other schemes exploiting mobility [41, 76, 89, 29]. Although asymptotic results provide valuable insight on the scalability of a given family of protocols, they often don’t provide the necessary insight to design efficient and practical schemes. Furthermore, the majority of these works are concerned with delay in connected networks. In such networks, mobility is only used to reduce the number of transmissions. On the other hand, mobility in disconnected networks is an intrinsic component of the minimum delay. Furthermore, in connected networks the transmission range of each node has to scale with the number of nodes, in order to ensure connectivity, making all related analytical results strictly a function of the number of nodes [41, 89]. Here, we’re interested in a much wider range of connectivity scenarios, where transmission range, number of nodes, and network size are independent parameters, whose individual effect on performance our analytical framework aims at quantifying. Also, in the context of disconnected networks, most existing analytical efforts concern the performance of epidemic routing or other multi-copy schemes [94, 100, 111, 121]. To the best of our knowledge, the only prior analytical work for single-copy schemes is that on direct transmission [88], and some asymptotic results regarding the performance of the scheme of [34] in connected networks [54]. Finally, in many of the existing studies, some of the parameters of the proposed model (e.g. node inter-meeting times) need 114 to be acquired from simulation traces for a specific scenario [94, 121]. This can be an important impediment on the application of the model as a generalized performance predictor. Here, we expand our framework from [99] to evaluate the delivery delay of all single-copy algorithms examined, as well as to derive lower and upper bounds on the achievable delay by any scheme. Additionally, our framework constitutes a useful theoretical tool for the correct choice of different protocol parameters, enabling one to avoid the trial-and-error cycle of heuristic approaches. 5.3 Single Copy Routing Strategies In this section we explore the problem space of single-copy routing in ICMNs. Our problem setup consists of a number of nodes moving independently according to some mobility model. Additionally, we assume that the network is disconnected at most times, and that the transmission is faster than the node movement (a reasonable assumption with modern wireless devices 1 ). Finally, each node can maintain a timer for every other node in the network, which records the time elapsed since the two nodes last encountered each other (i.e. came within transmission range). These timers are similar to the age of last encounter in [34], and are useful, because they contain indirect (relative) location information. Specifically, for most non-adversarial mobility models, it can be shown that a smaller timer value on average implies a smaller distance from the node in question. Note that not every routing scheme requires these timers. Also, this is the only information available to a node regarding the network (i.e. no location info, etc.). 1 Assume, for example, that a node has a range of 100m and a radio of 1Mbps rate. Then, it could send a packet of 1KB at a distance of 100m in only 8ms. Even if that node is a fast moving car with a speedofsay65mph, it could carry the same packet at a mere distance of less than 1minthesame8ms. 115 We will now look into a number of increasingly “smart” strategies for single-copy routing. We believe that these schemes are fairly representative of different approaches one might take for the problem in hand. Each routing algorithm decides under what circumstances a node, currently holding the single message copy, will handover a message to another node it encounters. The goal is that each forwarding step should, on the average, result in progress of the message towards its destination, measured as a reduction of the expected meeting time with the destination. Direct Transmission: One of the simplest routing schemes imaginable is the fol- lowing: anode A forwards a message to another node B it encounters, only if B is the message’s destination. This scheme is trivial, but it has the advantage of performing only a single transmission per message. It has been considered in some previous work [46, 88], and its expected delivery delay is an upper bound on the expected delay of any routing scheme. It will therefore serve as our baseline. Randomized Routing Algorithm: The first non-trivial routing algorithm that we’ll look at is a randomized forwarding algorithm, where the current message custodian hands over the message to another node it encounters with probability p ∈ (0, 1]. This algorithm takes advantage of the fact that transmission is faster than movement. Lemma 5.1 When all nodes perform independent random walks, forwarding a message results in a reduction of the expected delivery time of the message to its destination. Our first result, captured in the above Lemma, states that when nodes perform in- dependent random walks, even this simple routing strategy results in expected progress at each forwarding step (i.e. locally). This result might be slightly counterintuitive, but 116 can be explained by the fact that transmissions are faster than node movement. Most importantly, it holds for any mobility model for which expected meeting time is a concave function of distance (e.g. random waypoint [16]). Nevertheless, this progress is marginal, especially when far from the destination. Utility-based Routing with 1-hop Diffusion: Randomized Routing does not take advantage of the only information available to each node regarding the network, that is, the last encounter timers. Position information regarding different nodes gets indirectly logged in the last encounter timers, and gets diffused through the mobility process of other nodes. As a result, a low timer for a given node implies, in the majority of cases, that this node is expected to be somewhere nearby. Therefore, we can define a utility function, based on these timers, that indicates how “useful” a node might be in delivering a message to another node. A gradient-based scheme can then be used to deliver a message to its destination, as has been noted in [69, 26, 34]. This scheme will try to maximize the utility function for this destination. Definition 5.2 (Utility-based Routing) Let every node X maintain a utility value U X (Y ) for every other node Y in the network. Then, a node A forwards to another node B a message destined to a node D, if and only if U B (D) >U A (D)+ U th , where U th (utility threshold) is a parameter of the algorithm. The following lemma states that taking into consideration utility values results in higher expected progress per forwarding decisions than randomized forwarding. Lemma 5.3 Let the utility function U i (·), maintained by each node i, be a monotonic function of the respective last encounter timer τ i (·) (τ i (j) denotes the time elapsed since 117 i last saw j), and let U i (i)≥ U i (j), ∀i, j. Let further a node A carrying a message for a node D come within transmission range of another node B,for which U A (D)<u high="" wait="" for="" clear="" start="" step="" value="" required=""> 25.) ii. The hitting time probability distribution function can be approximated by an expo- nential function: P(T>t) = exp − t cN log N . iii. ED dt(K=0) = EM = 1 2 ET. Proof.See[1] 123 Transmission Range K ≥ 0: We will now look into the more general case, where every node has a transmission range K ≥ 0. This means that any node that comes within (Manhattan) distance d≤ K from a node i, encounters i. We first prove a useful result, regarding hitting times on subsets. Its proof is based on the electric network analogy for random walks on graphs [1, 21]. Lemma 5.7 Let j be a position in the torus, and let A(K) denote the subset of all positions a, such that |x a − x j | +|y a − y j | = K. Let further T A denote the time until a random walk starting from j first hits A(K). The probability P(T A <T + j ) that a walk starting from j hits A(K) before it returns to j is then given by P(T A <T + j )= 2 K − 1 2 K+1 − K− 2 . (5.1) Proof. See Appendix C. Theorem 5.8 extends the result for the expected hitting and meeting time from Lemma 5.6 to the case where the transmission range is equal to K ≥ 0. Theorem 5.8 Let us pick uniformly a position j on an √ N × √ N torus. Let further T(K) denote the hitting time until a random walk, starting from the stationary distribu- tion, comes within range K ≥ 0 of some position j. Finally, let M(K) denote the meeting time of two such walks. Then, for large N, i. ET(K)= N c log N − 2 K+1 − K− 2 2 K − 1 , (5.2) ii. ED dt = EM(K)= 1 2 ET(K). (5.3) 124 Proof. i. Let us assume that the random walk starts outside of j’s range. The expected time T(K) until the walk first comes within range of (i.e. hits) j is equal to the first hitting time E π T A at A(K). Now let π(X) denote the stationary occupancy probability of subset X,and π A denote the stationary distribution on set A(K), that is, π A (a)= π(a)/π(A),∀a∈ A(K). The expected hitting time of the walk on j can be calculated as a function of ET(K) as follows: E π T j = ET(K)+ E π A T y . Let us further express the first return time of a walk starting at j, E j T + j ,asaweighted average on the cases of the walk reaching or not reaching A(K) before it returns back to j. E j T + j = P A · (E π A T y + g 1 (K)) + (1− P A )g 2 (K), where g 1 (K)= E j T A(K) ≤|A(K)| 2 = O(K 2 )and g 2 (K)= E j [T + j |P(T A >T + j )] = O(K), according to [1]. Furthermore, using Kac’s formula [1] we get that E j T + j =1/π(j)= N, for the √ N× √ N torus. When N K, the above equation can be rewritten as E j T + j = P A · E π A T y . Replacing P A from Eq.(5.1) we get that E π A T y = 2 K+1 − K− 2 2 K − 1 N. Finally, replacing E π A T y and E π T j from Lemma 5.6 in the equation for E π T j we get the desired relation for ET(K). 125 ii. The proof is a straightforward extension of the proof for Lemma 5.6. 5.4.2 “Oracle-based” optimal algorithm – A lower bound on delay The following coloring problem analog is used to analyze the expected performance of the optimal algorithm: The randomly chosen source node is colored red and all other nodes (including the randomly chosen destination) are colored blue; Whenever a red node encounters a blue node, the latter is colored red too. It is evident that the expected time until the destination node is colored red is equal to the expected message delivery time of the optimal algorithm. It is also evident by this coloring analog why flooding will find the same path as the oracle scheme, when buffer capacity and bandwidth are unlimited. The following theorem calculates the expected time until the destination node is colored red. It uses the meeting time of direct transmission in order to calculate the expected time until a new node is colored red, and then estimates the total number of coloring steps necessary. Theorem 5.9 When every node has a transmission range of K ≥ 0, the expected message delivery time of the optimal algorithm is given by ED opt = H M−1 (M − 1) ED dt , (5.4) where H n is the n th Harmonic Number, i.e, H n = n i=1 1 i =Θ(log n). Proof.All M nodes start from the stationary (i.e. uniform) distribution and perform independent random walks. Thus, they remain in the stationary distribution at all times. 126 Let us assume that at some time instant we have m red nodes and M − m blue nodes, and let us pick a red node i and a blue node j. According to Theorem 5.8, the meeting time M ij of nodes i and j is exponentially distributed with average ED dt .Let M i denote the meeting time of i with any of the M − m blue nodes, that is, M i =min j (M ij ). Finally, let M (m) denote the time until any of the red nodes meets any of the blue ones, when there are m total red nodes. Then, M (m) =min i (M i )=min ij (M ij ). However, all M ij are IID exponential random variables with average cN log N/2. Thus, M (m) is also an exponential random variable with average cN log N 2m(M−m) . Finally, since we have started with 1 red node, the time until all nodes are colored red is given by M−1 m=1 M (m) , whose expected value can be calculated by cN log N 2 M−1 m=1 1 m(M − m) . This is the expected time until all nodes are colored red. However, the destination may be colored red in any of the M−1 total coloring steps with equal probability. Consequently, the expected coloring time for the destination is the average over all possible m: cN log N 2(M − 1) M−1 m=1 m n=1 1 n(M − n) = cN log N 2 H M−1 M − 1 . 5.4.3 Performance of randomized routing In the case of the randomized routing algorithm the single message copy performs a random walk on the dynamically changing connectivity graph. 127 Definition 5.10 (Message’s Random Walk) Let a message, currently at position j in the torus, be routed according to the randomized routing algorithm. Let also p e be the probability that there is at least one more node within the range of the current custodian, and recall that p is the probability of forwarding. Then the message can be modelled as performing the following random walk: with probability 1− p· p e it performs a pure random walk (i.e. moves to neighboring positions), and with probability p· p e it jumps to any of the states in subset N(K)={a : d a,j ≤ K} with equal probability. The following Lemma calculates the probability of encounter p e and the average trans- mission distance d tx (K) that a message covers if it is transmitted. Lemma 5.11 Let a message perform a random walk according to Definition 5.10, in a network consisting of M nodes performing independent random walks on an √ N × √ N torus. Then, the probability of encounter p e of the message at any time is given by p e =1− 1− 2K 2 +2K +1 N M−2 . (5.5) Additionally, the average transmission distance is given approximately by d tx (K)= K(8/3+2K +4/3K 2 ) 2K 2 +2K +1 . (5.6) Proof. Both equations can then be derived using elementary probability theory and combinatorics. 128 It is important to note that Eq.(5.5) ignores the following effect of “coupled” nodes: When a walk i encounters another walk j at some time instant, i and j become cou- pled [35]. This means that, from a statistical point of view, i and j are equivalent and therefore sending the message back and forth from i to j does not offer anything, until the two nodes get decoupled again [1]. Although it is not too difficult to take coupling into account, its effect becomes negligible as M increases, and we choose to ignore it to keep our equations simpler. (Note though that we do take coupling into account in the actual implementation of the protocol.) We are now ready to analyze the performance of the randomized algorithm. Theo- rem 5.12 provides a tight (upper) bound on its delivery delay. Theorem 5.12 When every node has a transmission range of K ≥ 1, the expected mes- sage delivery time of the randomized algorithm is given by ED rnd ≤ ED dt 2− p· p e + p· p e d tx (K) . (5.7) Proof. Two independent random walks S and D on a torus start from states x and y, respectively. Walk D models the destination’s movement, which is a pure random walk on the torus, while walk S models the message movement and moves according to Definition 5.10. When no transmission occurs, S (the message) will move to a neigh- boring state. When a transmission occurs, it makes a jump of average length d tx (K). Consequently, the average length d(K) of a jump of S is given by d(K)=(1− p· p e )+ p· p e d tx (K). 129 Consider now the function f(x, y)= E x T y (K)−E π T y (K). The expected hitting times in f(x, y) correspond to hitting times for transmission range K ≥ 1. E π T y (K)= ET(K), ∀y, and given by Eq.(5.2). Consider further the random walk S , starting also at x, which whenever walk S jumps d states far, it performs d independent single step movements (i.e. performs d pure random walk steps), within one time unit. It is evident that S will cover (i.e. bring within its transmission range) a higher number of new positions than S , at every step, and therefore S is expected to meet the destination node D faster than S . Finally, if we consider the relative movement between S and D,(S ,D), then (S ,D)is a random walk that performs d(K) + 1 independent steps during one time unit. Now let ( ˆ X t , ˆ Y t ) be the positions of (S ,D) after t moves. Consider W t ≡ (d(K)+1)t+ f( ˆ X t , ˆ Y t ), and define as M xy the first meeting time between S and D (i.e. assuming that S started from position x and D from position y). It is easy to verify that (W t ;0≤ t≤ M xy ) is a martingale [35] (using similar arguments as in [1]:Ch.3 – Proposition 3). According to the optional stopping theorem [35] EW 0 = EW M xy . This means that E x T y (K)− E π T y (K)=(d(K)+1)EM xy + Ef( ˆ X M xy , ˆ Y M xy ). However, by definition ˆ X M xy = ˆ Y M xy and therefore E ˆ X M xy T ˆ Y M xy (K) = 0. Finally, E π T ˆ Y M xy (K)= ET(K). Consequently, E x T y =(d(K)+1)EM xy , which for uniformly chosen x, y implies that EM(K)= ET(K)/(d(K) + 1). Replacing ET(K) from Eq.(5.2) gives us the expected meeting time of S and D, which is an upper bound on the delivery time of the randomized algorithm (i.e. meeting time of S and D). 130 5.4.4 Performance of schemes using utility functions When utility-based forwarding is used and the message must choose between two custo- dians, it will go with the one that is expected to be “closer” to the destination. Thus, unlike Randomized Routing, in the case of Utility-based Routing the message movement has a bias towards the destination at every step. Furthermore, the amount of this bias depends on how far the message is from the destination, and may be different at every step. Consequently, the system has now memory (state) that forces us to depart from the message movement model of Randomized Routing, where each step was statistically equivalent. We perform a theoretical analysis of the expected delay for Utility-based routing and Seek and Focus routing for the case where no transitivity is used in the utility function. Transitivity complicates matters even further since it introduces multi-dimensional mem- ory, where the random variable is not just the past trajectory of a node compared to that of the destination, but rather the combined trajectories of all nodes together. For this reason, we will only provide here some theoretical insight on the effect of transitivity on performance and illuminate our choice of utility function in Definition 5.4. Utility-based routing without transitivity: In order to calculate the expected delay of Utility-based Routing with single hop diffusion, we model the message’s move- ment as a Markov Chain whose state is the message’s distance r from the destination. Without lose of generality, we will assume that the utility values are equal to the last encounter timers, and a “higher utility value” essentially means a smaller timer value. We can calculate the transition probabilities of this chain as follows: We know that at 131 any time, a node is within range with probability p e (see Randomized Routing section). If that node has a higher utility value than the current message custodian then the message gets forwarded. What we’re interested in is whether the message ends up at a position r−i closer to the destination or a position r+i further away from the destination (where i≤ K). (As we saw in Section 5.3, in general, the probability of the former occurring is higher than the latter.) Lemmas 5.13 and 5.14 calculate the exact value of these proba- bilities. Finally, if no node is within range, or the node within range has a lower utility value, the message performs a pure random walk step (following the node’s movement). Putting this altogether, we can fully define the Markov Chain describing the message’s movement. We can then impose a distribution on the message’s initial position, and calculate the expected hitting time from there to state r = 0, which gives the expected delivery delay for Utility-based Routing (Theorem 5.15). Lemma 5.13 Let u(r) denote the marginal probability that a node is at distance r from the destination and u(t) denote the marginal probability that a node has a timer value of t for the same destination. Further, let U denote the transition probability matrix for a 132 random walk on a graph that is the same as the √ N× √ N torus except that no transition from any state at distance K +1 to a state at distance K (or smaller) is allowed. Then: i. u(r)= ⎧ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎨ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎩ 1 N ,r=0 or r = √ N, 4r N , 0<r < √ N 2 , 4r−2 N ,r = √ N 2 , 4(N−r) N , √ N 2 <r < √ N. ii. u(t) is exponential with average ED dt , iii. u(r|t)= U t · u 0 , where u 0 is a probability vector with value 1 4(K+1) for all torus positions at distance K+1 and 0 for all other positions. Proof. See Appendix C. Lemma 5.14 Let us assume that a message is currently at a node A at distance r A from its destination, and that another node B is encountered. Then, the probability p tx (r A → r B ) that B has a higher utility for the destination and is at distance r B is equal to p tx (r A → r B )= t A t B <t A u(r A |t A )u(t A )u(r B |t B )u(t B ) u(r A )u(|r B − r A |≤ K|t B ) . Proof. See Appendix C. Note that in Lemma 5.14 we have assumed that U th = 0 (a message gets forwarded as long as the next hop has a smaller timer). However, the procedure can easily be 133 generalized for any utility threshold. One only needs to replace t B <t A in the second summation with t B <t A − t th , where t th = U −1 (U th ). We are now in a position to calculate all the transition probabilities and fully define the Markov chain corresponding to the message’s movement, when Utility-based Routing is used. Theorem 5.15 Let us define a Markov Chain with state r, and the following transition probabilities p(r; r + i): p(r;r + i)= ⎧ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎨ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎩ p e p tx (r→ r + i), if |i|≤ K,|i| =1, 1 2 p rw + p e p tx (r→ r + i), if |i|=1, 0, otherwise. where p rw = 1− p e |i|≤K p tx (r→ r + i) . Let further E u(r) T K denote the expected hitting time on any state in ≤ K of the chain, starting from distribution u(r). Then, the expected delivery delay of Utility-based Routing ED util is given by ED util = E u(r) T K . (5.8) Proof. We know that, at any time, the node currently holding the message encoun- ters another node (i.e. has at least another node within range) with probability p e (as calculated by Lemma 5.11). Additionally Lemma 5.14 tells us that, when such a node is within range, the message will jump to distance r + i with probability p tx (r→ r + i). Finally, if no node is within range or the node encountered has a lower utility, then the message will not be transmitted. It is easy to see that the former occurs with probability 134 1− p e , while the latter with probability p e 1− |i|≤K p tx (r→ r + i) . Putting it alto- gether, with probability p rw = 1− p e |i|≤K p tx (r→ r + i) the message does not get transmitted, but performs a pure random walk step instead. In that case, it moves with equal probability 1 2 closer to (r→ r− 1) or further from (r→ r + 1) the destination 3 . Consequently, the Markov Chain defined fully models the message’s movement in the case of Utility-based Routing. Starting therefore from the stationary distribution u(r), the expected delay until the message is delivered is equal to the time until the message’s state (i.e. distance form destination) is ≤ K. The expected hitting time on the above chain can easily be calculated using the t- step transition matrix for the above 1-dimensional chain of Theorem 5.15, giving us the expected delay of Utility-based Routing. Seek and Focus routing without transitivity: It is not too difficult to modify the above procedure to calculate the expected delay of Seek and Focus as well. We now need to take into account that when the current custodian has a low utility value it does not look into the respective utility (timer) of the node encountered, but just tosses a coin instead. (In order not to depart from the above Markov chain model, we will ignore in this analysis the effect of the “re-seek” phase of Seek and Focus. As a result the derived delay is an upper bound on the actual Seek and Focus protocol.) Lemma 5.16 Let us assume that a message is currently carried by a node A at distance r A from its destination, and that another node B is encountered. Let us further assume 3 Note that for large N, the probability that the message has the same x or y coordinate as the destination, in which case the probability of moving closer to the destination is only 1 4 , can be ignored. 135 that Seek and Focus Routing is implemented by both nodes, with a one-to-one utility function U, focus threshold U f ,and t f = U −1 (U f ). Then, the probability p tx (r A → r B ) that the message proceeds to a state r B (i.e. is forwarded to B and that B is at distance r B ) is equal to: p tx (r A → r B )= t A <t f t B <t A u(r A |t A )u(t A )u(r B |t B )u(t B ) u(r A )u(|r B − r A |≤ K|t B ) + p t A ≥t f u(r A |t A )u(t A )u(r B ) u(r A )u(|r B − r A |≤ K) . Proof. The first term of p tx (r A → r B ) corresponds to the focus phase, where utility- based forwarding is performed. Therefore, we only consider the terms for which t A <t f . Everything else is the same as in Lemma 5.14. The second term corresponds to the seek phase. If t A ≥ t f then A does not look into B’s timer, but just gives it the message with probability p. We can now construct the same Markov Chain as in the case of Utility-based Routing, but with p tx (r→ r + i) given from Lemma 5.16, and get the expected delay of Seek and Focus. Utility transitivity: Timer values have the desirable behavior that their expected value increases as a function of distance. However, timer values quickly become poorer indicators of proximity as their value increases (this is commonly referred to as the “distance effect” [34]). This is illustrated in Figure 5.1, where the probability distribution function (pdf) of the distance from the destination is depicted for a small (20) and a large (200) timer value. As can be seen there, the variance of the pdf quickly increases as time passes. 136 Figure 5.1: Probability density function for the distance from the destination given dif- ferent timer values for that destination (80× 80 grid). In order to improve the efficiency of utility-based routing, it is therefore desirable to reduce the uncertainty for higher timer values, that is, make the above pdfs as narrow as possible. Transitivity does exactly this. It quickly distributes fresh utility information far from the destination, and reduces the uncertainty regarding the position of a given node. As an example of the beneficial effect of transitivity on the statistics of the utility function, see Figure 5.2, where a significant decrease in variance is achieved by transitivity. Having shown why transitivity is important, we need now to justify our choice for the utility function of Definition 5.4. Let a node A with timer value τ A (D) encounter another node B with timer value τ B (D), such that τ B (D) τ A (D). Let also d AB denote the physical distance between A and B,andlet t m (d) denote the expected time it takes a node to move a distance d. Then, it is not too difficult to see that, if τ A (D)−τ B (D)>t m (d AB ), there is a discrepancy between the position information implied be each of the two timer values. The difference between the timer values should not exceed the expected time it 137 timer value timer value no transitivity transitivity timer value timer value no transitivity transitivity Figure 5.2: Probability density function for the timer value far from the destination with and without transitiviy (N = 100× 100). would have taken node B to move the extra distance d AB under the mobility model in question, that is, t m (d AB ). Thus, one of the two timers needs to be corrected. For most non-contrived mobility models τ B (D) τ A (D) implies that d BD <d AD (with high probability). Also, we saw that position uncertainty quickly decreases for higher timer values. Thus, it is significantly more probable that it’s the larger timer value that needs to be adjusted according to the smaller timer value, and this adjustment should be equal to t m (d AB ). If a node moves according to the random waypoint model, it moves on a straight line for distances (on average) larger than d AB .Thusittakes approximately d AB steps on average to move a distance of d AB . Similarly, in the case of random walks, it takes a node d 2 AB on average to move a distance of d AB [1]. Summarizing, the transitivity functions for the mobility models we use here are given by: if τ A (D)<τ B (D)− d AB , set τ B (D)= τ A (D)+ d AB (waypoint), if τ A (D)<τ B (D)− d 2 AB , set τ B (D)= τ A (D)+ d 2 AB (walk) 138 upper bound lower bound Expected Delay - M = 20, K = 5 0 2000 4000 6000 8000 10000 12000 14000 16000 1600 3600 6400 10000 14400 19600 N (size of torus) time units direct (sim) direct (analysis) optimal (sim) optimal (analysis) Lower bound Upper bound any routing algorithm Expected Delay – M = 20, K = 5 0 2000 4000 6000 8000 10000 12000 14000 16000 1600 3600 6400 10000 14400 19600 N (size of torus) delay (time units) direct (sim) direct (analysis) optimal (sim) optimal (analysis) Upper bound Lower bound any routing algorithm Spray and Wait Delay (N = 2500, M = 30) 0 500 1000 1500 2000 2500 3000 3500 12 3 4 5 6 7 8 L (# of copies) time units spray and wait (bound) spray and wait(sim) spray and wait (analysis) optimal direct transmission Expected Delay – N = 2500, M = 20 0 500 1000 1500 2000 2500 3000 3500 4000 01 2 3 45 6 7 Tx Range (K) delay (time units) direct (sim) direct (analysis) random (sim) random (bound) optimal (sim) optimal (analysis) upper bound lower bound Expected Delay - M = 20, K = 5 0 2000 4000 6000 8000 10000 12000 14000 16000 1600 3600 6400 10000 14400 19600 N (size of torus) time units direct (sim) direct (analysis) optimal (sim) optimal (analysis) Expected Delay - M = 20, K = 5 0 2000 4000 6000 8000 10000 12000 14000 16000 1600 3600 6400 10000 14400 19600 N (size of torus) time units direct (sim) direct (analysis) optimal (sim) optimal (analysis) Lower bound Upper bound any routing algorithm Expected Delay – M = 20, K = 5 0 2000 4000 6000 8000 10000 12000 14000 16000 1600 3600 6400 10000 14400 19600 N (size of torus) delay (time units) direct (sim) direct (analysis) optimal (sim) optimal (analysis) Upper bound Lower bound any routing algorithm Spray and Wait Delay (N = 2500, M = 30) 0 500 1000 1500 2000 2500 3000 3500 12 3 4 5 6 7 8 L (# of copies) time units spray and wait (bound) spray and wait(sim) spray and wait (analysis) optimal direct transmission Expected Delay – N = 2500, M = 20 0 500 1000 1500 2000 2500 3000 3500 4000 01 2 3 45 6 7 Tx Range (K) delay (time units) direct (sim) direct (analysis) random (sim) random (bound) optimal (sim) optimal (analysis) Spray and Wait Delay (N = 2500, M = 30) 0 500 1000 1500 2000 2500 3000 3500 12 3 4 5 6 7 8 L (# of copies) time units spray and wait (bound) spray and wait(sim) spray and wait (analysis) optimal direct transmission Spray and Wait Delay (N = 2500, M = 30) 0 500 1000 1500 2000 2500 3000 3500 12 3 4 5 6 7 8 L (# of copies) time units spray and wait (bound) spray and wait(sim) spray and wait (analysis) optimal direct transmission Expected Delay – N = 2500, M = 20 0 500 1000 1500 2000 2500 3000 3500 4000 01 2 3 45 6 7 Tx Range (K) delay (time units) direct (sim) direct (analysis) random (sim) random (bound) optimal (sim) optimal (analysis) Figure 5.3: Comparison of analytical and simulation results for upper and lower bounds on delay (left) and Randomized Routing (right). 5.4.5 Simulation vs. analysis In this final section we compare our analytical results, regarding the expected delay of different algorithms, to simulation results. We first look into the upper and lower bounds on the achievable delay by any single or multi-copy scheme, namely the expected delay of Direct Transmission and of the Optimal scheme, respectively. In the left plot of Figure 5.3 we fix M to 20, K to 5, and compare simulation and analytical results for the expected delay of these two schemes, as a function of the torus size N. As one can see from this figure, simulation and analytical plots present quite a close match. (Some minor discrepancies are due to some approximations, stated in the proofs.) Additionally, the highlighted area indicates the performance range of any implementable routing scheme. This area increases very fast with N and M, indicating that it makes a sizeable difference which routing algorithm one will use. In the right plot of Figure 5.3 we fix N to 2500 and M to 20 and compare analytical and simulation results for Randomized Routing, for increasing transmission range K.We 139 Utility-based (N = 2500, M = 40) 0 500 1000 1500 2000 2500 23 4 5 67 Tx Range (K) delay (time units) sim analysis Seek & Focus (N = 2500, M = 40) 0 500 1000 1500 2000 2500 23 4 5 6 7 Tx Range (K) delay (time units) sim analyis Figure 5.4: Comparison of analytical and simulation results for Utility-based Routing (left) and Seek and Focus (right) as a function of K also include analytical and simulation results for the expected delay of direct transmission, and optimal schemes. Note that, in the case of the randomized algorithm, the analytical plot is only an upper bound (as explained in Section 5.4.3). As can be seen in this figure the efficiency of Randomized Routing increases quickly with the transmission range K of each node. This is reasonable, since the further a node can transmit, the more “ground” it covers by transmitting a message, as compared to carrying it around. Finally, in Figure 5.4 we compare our analytical results for Utility-based Routing and Seek and Focus routing to simulation results for a 50×50 grid with M =40nodes. Asis evident by this figure, simulation and analytical results are closely matched. Furthermore, like Randomized Routing, the efficiency of both schemes increases with transmission range K. However, note that in this small network, utility-based routing does not suffer from the slow-start phase, and thus seek and focus (without the re-seek phase) doesn’t offer considerable improvement, especially for higher K. 140 5.5 Simulation Results We have also used a custom discrete event-driven simulator to evaluate the performance of different routing protocols under a large range of connectivity levels, and under more realistic conditions (e.g. media access contention), and other mobility models (e.g. ran- dom waypoint). Although the networks of interest are disconnected in general, depending on the application, they may range from extremely sparse to almost connected networks. This amount of connectivity is directly related to the number and quality of forward- ing opportunities presented to the message custodian, and thus is expected to have an important effect on performance 4 . A slotted collision avoidance MAC protocol has been implemented, in order to arbi- trate between nodes contenting for the shared channel. The single-copy routing protocols we have implemented and simulated are: • Randomized routing with p=0.5; • Utility-based routing with no transitivity; • Utility-based routing with transitivity; • Seek and Focus with transitivity; • Optimal oracle-based algorithm; • Direct transmission. 4 On the other hand, traffic load has a much less interesting effect on the performance of single-copy schemes. Single-copy schemes perform a small number of transmissions by design, and thus are not expected to be prone to high contention and drops for most traffic loads of interest, unlike multi-copy schemes [101]. 141 Before we proceed, it is necessary to define a meaningful connectivity metric. There are two types of connectivity that are important in ICMNs, namely “static” and “dy- namic” connectivity. Static connectivity indicates how connected a random snapshot of the connectivity graph will be, from a graph theory perspective [28]. Although a num- ber of different metrics have been proposed (for example [33]), no widespread agreement exists, especially if one needs to capture both disconnected and connected networks. We believe that a meaningful metric for the networks of interest is the expected maximum cluster size defined as the percentage of total nodes in the largest connected component (cluster). We vary the transmission range K in order to span the entire static connectivity range. In all scenarios there are 100 nodes moving inside a 500× 500 torus. Dynamic connectivity can be seen as a measure of how many new nodes are encoun- tered by a given node within some time interval, and is important in situations where mobility is exploited to deliver traffic end-to-end. If nodes move in an IID manner, this is directly tied to the mixing time for the graph representing the network [1]. The larger the mixing time, the more “localized” the node movement, and the longer it will take anodeto carry a message to a remote part of the network. We present results for the random walk and random waypoint models. The random waypoint has one of the fastest mixing times (Θ( √ N)), while the random walk has one of the slowest (Θ(N)) [1]. Random Walk: Figure 5.5 and Figure 5.6 depicts the average number of trans- missions (per message) and the delivery delay, respectively, when all nodes perform in- dependent random walks. As can be seen there, randomized routing is quite fast for high connectivity levels. When connectivity is high, the message can quickly search large clusters of nodes, and the penalty of a wrong decision is small since nodes move very 142 Transmissions (Random Walk) 0 100 200 300 400 500 600 700 800 40 (8.6%) 50 (14.8%) 60 (27.7%) 70 (52.9%) 80 (79.2%) Tx Range (connectivity %) transmissions (per msg) randomized utility (no trans) utility (trans) seek&focus (trans) optimal Figure 5.5: Number of transmissions for Random Walk mobility. slowly. However, this speed comes with one (for high connectivity) to two (for low con- nectivity) orders of magnitude more transmissions than utility-based schemes and the optimal scheme. One the other hand, utility-based routing without transitivity performs extremely few transmissions (comparable to the shortest path), but is extremely slow. Transitivity, by successfully taking advantage of the high locality of random walk move- ment, can help reduce delay by almost an order of magnitude with essentially no increase in transmissions. Nevertheless, delivery delay is still larger than randomized, especially for high connectivity levels. Seek and Focus comes to combine the advantages of the two schemes efficiently, achieving the small delays of randomized routing with only a small increase in transmissions compared to utility routing. Random Waypoint: The average number of transmissions for the case when nodes move according to the random waypoint model are depicted in Figure 5.7, and the re- spective delays in Figure 5.8. The story here is somewhat different than in the random walk case. First, because nodes move quickly around the network, static connectivity does not have as large an effect on performance. Second, randomized routing performs 143 Delivery Delay (Random Walk) 10 100 1000 10000 100000 40 (8.6%) 50 (14.8%) 60 (27.7%) 70 (52.9%) 80 (79.2%) Tx Range (connectivity %) time units (LOG SCALE) Figure 5.6: Delivery delay for Random Walk mobility. rather poorly here. Because nodes move fast, the penalty for forwarding the message to the “wrong” node is high. This is also evident by the fact that Seek and Focus does not improve the delay of Utility-based routing with transitivity as much as in the random walk case. Due to increased node movement, the message doesn’t get stuck in local max- ima for a long time. Third, it is evident that, despite the higher speed by which location information becomes obsolete, a carefully chosen utility function can help improve per- formance significantly. Finally, as one can see in both sets of plots, higher connectivity creates more forwarding opportunities, allowing good protocols to perform even better. 5.6 Conclusion In this chapter, we have dealt with the problem of single-copy routing in intermittently connected mobile networks. We have presented a number of increasingly sophisticated single-copy strategies, and used theory and simulations to extensively evaluate their per- formance. We conclude that carefully designed single-copy schemes can often present 144 Transmissions (Random Waypoint) 0 20 40 60 80 100 120 140 30 (5.7% ) 40 (8.6% ) 50 (14.8% ) 60 (27.7% ) 70 (52.9% ) Tx Range (connectivity % ) transmissions (per msg) random utility (no trans) utility (trans) seek&focus optimal Figure 5.7: Number of transmissions for Random Waypoint mobility. Delivery Delay (Random Waypoint) 10 100 1000 10000 30 (5.7% ) 40 (8.6% ) 50 (14.8% ) 60 (27.7% ) 70 (52.9% ) Tx Range (connectivity % ) time units (LOG SCALE) Figure 5.8: Delivery delay for Random Waypoint mobility. 145 competitive alternatives to more general multi-copy strategies, when the overhead of us- ing redundant copies is unacceptable. However, even the best single-copy solution is still far off from the optimal performance. In order to achieve close to optimal performance in the intermittently connected environment, it is necessary to use more than one copies. In the next chapter, we will use the understanding acquired by our detailed examination of single-copy schemes to design efficient multi-copy schemes that can achieve the desired performance in a large range of scenarios. In the future, we would also like to investigate more general utility functions that can capture and take advantage of a wider range of characteristics pertinent to more realistic mobility models. Such models may exhibit correlation in both space and time, as well as considerable heterogeneity between modes, which could improve the quality of forwarding decisions further [56, 4, 20]. 146 Chapter 6 Efficient Routing in Intermittently Connected Mobile Networks: The Multi-Copy Case 6.1 Introduction In the previous chapter we looked into routing solutions that generate and route only one copy per message. We explained how to design forwarding algorithms that can take advantage of stochastic information to make good forwarding decisions even in the absence of a connected path to the destination. However, in this context even the smartest single- copy schemes are relatively far from achieving optimal performance. Redundant copies need to be used to achieve the best performance possible. Caution is needed though, because if too many copies are used, excessive contention for the shared wireless medium and limited node memory can cause performance to plummet once more. In this chapter, we will look into multi-copy routing solutions for routing in ICMNs, that is, schemes that generate and route more than one copies of the same message in parallel. Each of the copies is routed independently using one of the single-copy strategies discussed in Chapter 5. We examine a number of existing schemes to understand 147 their advantages and shortcomings. Based on the observation that some redundancy can significantly reduce delays, but too much redundancy might degenerate performance, we introduce two novel multi-copy routing schemes, called Spray and Wait and Spray and Focus, respectively. These schemes initially distribute (“spray”) a small, fixed number of copies to different relays, and then route each copy independently to the destination using a single-copy scheme. Although the idea of bounding the number of copies used, in order to reduce transmissions, is relatively straightforward, a number of important questions remain to be answered. How many copies should be distributed and to whom? How should each copy be routed to the destination? Can such a scheme be designed to achieve competitive delays in a large range of scenarios? We will answer all these questions and show how spraying schemes can be designed efficiently in practice. Our first scheme proposed, Spray and Wait, is remarkably simple to implement and optimize. It significantly outperforms all existing schemes, in terms of both transmissions and delay, in scenarios were mobility is unrestricted. However, when mobility is very low and/or restricted, the performance of Spray and Wait may deteriorate. Our second proposed scheme, Spray and Focus, can be used in these situations to retain the close-to-optimal performance, with only a small overhead on resource usage and simplicity compared to Spray and Wait. Summarizing, using theory and simulations we show that: (i) under low load, our two protocols result in much fewer transmissions than all existing schemes and comparable or smaller delays than flooding-based schemes, (ii) under high load, they yield significantly better delays and fewer transmissions than all schemes, (iii) they are highly scalable, exhibiting good and predictable performance for a large range of network sizes, node 148 densities and connectivity levels; what is more, as the size of the network and the number of nodes increase, fewer copies (and thus transmissions) per node are needed by spraying schemes to achieve the same performance, and (iv) they can be easily tuned online to achieve given QoS requirements, even in unknown networks. We also show that spraying schemes, using only a handful of copies per message, can achieve comparable delays to an oracle-based optimal scheme that minimizes delay. In the next section we go over a number of routing algorithms to tackle the problem of routing in intermittently connected networks, including our proposed solutions, the Spray and Wait and Spray and Focus routing algorithms. Then, in Section 6.3 we deal with the issue of optimal spraying algorithms and analyze the performance of the spraying schemes. In section 6.4 we show how to choose the total number of copies per message to achieve desirable expected delays. Simulation results are presented in Section 6.5, where the performance of all the strategies is compared with respect to message delivery delay and number of transmissions per message delivered. Finally, Section 6.6 concludes the paper. 6.2 Routing Strategies Our problem setup consists again of a number of nodes moving independently according to some mobility model. Additionally, we assume that the network is disconnected at most times, and that the transmission is faster than the node movement. Finally, each node can maintain a timer for every other node in the network, which records the time elapsed since the two nodes last encountered each other (i.e. came within transmission 149 range). These timers are similar to the age of last encounter in [34], and are useful, because they contain indirect (relative) location information. Specifically, for most non- contrived mobility models, it can be shown that a smaller timer value on average implies a smaller distance from the node in question. Note that timers are the only information available to a node regarding the network (i.e. no location info, etc.). Also, from the two proposed schemes, only Spray and Focus requires these timers. We first discuss in more detail a range of possible multi-copy routing approaches (a detailed survey of existing proposals and other related work can be found in Chapter 5). We identify their individual strengths and shortcomings, and based on this we propose a set of design goals for an efficient multi-copy routing protocol. We then present Spray and Wait, a simple yet very efficient routing protocol that meets these goals and out- performs both single and multi-copy routing techniques, in most scenarios. Finally, we introduce a more sophisticated scheme called Spray and Focus that can deliver the de- sired performance even in these scenarios where Spray and Wait might not perform as close to the optimal. This is achieved with only a small overhead on transmissions and implementation complexity. 6.2.1 Single-copy routing As we said, when transmission cost is an important factor in routing, single-copy routing algorithms can be an attractive option. In the previous chapter we showed that the champion single-copy scheme is one called Seek and Focus. In order to obtain some insight on the relative performance between single and multi-copy routing techniques, we will include Seek and Focus in our discussion and simulations of this chapter. 150 6.2.2 Flooding-based and utility-based algorithms Epidemic routing [109] extends the concept of flooding in intermittently connected mobile networks. Each node maintains a list of all messages it carries, whose delivery is pending. Whenever it encounters another node, the two nodes exchange all messages that they don’t have in common. This way, all messages are eventually “spread” to all nodes, including their destination. Although epidemic routing finds the same paths as the optimal scheme under no con- tention, it is very wasteful of network resources. Every message is received by every node in the network. Thus, transmissions grow fast with the number of nodes M making it a very energy-consuming scheme. Furthermore, in most real wireless networks, bandwidth and memory are scarce resources. In such networks, epidemic routing creates a lot of contention for the limited buffer space and the network capacity, resulting in large queu- ing delays, message drops, and retransmissions. This can have a detrimental effect on performance, as has been noted earlier in [69, 107]. As we will show in our simulations, increasing traffic loads and node density exacerbate this problem rather fast. Reducing the overhead of flooding: One simple approach to reduce the overhead of flooding and improve its performance is the following [107]: when a node encounters another node, it forwards a copy with probability p ∈ (0, 1]. (Obviously, for p = 1 this scheme becomes epidemic routing.) We shall call this scheme Randomized Flooding. Nevertheless, it is easy to see that Randomized Flooding faces the same difficulties as Epidemic Routing as the number of nodes increase. 151 A B (randomized) (utility-based) D A distance from destination B Delivery Time for A Delivery Time for B (randomized) (utility-based) D Delivery Time for B A B (randomized) (utility-based) D A B? distance from destination D B? Delivery Time for A Expected Delivery Time to Destination D Delivery Time for B (randomized) (utility-based) D Delivery Time for B Randomized: expected distance of B Utility-based: expected distance of B A B (randomized) (utility-based) D A distance from destination B Delivery Time for A Delivery Time for B (randomized) (utility-based) D Delivery Time for B A B (randomized) (utility-based) D A B? distance from destination D B? Delivery Time for A Expected Delivery Time to Destination D Delivery Time for B (randomized) (utility-based) D Delivery Time for B Randomized: expected distance of B Utility-based: expected distance of B Figure 6.1: Expected progress of a forwarding step for the randomized and utility-based policies. A different, more sophisticated approach to routing in intermittently connected net- works is that of Utility-based or Probabilistic Routing [69]. Here a node will forward a message copy to another node it encounters only if this other node has a higher utility for the message’s destination by at least some pre-specified value U th . This scheme has be shown to improve the performance of epidemic routing in some scenarios [69]. Figure 6.1 shows why utility-based forwarding decisions are better than randomized ones. There, a node A carrying a message for node D encounters another node B. In the randomized case, A hands over the message to B with some probability, regardless of the respective utility values. In that case B might be closer or further to the destination with equal probability, and thus the expected delay of B is the average of the two cases. However, if B has a higher utility value for the destination, B is also closer on average to it, which implies a smaller expected delay for B than in the randomized case, as can be seen by Figure 6.1. Nevertheless, Utility-based routing is in nature still flooding-based. Furthermore, it is faced with the following dilemma. In a large network, it is expected that the destination is going to be far from the source, when source-destination pairs are chosen randomly. 152 As can be seen in Figure 6.1, expected delivery times far from the destination are quite similar to each other, and thus so are utility values (which are inversely proportional to expected delivery time). Consequently, if a large U th is used, the total number of transmissions is significantly reduced, but the scheme suffers from a “slow-start” phase: the source has to wait a long time until it encounters a good next hop. On the other hand, if a very small U th is chosen, the scheme degenerates to epidemic routing. 6.2.3 Spray routing “Spray and Wait”: Based on the previous exposition, we can now identify a number of desirable design goals for a routing protocol in intermittently connected mobile networks. Specifically, an efficient routing protocol in this context should: • perform significantly fewer transmissions than epidemic and other flooding-based routing schemes, under all conditions. • generate low contention, especially under high traffic loads. • achieve a delivery delay that is better than existing single and multi-copy schemes, and close to the optimal. • be highly scalable, that is, maintain the above performance behavior despite changes in network size or node density. • be simple and require as little knowledge about the network as possible, in order to facilitate implementation. 153 To this end, we propose a novel routing scheme, called Spray and Wait that is simple yet efficient, and meets the above goals, as we will demonstrate in the next sections. Spray and Wait routing decouples the number of copies generated per message, and therefore the number of transmissions performed, from the network size. It consists of two phases: Definition 6.1 (Spray and Wait) Spray and Wait routing consists of the following two phases: • spray phase: for every message originating at a source node, L message copies are initially spread – distributed by the source or nodes that have already received acopy –to L distinct “relays”. (Details about different spraying methods will be given later.) • wait phase: if the destination is not found in the spraying phase, each of the L nodes carrying a message copy performs direct transmission (i.e. will forward the message only to its destination). Spray and Wait combines the speed of epidemic routing with the simplicity and thrifti- ness of direct transmission. It initially “jump-starts”, spreading message copies in a man- ner similar to epidemic routing. When enough copies have been spread to guarantee that at least one of them will find the destination quickly (with high probability), it stops and lets each node carrying a copy perform direct transmission. In other words, Spray and Wait could be viewed as a tradeoff between single and multi-copy schemes, from a functional point of view. Despite this, its performance in many scenarios is actually better than both practical single and multi-copy schemes, with respect to both number of transmissions and delay. 154 “Spray and Focus”: Although Spray and Wait combines simplicity and efficiency, and outperforms existing schemes in a lot of scenarios, there are some situations were it might fall short. For example, if the mobility of each node is restricted to a small local area, Spray and Wait will spread all its copies quickly to the immediate neighborhood, but then none of the nodes carrying a copy might see the destination soon. Even if a path existed over which the message copy could be quickly transmitted to the destination, in Spray and Wait the current custodian will simply wait until it moves within range of the destination. This problem can be solved if some other single-copy scheme that takes advantage of transmissions (unlike Direct Transmission) is used to route each copy. We have seen in Chapter 5 that appropriately designed utility-based schemes have very good performance in scenarios were mobility is low and localized. This is the exact situation were Spray and Wait loses its performance advantage. Therefore, we propose a scheme were a fixed number of copies are spread initially (as in Spray and Wait), but then each copy is routed independently according to the single-copy utility-based scheme with transitivity as described in Section 5.3. We call this scheme Spray and Focus. As we shall see, in scenarios where Spray and Wait does not perform that well, the delay of Spray and Focus is close to the optimal one, while making only a few more transmissions per message compared to Spray and Wait. Furthermore, even in scenarios where Spray and Wait has close to optimal performance, Spray and Focus is also close to optimal. 155 6.3 Performance Analysis In this section we will analyze the performance of Spraying algorithms. Throughout this section we will be making the following assumptions (similar to Chapter 5: i. M nodes perform independent random walks on a √ N × √ N 2D torus (finite lattice). In other words, time and space are discrete. This model has been used in [88, 99] and we choose it here for its analytical tractability. It is also a worst-case model in terms of predictability of future movement and speed of mobility. Namely, movement at every step is independent from movement at all previous steps, and nodes exhibits the smallest displacement with time. ii. Each node can transmit up to K ≥ 0 grid squares away, where K/ √ N is much smaller than the value required for connectivity [48]. We use Manhattan distance d ab =|a x − b x | +|a y − b y | to measure proximity between two positions a and b (or between two nodes). Also, we assume that the transmission of one message takes exactly one time unit. ii. There is no contention in the network. In other words, buffer space is infinite, and any communicating pair of nodes does not interfere with any other pair communi- cating at the same time. 6.3.1 Performance of Spray and Wait routing In the Spray and Wait routing algorithm there are L copies that need to be spread initially to L different relays. Irrespectively of how the L copies are sprayed, after all copies are distributed, each of the L relays will independently look for the destination to directly 156 deliver the message, if the latter has not been found yet. In other words, the delay of the wait phase is independent of the spraying method. We compute it in the following Lemma. Lemma 6.2 Let EW denote the expected duration of the “wait” phase, if needed. Then, for large N, EW is the same for every Spray and Wait algorithm, regardless of the way the L copies are spread, and given by EW = ED dt L . (6.1) Proof. The time until one of the relays finds the destination is the minimum of L independent and exponentially distributed random variables, with average ED dt (see Section 5.4). Thus, the expected value of this minimum is equal to ED dt /L. Unlike the expected duration of the wait phase, the duration of the spray phase largely depends on the way the L copies are spread. A number of different “spraying” heuristics can be envisioned. For example, the simplest way is to have the source node forward all L copies to the first L distinct nodes it encounters (“Source Spray and Wait”). A better way is the following. Definition 6.3 (Binary Spray and Wait.) The source of a message initially starts with L copies; any node A that hasn> 1 message copies (source or relay), and encounters another node B with no copies, hands over to B n/2 copies and keeps n/2 copies for itself; when it is left with only one copy, it switches to Direct Transmission. 157 The following theorem states that Binary Spray and Wait is optimal, when node movement is IID. Theorem 6.4 When all nodes move in an IID manner and N is large, Binary Spray and Wait routing is optimal, that is, has the minimum expected delay among all spray and wait routing algorithms. Proof. Let us call a node “active” when it has more than one copies of a message. Let us further define a spraying algorithm in terms of a function f : N → N as follows: when an active node with n copies encounters another node, it hands over to it f(n) copies, and keeps the remaining 1−f(n). Any spraying algorithm (i.e. any f) can be represented by the following binary tree with the source as its root: assign the root a value of L;if the current node has a valuen> 1 create a right child with a value of 1−f(n)andaleft one with a value of f(n); continue until all leaf nodes have a value of 1. A particular spraying corresponds then to a sequence of visiting all nodes of the tree. This sequence is random. Nevertheless, on the average, all tree nodes at the same level are visited in parallel. Further, since only active nodes may hand over additional copies, the higher the number of active nodes when i copies are spread, the smaller the residual expected delay, let ED(i). Since the total number of tree nodes is fixed (2 1+log L − 1) for any spraying function f, it is easy to see that the tree structure that has the maximum number of nodes at every level, also has the maximum number of active nodes (on the average) at every step. This tree is the balanced tree, and corresponds to the Binary Spray and Wait routing scheme. 158 As L grows larger, the sophistication of the spraying heuristic has an increasing impact on the delivery delay of Spray and Wait scheme. Figure 6.2 compares the expected delay of Binary Spray and Wait and Source Spray and Wait as a function of the number of copies L used, in a 100× 100 network with 100 nodes. This figure also shows the delay of the Optimal scheme. Spray and Wait Delay (N=10000, M = 100) 0 500 1000 1500 2000 2500 3000 3500 4000 510 15 20 L (# of copies) time units source spray and wait binary spray and wait optimal Figure 6.2: Comparison of Source Spray and Wait, Binary Spray and Wait, and Optimal schemes (100× 100 network with 100 nodes). The following theorem calculates the expected delivery time of Binary Spray and Wait. It defines a system of recursive equations that calculates the (expected) residual time after i copies have been spread, in terms of the time until the i+1 th is distributed, plus the remaining time thereafter. Theorem 6.5 Let ED sw (L) denote the expected delay of the Binary Spray and Wait algorithm, when L copies are spread per message. Let further ED(i) denote the expected remaining delay of the same scheme, after i message copies have been spread. Then, 159 ED sw (L) ≈ ED(1), where ED(1) can be calculated by the following system of recursive equations: ED(i)= ED dt i(M − i) + M − i− 1 M − i ED(i+1), i∈ 1, L 2 ; ED(i)= ED dt i(M − i) + M − i− 1 M − i 2i− L i ED(i)+ L− i i ED(i+1) , for i∈ L 2 +1,L− 1 ; ED(L)= EW = ED dt L . Proof. Let us look into the case, when there are i nodes (i<L) that have one or more copies. Further, let’s assume that among the i nodes with copies X i of them have more than one (i.e. are “active”), and thus are allowed to forward copies further to other relays. Since all hitting times are independent and exponentially distributed, the time until any of the nodes with a message copy (i) encounters any of the nodes without one (M− i)is equal to ED dt i(M−i) . Now, if the node encountered is the destination (with probability 1 M−i ) the message gets delivered. Otherwise (with probability M−i−1 M−i ) the algorithm continues, performing one of the following: a) with probability X i i it is one of the active nodes that encountered this other node, and therefore hands it over half its copies; i + 1 nodes have copies now, and an expected time ED(i + 1) remains till delivery; b) with probability i−X i i it was one of the other nodes carrying a message copy that encountered a new node. Since these relays only forward their message copy to its destination, nothing happens, and the remaining time is still ED(i). Putting it altogether ED(i)= ED dt i(M − i) + M − i− 1 M − i i− X i i ED(i)+ X i i ED(i+1) . 160 The traversal of the tree corresponding to the spraying phase (see Theorem 6.4), which results in the highest X i , and therefore the minimum ED(i) for all i, is a breadth-first traversal. In that case, X i = i, i∈ [1,L/2] and X i = L−i, i∈ [L/2+1,L−1]. However, a given spraying instance might not follow exactly a breadth-first traversal. It is possible to derive the exact delay by averaging over all possible traversals, but it involves meticulous calculations that do not offer any interesting insight or significant increase in accuracy. We therefore assume that breadth-first traversal is always the case, in order to keep our equations as “clean” as possible. Finally, as we saw in Lemma 6.2 the remaining time after all L copies are spread in the network is given by Eq.(6.1). The above result, albeit quite useful in accurately predicting the performance of Spray and Wait, is not in closed form. This makes it difficult to theoretically compare the performance of Spray and Wait to that of the optimal scheme introduced in Section 5.3, or to calculate the optimal number of copies. For this reason, in the following lemma we also derive a tight upper bound that is in closed form. Its proof uses a similar methodology to that of Theorem 5.9. Lemma 6.6 The following upper bound holds for the expected delay of Spray and Wait: ED sw ≤ (H M−1 − H M−L )ED dt + M − L M − 1 EW, (6.2) where again H n is the n th Harmonic number. Proof. Assume that, at some time instant, i of the L copies have already been spread, that is, there are i nodes, including the source node, carrying a message copy. Since only 161 the source can forward another copy, the expected time until another message copy is distributed is equal to the time until the source meets one of the M− i remaining nodes, that is, ED dt M−i . (Note that the difference here with the optimal algorithm is that only the source node can distribute a copy to a node other than the destination, and that only up to L nodes may receive a copy.) Hence, the expected time until L− 1 different relays are encountered equals L−1 i=1 ED dt M − i =(H M−1 − H M−L )ED dt . This is the time until L message copies, including that of the source, are spread among the M nodes. Now, let P i denote the probability that the destination is the i th node to receive a message copy, and let t i denote the expected time until the i th copy is given by the source. Then, the expected delivery time is given by L i=1 P i t i . Clearly, L i=1 P i t i ≤ L−1 i=1 P i t L−1 + P L t L . Also, t L−1 = L−1 i=1 ED dt M−i , t L = t L−1 + EW, and the probability P L that the destination was not among the L− 1 initial relays is equal to M−L M−1 . This is the probability that a “wait” phase will be necessary. Substituting t L−1 , t L ,and P L in the above equation, and noting that L i=1 P i = 1, we get that the expected delay is bounded by L−1 i=1 ED dt M − i + M − L M − 1 EW. 162 This bound is tight for a small L/M ratio, but becomes pessimistic as this ratio grows larger. This is because the bound includes the full time until all copies are spread, regardless of whether the destination is found in the spraying phase. However, when the number of copies is much smaller than the total number of nodes (which is the case in most scenarios of interest) this bound is very useful when tuning the performance of Spray and Wait, as we shall see. Performance of Spray and Focus: It is important to note that all results derived so far, regarding the spraying phase (i.e. optimal spraying method and its expected delay) hold for Spray and Focus, as well. However, the delay of the two protocols does differ in the second phase. In the focus phase each copy follows a single-copy utility-based algorithm, instead. Utility-based schemes have memory, making it quite more involved to calculate their delay. Although we have calculated the expected delay for a simple utility function in Chapter 5, we don’t know if the distribution of this delay is exponential, as in the case of Direct Transmission. In addition, the routing of multiple copies won’t be independent. Hence, we don’t expect something as simple as Lemma 6.2 to hold for Spray and Focus. As part of future work we plan to look into the difficult problem of calculating the delay of the focus phase of Spray and Focus, or at least to come up with useful approximations. 6.3.2 Simulation vs. analysis In Figure 6.3 we compare theoretical and simulation results for Optimal Spray and Wait. We fix N to 2500, M to 30, and K to 0 (i.e. only nodes in the same position can communicate), and depict delay as a function of the number of copies spread L.Asone 163 Spray and Wait Delay (N = 2500, M = 30) 0 500 1000 1500 2000 2500 3000 3500 1 2 34 56 7 8 L (# of copies) time units spray and wait (bound) spray and wait(sim) spray and wait (analysis) optimal direct transmission Spray and Wait Delay (N = 2500, M = 30) 0 500 1000 1500 2000 2500 3000 3500 1 2 34 56 7 8 L (# of copies) time units spray and wait (bound) spray and wait(sim) spray and wait (analysis) optimal direct transmission Figure 6.3: Comparison of analytical and simulation results for Spray and Wait. can see from this figure, simulation and analytical plots for Spray and Wait present a very close match, too. Additionally, it is evident that the upper bound from Eq.(6.2) is tight for low L/M ratios. Finally, one can see that Spray and Wait can achieve a delay only 1.5−2 times that of the optimal scheme, using just a handful of transmissions (Epidemic Routing performs at least Θ(M) transmissions). 6.4 Optimizing Spray and Wait to Meet Desired Performance Constraints By definition, most ICMN networks are expected to operate in stressed environments and by nature be delay tolerant. Nevertheless, in many situations the network designer or the application itself might still impose certain performance requirements on the protocols 164 (e.g. maximum delay, maximum energy consumption, etc.). It is of special interest there- fore to examine how Spray and Wait can be tuned to achieve the desired performance in a specific scenario. 6.4.1 Choosing L to achieve a required expected delay In this section we analyze how to choose L (i.e. the number of copies used) in order for Spray and Wait to achieve a specific expected delay. Note that the issue of energy dissipation and asymptotic throughput is also directly tied to the number of copies L used by Spray and Wait, since Spray and Wait performs exactly L transmissions. Let us assume that there is a specific delivery delay constraint to be met. It is reasonable to assume that this delay constraint is expressed as a factor a times the optimal delay ED opt (a> 1), since this is the best that any routing protocol can do. The following lemma states that the required number of copies only depends on the number of nodes, and is straightforward to prove from Eq.(6.2) or Theorem 6.5. Lemma 6.7 The minimum number of copies L min needed for Spray and Wait to achieve an expected delay at most aED opt (a> 1) is independent of the size of the network N and transmission range K, and only depends on a and the number of nodes M. The required number of copies L min (M) for Spray and Wait to achieve a desired expected delay can be calculated in any of the following three ways: (i) solve the system of equations of Theorem 6.5 for increasing L,until ED sw(opt) < aED opt ; 165 Table 6.1: Minimum L to Achieve Expected Delay aED opt a 1.5 2 3 4 5 6 7 8 9 10 recursion 21 13 8 6 5 4 3 3 3 2 bound N.A. N.A. 11 7 6 5 4 3 3 2 taylor N.A. N.A. 10 7 5 4 3 3 3 2 (ii) solve the upper bound equation Eq.(6.2) for L, by letting ED sw = aED opt ,and taking L; (iii) approximate the harmonic number H M−L in Eq.(6.2) with its Taylor Series terms up to second order, and solve the resulting third degree polynomial: (H 3 M − 1.2)L 3 +(H 2 M − π 2 6 )L 2 + a + 2M − 1 M(M − 1) L = M M − 1 , where H r n = n i=1 1 i r is the n th Harmonic number of order r. Method (i) is obviously the most accurate one. However, it is also the most cum- bersome. Since the upper bound of Eq.(6.2) is tight for small L/M values, if the delay constraint a is not too tight, we can use method (ii) or (iii) to quickly get a good estimate for L min . In Table 6.1 we compare results for L min , as calculated with each of these three methods for different values of a. We assume the number of nodes M equals 100. ‘N.A’ stand for ‘Non Available’ and means that such a low delay value is never achievable by the bound. As can be seen in this table the L found through the approximation is quite accurate when the delay constraint is not too stringent. 166 6.4.2 Estimating L when network parameters are unknown Throughout the previous analysis we’ve assumed that network parameters, like the total number of nodes M and size of the network N, are known. This assumption might be valid in some networks operated by a single authority. Nevertheless, in many envisioned ICMN applications, either or both M and N, might be unknown. For example, a user that uses his PDA to exchange text messages over a low cost ICMN network formed by similar users, may not know the number of other such users out there, or their geographical spread. In order to make Spray and Wait equally efficient in such scenarios as well, we would like to produce and maintain good estimates of necessary network parameters, in this case M, and adapt L accordingly. This problem is difficult in general. A straightforward way to estimate M would be to count unique IDs of nodes encountered already. However, this method requires a large database of node IDs to be maintained in large networks, and a lookup operation to be performed every time any node is encountered. Furthermore, although this method converges eventually, its speed depends on network size and could take a very long time in large disconnected networks. However, if we assume that nodes perform independent random walks, we can produce an estimate of M by taking advantage of inter-meeting time statistics. Specifically, let us define T 1 as the time until a node (starting from the sta- tionary distribution) encounters any other node. It is easy to see from the independence of meeting times that T 1 is exponentially distributed with average T 1 = ED dt /(M − 1). 167 Furthermore, if we similarly define T 2 as the time until two different nodes are encoun- tered, then the expected value of T 2 equals ED dt 1 M−1 + 1 M−2 . Cancelling ED dt from these two equations we get the following estimate for M: ˆ M = 2T 2 − 3T 1 T 2 − 2T 1 . (6.3) Estimating M by the procedure above presents some challenges in practice, because T 1 and T 2 are ensemble averages. Since hitting times are ergodic [1], a node can collect sample intermeeting times T 1,k and T 2,k and calculate time averages ˆ T 1 and ˆ T 2 instead. However, the following complication arises: when a random walk i meets another random walk j, i and j become coupled [35]; in other words, the next meeting time of i and j is not anymore exponentially distributed with average ED dt . In order to overcome this problem, each node keeps a record of all nodes with which it is coupled. Every time a new node is encountered, it is stamped as “coupled” for an amount of time equal to the mixing or relaxation time for that graph, which is the expected time until a walk starting from a given position arrives (close enough) to its stationary distribution [1]. Then, when node i measures the next sample intermeeting time, it ignores all nodes that it’s coupled with at the moment, denoted as c k , and scales the collected sample T 1,k by M−c k M−1 . A similar procedure is followed for ˆ T 2 . Putting it altogether, after n samples have been collected: ˆ T 1 = 1 n n k=1 M − c k M − 1 T 1,k , ˆ T 2 = 1 n n k=1 M − c k−1 M − 1 T 1,k−1 + M − c k M − 2 T 1,k . 168 Replacing ˆ T 1 and ˆ T 2 in Eq.(6.3) we get a current estimate of M. As can be seen by Eq.(6.3), the estimator for M is sensitive to small deviations of T 1 and T 2 from their actual values. Therefore it is useful for a node to also maintain a running average of M. Specifically, the running estimate ˆ M is updated with every new estimate ˆ M new as ˆ M = a ˆ M +(1− a) ˆ M new (0 0, v max <∞ and average speed v. (e) At the end of each epoch a node pauses for a random amount of time chosen from [0,T max ], with average pause time T stop . (f) The expected duration of an epoch (without the pause time) is denoted as T. 185 Table 7.1: Notation ET mm expected hitting time under “MM” EM mm expected meeting time under “MM” N size of network area K transmission range L expected epoch length v average node speed T stop average pause time after an epoch T expected epoch duration ˆ v mm normalized relative speed under “MM” (g) Let → v i denote the velocity of node i and v mm = → v i − → v j be the mean relative speed between two nodes i and j when both are moving according to mobility model MM. Then we define the normalized relative speed ˆ v mm as ˆ v mm = v mm v . The following formally defines hitting and meeting times. Definition 7.1 (Hitting and Meeting Time) Let a node i move according to mobility process “MM”, and starting from its stationary distribution at time 0. Then, i. If j is a static node with uniformly chosen X j , then the expected hitting time under mobility model MM is ET mm = min t {t :X i (t)− X j ≤ K}. ii. If j is a mobile node also starting from its stationary distribution, then the expected meeting time between the two nodes is EM mm = min t {t :X i (t)− X j (t)≤ K}. Table 7.1 summarizes our notation. We first analyze the hitting and meeting time for the Random Direction model. Al- though the Random Waypoint model was proposed first, it was quickly recognized that it results in a non-uniform stationary node distribution. This not only complicates analysis, as we shall see later, but was also in discord with the common assumption of uniformity 186 made in many studies. To overcome this, the Random Direction model was proposed, which induces a uniform stationary node distribution [12], and makes it less difficult to analyze. 7.3.1 Random Direction mobility model Definition 7.2 (Random Direction) In the Random Direction (RD) model each node moves as follows: 1. choose a direction θ uniformly in [0, 2π); 2. choose a speed according to assumption (d); 3. choose a duration T of movement from an exponential distribution with average L v ; 4. move towards θ with the chosen speed for T time units; If the network boundary is reached either reflect back or re-enter from the opposite side of the network (torus); 5. after T time units pause according to assumption (e) and go to step 1; The following two Theorems calculate the expected hitting and meeting times for the Random Direction model. Our methodology is based on calculating the expected number of epochs until a static or mobile destination, respectively, is encountered. Theorem 7.3 The expected time ET rd for the Random Direction model is given by: ET rd = N 2KL L v + T stop . (7.1) Proof.Letanode A perform RD movement, starting from its stationary distribution. A’s movement consists of a sequence of randomly and independently chosen epochs. Let 187 further a second node B be static with uniformly chosen position, and let us calculate the probability that node A encounters node B during a given epoch i of length L i . This epoch will “cover” an area of size 2KL i .If B lies anywhere within this area, then A “hits” B during this specific epoch. Furthermore, it is easy to see by the definition of the RD model, that the specific area of the network an epoch will cover is uniformly distributed around the whole network 1 . Hence, the probability p i of an epoch of length L i hitting B is equal to p i = 2KL i N . Let us now denote as N hit the number of epochs until A hits B,and P(N hit >n) the probability that B has not been encountered after n epochs. Let further L 1 ,L 2 ,...,L n denote the random sequence of lengths of these first n epochs, with joint probability density function equal to f L (l 1 ,l 2 ,...,l n ). Then: P(N hit >n)= ··· (1− p 1 )...(1− p n )f L (l 1 ,...,l n )dl 1 ...dl n . The lengths L i of different epochs are independent and distributed exponentially with average L. Although consecutive epochs are not independent (the end of one epoch is the beginning of the next one), the random process describing the lengths and end-points of the sequence of epochs drawn is ergodic [13]. Thus, we can use the statistics of a single epoch to describe the whole process, as if the epochs were drawn independently (the 1 This is where the uniform node distribution in the RD model arises from. 188 argument is similar to the one made for RWP in [13]). In other words, f L (l 1 ,l 2 ,...,l n )= f L (l 1 )f L (l 2 )...f L (l n ), and P(N hit >n)= 1− 2Kl N f L (l)dl n = 1− 2KL N n . Consequently, the number of epochs needed till A hits B is geometrically distributed with average N 2KL . Finally, the expected duration of each epoch is equal T + T stop (see assumptions (e),(f)), where T = L v in the case of Random Direction. Theorem 7.4 The expected meeting time EM rd for the Random Direction model is given by EM rd = ET rd p m ˆ v rd +2(1− p m ) , (7.2) where ˆ v rd ≈ 1.27 is the normalized relative speed for RD, and p m = T T+T stop is the probability that a node is moving at any time. Proof. Let us first assume again that only one of the two nodes, let A, performs RD movement, while the second one, let B, is static. We will re-calculate the expected hitting time of Theorem 7.3 in a slightly different manner. Let’s assume that node A performs RD movement in discrete steps of unit size, and let p m denote the probability that A is moving at any of these steps. Then, with probability p m any given step covers on average a new area of size 2Kv, and with probability 1−p m it stands still and covers no new area. 189 Thus, on average, each node step covers an area of p m 2Kv, and the expected number of steps until the destination is found is equal to ET rd = N p m 2Kv . Note that this method of calculating the hitting time is equivalent to that of Thoerem 7.3, i.e. ET rd = ET rd 2 . Now, to calculate the meeting time, we need to take into account that both A and B move concurrently. It is known that, for generic random walks on graphs the meeting time between two walks is 1 2 the respective hitting time of a single walk on the same graph [1]. This holds, because the movements at consecutive steps are independent of each other. However, in the RD model a node keeps moving in the same direction for the duration of an epoch. Movement at consecutive steps is dependent, so the denominator is expected to be smaller than 2. We thus need to calculate the expected relative speed → v A − → v B between A and B. Due to the uniform choice of direction at every epoch, and the toroidal structure of the network, we can assume without loss of generality that the direction of → v A is fixed. Then, → v A − → v B = v 2π 2π 0 (1 + cosθ) 2 +sin 2 (θ)dθ, which is equal to 1.27v, where ˆ v rd = → v A − → v B v =1.27 is the normalized relative speed for RD. 2 One can see this by replacing p m with its value T T+T stop , which then gives the expected hitting time in the familiar form of N 2KL L v +T stop . 190 Meeting Times (Random Direction) 0 2000 4000 6000 8000 10000 12000 10 20 30 40 50 60 70 Tx Range time units 500x500 (sim) 500x500 (theory) 300x300 (sim) 300x300 (theory) Hitting Time (Random Direction) 0 2000 4000 6000 8000 10000 12000 14000 10 20 30 40 50 60 70 Tx Range time units 500x500 (sim) 500x500 (theory) 300x300 (sim) 300x300 (theory) Figure 7.1: Comparison of theoretical and simulations results under the Random Direc- tion model (0 pause time). ˆ v rd v =1.27v is the relative speed between the nodes when both nodes are moving, which occurs with probability p 2 m . However, with probability 2p m (1− p m ) only one of the node moves with relative speed v, and with probability (1− p m ) 2 none of the nodes is moving. Consequently, the expected number of steps until the two walks meet equals EM rd = N 2K(p 2 m ˆ v rd v+2p m (1− p m )v) = ET rd p m ˆ v rd +2(1− p m ) . Figure 7.1 compares analytical and simulation results for the expected hitting and meeting times, under the Random Direction model. (Note that in this and all other plots throughout we normalize average speed to v =1.) 7.3.2 Random Waypoint mobility model In the original Random Waypoint mobility model (RWP) [16] a node chooses a point in the network uniformly and moves toward it with some speed. When it reaches that point 191 it pauses for a random amount of time, chooses another point in the network uniformly, and so on and so forth: Definition 7.5 (Random Waypoint) A node moving according to the RWP model performs the following steps: 1. choose a point (“waypoint”) X in the network uniformly, 2. move toward X with random speed chosen according to assumption (d), 3. when at X, pause a random amount of time according to assumption (e), and go to step 1. The stochastic properties of RWP have been extensively studied, as we mentioned earlier. In the following Lemma, we summarize some of these properties, derived in [13], which we use in our analysis. Lemma 7.6 Let a node move according to RWP, and let f(x, y) denote the probability density function that a node is found at position (x, y) in the network. Then: • The expected epoch length L can be derived in closed form (see [13]); for example, in a √ N × √ N square, L=0.5214 √ N; • The stationary pdf f(x, y) on a √ N× √ N square area is non-uniform, and can be approximated by f(x, y)≈ 36 N 3 x 2 − N 4 y 2 − N 4 . (7.3) A better, yet more convoluted approximation can be found in [14]; 192 • The expected direction chosen at the beginning of an epoch is not uniform, but has a strong bias towards the center; Specifically, if θ is the angle measured from the direction pointing to the center of the network (θ =0), then the pdf f Θ (θ) is given by f Θ (θ)= 1 4π| sin 3 θ| [| sinθ|(−2cos 4 θ−2cos 3 θ| cos θ| +cos 2 θ+cos θ| cos θ| + 1) + arcsin(| sin θ|)cos θ]. An interesting property of the RWP model is that nodes tend to move and slowly concentrate towards the center. This introduces complications in the analysis, since the common assumption of uniform node distribution does not hold. For this reason, hitting and meeting times under RWP mobility have not been widely studied. To the best of our knowledge, the only related effort in that direction is that of [90]. There, the authors come up with upper and lower bounds for the hitting time, and then derive an asymptotic expression based on these bounds. Here, we derive an accurate closed form expression. Theorem 7.7 Let f(x, y) denote the stationary probability density function of the po- sition (x, y) of a node that performs RWP movement. Then, the expected hitting time ET rwp under RWP mobility is given by: ET rwp = ⎛ ⎜ ⎝ U 1 f(x,y) dxdy 2KNL ⎞ ⎟ ⎠ T + T stop ! . (7.4) Proof. See Appendix D. 193 As can be seen by the above Theorem, calculating the hitting time under RWP move- ment introduces an integral involving the stationary pdf for RWP, whose exact value is not known [13]. Furthermore, the solution of the integral raises convergence issues, due to 1 f(x,y) →∞ at the edges of the network, and may not be calculable in closed form. The following Corollary of Theorem 7.7 uses the approximate expression of Eq.(7.3) for f(x, y) and takes care of the edge phenomena to provide an approximate yet very accurate closed form expression for the hitting time. Corollary 7.8 The expected hitting time under the Random Waypoint model can be ap- proximated by the following expression: ET rwp ≈ g(N,K) 2KNL T + T stop ! , (7.5) where g(N,K)= N 3 2 +2(K− √ N)N tanh −1 (1− 2K √ N ) 2 9(K− √ N) 2 . Proof. See Appendix D. Despite the inherent difficulty in calculating the hitting time for this model, things become simpler when the destination performs RWP movement, as well. The position of B is not uniform anymore, but is rather distributed according to f(x, y). This, as we shall see, makes the meeting time expression independent of f(x, y). In the following Theorem we derive the expected meeting time between two mobile nodes under RWP movement. Theorem 7.9 The expected meeting time EM rwp under Random Waypoint mobility is given by: EM rwp = 1 p m ˆ v rwp +2(1− p m ) N 2KL T + T stop ! , (7.6) 194 Meeting Time (Random Waypoint) 0 1000 2000 3000 4000 5000 6000 7000 8000 10 20 30 40 50 60 70 Tx Range time units 500x500 (sim) 500x500 (theory) 300x300 (sim) 300x300 (theory) Hitting Time (Random Waypoint) 0 5000 10000 15000 20000 25000 30000 35000 40000 10 20 30 40 50 60 70 Tx Range time units 500x500 (sim) 500x500 (theory) 300x300 (sim) 300x300 (theory) Figure 7.2: Comparison of theoretical and simulations results under the Random Way- point model. where ˆ v rwp ≈ 1.75 is the normalized relative speed for RWP, and p m = T T+T stop is the probability that a node is moving at any time. Proof. See Appendix D. In Figure 7.2 we evaluate our analytical results regarding the expected hitting and meeting time for the Random Waypoint model against simulation results. As can be seen there both expressions have a very good match with simulation results. The minor discrepancy in hitting time for very small transmission ranges is due to an approximation we make in the proof to account for edge phenomena (see proof of Corollary 7.8 in Appendix D). 7.3.3 Community-based mobility model In order to have a mobility model that better resembles real node movement, yet is still analytically tractable, we propose the “Community-based Mobility Model”. This model consist of two states/phases, namely “local” state and “roaming” state, between which it alternates: 195 Definition 7.10 (Community-based Model) Nodes move inside the network as fol- lows: • each node i has a local community C i of size C i = c 2 N,c ∈ (0, 1]; a node’s movement consists of a sequence of local and roaming epochs. • a local epoch is a Random Direction movement restricted inside area C i with av- erage epoch length L c equal to the expected distance between two points uniformly chosen in C i . • a roaming epoch is a Random Direction movement inside the entire network with expected length L. • (local state L) if the previous epoch of node i was a local one, the next epoch is a local one with probability p (i) l , or a roaming epoch with probability 1− p (i) l . • (roaming state R) if the previous epoch of node i was a roaming one, the next epoch is a roaming one with probability p (i) r , or a local one with probability 1− p (i) r . The Community-based mobility model can be represented by the simple two-state Markov Chain depicted in Figure 7.3. (Note that each node could also perform Random Waypoint movement during each of these states, instead of Random Direction.) In [69] a mobility model where each node has its own community to which it may move prefer- entially is also proposed. However, here each node may also have different p (i) r and p (i) l parameters capturing different mobility characteristics of different nodes. Furthermore, unlike [69], different nodes may have communities of very different sizes. These together allow for a much larger range of node heterogeneity to be captured. 196 Table 7.2: Additional Notation for Section 7.3.3 C i community of node i: C i = c 2 N,c∈ (0, 1] p (i) l probability that next epoch is local, given that previous epoch was local p (i) r probability that next epoch is roaming, given that previous epoch was roaming π (i) l probability that a given epoch is a local one π (i) r probability that a given epoch is a roaming one L c expected length of local epoch T l stop expected pause time for a local epoch T l expected local epoch duration (L c /v + T l stop ) T r expected roaming epoch duration (L/v + T stop ) L R p l p r 1-p l 1-p r L R p l p r 1-p l 1-p r Figure 7.3: Community-based Mobility Model Let us denote as π (i) l and π (i) r the probability that a given epoch of node i is a local or a roaming one, respectively. Then, from elementary Markov chain theory we get that π (i) l = 1− p (i) r 2− p (i) l − p (i) r and π (i) r = 1− p (i) l 2− p (i) l − p (i) r . Table 7.2 summarizes some additional notation related to the community model. 197 7.3.3.1 Hitting times under homogeneous mobility We will first calculate the expected hitting and meeting times when each node i has its own community C i yet all nodes have the same mobility characteristics, that is, p (i) l = p l and p (i) r = p r , ∀i. We deal with heterogeneous mobility in the next section. Let’s assume that a node A with community C A moves according to the Community- based model, until it encounters a node B that is static with uniformly chosen position. If B’s position is outside C A , then A can only encounter B duringaroamingepoch. Otherwise, if B lies inside C A , A is expected to encounter B much faster, since it tends to move preferentially inside C A . The following two Lemmas calculate the expected hitting time for each of these two subcases. Lemma 7.11 Let a node A move according to the Community based Random Direction model. Let further B denote a second, static node, whose position is uniformly distributed outside A’s community C A . Then, the expected hitting time ET (out) comm until A encounters B, is given by: ET (out) comm = ET rd + 1− p r 1− p l N 2KL T l . (7.7) Proof.Let N l and N r denote the number of times A visits the local state (L) and roaming state (R), respectively, before it finds B. Furthermore, let N hit = N l +N r denote the total number of epochs of any kind. Then, according to the law of large numbers, when N hit →∞, N l → π l N hit and N r → π r N hit . 198 Since B does not lie inside A’s community, B can only be encountered while A is in the roaming state 3 . The expected number of roaming epochs needed until such a destination is met was found in Theorem 7.3, to be equal to 2KL N . This implies that A visits state RE[N r ]= 2KL N number of times, before it meets B. The sum of the duration of these epochs is equal to ET rd . Additionally, according to the previous argument based on the law of large numbers, A also visits state L on average E[N l ]= π l π r E[N r ]= 1− p r 1− p l E[N r ] times, before it meets B (given that A starts from its stationary distribution). The average time spent at state L every time it is visited is equal to L c v + T l stop . Putting everything together gives us Eq.(7.7). Lemma 7.12 Let a node A move according to the Community based Random Direction model. Let further B denote a second, static node, whose position is uniformly distributed inside A’s community C A . Then, the expected hitting time ET (in) comm until A encounters B, is given by: ET (in) comm ≈ 1 1− (1− p l hit ) π l (1− p r hit ) π r (π l T l + π r T r ), (7.8) where p r hit = 2KL N and p l hit = p r hit c . 3 we assume that the transmission range K of nodes is much smaller than the total network area N, and thus the probability thatB is near the edge ofC A andthuscanbeencounteredevenwhileAisinside its community goes to 0 as N→∞. 199 Proof. Let us count the number of steps in the Markov chain corresponding to the community model until B is found. Let further N l and N r denote again the number of local and roaming epochs elapsed, respectively, before B is encountered, and let N hit = N l + N r denote the total number of epochs. Then, the probability P(N l ,N r ) that at least N l local and N r roaming epochs elapse before B is found is equal to P(N l ,N r )= (1− p l hit ) N l (1− p r hit ) N r . Furthermore, according to the law of large numbers: lim N hit →∞ P(N l ,N r )= P(N hit >n)=(1− p l hit ) π l n (1− p r hit ) π rn . This implies that the probability distribution of the total number of epochs N hit (local or roaming) has a geometric tail with parameter p hit =1− (1− p l hit ) π l (1− p r hit ) π r . Consequently, when the average number of epochs necessary to find B is not too small, we can approximate the pdf of the total epochs with a geometric distribution with the above parameter p hit . For this to occur we require that the transmission range is much smaller than the network dimensions, which is the case indeed in most situations of interest (i.e. when mobility is required to deliver a message). In this case, the expected number of epochs until B is encountered EN hit is equal to 1 p hit . Finally, each of these epochs is a local one with probability π l or a roaming one with probability π r , and with duration T l and T r , respectively. 200 We can now go ahead and calculate the hitting time for the case where the destina- tion’s position is uniformly chosen over the entire network area. Theorem 7.13 The expected hitting time ET comm under the Community-based Mobility Model is given by: ET comm =(1− c 2 )ET (out) comm + c 2 ET (in) comm . (7.9) Proof. With probability U−c 2 U U =1− c 2 B’s position is outside A’s community C A . In that case, B can only be encountered during a roaming phase, and the expected time until this occurs is given is ET (out) comm (Lemma 7.11). Similarly, with probability c 2 B lies inside C A , in which case the expected hitting time is given by Lemma 7.12. Finally, Theorem 7.14 gives the expected meeting time when both nodes are moving. Theorem 7.14 The expected meeting time EM comm under the Community-based Ran- dom Direction model is given by: EM comm = ET comm p c m ˆ v rd +2(1− p c m ) , (7.10) where p c m = (1−p r)L c/v+(1−p l )L/v (1−p r)T l +(1−p l )T r is the probability that a node is moving at any time. Proof. See Appendix D. So far we have assumed that the community of each node could be quite large, covering a considerable chunk of the network area. This might be the case for example when the community is a department building in a small college campus network, which implies that two nodes have a good chance of sharing the same community. However, in many real-life situations, each node tends to move most of the time in a very small area that’s different 201 for each node (e.g. at home), and that could be entirely covered by the node’s antenna, while the network might be much larger (e.g. a city-wide wireless Metropolitan Area Network). In such situations, the probability that two nodes share the same community can be neglected. The following Corollary of Theorem 7.14 calculates the meeting time for the special case of small communities. Corollary 7.15 (Small Community) When the community size of nodes is much smaller than the network area (C i N), the expected meeting time EM (small) comm under the Community-based Random Direction model is given by: EM (small) comm = ET rd + 1−p r 1−p l N 2KL T l stop p c m ˆ v rd +2(1− p c m ) , (7.11) where p c m = (1−p l )L/v (1−p r)T l stop +(1−p l )T r . Proof. Eq.(7.11) follows easily from Eq.(7.10),(7.9), and (7.7) by replacing c≈0and T l ≈ T l stop . Figure 7.4 compares analytical and simulation results for the expected hitting time under the Community-based Random Direction model, for small and large communities (for the large community case all pause times are zero and P l =0.9,P r =0.5). As can be seen there theory matches simulations quite closely. We have also observed similar accuracy for the respective meeting time results. 202 Comm-based RD (500x500 - small community) 0 5000 10000 15000 20000 25000 30000 35000 10 20 30 40 50 60 70 Tx Range Hitting Time (time units) Pl = 0.8, Pr = 0.5, Tl = 150 (sim) Pl = 0.8, Pr = 0.5, Tl = 150 (theory) Pl = 0.8,Pr = 0.8, Tl = 150 (sim) Pl = 0.8,Pr = 0.8, Tl = 150 (theory) Pl = 0.5,Pr = 0.5, Tl = 50 (sim) Pl = 0.5,Pr = 0.5, Tl = 50 (theory) RD - no community (sim) RD - no community (theory) Community-Based RD (500x500 - large community) 0 5000 10000 15000 20000 25000 30000 35000 10 20 30 40 50 60 70 Tx Range Hitting Time (time units) c = 0.2 (sim) c = 0.2 (theory) c = 0.5 (sim) c = 0.5 (theory) Figure 7.4: Hitting Times under the Community-based RD model for small (left) and large (right) communities. 7.3.3.2 Hitting time for heterogeneous nodes In the following theorem we calculate the expected meeting time in a heterogeneous community model, where each node (i) has its own community, and (ii) has its own mobility parameters. This is a model where nodes do not move in an identical manner. Theorem 7.16 Let two nodes A and B move according to the Community-based Random Direction, each with its own community C i and model parameters (p (i) l ,p (i) r ), i∈{A, B}. Let further ET comm (i→ j) denote the expected hitting time under the Community-based model for the case where only node i is mobile and j is static. Then the expected meeting time EM (h) comm between A and B is given by EM (h) comm = ET comm (A→ B) p (B) m ˆ v rd +(1− p (B) m )+ p (B) m p (A) m (1− p (A) m ) (7.12) = ET comm (B → A) p (A) m ˆ v rd +(1− p (A) m )+ p (A) m p (B) m (1− p (B) m ) , (7.13) p i m = (1−p (i) r )L c/v+(1−p (i) l )L/v (1−p (i) r )T l +(1−p (i) l )T r . 203 Proof. See Appendix D. It is important to note that Theorem 7.16 can be generalized to capture heterogene- ity in any of the previous models discussed. For example, let two nodes A and B move according to any waypoint-based mobility model MM, but with different mobility char- acteristics (e.g. RWP movement with different pause time or different average speed), and let E A T (mm) B and denote the respective hitting times from A to B, under the given mo- bility model. Then the expected meeting time EM (mm) between the two non-identically moving nodes is given by EM (mm) = E A T (MM) B p (B) m ˆ v mm +(1− p (B) m )+ p (B) m p (A) m (1− p (A) m ) , where p A m and p B m denote the probabilities that nodes A and B, respectively, are moving at any given time instant. We have validated the above analytical expressions against simulations, as well, and have observed similar good accuracy. 7.4 Delay of Mobility-assisted Routing In this section, we will look into how our results regarding the encounter times can be integrated with a general theoretical framework that can be used to analyze the perfor- mance of mobility-assisted routing. Our goal is to demonstrate that our meeting time results can be easily plugged into generic equations regarding the delay of different routing schemes, and derive performance results for a specific mobility model without resorting to simulations or curve fitting. 204 7.4.1 Upper and lower bounds on delay The meeting time for a given mobility model corresponds to the expected delay of the simplest mobility-assisted routing scheme, namely Direct Transmission. In Direct Trans- mission, the source of a message holds on to it until it comes within range of the destina- tion itself. This scheme has the largest expected delay among all possible encounter-based schemes (that are non-adversarial). Consequently, the meeting times derived in the pre- vious section for a given mobility model constitute an upper bound on the delay of any mobility-assisted scheme under this model. Additionally, the algorithm that minimizes the expected delivery delay is an “oracle- based” algorithm. It is aware of all future movement of nodes and computes the optimal set of forwarding decisions (i.e. time and next hop), which delivers a message to its destination in the minimum amount of time. This algorithm cannot be implemented in reality. However, we can use its delay as a lower bound on the performance of all routing strategies. Note also that, under the assumption of no contention (i.e. infinite buffer capacity and bandwidth), an algorithm called epidemic routing will find the same paths as the oracle-based scheme, and thus achieve this minimum expected delay. In epidemic routing, whenever a node encounters another one, they exchange all messages that they don’t have in common [109]. This algorithm is essentially flooding in this context, and its properties have been widely studied [99, 94, 89, 86, 121]. The following Lemma bounds the expected delay of any mobility-assisted routing scheme, under a given mobility model (proofs can be found in any of the above papers). 205 Lemma 7.17 Let M nodes move according to a given mobility model with exponentially distributed meeting times. Then, the expected message delivery time of any routing algo- rithm ED is H M−1 (M − 1) EM mm ≤ ED≤ EM mm (7.14) where H n is the n th Harmonic Number, i.e, H n = n i=1 1 i =Θ(log n). Lemma 7.17 implies that we can replace the values we calculated for the meeting times under different mobility models in Eq.(7.14) and derive closed-form expressions for the best-case and worst-case delays of any mobility-assisted scheme, under the given mobility model 4 . To the best of our knowledge, this has only been performed for the case of Random Walk mobility [99]. For other mobility models (e.g. Random Waypoint, etc.) no such closed form expressions exist. Instead, simulations are run for a specific set of network parameters to estimate EM mm directly or by fitting the theoretical curves to the simulation ones. In Figure 7.5 we compare our analytical results, based on Lemma 7.17 and the ex- pressions derived in Section 7.3, to simulation results, for the Random Direction model (0 pause times). Figure 7.6 does the same for the Community-based Random Direction model (p l =0.8, p roam =0.5, T stop =0, T l stop = 150) with small communities. As can be seen by both plots, our theoretical results for the optimal delay match very closely with simulations results. (We have observed similar good accuracy for the respective Random 4 In the case of Community-based mobility with large communities Eq.(7.14) has to be slightly modified; However, the resulting expression is more convoluted without providing much additional insight, so we choose to omit it. 206 Mobility-assisted Routing Delay (Random Direction) 0 2000 4000 6000 8000 10000 300^ 2 400^ 2 500^ 2 600^ 2 700^ 2 800^ 2 Network Size (N) time units direct (sim) direct (theory) optimal (sim) optimal (theory) upper bound lower bound any routing scheme Mobility-assisted Routing Delay (Random Direction) 0 2000 4000 6000 8000 10000 300^ 2 400^ 2 500^ 2 600^ 2 700^ 2 800^ 2 Network Size (N) time units direct (sim) direct (theory) optimal (sim) optimal (theory) upper bound lower bound any routing scheme Figure 7.5: Upper and lower bounds on the delay of any mobility-assisted routing scheme under Random Direction mobility. Mobility-assisted Routing Delay (Community-based Model) 0 2000 4000 6000 8000 10000 12000 14000 300^ 2 400^ 2 500^ 2 600^ 2 700^ 2 800^ 2 Network Size (N) time units direct (sim) direct (theory) optimal (sim) optimal (theory) upper bound lower bound any routing scheme Mobility-assisted Routing Delay (Community-based Model) 0 2000 4000 6000 8000 10000 12000 14000 300^ 2 400^ 2 500^ 2 600^ 2 700^ 2 800^ 2 Network Size (N) time units direct (sim) direct (theory) optimal (sim) optimal (theory) upper bound lower bound any routing scheme Figure 7.6: Upper and lower bounds on the delay of any mobility-assisted routing scheme under Community-Based mobility. 207 Waypoint results, so we do not include plots for it.) This implies not only that our meet- ing time expressions for different mobility models are accurate, but that derivative delay expressions based on these meeting times, and pertaining to the delay of more complicated mobility-assisted routing schemes are also accurate. 7.4.2 Delay of other routing schemes In this section, we’re going to look into a couple of examples of mobility-assisted routing scheme, namely a single-copy (i.e. only one copy of each message is routed) and a multiple- copy one (i.e. more than one copies of the same message are routed in parallel). We first look into a multiple copy scheme, where the source of a message distributes only a fixed number of copies L, one to each of the first L distinct relays it encounters. Although a number of different names have been used for variants of this scheme (one of which is our scheme, Spray and Wait), we’ll refer to it here simply as the L-copy scheme. This scheme has been found to achieve delays comparable to the optimal scheme, without the overhead of transmitting a copy to every node in the network. Different approximations and bounds for its delay have been calculated (e.g. [98, 94, 89]). Lemma 7.18 adapts the recursive method proposed in Theorem 6.5 for Random Walk mobility, to calculate the delay of the L-copy scheme for any mobility model. Lemma 7.18 Let ED mm L denote the expected delay of the L-copy scheme, under mobility model “MM”. Let further ED(i) denote the expected remaining delay for this scheme, after i message copies have been distributed. Then, ED mm L can be calculated by the following system of recursive equations, where ED mm L ≡ ED(1): 208 ED(i)= EM mm M − 1 + M − i M − 1 ED(i+1),i∈ [1,L− 1], ED(L)= EM mm L . (7.15) Next, we analyze the expected delay for a scheme that uses only a single copy per message, namely Randomized Routing (see Section 5.3 for details). Definition 7.19 (Randomized Routing) In the Randomized Routing algorithm, a node A hands over a message to another node B it encounters with probability p> 0. Randomized routing could be thought of as Direct Transmission, with the difference that a message may occasionally jump to a new relay, whenever such an appropriate relay is encounter. This and other similar single-copy schemes that occasionally handover the message to a new relay based on some criteria can be analyzed using the methodology of Theorem 7.4. We only present results for the delay of Randomized Routing under RD mobility and we omit the proof. Similar results can be derived for the rest of the mobility models, as well. Lemma 7.20 Let M nodes perform Random Direction mobility, and let v rd denote the average relative speed between two nodes. Let further a node A have a message to deliver to another node B. Then, the expected time ED rand until the message is delivered to B using Randomized routing with probability p is given by: ED rand = N 2K (1− pp tx )v rd + pp tx 2 3 K , (7.16) 209 Delay of Randomized Routing (Random Direction - 300x300, 30 nodes) 0 500 1000 1500 2000 2500 3000 3500 4000 10 20 30 40 Tx Range time units sim theory Delay of L-Copy Scheme (Random direction, 500x500, 30 nodes) 0 200 400 600 800 1000 1200 1400 1600 1800 246 8 10 Number of Copies (L) time units sim theory Figure 7.7: Simulation and analytical results for the expected delay of Randomized and L-copy routing schemes. where p tx =1− 1− πK 2 N M−1 is the probability that at least one node is within range of the current message relay at any time, and v rd = p 2 m ˆ v rd v+2p m (1− p m )v. Figure 7.7 compares analytical and simulation results for the expected delay of Ran- domized routing with p = 1 (left plot) and the L-copy scheme (right plot), under Random Direction mobility with 0 pause times. 7.5 Conclusions In this last chapter, we have analyzed the encounter statistics for some commonly used mobility models. We have derived accurate closed form solutions for all the respective hitting and meeting times between different nodes. Additionally, we have proposed a mobility model that is rich enough to capture real-world mobility characteristics more accurately than many existing models, and have calculated various hitting time results for it, as well. Finally, we have demonstrated how these results can be used in a more general framework to analyze the delay of different mobility-assisted routing schemes, that is, schemes that require the node to carry a message for (potentially long) periods 210 of time. Such schemes have been recently recognized to be very helpful in improving the performance of regular wireless networks or to enable data delivery in networks that are disconnected for the majority of time. We believe that this work can help in better under- standing the particular advantages and shortcomings of various approaches in different settings, and can facilitate the design of new, improved protocols. 211 Bibliography [1] D. Aldous and J. Fill. Reversible markov chains and random walks on graphs. http://stat-www.berkeley.edu/users/aldous/RWG/book.html (monograph in preparation). [2] M. S. Alexander Hall, Steffen Hippler. Multicommodity flows over time: Efficient algorithms and complexity. In ICALP, pages 397–409, 2003. [3] J. Alonso and K. Fall. A linear programming formulation of flows over time with piecewise constant capacity and transit times. Technical Report IRB-TR-03-007, Intel Research, June 2003. [4] F. Bai, N. Sadagopan, and A. Helmy. The important framework for analyzing the impact of mobility on performance of routing for ad hoc networks. Elsevier Ad Hoc Networks Journal, 1, Nov. 2003. [5] D. J. Baker, J. Wieselthier, and A. Ephremides. A distributed algorithm for scheduling the activation of links in a self-organizing mobile radio network. In Proceedings of IEEE International Conference on Communications (ICC), 1982. [6] C. Balanis. Antenna theory: Analysis and Design. New York: Wiley, 2nd edition, 1997. [7] M. Balazinska and P. Castro. Characterizing mobility and network usage in a corporate wireless local-area network. In Proceedings of ACM MOBISYS, 2003. [8] S. Bandyopadhyay, K. Hasuike, S. Horisawa, and S. Tawara. An adaptive MAC and directional routing protocol for ad hoc wireless network using directional ESPAR antennas. In Proceedings of the 2nd ACM International Symposium on Mobile Ad Hoc Networking and Computing (MOBIHOC), New York, Oct. 2001. [9] L. Bao and J. J. Garcia-Luna-Aceves. Transmission scheduling in ad hoc networks with directional antennas. In Proceedings of the 8th ACM/IEEE International Conference on Mobile Computing and Networking (MOBICOM), pages 48–58, New York, Sept. 2002. [10] S. Bellofiore, J. Foutz, R. Govindarajula, I. Bahceci, C. Balanis, A. Spanias, J. Capone, and T. Duman. Smart antenna system analysis, integration and perfor- mance for mobile ad-hoc networks (manets). IEEE Transactions on Antennas and Propagation, 50(5):571–581, may 2002. 212 [11] D. Bertsekas and R. Gallager. Data networks. Prentice Hall, 2nd edition, 1992. [12] C. Bettstetter. Mobility modeling in wireless networks: Categorization, smooth movement, and border effects. ACM Mobile Computing and Communications Re- view, 2001. [13] C. Bettstetter, H. Hartenstein, and X. Perez-Costa. Stochastic properties of the random waypoint mobility model: epoch length, direction distribution, and cell change rate. In Proceedings of ACM Workshop on Modeling Analysis and Simula- tion of Wireless and Mobile Systems, 2002. [14] C. Bettstetter, G. Resta, and P. Santi. The node distribution of the random way- point mobility model for wireless ad hoc networks. IEEE Transactions on Mobile Computing, 2003. [15] J. Y. L. Boudec and M. Vojnovic. Perfect simulation and stationarity of a class of mobility models. In Proceedings of IEEE INFOCOM, 2005. [16] J. Broch, D. A. Maltz, D. B. Johnson, Y.-C. Hu, and J. Jetcheva. A performance comparison of multi-hop wireless ad hoc network routing protocols. In Mobile Computing and Networking, pages 85–97, 1998. [17] S. Burleigh, A. Hooke, L. Torgerson, K. Fall, V. Cerf, B. Durst, and K. Scott. Delay-tolerant networking: an approach to interplanetary internet. IEEE Commu- nications Magazine, 2003. [18] T. Camp, J. Boleng, and V. Davies. Mobility models for ad hoc network simulations. Wireless Communication and Mobile Computing–Special issue on Mobile Ad Hoc Networking: Research, Trends and Applications, 2:483–503, 2001. [19] V. Cerf, S. Burleigh, A. Hooke, R. Durst, K. Scott, E. Travis, and H. Weiss. Interplanetary internet (IPN): Architecture and definition. http://www.ipnsig.org/reports/draft-irtf-ipnrg-arch-01.txt. [20] A. Chaintreau, P. Hui, J. Crowcroft, C. Diot, R. Gass, and J. Scott. Pocket switched networks: Real-world mobility and its consequences for opportunistic forwarding. Technical Report UCAM-CL-TR-617, University of Cambridge, 2005. [21] A. K. Chandra, P. Raghavan, W. L. Ruzzo, and R. Smolensky. The electrical resistance of a graph captures its commute and cover times. In Proceedings of ACM Symposium on Theory of Computing, 1989. [22] J.-H. Chang and L. Tassiulas. Energy conserving routing in wireless ad-hoc net- works. In Proceedings of IEEE INFOCOM, pages 22–31, 2000. [23] J.-H. Chang and L. Tassiulas. Maximum lifetime routing in wireless sensor net- works. IEEE/ACM Transactions on Networking, 12(4):609–619, 2004. [24] B. Chen, K. Jamieson, H. Balakrishnan, and R. Morris. Span: an energy-efficient coordination algorithm for topology maintenance in ad hoc wireless networks. Wire- less Networks, 8(5):481–494, 2002. 213 [25] W. Chen, M. Pan, and J. Dai. An adaptive mac protocol for wireless ad hoc net- works using smart antenna system. In Proceedings of IEEE Conference on Vehicular Technology(VTC), 2003. [26] X. Chen and A. L. Murphy. Enabling disconnected transitive communication in mobile ad hoc networks. In Proceedings of ACM POMC, Aug. 2001. [27] R. R. Choudhury, X. Yang, N. H. Vaidya, and R. Ramanathan. Using directional antennas for medium access control in ad hoc networks. In Proceedings of the 9th ACM/IEEE Annual International Conference on Mobile Computing and Network- ing (MOBICOM), pages 59–70, New York, Sept. 2002. [28] N. Christofedes. Graph Theory: An Algorithmic Approach. Academic Press Inc., 1975. [29] R. M. de Moraes, H. R. Sadjadpour, and J. Garcia-Luna-Aceves. Throughput- delay analysis of mobile ad-hoc networks with a multi-copy relaying strategy. In Proceedings of IEEE SECON, 2004. [30] Delay tolerant networking research group. http://www.dtnrg.org. [31] Disruption tolerant networking. http://www.darpa.mil/ato/solicit/DTN/. [32] A. Doria, M. Udn, and D. P. Pandey. Providing connectivity to the saami nomadic community. In Proceedings of 2nd International Conference on Open Collaborative Design for Sustainable Innovation (DYD), Dec. 2002. [33] O. Dousse, P. Thiran, and M. Hasler. Connectivity in ad-hoc and hybrid networks. In Proceedings of IEEE INFOCOM, 2002. [34] H. Dubois-Ferriere, M. Grossglauser, and M. Vetterli. Age matters: efficient route discovery in mobile ad hoc networks using encounter ages. In Proceedings of ACM/IEEE MOBIHOC, pages 257–266, 2003. [35] R. Durrett. Probability: Theory and Examples. Duxbury Press, second edition, 1995. [36] K. Dyberg, L. Farman, F. Eklof, J. Gronkvist, U. Sterner, and J. Rantakokko. On the performance of antenna arrays in spatial reuse TDMA ad hoc networks. In IEEE Military Communications Conference(MILCOM), volume 21, pages 269–274, Oct. 2002. [37] T. ElBatt and A. Ephremides. Joint scheduling and power control for wireless ad-hoc networks. In Proceedings of IEEE INFOCOM, 2002. [38] L. M. Feeney and M. Nilsson. Investigating the energy consumption of a wireless network interface in an ad hoc networking environment. In Proceedings of IEEE INFOCOM, 2001. [39] L. R. Ford and D. R. Fulkerson. Constructing maximal dynamic flows from static flows. Technical Report 6, Operations Research, 1958. 214 [40] F. Gabriel. Adaptive processing array systems. In Proceeding of the IEEE, vol- ume 80, Jan. 1992. [41] A. Gamal, J. Mammen, B. Prabhakar, and D. Shah. Throughput-delay tradeoff in wireless networks. In Proceedings of IEEE INFOCOM, 2004. [42] N. Glance, D. Snowdon, and J.-L. Meunier. Pollen: using people as a communica- tion medium. Computer Networks, 35(4):429–442, Mar. 2001. [43] L. C. Godara. Application of antenna arrays to mobile communications. II. beam- forming and direction-of-arrival considerations. In Proceeding of the IEEE, vol- ume 85, pages 1195–1245, Aug. 1997. [44] A. J. Goldsmith and S. B. Wicker. Design challenges for energy-constrained ad hoc wireless networks. IEEE Wireless Communications Magazine, 9(4):8–27, aug 2002. [45] J. Gronkvist. Distributed scheduling for mobile ad-hoc networks — a novel ap- proach. In Proceedings of PIMRC, 2004. [46] M. Grossglauser and D. N. C. Tse. Mobility increases the capacity of ad hoc wireless networks. IEEE/ACM Transactions on Networking, 10(4):477–486, 2002. [47] P. Gupta and P. Kumar. Capacity of wireless networks. Transactions on Informa- tion Theory, 46(2), 2000. [48] P. Gupta and P. R. Kumar. Critical power for asymptotic connectivity in wire- less networks. In in Stochastic Analysis, Control, Optimization and Applications. Birkhauser, Boston, 1998. [49] B. Hajek and G. Sasaki. Link scheduling in polynomial time. IEEE Transactions on Information Theory, 34(5):910–917, 1988. [50] T. Henderson, D. Kotz, and I. Abyzov. The changing usage of a mature campus- wide wireless network. In Proceedings of ACM MOBICOM, 2004. [51] W. Hsu and A. Helmy. Impact: Investigation of mobile-user patterns across uni- versity campuses using wlan trace analysis. Technical Report 2005, University of Southern California. [52] P. Hui, A. Chaintreau, J. Scott, R. Gass, J. Crowcroft, and C. Diot. Pocket switched networks and human mobility in conference environments. In Proceedings of ACM SIGCOMM workshop on Delay Tolerant Networking (WDTN), 2005. [53] Wireless LAN medium access control (MAC) and physical layer (PHY) specifica- tion, IEEE standard 802.11-1999, 1999. IEEE Local and Metropolitan area Net- works Standard Committee. [54] S. Ioannidis and P. Marbach. Towards an understanding of ease and its proper- ties. In Workshop on Modeling and Optimization in Mobile, Ad Hoc and Wireless Networks (Wi’Opt), 2004. 215 [55] S. Jain, K. Fall, and R. Patra. Routing in a delay tolerant network. In Proceedings of ACM SIGCOMM, Aug. 2004. [56] A. Jardosh, E. M. Belding-Royer, K. C. Almeroth, and S. Suri. Towards realistic mobility models for mobile ad hoc networks. In Proceedings of ACM MOBICOM, Sept. 2003. [57] D. B. Johnson, D. A. Maltz, and J. Broch. Ad hoc networking, Chapter 5 – DSR: the dynamic source routing protocol for multihop wireless ad hoc networks. Addison- Wesley Longman Pub. Co., Inc., 2001. [58] E. P. C. Jones, L. Li, and P. A. S. Ward. Practical routing in delay-tolerant net- works. In Proceedings of ACM SIGCOMM workshop on Delay Tolerant Networking (WDTN), 2005. [59] P. Juang, H. Oki, Y. Wang, M. Martonosi, L. S. Peh, and D. Rubenstein. Energy- efficient computing for wildlife tracking: design tradeoffs and early experiences with zebranet. In Proceedings of ASPLOS, pages 96–107, 2002. [60] B. Karp and H. T. Kung. GPSR: greedy perimeter stateless routing for wireless networks. In Proceedings of MOBICOM, 2000. [61] L. Kleinrock and F. Tobagi. Packet switching in radio channels: Part I – carrier sense multiple-access modes and their throughput-delay characteristics. Communi- cations, 23(12):1400–1416, 1975. [62] Y. B. Ko, V. Shankarkumar, and N. H. Vaidya. Medium access control protocols using directional antennas in ad hoc networks. In Proceedings of IEEE INFOCOM, pages 13–21, Mar. 2000. [63] E. Kohler and M. Skutella. Flows over time with load-dependent transit times. In Proceedings of SODA, pages 174–183, 2002. [64] T. Korakis, G. Jakllari, and L. Tassiulas. A mac protocol for full exploitation of directional antennas in ad-hoc wireless networks. In Proceedings of the 4th ACM symposium on mobile ad hoc networking and computing (MOBIHOC), pages 98– 107, 2003. [65] S. V. Krishnamurthy, A. S. Acampora, and M. Zorzi. Polling-based media access protocols for use with smart adaptive array antennas. IEEE/ACM Transactions on Networking, 9(2):148–161, 2001. [66] J. Leguay, T. Friedman, and V. Conan. DTN routing in a mobility pattern space. In Proceedings of ACM SIGCOMM workshop on Delay Tolerant Networking (WDTN), 2005. [67] Q. Li and D. Rus. Communication in disconnected ad hoc networks using message relay. Journal of Parallel and Distributed Computing, 63(1), 2003. 216 [68] J. Liberti and T. Rappaport. Smart Antennas for Wireless Communications: IS-95 and Third Generation CDMA Applications. Prentice Hall, 1999. [69] A. Lindgren, A. Doria, and O. Schelen. Probabilistic routing in intermittently connected networks. SIGMOBILE Mobile Computing and Communication Review, 7(3):19–20, 2003. [70] R. Madan, S. Cui, S. Lall, and A. Goldsmith. Cross-layer design for lifetime max- imization in interference-limited wireless sensor networks. IEEE Transactions on Wireless Communications, 2004. [71] M. Mauve, J. Widmer, and H. Hartenstein. A survey on position-based routing in mobile ad-hoc networks. IEEE Network, 10(6), 2001. [72] M. McNett and G. M. Voelker. Access and mobility of wireless PDA users. ACM Mobile Computing and Communication Review, 2003. [73] A. Nasipuri, L. Kai, and U. Sappidi. Power consumption and throughput in mobile ad hoc networks using directional antennas. In Proceedings of the the 11th Inter- national Conference on Computer Communications and Networks (ICCCN), pages 1106–1110, Oct. 2002. [74] A. Nasipuri, J. Mandava, J. Manchala, and R. Hiromoto. On-demand routing using directional antennas in mobile ad hoc networks. In Proceedings of 9th International Conference on Computer Communications and Networks (ICCCN), pages 535–541, Oct. 2000. [75] A. Nasipuri, S. Ye, J. You, and R. Hiromoto. A MAC protocol for mobile ad hoc networks using directional antennas. In IEEE Wireless Communications and Networking Conference (WCNC), pages 1214–1219, Sept. 2000. [76] M. Neely and E. Modiano. Capacity and delay tradeoffs for ad-hoc mobile networks. IEEE Transactions on Information Theory, 51, 2005. [77] R. Ogier. A decomposition method for optimal scheduling. In 24th Allerton Con- ference, Oct. 1986. [78] T. Ohira. Analog smart antennas: an overview. In IEEE International Symposium on Personal, Indoor and Mobile Radio Communications (PIMRC), pages 1502– 1506, Oct. 2002. [79] A. Pentland, R. Fletcher, and A. Hasson. DakNet: Rethinking connectivity in developing nations. IEEE Computer, Jan. 2004. [80] C. Peraki and S. Servetto. Optimal scaling laws for wireless networks with di- rectional antennas. In Proceedings of the 4th ACM International Symposium on Mobile Ad Hoc Networking and Computing (MOBIHOC), pages 76–87, New York, June 2003. 217 [81] E. Perevalov and R. Blum. Delay limited capacity of ad hoc networks: asymptoti- cally optimal transmission and relaying strategy. In Proceedings of the 22nd Annual Joint Conference of the IEEE Computer and Communications Society(INFOCOM), volume 2, pages 1575–1582. IEEE Computer Society, 2003. [82] C. E. Perkins. Ad Hoc Networking. Addison-Wesley, 1st edition, 2001. [83] C. E. Perkins, E. M. Belding-Royer, and S. R. Das. Ad-hoc on-demand distance vector routing. IETF MANET DRAFT, 2002. [84] R. Ramanathan. On the performance of ad hoc networks with beamforming an- tennas. In In Proceedings of ACM International Symposium on Mobile Ad Hoc Networking and Computing (MOBIHOC), 2001. [85] T. Rappaport. Wireless Communications: Principles and Practice. Prentice Hall, 2 edition, 1996. [86] R.Groenevelt, G. Koole, and P. Nain. Message delay in manet (extended abstract). In Proceddings of ACM Sigmetrics, 2005. [87] N. Sadagopan, F. Bai, B. Krishnamachari, and A. Helmy. Paths: analysis of path duration statistics and their impact on reactive manet routing protocols. In Pro- ceedings of ACM MOBIHOC, 2003. [88] R. C. Shah, S. Roy, S. Jain, and W. Brunette. Data mules: Modeling and analysis of a three-tier architecture for sparse sensor networks. Elsevier Ad Hoc Networks Journal, 1:215–233, Sept. 2003. [89] G. Sharma and R. Mazumdar. On achievable delay/capacity trade-offs in mobile ad hoc networks. In Workshop on Modeling and Optimization in Mobile, Ad Hoc and Wireless Networks (Wi’Opt), 2004. [90] G. Sharma and R. R. Mazumdar. Delay and capacity trade-off in wireless ad hoc networks with random way-point mobility. preprint, 2005. [91] H. Singh and S.Singh. Tone based MAC protocol for use with adaptive array antennas. In IEEE Wireless Communications and Networking Conference(WCNC), June 2004. [92] S. Singh and C. S. Raghavendra. PAMAS: power aware multi-access protocol with signalling for ad hoc networks. SIGCOMM Computer and Communication Review, 28(3):5–26, 1998. [93] S. Singh, M. Woo, and C. S. Raghavendra. Power-aware routing in mobile ad hoc networks. In Proceedings of the 4th ACM/IEEE international conference on Mobile computing and networking MOBICOM, pages 181–190, 1998. [94] T. Small and Z. Haas. Resource and performance tradeoffs in delay-tolerant wire- less networks. In Proceedings of ACM SIGCOMM workshop on Delay Tolerant Networking (WDTN), 2005. 218 [95] A. Spyropoulos and C. S. Raghavendra. Energy efficient communications in ad hoc networks using directional antennas. In Proceedings of the 21st Annual Joint Conference of the IEEE Computer and Communications Society (INFOCOM), vol- ume 1, pages 220–228, June 2002. [96] A. Spyropoulos and C. S. Raghavendra. Asymptotic capacity bounds for ad-hoc net- works revisited: the directional and smart antenna cases. In IEEE Global Telecom- munications Conference (GLOBECOM), volume 3, pages 1216–1220, Dec. 2003. [97] A. Spyropoulos and C. S. Raghavendra. Capacity bounds for ad-hoc networks using directional antennas. In IEEE International Conference on Communications (ICC), volume 1, pages 348–352, May 2003. [98] T. Spyropoulos, K. Psounis, and C. S. Raghavendra. Multiple-copy routing in intermittently connected mobile networks. Technical Report CENG-2004-12, USC, 2004. [99] T. Spyropoulos, K. Psounis, and C. S. Raghavendra. Single-copy routing in inter- mittently connected mobile networks. In Proceedings of IEEE SECON, 2004. [100] T. Spyropoulos, K. Psounis, and C. S. Raghavendra. Multiple-copy routing in inter- mittently connected mobile networks (available at www-scf.usc.edu/~spyropou/ton- multi.pdf). submitted to Transactions on Networking, 2005. [101] T. Spyropoulos, K. Psounis, and C. S. Raghavendra. Spray and wait: Efficient routing in intermittently connected mobile networks. In Proceedings of ACM SIG- COMM workshop on Delay Tolerant Networking (WDTN), 2005. [102] M. Takai, J. Martin, A. Ren, and B. Bagrodia. Directional virtual carrier sensing for directional antennas in mobile ad hoc networks. In Proceedings of ACM/IEEE MOBIHOC, 2002. [103] L. Tassiulas and A. Ephremides. Jointly optimal routing and scheduling in packet radio networks. IEEE Trans. Information Theory, 38(1):165–169, 1992. [104] F. Tobagi and L. Kleinrock. Packet switching in radio channels: Part II - the hidden terminal problem in carrier sense multiple access and the busy tone solution. Communications, 23(12):1417–1433, 1975. [105] Torus hitting times and green’s functions. http://www.math.tamu.edu/ rel- lis/comb/torus/torus.html. [106] S. Toumpis and A. Goldsmith. Large wireless networks under fading, mobility, and delay constraints. In Proceedings of IEEE INFOCOM, 2004. [107] Y.-C. Tseng, S.-Y. Ni, Y.-S. Chen, and J.-P. Sheu. The broadcast storm problem in a mobile ad hoc network. Wireless Networks, 8(2/3), 2002. [108] C. Tuduce and T. Gross. A mobility model based on WLAN traces and its valida- tion. In Proceedings of IEEE INFOCOM, 2005. 219 [109] A. Vahdat and D. Becker. Epidemic routing for partially connected ad hoc net- works. Technical Report CS-200006, Duke University, Apr. 2000. [110] K. Wang, J. G. Proakis, and R. R. Rao. Energy-efficient routing algorithms using directional antennas for mobile ad hoc networks. International Journal of Wireless Information Networks, 9(2), Apr. 2002. [111] Y. Wang, S. Jain, M. Martonosi, and K. Fall. Erasure coding based routing for opportunistic networks. In Proceedings of ACM SIGCOMM workshop on Delay Tolerant Networking (WDTN), 2005. [112] J. Ward and R. T. Compton. Improving the performance of a slotted aloha packet radio network with an adaptive array. In IEEE Transactions on Communications, volume 40, pages 292–300, feb 1992. [113] J. Widmer and J.-Y. L. Boudec. Network coding for efficient communication in extreme networks. In Proceedings of ACM SIGCOMM workshop on Delay Tolerant Networking (WDTN), 2005. [114] The wizzy digital courier:. http://www.wizzy.org.za. [115] H. Wu, R. Fujimoto, R. Guensler, and M. Hunter. MDDV: Mobility-centric data dissemination algorithm for vehicular networks. In Proceedings of ACM SIGCOMM workshop on Vehicular Ad Hoc Networks (VANET), 2004. [116] Y. Xu, J. Heidemann, and D. Estrin. Geography-informed energy conservation for ad hoc routing. In Proceedings of the 7th annual international conference on Mobile computing and networking(MOBICOM), pages 70–84, 2001. [117] J. Yang and J. Li. A novel multiple access protocol for wireless internet access network with smart antennas. In 17th International Conference on Advanced In- formation Networking and Applications (AINA), pages 343–348, Mar. 2003. [118] S. Yi, Y. Pei, and S. Kalyanaraman. On the capacity improvement of ad hoc wireless networks using directional antennas. In Proceedings of the 4th ACM International Symposium on Mobile Ad Hoc Networking and Computing (MOBIHOC-03), pages 108–116, New York, June 1–3 2003. ACM Press. [119] J. Yoon, M. Liu, and B. Noble. Random waypoint considered harmful. In Proceed- ings of IEEE INFOCOM, 2003. [120] J. Zander. Slotted aloha multihop packet radio networks with directional antennas. In Electronic Letters, pages 2098–2100, Dec. 1990. [121] X. Zhang, G. Neglia, J. Kurose, and D. Towsley. Performance modeling of epidemic routing. Technical Report CMPSCI 05-44, UMass, 2005. [122] W. Zhao, M. Ammar, and E. Zegura. A message ferrying approach for data delivery in sparse mobile ad hoc networks. In Proceedings of MobiHoc, 2004. 220 Appendix A Appendix for Chapter 2 Proof.[Lemma 2.2]Let → v i ,i∈{A, B}, be a random speed vector, chosen according to the Random Direction mobility model, namely: Prob( → v i = v)= ⎧ ⎪ ⎪ ⎨ ⎪ ⎪ ⎩ (v H − v L ) −1 ,v∈ [v L ,v H ] 0 , otherwise Prob(∠ → v i = θ)= ⎧ ⎪ ⎪ ⎨ ⎪ ⎪ ⎩ π −1 ,θ∈ [0,π] 0 , otherwise The probability density function for v ⊥ i = → v i , → u ⊥ AB can be calculated in the following way: P(v ⊥ i = x)= v H v L P(∠ → v i =cos −1 x v )P( → v i = v)dv. Using a little bit of algebra we get that: P(v ⊥ i = x)= ⎧ ⎪ ⎪ ⎨ ⎪ ⎪ ⎩ π −1 , |x|≤ v L π −1 v H −x v H −v L ,v L ≤|x|≤ v H . 221 We would now like to calculate the ensemble average of the quantity v ⊥ AB = → v B − → v A , → u AB = → v ⊥ B − → v ⊥ A . According to assumption (a) of Chapter 2 the speed vectors of different nodes are independently and identically distributed (I.I.D). Consequently, so will be v ⊥ A and v ⊥ B . Hence, E[v ⊥ AB ]= v H −v H v H −v H |x A − x B |P(v ⊥ A = x A )P(v ⊥ B = x B )dx A dx B ⇒ E[v ⊥ AB ]=2 v H 0 0 −v H (x A − x B )P(v ⊥ A = x A )P(v ⊥ B = x B )dx A dx B +2 v H 0 v H 0 |x A − x B |2P(v ⊥ A = x A )2P(v ⊥ B = x B )dx A dx B . Using a bit of calculus we derive Eq.(2.4). Proof.[Lemma 2.3] We have assumed that, throughout the duration of a packet exchange, if A is receiving, no real-time DOA estimation is performed. Similarly, if A is transmitting, it is unable to receive any feedback on B’s updated position. Therefore, S will remain pointed along → u AB and B will be drifting away from S along → u ⊥ AB .Let x(t) denote the remaining distance along direction → u ⊥ AB , before node B steps outside S and let x(0) = r sin(0.5θ). That is, at time 0 B lies, on average, in the middle of sector S and at distance r from A. Finally, let’s define the random indicator function I(·)such that I =1, if A and B are moving away from each other along → u AB ,and I =−1, if they move towards each other. Note that P(I =1)= 1 2 ,P(I =−1) = 1 2 . Then, the evolution of x(t)isgivenby x(t)= r sin(0.5θ)− E[v ⊥ AB ]t + IE[v AB ] sin(0.5θ)t. 222 The second term represents the distance covered along → u ⊥ AB and the third term represents the change in total distance to be covered, due to B’s relative movement moving away or towards A, along → u AB . The time T c until B crosses either side of sector S is found by solving the above equation for x(T c )=0. 223 Appendix B Appendix for Chapter 3 Proof.[Lemma 3.10] Let us calculate the average distance D (1) between two randomly chosen points x, y ∈ [−k,k] on a line segment of length 2k. Each point is uniformly distributed on the line and independently of the other. Consequently, the joint probability density function of the two points is given as f xy = k −2 ,∀x, y ∈ [−k,k]. We can now easily compute D (1) as 2k 3 . Let us now bound the average distance D (2) between two randomly chosen positions x=(x 1 ,x 2 ),y =(y 1 ,y 2 ), on a planar disk of radius k, as follows: D (1) ≤ D (2) = E |x− y| ≤ 2D (1) ⇒ 2k 3 ≤ D (2) ≤ 4k 3 . Since the transmission range of each node is equal to R s , the average number of hops L in the path is given by L = D (2) R s ⇒ 2 3R s k≤ L≤ 4 3R s k⇒ L=Θ k R s . 224 Finally, we have assumed that the size of the network grows as Θ(N) or equivalently that the radius k of the disk grows as Θ( √ N). Therefore L=Θ √ N R s . 225 Appendix C Appendix for Chapter 5 Proof.[Lemma 5.7] We can calculate P(T A <T + j ) using the electrical network analogy for random walks on graphs [1, 21] as follows: Let d denote the average node degree of the graph; assume further that each vertex of the graph corresponds to a node in an electrical network, where each edge corresponds to a resistance of 1 Ohm; then it is known [1, 21] that P(T A <T + j )=1/dR jA , where R jA is the effective resistance between j and A(K). In the case of the 2D torus, d = 4, and we can calculate the effective resistance as follows: We inject a current I =1 in j, and remove (draw) a current I = −1from A(K). We then calculate the voltage difference V jA on the path (i 0 ,i 1 ,...,i K ), where i n =(x j ,y j + n) (note that all nodes of A(K) are short-circuited). R jA is then given by V jA I . Now, the total number of paths of length K (i.e. shortest paths to A(K)) is equal to 4· 2 K . Furthermore, the total number of such paths containing edge i n ,i n+1 is equal to 2 K−n − 1, which implies that the total current passing through this edge is equal to 2 K−n −1 4 K . Therefore, R jA is given by R jA = K−1 n=0 2 K−n − 1 4 K = 2 K+1 − K− 2 4· 2 K . 226 Replacing d and R jA in P(T A <T + j )=1/dR jA , we get Eq.(5.1). Proof.[Lemma 5.13] i) Since the node may lie on any position of the torus with equal probability 1 N ,we can easily calculate u(r) by counting the number of positions at a given distance r from the origin. ii) We know that the Markov Chain corresponding to the random walk on the 2D torus is reversible (see [1]). Therefore the probability distribution of the time elapsed since the walk last encountered the destination (i.e. u(t)) is equal to the probability distribution of the time until the walk first hits the destination, starting from the stationary distribution. Theorem 5.8 tell us that this time is exponentially distributed with average ED dt . iii) u(r|t) gives us the probability distribution of the walks’s position given that it has not seen the destination for t time units. In other words, it has not visited any state at distance smaller than K + 1 from the destination. Therefore, its past movement can be described by the transition matrix U, where the transition probabilities from states at distance K + 1 to states at distance K are set to zero, and the respective probabilities are equally distributed to all other allowable moves from a state at distance K +1. It is then easy to see that u(r|t) will be given by the t-step transition probabilities U t with an initial distribution that is uniform right on the border of the “in range” area, captured by u 0 . Proof.[Lemma 5.14] We know that A is at distance r A . A’s timer may have any value t A with probability u(t A |r A )= u(r A |t A )u(t A ) u(r A ) (Bayes rule). We also know that, B’s timer probability distribution is u(t) and we’re interested in the cases where t B <t A (since only then is the message forwarded). Finally, we know that B is within range of 227 A (i.e. |r B − r A |≤ K). Therefore, the probability that B is at position r B , given its timer value t B and the fact that is within range of A is equal to u(r B |t B ) u(|r B −r A |≤K|t B ) , where u(|r B − r A |≤ K|t B )= r B :|r B −r A |≤K u(r B |t B ). Putting all these together, we get the probability of a transmission jump from state r A to state r B . 228 Appendix D Appendix for Chapter 7 Proof.(Theorem 7.7)Let anode A perform RWP movement, starting from its sta- tionary distribution, and let a second node B be static with uniformly chosen position. Let us further look at a randomly chosen epoch with endpoints X s and X f ,and let us denote as X ⊥ s−f the point of line (X s ,X f ) that’s closest to B. Ifwealsodenotethe epoch with these endpoints as (X s ,X f ) then B is hit by epoch (X s ,X f ) if and only if X B − X ⊥ s−f ≤ K. The probability of this event occurring depends on X B =(x B ,y B ), because the probability distribution of the position of B is not uniform. We denote this probability as P hit|B . P hit|B is higher when B is near the center and smaller when B is near the edges. Let now S denote the set of all possible epochs, that is, S ={(X s ,X f ): X s ,X f ∈ U}. Let further S hit|B denote the set of all epochs that “hit” X, that is, S hit|B ={(X s ,X f ): X B − X ⊥ s−f ≤ K}. The size of a given set of epochs S e is calculated by S e = S e 1dX s dX f . It is not difficult to see then, that P hit|B is given by: P hit|B = S hit|B S = S hit|B N 2 . 229 Using a similar argument as in the proof of Theorem 7.3, we can use the statistics of a single epoch to calculate the expected number of epochs until A comes within range of B.Thus,if N hit|B is a random variable denoting the number of epochs until B is encountered, conditioned on B’s position, then N hit|B is geometrically distributed with mean EN hit|B = N 2 S hit|B . Averaging over all possible locations X B =(x B ,y B ) (using linearity of expectations) we calculate that the unconditional expected number of epochs EN hit is EN hit = U EN hit|B P{X B =(x B ,y B )}dx B dy B = U N 2 S hit|B 1 N dxdy = U N S hit|B dxdy. Let us now define the set S ∗ hit|B , which contains all lines in U with end-points drawn uniformly, whose X B is a part. In other words S ∗ hit|B = {(X s ,X f ): X B − X ⊥ s−f = 0}. It is not difficult to notice that S hit|B ≈ 2KS ∗ hit|B . Furthermore, f(x, y)= S ∗ hit|B N 2 L . Consequently,S hit|B ≈ 2KN 2 L f(x,y) , and the expected number of epochs EN e until A encounters a static node B is equal to U 1 f(x,y) dxdy 2KNL Finally, the expected duration of each of these epochs is given in assumption (d). Proof.(Corollary 7.8) As is shown in [13], Eq.(7.3) is quite a good approximation of the stationary pdf f(x, y) away from the network edges. However, we cannot simply replace this value in the hitting time equation and calculate its value, because the integral 230 U 1 f(x,y) dxdy would not converge. The reason for this is that f(x, y)→ 0 at the network edges, implying that if the destination is very near the edge, it would take an infinite number of epochs to find it. However, this is not the case in reality, since nodes have a non-zero transmission range K. Hence, we can assume that the value of 1 f(x,y) everywhere inside a strip of width K from the network edge is constant and equal to its value K distance far from the edge. Referring to the proof of Theorem 7.7 this simply implies that the probability of a given epoch hitting a point is constant inside that strip (this assumption becomes increasingly valid as K increases). Based on this observation, we can now brake the integral as follows: U 1 f(x, y) dxdy = 36 N 3 (I 2 1 +4I 1 I 2 +4I 2 2 ), where I 1 = √ N/2−K − √ N/2+K x 2 − N/4 ! −1 dx, I 2 = √ N/2 √ N/2−K √ N/2− K 2 − N/4 −1 dx. Using some calculus we can easily calculate the values of I 1 and I 2 as I 1 = (4 tanh −1 (1− 2K √ N )) 2 √ N , and I 2 = 1 K− √ N . Replacing these values in the above integral equation and performing some calculations gives us g(N,K). 231 Proof.(Theorem 7.9) When the destination, let B, is also moving according to the Random Waypoint model, the position X B of the destination at any time is distributed according to f(x, y), instead of uniformly (f(x,y) again denotes the stationary node dis- tribution for RWP). Let us then first calculate the expected hitting time until a static node, distributed according to f(x, y) is encountered by A. Let’s also assume initially that the pause time at every epoch is 0 (i.e. T stop = 0.). Finally, let N hit|B be again the random variable denoting the number of epochs until B is encountered, conditioned on B’s position, and N hit be the respective unconditional variable. We can now change the steps of the proof of Theorem 7.7 accordingly to calculate the expected number of epochs EN hit until B is found as follows: EN hit = U N hit|B P{X B =(x, y)}dxdy = U N 2 S hit|B f(x, y)dxdy = U 1 2KLf(x, y) f(x, y)dxdy = N 2KL , since S hit|B = 2KL N 2 f(x, y). (EN hit is smaller here than when B’s position was uniformly distributed.) Taking into account that the expected epoch duration is given by L u we get that the expected hitting time until a static node, distributed according to stationary RWP pdf, is encountered is N 2Kv . Now, if A also pauses at the end of every epoch (i.e. T stop > 0), we calculate the expected hitting time using the alternative method of Theorem 7.4, and find it equal to 232 ET rwp = N 2Kp mv . The rest of the proof is the same as that of Theorem 7.4, only replacing the normalized relative speed ˆ v rwp for ˆ v rd . However, note that, to calculate ˆ v rwp , we need to integrate over the angle distribution for the velocities of both A( → v A ) and B( → v B )from Lemma 7.6. Unlike the Random Direction case, this needs to be done numerically and gives that ˆ v rwp ≈ 1.754. Proof.(Theorem 7.14) The proof is similar to that of Theorem 7.4. We only need to recalculate the respective probability of a node moving for the community model, p c m ,at any time. Each local epoch last on average T l = L c v +T l stop time units, and each roaming epoch T r = L v + T stop time units. Furthermore, it is easy to see (as in all previous cases) that the community-based mobility process is also ergodic. Consequently, the probability p c m is equal to the percentage of time a node is in a moving state in an infinite evolution of the mobility process. Let then N r and N l denote the total number of roaming and local epochs having occurred in the above evolution, and N hit = N r +N l denote the total number of epochs till the destination is found. In this case p c m = lim N hit →∞ N l L c v + N r L v N l T l + N r T r . We know also that N r → π r N hit and N l → π l N hit as N hit →∞ (law of large numbers). Hence, p c m = π l L c v + π r L v π l T l + π r T r = (1− p r ) L c v +(1− p l ) L v (1− p r )T l +(1− p l )T r Proof.(Theorem 7.16) Let us denote as EN (0) the expected number of epochs till hitting time, when node A moves constantly (i.e. pause time in any phase is 0). Using 233 a similar argument as in Lemma 7.9, when node A pauses also between epochs, then the resulting hitting time becomes ET = EN (0) p (A) m v , since p (A) m v is the expected area covered within a single time unit. When node B is also mobile we need to take into account the fact that either both nodes are mobile (probability p A m p B m ) and move with ˆ v rd v relative speed (see Theorem 7.4), or only one of the two nodes is moving (probability p A m (1− p B m )+ p B m (1− p A m )) with relative speed v,or both nodes stand (probability (1− p A m )(1− p B m ) with relative speed 0. Consequently, the expected meeting time EM will be given by EM = EN (0) p A m p B m vˆ v rd +[p A m (1− p B m )+ p B m (1− p A m )]v = ET p (B) m ˆ v rd +(1− p (B) m )+ p (B) m p (A) m (1− p (A) m ) . The procedure is entirely symmetrical, so we could use the hitting time of B to A, instead, replacing the appropriate quantities in the above equations. 234</u></p>
Linked assets
University of Southern California Dissertations and Theses
Conceptually similar
PDF
The design and synthesis of concurrent asynchronous systems.
PDF
Internet security and quality-of-service provision via machine-learning theory
PDF
Probabilistic analysis of power dissipation in VLSI systems
PDF
Iterative data detection: complexity reduction and applications
PDF
MUNet: multicasting protocol in unidirectional ad-hoc networks
PDF
An argumentation-based approach to negotiation in collaborative engineering design
PDF
Real time effects in volume holographic materials for optical storage, copying, and optical neural networks
PDF
Markov decision process approach to optimal resource management in multiservice cellular networks
PDF
The importance of using domain knowledge in solving information distillation problems
PDF
Energy latency tradeoffs for medium access and sleep scheduling in wireless sensor networks
PDF
Optical packet networks with distributed control
PDF
Achieving high performance and energy efficiency in superpipelined processors
PDF
Joint sequence and detector optimization in CDMA systems
PDF
Site selection and laser properties of neodymium and europium ions in fluorapatite laser crystals
PDF
Modulation classification and data detection of signals in unknown ISI environments
PDF
Applications of all-optical wavelength shifting using semiconductor optical amplifiers for switching and routing functions in a dynamically reconfigurable wavelength-division-multiplexed fiber-op...
PDF
Energy -efficient information processing and routing in wireless sensor networks: Cross -layer optimization and tradeoffs
PDF
Two code constructions: Unidirectional error correcting and detecting codes and high-rate turbo codes
PDF
Spatial and time-resolved study of NO concentration in a pulsed-discharge reactor using laser-induced fluorescence
PDF
Design, fabrication and characterization of high-performance native-oxide confined InGaAs/GaAs quantum-well edge-emitting and surface-emitting lasers
Asset Metadata
Creator
Spyropoulos, Thrasyvoulos
(author)
Core Title
Efficient media access and routing in wireless and delay tolerant networks
School
Graduate School
Degree
Doctor of Philosophy
Degree Program
Electrical Engineering
Degree Conferral Date
2006-05
Publisher
University of Southern California
(original),
University of Southern California. Libraries
(digital)
Tag
engineering, electronics and electrical,OAI-PMH Harvest
Language
English
Contributor
Digitized by ProQuest
(provenance)
Permanent Link (DOI)
https://doi.org/10.25549/usctheses-c17-107499
Unique identifier
UC11349263
Identifier
3237161.pdf (filename),usctheses-c17-107499 (legacy record id)
Legacy Identifier
3237161.pdf
Dmrecord
107499
Document Type
Dissertation
Rights
Spyropoulos, Thrasyvoulos
Type
texts
Source
University of Southern California
(contributing entity),
University of Southern California Dissertations and Theses
(collection)
Access Conditions
The author retains rights to his/her dissertation, thesis or other graduate work according to U.S. copyright law. Electronic access is being provided by the USC Libraries in agreement with the au...
Repository Name
University of Southern California Digital Library
Repository Location
USC Digital Library, University of Southern California, University Park Campus, Los Angeles, California 90089, USA
Tags
engineering, electronics and electrical