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
/
Supporting multimedia streaming among mobile ad-hoc peers with link availability prediction
(USC Thesis Other)
Supporting multimedia streaming among mobile ad-hoc peers with link availability prediction
PDF
Download
Share
Open document
Flip pages
Contact Us
Contact Us
Copy asset link
Request this asset
Transcript (if available)
Content
SUPPORTING MULTIMEDIA STREAMING AMONG MOBILE AD-HOC PEERS WITH LINK AVAILABILITY PREDICTION by Min Qin A Dissertation Presented to the FACULTY OF THE GRADUATE SCHOOL UNIVERSITY OF SOUTHERN CALIFORNIA In Partial Ful¯llment of the Requirements for the Degree DOCTOR OF PHILOSOPHY (COMPUTER SCIENCE) December 2007 Copyright 2007 Min Qin Acknowledgements Firstandforemost, Iwouldliketosendmygratitudetomyadviser, RogerZimmermann, foralwayshelpingmeandprovidingvarioussupport. Thankstomycommitteemembers, ElaineChew, JayC.C.Kuo, andUlrichNeumann, whoo®eredguidanceandsuggestions. Also thanks to the University of Southern California for providing me with the ¯nancial means to complete my study. And ¯nally, thanks to my brother, parents, and numerous friends who endured this long process with me, always o®ering support and love. ii Table of Contents Acknowledgements ii List Of Tables v List Of Figures vi Abstract x Chapter 1: Introduction 1 1.1 Motivation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 1.2 Research aim and Methodology . . . . . . . . . . . . . . . . . . . . . . . . 4 1.3 Contributions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 1.4 Outline of the Contents . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 1.5 Terminology De¯nitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 Chapter 2: Background and Related Work 11 2.1 Link Duration Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 2.2 Random Walk Mobility Model . . . . . . . . . . . . . . . . . . . . . . . . 12 2.3 Analysis of Continuous Link Availability . . . . . . . . . . . . . . . . . . . 14 2.4 Service Replication . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 2.5 Link Quality Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 Chapter 3: Link Availability Estimation 21 3.1 Problem Statement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 3.2 Link Prediction Without GPS Support . . . . . . . . . . . . . . . . . . . . 23 3.2.1 Unknown Initial Velocity . . . . . . . . . . . . . . . . . . . . . . . 23 3.2.2 Known Initial Relative Velocity . . . . . . . . . . . . . . . . . . . . 32 3.3 Link Prediction With Known Velocity Information . . . . . . . . . . . . . 34 3.3.1 Known Velocity of a Single Peer . . . . . . . . . . . . . . . . . . . 34 3.3.1.1 Estimation of L n fixedv (d 0 ;t; ~ v 1 ) . . . . . . . . . . . . . . 35 3.3.1.2 Calculation of L n variablev (d 0 ;t; ~ v 1 ) . . . . . . . . . . . . . 38 3.3.2 Known Velocity of Both Peers . . . . . . . . . . . . . . . . . . . . 39 3.4 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40 iii Chapter 4: Evaluation Results 41 4.1 Simulation Results with Unknown Velocity Information . . . . . . . . . . 41 4.2 Simulation Results with Known Velocity Information . . . . . . . . . . . . 45 4.3 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50 Chapter 5: Applying Link Availability Model to Mobile Streaming 51 5.1 MStream: A Position-Aware Mobile Audio Streaming System . . . . . . . 51 5.2 Improve Mobile Streaming with Link Prediction . . . . . . . . . . . . . . 55 5.2.1 Support MStream with Known Streaming Time. . . . . . . . . . . 56 5.2.2 Locating Stable Links with Unknown Streaming time . . . . . . . 63 5.3 Guaranteed Continuous Media Streaming Service with Dynamic Service Replication . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65 5.3.1 Path-Availability-Based Service Coverage . . . . . . . . . . . . . . 66 5.3.2 Simulation Results . . . . . . . . . . . . . . . . . . . . . . . . . . . 69 5.4 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75 Chapter 6: Link Quality Analysis 76 6.1 Modelling Streaming Probability for 802.11 Networks. . . . . . . . . . . . 76 6.1.1 Random Waypoint Mobility Model . . . . . . . . . . . . . . . . . . 82 6.1.2 Random Walk Mobility Model . . . . . . . . . . . . . . . . . . . . 85 6.2 Calculation of Bu®er Size Requirement . . . . . . . . . . . . . . . . . . . . 93 6.3 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97 Chapter 7: Improving Video Streaming Probability for Mobile Devices 98 7.1 Improving Streaming Probability through SVC . . . . . . . . . . . . . . . 98 7.2 Simulation Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103 7.3 Improving Video Quality through Enhancement Layer Redelivery . . . . . 114 7.4 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126 Chapter 8: Conclusion 127 References 130 iv List Of Tables 1.1 Characteristics of existing 802.11 technologies . . . . . . . . . . . . . . . . 2 1.2 Summary of symbolic notations . . . . . . . . . . . . . . . . . . . . . . . . 10 5.1 Simulation settings for the MStream system with the hybrid approach . . 57 5.2 Simulation settings our service replication strategy . . . . . . . . . . . . . 70 6.1 Orinoco 802.11b wireless card speci¯cation. . . . . . . . . . . . . . . . . . 78 6.2 List of terms used for studying link quality . . . . . . . . . . . . . . . . . 80 7.1 Simulation settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104 v List Of Figures 1.1 Link selection among mobile ad hoc peers . . . . . . . . . . . . . . . . . . 3 2.1 Dynamic service replication before partition takes place . . . . . . . . . . 17 2.2 Two ray ground model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 3.1 The current link status between node n and m. . . . . . . . . . . . . . . . 22 3.2 Relative movement between two mobile peers. . . . . . . . . . . . . . . . . 24 3.3 Distribution of ©(d;t) as a function of time and distance. . . . . . . . . . 25 3.4 Dividing t into two sub-intervals . . . . . . . . . . . . . . . . . . . . . . . 26 3.5 Relative mobility vector between two mobile peers. . . . . . . . . . . . . . 28 3.6 Distribution of node n relative to the position of node m when the 5th ve- locity change takes place, s=100 seconds, R=100 m, d 0 =80 m, v max =2m/s 30 3.7 Empirical cumulative distribution of the r values in Figure 3.6. . . . . . . 31 3.8 Di®erent velocity combinations for a given relative velocity . . . . . . . . 32 3.9 Link availability if the current velocity of node n is known. . . . . . . . . 35 4.1 Continuous link availability with unknown initial relative velocity. . . . . 42 4.2 Continuous link availability with known initial relative velocity, v max =5 m/s, ¸ ¡1 m =¸ ¡1 n =30 sec, d 0 =50 m, R=100m. . . . . . . . . . . . . . . . . 44 4.3 Continuous link availability with known current velocity of node n, ¸ ¡1 n = ¸ ¡1 m =30 sec, R=100 m. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46 vi 4.4 Distribution of continuous link availability L(d 0 ;t; ~ v 1 ) as a function of d 0 and µ 1 , v max =5 m/s, ¸ ¡1 m =¸ ¡1 n =30 sec, v 1 =2 m/s, R=100m. . . . . . . . 47 4.5 Absolute prediction errors with known current velocity of node n, v max =5 m/s, ¸ ¡1 m =¸ ¡1 n =30 sec, d 0 =50 m, R=100m. . . . . . . . . . . . . . . . . 48 4.6 Continuous link availability with known initial velocities for both nodes, v max =5 m/s, ¸ ¡1 m =¸ ¡1 n =30 sec, d 0 =50 m, R=100m. . . . . . . . . . . . . 49 5.1 System architecture of MStream. . . . . . . . . . . . . . . . . . . . . . . . 53 5.2 The MStream application running on an HP iPaq h5555 PDA with a Pharos GPS unit support. . . . . . . . . . . . . . . . . . . . . . . . . . . . 55 5.3 The average number of clients listening to the audio as a function of time. 57 5.4 Simulation results of supporting MStream with di®erent link availability models. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59 5.5 Simulation results of supporting mobile p2p streaming with di®erent link availability models. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62 5.6 Average continuous link duration between the requester and the source with di®erent link prediction models. . . . . . . . . . . . . . . . . . . . . . 64 5.7 Path availability between two mobile ad-hoc peers . . . . . . . . . . . . . 66 5.8 Service coverage ratio as a function of time, N =200 . . . . . . . . . . . . 70 5.9 Number of server instances as a function of time . . . . . . . . . . . . . . 71 5.10 Comparison between path-availability-based and duration-based service replication strategy, N =250 . . . . . . . . . . . . . . . . . . . . . . . . . 73 5.11 Service replication with hop limit, N =250;° =0:7. . . . . . . . . . . . . 74 6.1 Bandwidth zone distribution of 802.11b with Auto-Rate Fallback . . . . . 77 6.2 Histogram of the reconnection time after a link breaks . . . . . . . . . . . 81 6.3 Relative movement between two ad-hoc peers . . . . . . . . . . . . . . . . 83 6.4 StreamingprobabilitywithRandomWaypointMobilityModel,br =128kbps, v max =5m=s . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85 vii 6.5 Expected bandwidth over time, ¸ ¡1 1 =¸ ¡1 2 =30sec . . . . . . . . . . . . . 88 6.6 Streaming probability for di®erent object sizes, br = 128kbps, v max = 5m=s, ¸ ¡1 1 =¸ ¡1 2 =30sec . . . . . . . . . . . . . . . . . . . . . . . . . . . 92 6.7 Streaming time as a function of d 0 , B = S = 20MB, br = 128kbps, v max =5m=s, ¸ ¡1 1 =¸ ¡1 2 =30sec . . . . . . . . . . . . . . . . . . . . . . . 94 6.8 Minimum bu®er size as a function of S, d 0 =100m, br =256kbps, v max = 5m=s, ¸ ¡1 1 =¸ ¡1 2 =30sec . . . . . . . . . . . . . . . . . . . . . . . . . . . 96 7.1 IllustrationoftheGroupOfPictures(GOP)structureofthescalablevideo encoding scheme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99 7.2 Consumption rate is higher than the incoming rate . . . . . . . . . . . . . 102 7.3 Comparison of streaming probability with di®erent enhancement layer se- lection strategies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105 7.4 Average percentage of base layer streamed . . . . . . . . . . . . . . . . . . 107 7.5 Average percentage of enhancement layer streamed . . . . . . . . . . . . . 108 7.6 Simulation results of the random waypoint model with known relative ve- locity information, P min =0:9 . . . . . . . . . . . . . . . . . . . . . . . . . 109 7.7 Average video quality of successfully delivered streams with random way- point model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110 7.8 Average video quality of successfully delivered streams with random walk model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111 7.9 Simulation results when the ¯rst and the last 100 seconds of the enhance- ment layer are of higher priority, P min =0 . . . . . . . . . . . . . . . . . . 113 7.10 Histogram of the reconnection time after a link breaks in a 1000£1000m 2 simulation area . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114 7.11 Bu®er management for recovering video quality . . . . . . . . . . . . . . . 117 7.12 Content of the original bu®er before and after the enhancement layer with sequence number 118 is consumed . . . . . . . . . . . . . . . . . . . . . . 119 7.13 Comparison of streaming probability with di®erent enhancement layer se- lection strategies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120 viii 7.14 Average percentage of base layer streamed . . . . . . . . . . . . . . . . . . 121 7.15 Average percentage of enhancement layer streamed . . . . . . . . . . . . . 123 7.16 Average video quality of successfully delivered streams with random way- point model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124 7.17 Average video quality of successfully delivered streams with random walk model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125 ix Abstract Numerous types of handheld devices are becoming popular with end users, who increas- ingly use them to carry multimedia content on the go. As wireless connectivity is inte- grated into these devices, streaming multimedia content among mobile ad-hoc peers is becomingapopularapplication. Oneofthemostimportantchallengesinstreamingmul- timediacontentamongmobilead-hocpeersistodeliverthecontent, usuallylargeinsize, overadynamicpeer-to-peerbasednetworkwherelinkavailabilityisconstantlychanging. Hence, an accurate prediction of future link condition is very important and allows, for example, the selection of the most stable link when a multimedia object is available from multiple peers. However, existing techniques often simplify the problem by calculating average link durations, ¯xing node locations or assuming a constant wireless bandwidth. Additionally, they often do not utilize the current node information in predicting future link status. To help improve mobile streaming applications, a mathematical model for predicting futurelinkstatusbetweentwomobilead-hocpeersispresented. Thismodelcomprisesof two parts, a continuous link availability model and a simple link quality model. The link availability model applies a novel iterative algorithm to predict the distribution of link durations, which is of crucial importance to streaming applications. The link x quality model works with the IEEE 802.11 auto-rate fallback scheme, which re°ects the wireless bandwidth variations in an open environment. By combining these two models, a recursive algorithm is presented to calculate the probability to stream a multimedia object between two mobile ad-hoc peers. Simulation results show that this algorithm can accurately model the robustness of a mobile streaming process. Theproposedmathematicalmodelidenti¯esvariouspossibleimprovementsforfuture mobile streaming applications. To demonstrate its usefulness, a new streaming strategy based on the Scalable Video Coding (SVC) scheme is introduced. This strategy can improve video content delivery between mobile ad-hoc peers by adaptively selecting the numberofenhancementlayerstobestreamed. Simulationresultsshowthatthisstrategy can greatly enhance the probability to stream a video sequence while keeping the video quality high. xi Chapter 1 Introduction 1.1 Motivation With the widespread use of smart phones and other handhelds, more and more people begin to carry multimedia content on the go. For example, the latest version of the Apple iPod [ipo] can store up to 60 gigabytes of songs, video clips and pictures. As a large amount of multimedia content is distributed around us, many people want to share some useful data they own with others. As a result, streaming multimedia content between mobile ad-hoc peers is becoming a popular application. MP3 songs, audio and videoclipscanallbestreamedfromoneusertoanotherwhentheygetclosetoeachother. However, streaming multimedia content in mobile ad-hoc environment introduces many new challenges, including connectivity, bandwidth variation, interference, node mobility and transmission errors. Some pioneering mobile devices used infra-red(IR) [ZND99] channel for data sharing. However, infrared transmission requires a clear line of sight and does not work when peers are mobile. Furthermore, the bandwidth of infra-red channel is too limited. More 1 Table 1.1: Characteristics of existing 802.11 technologies Protocol Frequency Raw band- width Typical Bandwidth Range (in- doors) Modulation tech- niques 802.11b 2.4GHz 11Mbps 6Mbps 30m DSSS 802.11g 2.4GHz 54Mbps 23Mbps 30m OFDM 802.11a 2.4GHz 54Mbps 23Mbps 10m OFDM 802.11n 2.4GHz 200+Mbps 100+Mbps 30m OFDMwithMIMO recent handheld devices operate via IEEE 802.11 or Bluetooth [Blu] networks, which provide broadband-level bandwidth and a communication range of more than 100 me- ters (class 3 for Bluetooth devices). For example, table 1.1 shows the characteristics of di®erent commonly used 802.11 protocols. With such wireless technology advances, media streaming among mobile ad-hoc peers is possible in new situations, for example betweentwopatronsvisitingamuseum. Exemplarsystemsthatimplementsuchideasin- clude Bubbles [BBFB + 03], Mercora [Mer], Microsoft Zune [zun], and MStream [LZC05]. Emerging technologies such as 3G, 4G and WiMax can provide even wider communica- tion ranges. However, they only operate in infrastructure mode. This makes them hard to deploy under many circumstances. One of the most important challenges in streaming multimedia content among mobile ad-hoc peers is to deliver the content, usually large in size, over a dynamic peer-to-peer basednetworkwherelinkavailabilityisconstantlychanging. Forexample, atypicalMP3 music ¯le is 3 MB in size. If the available bandwidth is constantly maintained at 256 kbps, a link has to be continuously available for 120 seconds for a song to be successfully streamed. Sincehandhelddeviceshavealimitedcommunicationrange, itispossiblethat the link between two ad-hoc devices breaks before the streaming process is over if both 2 A content holder B content holder C requester Current node movement Figure 1.1: Link selection among mobile ad hoc peers peers are moving. Additionally, the wireless bandwidth drops as the distance between two ad-hop peers increases. As shown in Figure 1.1, the link between peer A and C and that between B and C are constrained by C's communication range. If both peer A and B have the multimedia content that C has requested, it is better to stream the content from A since the link between A and C is likely to last longer. Therefore, in order to achieve smooth media performance, link availability prediction is of crucial importance. It can help mobile ad- hoc peers to determine hand-o®s or to select the best choice among a number of sources. Many of the existing works rely on the random waypoint mobility model [CBD02] to predict the link duration [HLM04, GdWMJ03] between two mobile peers. They simply assume two mobile nodes move in a straight direction before the link breaks up. This model may work well in some scenarios. However, the simulation area has to be in¯nitely large for the assumption to hold. In reality, people do walk somewhat unpredictably in environments such as museums, crowded areas, etc. To the best of our knowledge, there have been few studies on accurately predicting continuous link availability over any period of time in such situations. 3 In addition to link availability, link quality also a®ects media streaming in mobile ad-hoc network. For example, the IEEE 802.11 protocols use the Auto-Rate Fallback (ARF) [IEE99] scheme to adapt to signal strength changes. When consecutive trans- mission errors occurs, the sender will step down its transmission rate. And conversely, if there are no errors in a short period of time, the transmission rate will be increased. Therefore, a comprehensive framework for modeling mobile ad-hoc streaming processes should include both the link availability model and the link quality model. However, most of the existing techniques often simplify the problem by assuming either a constant streaming bandwidth or ¯xed node locations. This make them unrealistic for analyzing mobilead-hocstreamingapplications. Incontrast, ourresearchsupportsthe802.11ARF scheme along with two popular mobility models: the random waypoint and the random walk mobility model [MZ99b]. It is more comprehensive and more realistic than existing analysis on mobile ad-hoc streaming applications. 1.2 Research aim and Methodology The goal of this research is to introduce a mathematical framework for modeling con- tinuous link status between two mobile ad-hoc peers and use this framework to improve mobile streaming applications. The bene¯ts that this model can bring to mobile stream- ing applications include: ² Helping mobile peers select the best media source. ² Helping seek reliable ad-hoc communication peers in emergency applications. ² Facilitating multimedia service replication in wireless ad-hoc networks. 4 ² Providing guidance for future improvement of ad-hoc multimedia streaming appli- cations. To start with, a link availability model is introduced to predict the probability that two ad-hoc peers will be continuously connected for a period of time. We ¯rst present an iterative algorithm when velocity information of both mobile hosts can not be ac- curately estimated. This algorithm can function without the support of GPS (global positioning system) [WLC04] equipment. It can accurately estimate the link availability based on a rough estimation of the current distance between two ad-hoc peers. With the availability of inexpensive GPS receivers, more and more mobile clients are able to estimate their locations and velocities accurately. In addition to GPS, Received Signal Strength (RSS) [GE01, PIP + 03], Time of Arrival (ToA) [PCB00, SHS01] and acoustic sensing [HWB00] can all be used to estimate the location and velocity of a mobile host. To obtain a more accurate estimation of link availability in such cases, we extend our iterative algorithm to the scenario when either one or both peers' current velocities can be estimated. Because most streaming applications require continuous link availability for a smooth streaming experience, they can bene¯t greatly from this link availability model. To reduce the number of link breaks and achieve smoother streaming performance in a MANET, we present two di®erent strategies based on the proposed link availability model. The ¯rst strategy helps a mobile peer select the best media source when there are multiple sources in its vicinity. When a requested multimedia object is available from multipleneighbors, a mobile peer compares thecontinuous link availabilitybetween itself and all those neighbors and selects the stablest link to stream. However, if there are only 5 few neighbors that have the requested media content, this strategy does not show too much advantage. To solve this problem, the second strategy dynamically replicates the streaming service to provide guaranteed service coverage to all the hosts in a MANET. In order to achieve this, we extend the link availability algorithm to predict the path availability between a streaming server and a client. Based on the path availability information, a server determines whether a service partition is about to happen and replicates the service before the partition takes place. One drawback of our link availability model is that it requires the calculation of the streaming time, which can only be accurately obtained if the wireless bandwidth is ¯xed and the receiver's bu®er size is large enough. When IEEE 802.11 ARF scheme and bu®er size limitations are taken into consideration, the streaming time can not be easily calculated. To solve this problem, we combine our link availability model with a simple linkqualitymodelandintroduceanovelrecursiveapproachtocalculatetheprobabilityof streaming a multimedia object between two ad-hoc peers. This approach supports IEEE 802.11 Auto-Rate Fallback scheme along with two popular mobility models: the random waypoint and the random walk mobility model. It can help identify various possible improvements for future mobile streaming applications. To demonstrate its bene¯t, we presentanovelstreamingstrategyforimprovingtheprobabilityofsuccessfullystreaming a video sequence in mobile ad-hoc environment. This strategy takes advantage of the Scalable Video Coding (SVC) scheme to adaptively select the number of enhancement layers to be streamed to the receiver. Simulation results show that this strategy can improve the probability to stream a video sequence by nearly 60% while keeping the video quality relatively high. 6 1.3 Contributions Here are the main contributions of this research: ² Design and evaluation of a continuous link availability model for predicting the future link status between two mobile ad-hoc peers. The model has the following features: i It can function without the support of GPS equipment and does not require accurate velocity information from mobile hosts. ii It is based on the random walk mobility model, which has not been widely studied due to its complexity. However, this link prediction algorithm can be extended to other mobility models. iii It can work in real-time environment and run on power-constrained mobile devices. ² Design and evaluation of a media source selection strategy based on the link avail- ability model. This strategy can help mobile peers select the best media source from a number of candidates when there are multiple sources in its vicinity. ² AnewQoScriteriaforrepresentingthemediaservicecoverageinaMANET.Service coverageisde¯nedbythepathavailabilitybetweenastreamingserverinstanceand a client. A dynamic service replication strategy based on the above QoS criteria is introduced. ² A recursive approach for modeling the probability to stream a multimedia object between two mobile ad-hoc peers. This model supports IEEE 802.11 Auto-Rate 7 Fallback scheme along with two popular mobility models: the random waypoint and the random walk mobility model. ² Designandevaluationofamobilestreamingstrategythatutilizes theSVCscheme. Thisstrategyadaptivelydeterminesthenumberofenhancementlayerstobestreamed based on the current available bu®er space and link condition. In addition to multimedia streaming, many wireless protocols and systems require a continuous link availability for better performance. Therefore, our work can be advanta- geous to a lot of applications, including ² Walkie-talkieorcellularapplications. Ourworkcanhelpmobileuserspredicthand- o®s and choose better base stations among a number of choices. ² Entertainment. Many users want to share their favorite songs and videos with others. This research can help receivers choose better media sources and inform them about the future link strength. ² File sharing in wireless peer-to-peer networks. ² Clusteringprotocols[QZ05,Bas99,YF04,CDT02]inmobilead-hocnetworks. Link availability can be used as a measure to determine whether two nodes should be grouped in the same cluster. ² Rescue missions. This work can help rescue crews determine their future connec- tivity and keep them well connected. ² Ad-hoc routing protocols such as DSR [JMB96], AODV [PR98] and other on- demand routing protocols for multimedia transmission [KTS + 06, KKS06]. 8 1.4 Outline of the Contents The remainder of this work is organized as follows. In Chapter 2, we review the related workforthisresearch. DetailsofourlinkpredictionalgorithmareintroducedinChapter3 and its numerical results are given in Chapter 4. Chapter 5 introduces the media source selectionstrategyandtheservicereplicationstrategybyusingourlinkavailabilitymodel. Chapter 6 integrates the proposed link availability model with analysis on link quality. Chapter 7 introduces a new streaming strategy to ensure delivery of a video sequence in mobile ad-hoc environment by using the Scalable Video Coding scheme. Finally, we summarize the contributions of this research in Chapter 8. 1.5 Terminology De¯nitions Before we proceed, we introduce useful symbolic notations for the purpose of mathemat- ical clarity. Table 1.2 presents all the symbols and their meanings brie°y. 9 Table 1.2: Summary of symbolic notations Symbol Meaning N number of mobile ad-hoc peers in the given area ~ V i velocity of mobile host i v i speed of mobile host i v max the maximum speed of a moving object R the ad-hoc communication range of mobile peers d 0 the initial distance between two moving hosts D(t) the distance between two moving hosts after t seconds if neither of them changes its current velocity t 0 the beginning time at which the simulation starts ¸ ¡1 i the mean epoch length of mobile host i. See its concise de¯nition in Section 2.2. T p the expected duration that a link is going to last if neither host of the link changes its current velocity. L(t) thepossibilitythatthelinkiscontinuouslyavailableduring[t 0 ;t 0 +t], we use L(d;t), L(d;t;~ v j ), L(d;t;~ v i ;~ v j )interchangeably with L(t) for di®erent scenarios. ~ R i (t) the random mobility vector of host i at time t 0 +t with respect to its position at t 0 . See its concise de¯nition in Section 3.2.1. 10 Chapter 2 Background and Related Work 2.1 Link Duration Analysis Therearemanyrecentstudiesonlinkorpathdurationsinmobilead-hocnetworks. Most of them analyze link or path durations in the stationary regime [Bou05], which means the simulation has run for a long time and the distribution of the mobile hosts are likely to be ¯xed [BV05] in a network. Therefore, these approaches analyze the "average" link or path durations. However, for multimedia streaming applications, the present location and velocity of a mobile host are crucial in determining its link status in the near future. In[SBKH03],theauthorspresentedanumericalstudyonlinkandpathdurationwith di®erent mobility models. Their study shows that the link duration has a multi-modal distribution when nodes move slowly. In high-speed situations, the path duration can be approximated by an exponential distribution. In [HLM04], the authors validated the results of [SBKH03] by using the palm calculus [BB87]. Both studies analyze the behaviorofamobilead-hocnetworkwhenithasreachedthestationaryregime. Thiscan be simulated by the Perfect Simulation method as introduced in [BV05]. However, none 11 of these works predict the future link availability by taking the present node location and velocity into consideration. Therefore, it is inappropriate to apply these models to media streamingapplications,whicharelargelya®ectedbythecurrentnodemovement. Similar analysis on path duration is given in [GdWMJ03, YLG03]. Improvements to existing mobile ad-hoc network protocols by taking advantage of the remaining link duration information are introduced in [QK03, SLG01, CDT02]. The authors predict the link disconnection time based on the current location and velocity information of mobile hosts. This information is then used to facilitate the routing or clustering strategy. Most of the above works are based on the random waypoint model. They simply as- sumethatwhentwonodesbecomeneighbors,theywillnotchangetheircurrentvelocities beforethelinkbreaksup. Inorderforthisassumptiontohold, thesimulationareahasto be in¯nitely large. However, mobile hosts do change their velocities frequently in many situations. According to [YLN03], the random waypoint model is considered harmful because it su®ers from speed decay and non-uniform node distribution. Distribution of the link duration between two mobile hosts that are at the center of the simulation area is di®erent from that when they are near the border of the simulation area. As a result, some studies use the random walk mobility model to avoid this issue. 2.2 Random Walk Mobility Model Therandomwalkmobilitymodelwasintroducedandstudiedin [CBD02,McG05,MZ99c, ZD97, ALLC00]. Compared with the random waypoint mobility model, the random 12 walk mobility model does not su®er from speed decay and non-uniform node distribu- tion[BV05]. Asaresult,futurelinkavailabilityisnota®ectedbyahost'spresentlocation. Such location independency makes it possible to introduce a mathematical framework to model the continuous link availability between two ad-hoc peers. However, the random walk mobility model has not been widely analyzed due to its complexity. Let n and m denote two mobile nodes of a given ad-hoc link. According to [MZ99b], the random walk mobility model divides a node's movement into a sequence of intervals called mobility epochs. Each epoch is a random period of time that is exponentially dis- tributed. During eachmobilityepoch, a node moveswith a constant speed anddirection. The speed is a random variable uniformly distributed between [0, v max ] and the direction is uniformly distributed over [0, 2¼]. Thus given a larger mean epoch length, a node is more likely to go straight for a long period of time. v max and the mean epoch length can be obtained from previous statistics, which is beyond the scope of this research. Let¸ n ¡1 and¸ m ¡1 denotethemeanepochlengthofnandm,respectively. According to [Jia04], the process that the link between n and m experiences velocity changes is a Poisson process [KT75]. The probability that there are k changes of velocity to this link within t seconds is given by C(k;t)= (¸t) k e ¡¸t k! (2.1) where ¸=¸ n +¸ m . Therefore, the duration of the link between n and m can be divided into a number of link epochs. Each link epoch is a time period during which both n and m do not change their velocities. The distribution of each link epoch is also exponential with mean ¸ ¡1 . 13 2.3 Analysis of Continuous Link Availability In[MZ99b,MZ99a],theauthorsintroducedaprobabilisticmodelforpredictingthefuture status of a link. Their work is based on the random walk mobility model. In this model, link availability is de¯ned as the probability that a link is available at time t 0 +t given that the link is available at t 0 . This de¯nition considers the link as available even if it has experienced disconnections during [t 0 , t 0 +t]. Consequently, their work is not very useful for streaming applications, which require the link to be continuously available over a period of time. Analysis of continuous link availability of the random walk mobility model is given in [Jia04, JDJ01]. In their work, the continuous link availability L(t) is de¯ned as the probability that a link is continuously available during [t 0 , t 0 +t]. Since this de¯nition requires the link to be constantly available, it is of great interest to mobile streaming applications. In [JDJ01], the authors ¯rst estimate a time period T p that a given link can last if both nodes of the link keep their current velocities. Then the continuous link availability L(T p ) is calculated as L(T p )t(1¡2e ¡2¸T p )( 1 2¸T p +²)+ ¸T p e ¡2¸Tp 2 (2.2) where ² is environment-dependant and thus cannot be mathematically derived. To esti- mate ², the authors introduce a statistical method. First, their algorithm measures how long the link can actually last from t 0 if it is predicted to be broken at t 0 +T p . If the link is still active at t 0 +T p , the algorithm sets t 0 to t 0 +T p and makes another prediction of the duration that the link is going to last. Then the above procedure is repeated until 14 enough statistics are obtained to calculate a measured L(T p ) value L m (T p ). A measured ² value corresponding to this T p value is then given by ² m t L m (T p )¡ ¸Tpe ¡2¸T p 2 1¡2e ¡2¸Tp ¡ 1 2¸T p (2.3) By changing the value of T p and repeating the above process, the authors are able to obtain a number of estimations and calculate the ¯nal ² through statistical methods. From Equation 2.2, a conservative prediction of the link availability L min (T p ) can be obtained as L min (T p )= 1¡2e ¡2¸T p 2¸T p + ¸T p e ¡2¸T p 2 (2.4) In [Jia04], the authors improve their method in [JDJ01] by separating the estimation of statistical constants. Because a link with high L(T p ) may have a very small T p value, they use T p £L(T p ) as a metric in evaluating the reliability of a link. However, for a given t value that is not equal to T p , their approach cannot compute the probability that the link will last from t 0 to t 0 +t. In contrast, our algorithm is capable of estimating the continuous link availability L(t), which is of more interest to streaming applications. For example, if a song requires 200 seconds to stream, it is more informative to know the probability that the link can last for 200 seconds. Therefore, our algorithm allows L(t) to be directly used as a metric in evaluating link reliability. Another drawback of their method is the process of estimating the statistical constants. For di®erent scenarios, new statistical constants have to be calculated to adapt to environment changes. As a result, this approach cannot be easily deployed. 15 2.4 Service Replication Because of its limited communication range, a wireless ad-hoc streaming server may not be able to communicate with all the mobile users in a large area. Therefore, a MANET can often be partitioned into several subnets such that each subnet is a connected graph. When provisioning of continuous multimedia services is the major objective of Quality of Service (QOS), it is necessary to replicate streaming services to multiple locations so that the each subnet contains at least one streaming server. Toachievegoodcoverage,manyapproaches [KMP99,Har01]simplyintroducemulti- ple predetermined data replicas into an ad-hoc network. However, the network topology is constantly changing when users are mobile. Additionally, a path that is currently con- necting a client and a server may break in the immediate future. Therefore, introducing pre-determineddatareplicasmaynotcoveralltheusersasthenetworktopologychanges. Ontheotherhand,replicatedandcreateddataservices[LW03,LH00]caneasilyadaptto the changing network topology. In order to provide non-interrupted multimedia stream- ingservicetoallmobilepeers,replicatingstreamingservicesbeforeservicepartitiontakes place is of crucial importance. For example, in Figure 2.1, client C holds the multimedia content and serves as a server for all the remaining nodes. However, client D is about to leave the communication area of B and the path from C to D is likely to break. In order for D to access the streaming service after the network partition, C needs to replicate the multimedia content to D before the partition occurs. In [LW03, WL02a], the authors introduced the NonStop protocol to provide guaran- teed continuous multimedia streaming service across a MANET. Their work is based on 16 C A B D Node movement Figure 2.1: Dynamic service replication before partition takes place the Reference Velocity Group Mobility (RVGM) model [WL02b], which classi¯es mobile users into multiple mobility groups. Each mobility group has a logical center and group members moves with a similar velocity as the logical center. In order to provide stream- ing services to all the mobile hosts, one node in each mobility group functions as the server and provides streaming service to the remaining nodes. A server may also provide streamingservicestomultiplegroupsiftheyareinitsvicinity. Whenanetworkpartition is about to take place among several mobility groups, a server predicts the remaining link duration and prepares to replicate the service to a client that belongs to the group with no server instance. As a result, all mobility groups are still covered by at least one streaming server after the network is partitioned. One drawback related to the NonStop protocol is that it predicts the remaining link duration by assuming that all nodes do not change their current velocities until the network partition takes place. This assumption may work well when the streaming time is relatively short. However, the RVGM model is based on the random walk mobility model. This makes the above assumption inaccurate if the streaming time is long. As a 17 result, a more accurate prediction model for the partition time is needed. Furthermore, identifying the mobility group for each mobile user is very di±cult. Each mobile host needstoconstantlymonitorthedistancebetweenitselfanditsneighborstodetermineits groupmembership. However,groupmembershipinthepastoftencannotrepresentgroup membershipinthefuture,especiallywhennodesarehighlydynamic. Inmanysituations, each node can move independently and the NonStop protocol will try to replicate the streaming service to all the nodes in the system. 2.5 Link Quality Analysis Link quality is an important issue in analyzing wireless streaming applications. It can be a®ected by many factors, including distance, interference, obstacles, node velocity, weather and hardware design. Studies on node mobility and link quality has been con- ducted in [BW04, BGK04, Hal05]. To ensure media delivery with possible link quality changes, di®erent strategies have been proposed in the past [RYZ + 05, QCG06, XG03]. As signals travel from the transmitter to the receiver, three mutually independent propagation phenomena usually takes place: multi-path fading, shadowing and path loss. Among the three, path loss is the most important factor for signal strength attenuation. As distance between the two ad-hoc peers increases, the signal strength received by the receiver antenna decreases. To analyze the relationship between distance and received signal strength, two commonly used radio propagation models are: the free space model and the two-ray ground model. 18 Figure 2.2: Two ray ground model free space model This model assumes the ideal propagation condition that there is only one clear line-of-sight path between the transmitter and receiver. According to [Fri46], given that the receiver is distance d away from the transmitter, the received signal power can be calculated by p r (d)= p t G t G r ¸ 2 (4¼) 2 d 2 L (2.5) where p t is the transmitted signal power. G t and G r are the antenna gains of the trans- mitter and the receiver respectively. ¸ is the wavelength and L is the system loss. two-ray ground model If we consider the e®ect of the ground, the received signal may become more complicated than in case of free space propagation. As shown in Figure 2.2, the signals that are re°ected o® the ground may cancel the wave from line of sight. Because this model considers the re°ection from the ground, it can approximate the real signal strength with good accuracy [Rap96, GOB + 04, GC04] if the distance is long. However,Thetwo-raymodeldoesnotgiveanaccurateresultifthedistanceisshort due to the oscillation caused by the constructive and destructive combination of the two 19 rays. Therefore, when distance d is shorter than a cross-over distance d c , the free space model is used. The cross-over distance can be calculated as d c = 4¼h r h t ¸ (2.6) where h t and h r are the heights of the transmitter and receiver antennas, respectively. When d>d c , the two-ray ground model can be expressed by the following equation: p r (d)= (h r h t ) 2 d 4 L G t G r p t (2.7) 20 Chapter 3 Link Availability Estimation In this chapter, we introduce our proposed algorithm for predicting continuous link avail- abilitybetweentwomobilead-hocpeers. Westartwiththecasewhenvelocityinformation of both nodes cannot be accurately estimated and then extend it to the case when either or both nodes' current velocities are known. 3.1 Problem Statement For simplicity, we assume that the two mobile peers of a given link have the same radio coverage,whichisaperfectcircleofradiusR. Theinitialdistancebetweenthetwomobile nodes is approximated by d 0 (d 0 6 R). An accurate estimation of d 0 can be obtained through Received Signal Strength (RSS), Time of Arrival (ToA), acoustic sensing, or GPS, if applicable. As shown in Figure 3.1, let ~ v 1 and ~ v 2 represent the current velocity of node n and m, respectively. Since most mobile devices are constrained by their size and battery power, it is possible that we cannot get the accurate value of either one or both nodes' current velocities. As a result, a good link prediction model should be able to deal with the situations when only partial or no velocity information is available. 21 d 0 m n 1 v J K 2 v J J K Figure 3.1: The current link status between node n and m. Our ¯rst goal is to provide an accurate estimation of L(d 0 ;t), which is the probability that the link will be continuously available from t 0 to t 0 +t given that only the initial distance d 0 is known to us. Since both ~ v 1 and ~ v 2 are unknown, their magnitudes and phases can be randomly distributed between [0,v max ] and [0,2¼]. As a result, our model calculates the average continuous link availability of all possible combinations. Then we extend the calculation of L(d 0 ;t) to L(d 0 ;t; ~ v 1 ) and L(d 0 ;t; ~ v 1 ; ~ v 2 ), which are the link availability when either or both nodes' current velocities can be estimated. Since d 0 6R, we have L(d 0 ;0) = 1, L(d 0 ;t; ~ v 1 ) = 1 and L(d 0 ;t; ~ v 1 ; ~ v 2 ) = 1 for all possible ~ v 1 and ~ v 2 combinations. To analyze link availability, we assume the following properties between two mobile ad-hoc peers: ² Thedatarateforthestreamingapplicationisalwayslowerthantheavailableband- width, regardless of signal attenuation. ² Battery power can support the wireless communication for a long time. 22 ² Twonodescancommunicatewitheachotheraslongastheyarewithineachother's transmission range. Many music/video streaming applications only require 64 s 128 kbps bandwidth, which can be easily supported by 802.11b networks. Therefore, if the wireless bandwidth does not change, we can calculate the transmission time by dividing the media ¯le size by the available bandwidth. Battery power, wireless interference and terrain e®ects are out of the scope of this work. To model the movement of a mobile node, we use the random walk mobility model as introduced in [MZ99b]. However, our link prediction algorithm can be extended to other mobility models. Let L k (t) denote the possibility that a link is continuously available from t 0 to t 0 +t given that the link has experienced k changes in velocity. According to Equation 2.1, we have L(d 0 ;t)= 1 X k=0 L k (t)C(k;t) (3.1) When k is equal to 0, L k (t) is identical to the continuous link availability of the random waypoint model. It assumes that there is no velocity change to the link during [t 0 , t 0 +t] and both nodes keep their current velocity until the link is broken. 3.2 Link Prediction Without GPS Support 3.2.1 Unknown Initial Velocity Signal strength can be a®ected by many factors, such as terrains, battery power and interference. It is often very hard to accurately estimate the velocity of mobile hosts if GPS is not available. To model link availability in such a case, we assume that node m 23 ij d m n r(d, ij ) ij È™ È¥ 1 v J K 2 v J J K v K Figure 3.2: Relative movement between two mobile peers. and n can move with all possible speeds between [0, v max ] and directions between [0, 2¼] initially. Given that the distance between two mobile peers is d and they never change their velocities, let ©(d;t) denote the probability that the link is continuously available from t 0 to t 0 +t. According to the de¯nition of L k (t), we have L 0 (t)=©(d 0 ;t) . Let ~ v 1 and ~ v 2 denote the velocity of node n and m, respectively. The relative velocity~ v between m and n can be characterized by an angle ' and speed v as shown in Figure 3.2. To calculate ©(d 0 ;t), we ¯x n's frame of reference to m's position and move n relative to m. The distance n needs to travel with respect to m before the link breaks up is given by: r(d;')= r R 2 +d 2 (1¡2sin 2 ')¡2dcos' q R 2 ¡d 2 sin 2 ' (3.2) As shown in Figure 3.2, the relative speed v between m and n can be calculated as v = p (v 1 ) 2 +(v 2 ) 2 ¡2v 1 v 2 cosµ (3.3) 24 Figure 3.3: Distribution of ©(d;t) as a function of time and distance. Here µ is randomly distributed between [0, 2¼]. Givenj~ v 1 j=v 1 , the probability that the relative speed is smaller than v (v>0) is given by P(v;v 1 ;µ)=Pfk~ vk6vjk~ v 1 k=v 1 ;µg=max(min(Â;1)¡max(Â;0);0) (3.4) where  = v 1 cosµ¡ p v 2 ¡v 2 1 sin 2 µ v max . From Equation 3.4, we have 06 v 1 6 min(v max ;j v sinµ j). For a given ' and µ pair, ©(d;t) can be calculated as the probability that the relative speed v is smaller than r(d;') t . Therefore, ©(d;t)= 1 4¼ 2 v max Z 2¼ '=0 Z 2¼ µ=0 Z U(';µ) v 1 =0 P( r(d;') t ;v 1 ;µ)dv 1 dµd' (3.5) where U(';µ)=min(v max ;j r(d;') tsinµ j). 25 time t s 0 k th velocity change k-1 velocity changes No velocity change Figure 3.4: Dividing t into two sub-intervals Figure 3.3 shows the distribution of ©(d;t) as a function of t and d. Here R=100 m, v max = 2 m/s. When d is small, the probability for two mobile hosts to stay connected is very high in a short period of time. However, if the two nodes are initially far away, they may either walk towards or away from each other. The link duration can be even longer if they walk towards each other. Therefore, the chance for the link to be continuously availablefortsecondsisnotgreatlya®ectedbytheinitialdistancebetweenthetwohosts. After calculating the distribution of ©(d;t), we have L(d 0 ;t)=C 0 (t)©(d 0 ;t)+ 1 X k=1 L k (t)C(k;t) (3.6) In order to estimate L k (t), we divide [t 0 ;t 0 +t] into two sub-intervals: [t 0 ;t 0 +s](s6 t) and[t 0 +s;t 0 +t]sothatthekthvelocitychangetothelinktakesplaceatt 0 +s. Asshown in Figure 3.4, the link experiences k¡1 changes in velocity during [t 0 ;t 0 +s]. During [t 0 +s;t 0 +t], both nodes do not change their velocities. According to the de¯nition of 26 L k (t), the link should be continuously available during both [t 0 ;t 0 +s] and [t 0 +s;t 0 +t]. Thus we have L k (t)= Z t s=0 f k (s)L k¡1 (s)©(d s ;t¡s)ds (3.7) Here f k (s) is the probability density function of s and d s is the distance between node m and n at t 0 +s. Given that there are k changes in the velocity, the distribution of s can be calculated from order statistics [Ros05]. f k (s)= k t ( s t ) k¡1 (3.8) Let the random mobility vector ~ R i (t) represent the distance and direction of node i's position at time t 0 +t with respect to its position at time t 0 . According to [MZ99b], the magnitude of the relative mobility vector ~ R mn (t) = ~ R m (t)¡ ~ R n (t) is approximately Raleigh distributed with a phase uniformly distributed between [0, 2¼]. We have Pr(R mn (s)6r)t1¡e ¡ r 2 ® m +® n (3.9) where ® i = 2s ¸ i (± 2 i +¹ 2 i ). Here ± i and ¹ 2 i are the mean and variance of node i's speed. For simplicity, we use r to replace R mn (s) in our following discussions. From Equation 3.9, the probability density function of r is given by f r (r)= 2r ® m +® n e ¡ r 2 ®m+®n (3.10) 27 d 0 r φ d(r,φ) m n n’ Figure 3.5: Relative mobility vector between two mobile peers. Since node m is within n's communication range at time t 0 +s, r is conditionally dis- tributed over [0, R+d 0 ]. As shown in Figure 3.5, in order to satisfy d(r;Á)6R,, we have Á2[l(r);u(r)]. Where l(r)= 8 > > < > > : 0 if r <R¡d 0 cos ¡1 R 2 ¡r 2 ¡d 2 0 2rd 0 otherwise (3.11) and u(r)= 8 > > < > > : 2¼ if r <R¡d 0 2¼¡cos ¡1 R 2 ¡r 2 ¡d 2 0 2rd 0 otherwise (3.12) Thus the conditional probability density of r can be approximated by: f r (rjr6R+d 0 )= 8 > > < > > : 2r ³(® m +® n ) e ¡ r 2 ® m +® n if r <R¡d 0 2r(1¡ 1 ¼ cos ¡1 R 2 ¡r 2 ¡d 2 0 2rd 0 ) ³(® m +® n ) e ¡ r 2 ® m +® n otherwise (3.13) 28 where ³ is given by ³ = Z R¡d 0 r=0 2re ¡ r 2 ® m +® n ® m +® n dr+ Z R+d 0 r=R¡d 0 2r(1¡ 1 ¼ cos ¡1 R 2 ¡r 2 ¡d 2 0 2rd 0 )e ¡ r 2 ® m +® n ® m +® n dr = 1¡e ¡ (R¡d 0 ) 2 ® m +® n + Z R+d 0 r=R¡d 0 2r(1¡ 1 ¼ cos ¡1 R 2 ¡r 2 ¡d 2 0 2rd 0 )e ¡ r 2 ® m +® n ® m +® n dr (3.14) InEquation3.9,theprobabilitythatR mn (s)6r includesthepossibilitythatthelinkhas broken before t 0 +s and was recovered afterwards. Since we are calculating continuous linkavailability, theactualprobabilitydensity f r (r)shouldbesmallerthanthatofEqua- tion 3.10. However, given R mn (s) = r, the probability that the link has broken before t 0 +s is very close for di®erent r values. When s is small, both nodes tend to keep their initial velocities, especially when ¸ ¡1 is large. Therefore, given R mn (s) = r(r6 R), the probability that the link has broken before t 0 +s is close to 0. When s is large, according to [BV05], the stationary distribution of either node is uniformly random by using the random walk model. Thus for di®erent r values, the probability that the link has broken before t 0 +s should be very close to each other. As a result, we have f(R mn (s)=rand the link is continuously available during [t 0 ;t 0 +s]) = f r (r)(1¡P r (the link has broken before t 0 +s)) R r f r (r)(1¡P r (the link has broken before t 0 +s))dr ¼ f r (r) R r f r (r)dr (3.15) This is exactly the same as Equation 6.3. As shown in Figure 3.3, ©(d;t) is not greatly a®ected by the parameter d. Thus approximating f r (r) by Equation 6.3 will not a®ect the accuracy of our prediction of future link availability. 29 −100 −50 0 50 100 −100 −50 0 50 100 −100 −50 0 50 100 −100 −50 0 50 100 (a) The link may experienced disconnections (b) The link is continuously available Figure3.6: Distributionofnodenrelativetothepositionofnodemwhenthe5thvelocity change takes place, s=100 seconds, R=100 m, d 0 =80 m, v max =2m/s To study the e®ect of approximating f r (r) by Equation 3.10, Figure 3.6 shows the distribution of node n relative to node m's position when the 5th velocity change takes place at s=100 seconds. Here n's initial relative position is set to (80,0) and ¸ ¡1 m = ¸ ¡1 n = 30 seconds. We removed all ending positions of n if it falls outside the range of m. A total of 10000 experiments are conducted. From Figure 3.6, we can see that the ¯nal node distribution is similar whether the link has broken before t 0 +s or not. Figure 3.7 shows the cumulative distribution of the r from all the points in Figure 3.6. As shown Figure 3.7, the distribution of r is very close in both scenarios. This supports our assumption in Equation 3.15. Given that the magnitude of the relative mobility is r in Figure 3.5, by the law of cosine, we have d(r;Á)= q r 2 +d 2 0 +2rd 0 cosÁ (3.16) 30 0 20 40 60 80 100 0 0.2 0.4 0.6 0.8 1 r (m) Cumulative distribution Link may break before t 0 +s Link is continuously available Figure 3.7: Empirical cumulative distribution of the r values in Figure 3.6. Combining Equation 3.7, 3.10, 3.16, L k (t) can be approximated by L k (t)= Z t s=0 Z R+d 0 r=0 Z u(r) Á=l(r) f r (rjr6R+d 0 )f k (s)L k¡1 (s)©(d(r;Á);t¡s) u(r)¡l(r) dÁdrds (3.17) According to Equation 3.17, we can use an iterative method to calculate L(t). First we calculate L 0 (s) for all the s 6 t, then L 1 (s) for all the s 6 t, and so on. For most studies on ad-hoc networks, the simulations of node movement are performed in discrete time. Therefore, we can calculate L i (t) in discrete time to reduce computation complexity [BSH03]. In such a case, Equation 3.7 is changed to L k (t)= t X s=0 p k (s)L k¡1 (s)©(d s ;t¡s) (3.18) where p k (s) is the probability that the kth change in velocity takes place at t 0 + s. Assuming ¸ ¡1 À 1, the probability for two velocity changes to take place in one second 31 φ V v 1 V v 2 V v 1 V v 2 V v Figure 3.8: Di®erent velocity combinations for a given relative velocity is close to 0. According to order statistics [Ros05], we can derive the calculation of p k (s) (k6s) as p k (s)= ( s¡1 k¡1 ) ( t k ) (3.19) From Equation 2.1 and 3.7, C(k;t) and L k (t) become extremely small when k is above a certain value. Thus the iterations can be terminated when L k (t)C(k;t) drops below a certain threshold. 3.2.2 Known Initial Relative Velocity If the initial relative velocity ~ v is estimable, either through acoustic sensing or RSS estimation,wecanderiveanewlinkavailabilitymodelL(t;d;~ v)fromourpreviousresults in 3.2.1. However, for a given relative velocity, two mobile hosts can move in a lot of possible ways. As shown in Figure 3.8, there are many possible combinations of ~ v 1 and ~ v 2 for a given ~ v. Let v denote the magnitude of ~ v. It can be easily shown that v 1 2[v min ;v max ], where v min =max(0;v¡v max ). In Figure 3.2, by the law of cosine, we have v 2 +v 2 1 ¡v 2 max 2vv 1 6cosÃ6 v 2 +v 2 1 ¡v 2 min 2vv 1 (3.20) 32 When v is small, v min is equal to 0 and cosà is distributed between [-1, 1] for most v 1 values. Thus the initial velocity of either node can be regarded as nearly random. However, when v is large, the initial velocities of both nodes are restricted. As shown in Figure 3.2, the distance between n and m after t seconds if neither of them changes its velocity is: D(t)= q d 2 0 +v 2 t 2 +2d 0 vtcos' (3.21) Let T p denote the time that the link between m and n will break if both of them keep the current velocity. We have T p = ¡d 0 cos'+ q R 2 ¡d 2 0 sin 2 ' v (3.22) Firstweconsiderthecasethatthereisnovelocitychangetothelinkduring[t 0 ;t 0 +t]. In thiscase,thelinkwillbecontinuouslyavailablefromt 0 tot 0 +tift<T p . Onthecontrary, if t > T p , the probability that the link will be continuously available for t seconds is 0. Now we consider the case that there is at least one velocity change to the link during [t 0 ;t 0 +t]. In such case, we divide t into two parts s(s6t) and t¡s so that both nodes keep their initial velocity during [t 0 ;t 0 +s]. Because the link is continuously available from t 0 to t 0 +t, we have s6 T p . At t 0 +s, if the velocities of both nodes are random, we can use the results in the Chapter 3.2.1 to estimate L(d 0 ;t;~ v). Therefore, we have L(d 0 ;t;~ v)=L 0 (t)+ Z min(t;Tp) s=0 ¸e ¡¸s L(t¡s;D(s))ds (3.23) 33 HereL 0 (t)representsthecasethatthereisnovelocitychangetothelinkduring[t 0 ;t 0 +t]. AccordingtoEquation2.1,thepossibilitythatthereisnovelocitychangewithintseconds is e ¡¸t . Therefore, L 0 (t) is equal to e ¡¸t when t6 T p or 0 when t > T p . However, the velocitiesofthetwonodesarenottotallyrandomatt 0 +s. Thisisbecausewhenthe¯rst velocity change takes place, one node randomly changes its velocity while the other node still keeps its initial velocity. However, as we have discussed above, the initial velocity of either node can be considered as random if the magnitude of ~ v is small. Thus we can approximate L(t;d;~ v) with Equation 3.23 if the initial relative speed v is small. 3.3 Link Prediction With Known Velocity Information When either or both nodes' velocity information is available to us, we can utilize our result in Section 3.2.1 to derive an enhanced link availability model [QZ06a]. 3.3.1 Known Velocity of a Single Peer We begin with the case that only one node's current velocity is known. In Figure 3.2, for example, node n has GPS equipment and is able to estimate its current speed v 1 and direction µ 1 . Therefore, our goal is to give an accurate estimation of L(d 0 ;t; ~ v 1 ), which is the probability that both nodes will be continuously connected during [t 0 ;t 0 +t] given that the current velocity of node n is ~ v 1 . Let v 2 and µ 2 denote the current speed and direction of node m. Because m's current velocity is unknown, v 2 and µ 2 are randomly distributed between [0;v 2max ] and [0;2¼], respectively. Let L n variablev (d 0 ;t; ~ v 1 ) and L n fixedv (d 0 ;t; ~ v 1 ) denote the probability that 34 d 0 θ 1 d(t) m n n’ v 1 ω(t) R r r Figure 3.9: Link availability if the current velocity of node n is known. m and n will be continuously connected for t seconds given that n changes or does not change its current velocity during [t 0 ;t 0 +t], respectively. The probability that n does not change its velocity within t seconds is given by e ¡¸nt . Therefore, the continuous link availability L(d 0 ;t; ~ v 1 ) is given by: L(d 0 ;t; ~ v 1 )=e ¡¸ n t L n fixedv (d 0 ;t; ~ v 1 )+(1¡e ¡¸ n t )L n variablev (d 0 ;t; ~ v 1 ) (3.24) 3.3.1.1 Estimation of L n fixedv (d 0 ;t; ~ v 1 ) Similar to the calculation of L(d 0 ;t; ~ v 1 ), we divide the calculation of into two cases: a) m keepsitsvelocityduring[t 0 ;t 0 +t]andb)mchangesitscurrentvelocityduring[t 0 ;t 0 +t]. We begin with the ¯rst case. Since n does not change its current velocity, as shown in Figure 3.9, it will move to n 0 after t seconds. The distance between the current position of m and n 0 is given by d(t; ~ v 1 )= q d 2 0 +v 2 1 t 2 +2d 0 v 1 tcosµ 1 (3.25) 35 a) m keeps its current velocity during [t 0 ;t 0 +t] In order for m and n to be continuously connected, m has to be within the shaded region shown in Figure 3.9 at t 0 +t. Therefore, we have (d 0 +v 1 tcosµ 1 ¡v 2 tcosµ 2 ) 2 +(v 1 tsinµ 1 ¡v 2 tsinµ 2 ) 2 6R 2 (3.26) From the above equation, we get sin(µ 2 +®)6 d 2 (t; ~ v 1 )+v 2 2 t 2 ¡R 2 2v 2 td(t; ~ v 1 ) (3.27) where ® is determined by sin®=¡ v 1 tsinµ 1 d(t;~ v 1 ) and cos®= d 0 +v 1 tcosµ 1 d(t;~ v 1 ) . Since µ 2 is randomly distributed between [0;2¼], for a given v 2 , the probability that Equation 3.27 can be satis¯ed is 1 2 ¡ 1 ¼ arcsin(max(min( d 2 (t;~ v 1 )+v 2 2 t 2 ¡R 2 2v 2 td(t;~ v 1 ) ;1);¡1)). Therefore, the chance that m and n are continuously connected in this case is given by L m1 (t)= 1 2 ¡ R v 2max v=0 arcsin(max(min( d 2 (t;~ v 1 )+v 2 2 t 2 ¡R 2 2v 2 td(t;~ v 1 ) ;1);¡1))dv ¼v 2max (3.28) b) m changes its velocity during [t 0 ;t 0 +t] We use the following method to approximate the probability in this case. Let the random mobility vector ~ R m (t) represent the distance and direction of node m's position at time t 0 + t with respect to its position at time t 0 . According to [MZ99b], ~ R m (t) is approximately Raleigh distributed with a phase uniformly dispersed between [0;2¼]. 36 Because the maximum distance node m can travel in t seconds is v 2max t, we extend the result of [MZ99b] by conditionally limiting the distance range. Thus we have f(R m (t)=rjr6v 2max t)= 2r ® m ´(t) e ¡ r 2 ® m (3.29) Where ´(t)= Z v 2max t r=0 2r ® m e ¡ r 2 ®m dr (3.30) As shown in Figure 3.9, m has to be within the shaded region at t 0 +t in order to be connected with n. Therefore, we have max(d(t; ~ v 1 )¡R;0)6R m (t)6d(t; ~ v 1 )+R. Given R m (t)=r, the probability that m is within the shaded region is constrained by the angle !(t) shown in Figure 3.9. We have !(t)= 8 > > > > > > < > > > > > > : 2cos ¡1 r 2 +d 2 (t;~ v 1 )¡R 2 2rd(t;~ v 1 ) jd(t; ~ v 1 )¡Rj<r 2¼ 0<r <R¡d(t; ~ v 1 ) 0 0<r <d(t; ~ v 1 )¡R (3.31) As a result, the probability that m is within n's range at t 0 +t is L m2 (t)= 1 ¼® m ´(t) Z max(d(t;~ v 1 )+R;v 2max t) r=0 re ¡ r 2 ® m !(t)dr (3.32) Here the calculation of L m2 (t) includes the possibility that the link is broken at t 0 +s(s6 t) and is recovered afterwards. However, when t is small, (1¡e ¡¸ m t ) is close to 0; when t is large, e ¡ r 2 ®m is close to 0. As a result, we can regard the chance that m leaves the communication range of n and then comes back as slim. 37 Because the probability that m does not change its velocity within t seconds is given by e ¡¸ m t , we have: L n fixedv (d 0 ;t; ~ v 1 )=e ¡¸mt L m1 (t)+(1¡e ¡¸mt )L m2 (t) (3.33) 3.3.1.2 Calculation of L n variablev (d 0 ;t; ~ v 1 ) Now we consider the case that n changes its velocity during [t 0 ;t 0 +t]. Suppose node n ¯rst changes its velocity at time t 0 +s(s6 t). Because both n and m's velocities are random after t 0 +s, we can use our previous result in Section 3.2.1 to calculate the link availabilityduring[t 0 +s;t 0 +t]. AsindicatedinSection3.2.1,whenthecurrentvelocities of both peers are random, di®erent initial distances do not have a big impact on future link availability. This is due to the fact that nodes can either move towards or away from each other. As a result, we can calculate the expectations of the probability that the link is continuously available for t seconds. We have prob(t)= 1 R 2 Z R r=0 2rL(r;t)dr (3.34) where L(r;t) is the result of our iterative algorithm in Section 3.2.1. Because n does not change its velocity before t 0 +s, the probability that the link is continuously available during [t 0 ;t 0 +s] is given by L n fixedv (d 0 ;s; ~ v 1 ). Therefore, we have L n variablev (d 0 ;t; ~ v 1 )= Z t s=0 ¸ n e ¡¸ns L n fixedv (d 0 ;s; ~ v 1 )prob(t¡s)ds (3.35) 38 3.3.2 Known Velocity of Both Peers When both ~ v 1 and ~ v 2 are known, we can extend our result from Section 3.3.1 to derive a more accurate prediction of future link availability. If neither node changes its velocity during [t 0 ;t 0 +t], the distance between n and m at t 0 +t will be: d(t; ~ v 1 ; ~ v 2 )= p (d 0 +v 1 tcosµ 1 ¡v 2 tcosµ 2 ) 2 +(v 1 tsinµ 1 ¡v 2 tsinµ 2 ) 2 (3.36) Let T p denote the time at which the link between m and n will break if both of them keep their current velocities. T p can be easily obtained by solving the equation d(T p ; ~ v 1 ; ~ v 2 ) = R. Let L 0 (t) represent the probability that both peers are continuously connected and there is no velocity change to the link during [t 0 ;t 0 +t]. The possibility that there is no velocity change within t seconds is e ¡(¸ m +¸ n )t . Therefore, L 0 (t) is equal to e ¡(¸ m +¸ n )t when t6T p or 0 when t>T p . If there is at least one velocity change to the link during [t 0 ;t 0 +t], we can divide t into two parts s(s6 t) and t¡s so that the ¯rst velocity change takes place at t 0 +s. According to the property of a Poisson process, the probability that m or n changes its velocity ¯rst is given by ¸m ¸ m +¸ n and ¸n ¸ m +¸ n , respectively. Because the link has to be continuously available from t 0 to t 0 +t, we have s6 T p . At t 0 +s, one node keeps its velocity and the other node randomly changes its velocity. As a result, the situation at t 0 +s becomes the same as what we have discussed in the Section 3.3.1. Therefore, L(t;d 0 ; ~ v 1 ; ~ v 2 ) = L 0 (t)+¸ n Z min(t;Tp) s=0 e ¡¸s L n (d(s; ~ v 1 ; ~ v 2 );t¡s; ~ v n (s))ds +¸ m Z min(t;Tp) s=0 e ¡¸s L m (d(s; ~ v 1 ; ~ v 2 );t¡s; ~ v m (s))ds (3.37) 39 Because we use the location of m as the reference point in Figure 3.9, here ~ v n (s) and ~ v m (s) are the velocities of node n and m after adjusting the coordination system to make the position of m and n at t 0 +s the reference point. 3.4 Summary Inthischapter,weintroducedamathematicalmodelforcalculatingcontinuouslinkavail- ability with the random walk mobility model. An iterative algorithm is ¯rst described to calculate the link availability when velocity information is not available. Then we ex- tended this algorithm to the case when the current relative velocity between two mobile hostscanbecorrectlyestimated. BecauseGPSequipmentisbecomingwidelydistributed and more mobile hosts are able to estimate their current velocities, we further enhanced our mathematical model to the case when either or both nodes' velocities can be cal- culated. Compared to the work of [JDJ01, Jia04], our algorithm does not require the calculation of statistical constants. As a result, it is environment-independent and can be easily adopted for di®erent situations. 40 Chapter 4 Evaluation Results To evaluate the accuracy of our proposed algorithm in Chapter 3, we compared the analytical results of our link availability model with the actual simulation results. The simulation environment is a two dimensional space. For each simulation, we placed two mobile peers a certain distance apart and conducted 10,000 independent experiments. Then we statistically calculated the probability that the link was continuously available for t seconds based on all the simulation results. The communication radius R was set to 100 m for both nodes. 4.1 SimulationResultswithUnknownVelocityInformation When velocity information is unavailable, m and n can move with all possible speeds and directions. For each experiment, we let both nodes generate their initial velocity and epoch length based on the corresponding distribution. After walking with the initial velocity for the given epoch length, a node generates a new velocity and epoch length pair, and the process continues until the link is broken. 41 0 50 100 150 200 0.0 0.2 0.4 0.6 0.8 1.0 d 0 =0 λ=1/60 λ=1/30 λ=1/10 Simulation result Predicted Probability Time (sec) 0 50 100 150 200 0.0 0.2 0.4 0.6 0.8 1.0 d 0 =30 λ=1/60 λ=1/30 λ=1/10 Probability Time (sec) 0 50 100 150 200 0.0 0.2 0.4 0.6 0.8 1.0 d 0 =60 λ=1/60 λ=1/30 λ=1/10 Probability Time (sec) (a) v max =5m/s 0 50 100 150 200 0.0 0.2 0.4 0.6 0.8 1.0 d 0 =0 λ=1/60 λ=1/30 λ=1/10 Probability Time (sec) 0 50 100 150 200 0.0 0.2 0.4 0.6 0.8 1.0 d 0 =30 λ=1/60 λ=1/30 λ=1/10 Probability Time (sec) 0 50 100 150 200 0.0 0.2 0.4 0.6 0.8 1.0 d 0 =60 λ=1/60 λ=1/30 λ=1/10 Probability Time (sec) (b) v max =2m/s Figure 4.1: Continuous link availability with unknown initial relative velocity. Figure 4.1 shows the results of 18 independent simulations with unknown initial rel- ative velocity. To reduce the time complexity in calculating L(d 0 ;t), the value of in Equation 3.18 can be pre-calculated for di®erent v max and d 0 settings. As a result, it is possible to perform our link availability algorithm in real time. For example, it requires less than 30 milliseconds to calculate L(d;t) when t=200 on a 1.6 GHz Pentium laptop. In Figure 4.1, each plot is composed of 6 curves. Three solid lines represent the sim- ulation results and three corresponding dotted lines illustrate the results of our iterative algorithm. In each ¯gure, di®erent solid lines represent di®erent mean epoch lengths. We experimented with three epoch length settings in Figure 4.1. For each mobile peer, 42 the mean epoch length is either 10, 30 or 60 seconds as indicated in the graph. In Fig- ure 4.1(a), we set the maximum velocity of each node to 5m/s. In Figure 4.1(b), the maximum velocity of each node was set to 2m/s. When v max increases from 2m/s to 5m/s, L(0;200) drops from 50% to 1.4% if both nodes have a mean epoch length of 10 seconds. Thus a link is more likely to break if nodes move faster, which is quite intuitive. As shown in Figure 4.1, the probability for the link to be continuously available decreases when the mean epoch length increases. This is due to the fact that if both nodes change their velocity very often, the amount of time they move close to each other is comparable to the amount of time they move away from each other. However, if both nodes tend to keep their current velocity, the link will break soon even if the two nodes are walking towards each other initially. In Figure 4.1, the mean di®erence between the simulation results and our iterative method ranges from 0.4% to 2.4% for a given epoch length and maximum velocity. This demonstratesthatouralgorithmisveryaccurateinpredictingcontinuouslinkavailability. Theaverageerrorratiobetweenthetworangesfrom0.7%to7%forthe¯rst150seconds. After that, the probability for the link to be continuously available is close to 0. Hence, a tiny di®erence can result in a large error ratio. In Figure 6(a), the simulation result of L(0;200) when ¸ ¡1 m = ¸ ¡1 n =30 second is 0.47%. However, the result of our iterative method is 0.4%. Although the absolute di®erence is very small (0.07%), the error ratio is equal to 18%. Therefore, comparing the error ratio when the link availability drops below a certain threshold is not very informative. Figure 4.2 shows the simulation results when the initial relative velocity between the twonodescanbeestimated. Weexperimentedwithdi®erentinitialspeedsanddirections 43 0 50 100 150 200 0.0 0.2 0.4 0.6 0.8 1.0 φ=0 φ=Ï€/2 φ=Ï€ Simulation result Predicted result Probability Time (sec) 0 50 100 150 200 0.0 0.2 0.4 0.6 0.8 1.0 φ=0 φ=Ï€/2 φ=Ï€ Probability Time (sec) (a) initial relative speed=2m/s (b) initial relative speed=4m/s Figure 4.2: Continuous link availability with known initial relative velocity, v max =5 m/s, ¸ ¡1 m =¸ ¡1 n =30 sec, d 0 =50 m, R=100m. as shown in Figure 4.2. To begin the simulation with a given relative velocity, one node calculates its possible speed and direction range and randomly chooses one as its initial velocity. Thevelocityoftheothernodecanthenbedeterminedthroughthelawofcosine. Because both nodes keep their initial velocity for a period of time, our model can accuratelypredictcontinuouslinkavailabilitywhentissmall. However,whentincreases, there is a period of time that our algorithm deviates from the simulation results. As we have discussed in Section 3.2.2, when the ¯rst velocity change takes place, one node's velocity is not totally random. However, if the initial relative speed is low, the velocity of either node is likely to be random. As shown in Figure 4.2, the error ratio becomes larger when the initial relative speed increases from 2m/s to 4m/s. So our model works best for low initial relative speed situations. In Figure 4.2, the error ratio becomes smaller when ' is closer to ¼. According to Figure 2, the two nodes are walking towards each other when ' is around ¼. Therefore 44 it is very probable that the link lasts longer. After the initial period of time, both nodes begin to move in a random speed and direction. Thus the longer the link lasts, the higher the probability that both nodes start to walk randomly before the link breaks. According to our previous discussions, distance does not have huge impact on future link availability when the two nodes move with the random walk model. As a result, our algorithm becomes more accurate when ' is closer to ¼. Similarly, it works well for large t values. 4.2 Simulation Results with Known Velocity Information We begin with the case when only one node's velocity information is available to us. The simulation starts by ¯xing node n's initial velocity and let node m choose a random initial velocity. The major issue of our enhanced link availability model is the computa- tionalcomplexityincalculatingL n variablev (d 0 ;t; ~ v 1 ). AswehavediscussedinSection4.1, prob(t) can be pre-calculated. However, we need to calculate L n fixedv (d 0 ;s; ~ v 1 ) for all s < t. It takes about 4.8 seconds to compute Equation 3.35 on a Pentium 4 1.6GHz laptop when t=200. To reduce the computation complexity, we calculate at the following intervals: t, t/2, t/4, and so on. The remaining values are approximated through linear methods. This reduces the computation time to less than 100 milliseconds when t=200 and the maximum error ratio measured between the two methods is within 2%. Figure 4.3 shows the results of 14 independent simulations with two di®erent initial speed settings for node n. In Figure 4.3, solid lines represent the simulation results and the corresponding dotted lines illustrate the results by using Equation 3.24. In each 45 0 50 100 150 200 0.0 0.2 0.4 0.6 0.8 1.0 θ 1 =0 d o =0 Continuous link availability t (sec) Simulation results Predicted results 0 50 100 150 200 0.0 0.2 0.4 0.6 0.8 1.0 θ 1 =Ï€ θ 1 =Ï€/2 θ 1 =0 d 0 =50 Continuous link availability t (sec) 0 50 100 150 200 0.0 0.2 0.4 0.6 0.8 1.0 θ 1 =Ï€/2 θ 1 =Ï€ θ 1 =0 d 0 =80 Continuous link availability t (sec) (a)v 1 =2m/s, d 0 =0 m (b)v 1 =2m/s, d 0 =50 m (c)v 1 =2m/s, d 0 =80 m 0 50 100 150 200 0.0 0.2 0.4 0.6 0.8 1.0 θ 1 =0 d 0 =0 Continuous link availability t (sec) 0 50 100 150 200 0.0 0.2 0.4 0.6 0.8 1.0 θ 1 =Ï€/2 θ 1 =Ï€ θ 1 =0 d 0 =50 Continuous link availability t (sec) 0 50 100 150 200 0.0 0.2 0.4 0.6 0.8 1.0 θ 1 =0 θ 1 =Ï€/2 θ 1 =Ï€ d 0 =80 Continuous link availability t (sec) (d)v 1 =4m/s, d 0 =0m (e)v 1 =4m/s, d 0 =50 m (f)v 1 =4m/s, d 0 =80 m Figure 4.3: Continuous link availability with known current velocity of node n, ¸ ¡1 n = ¸ ¡1 m =30 sec, R=100 m. ¯gure, di®erent solid lines represent di®erent directions of the initial velocity of n. The mean epoch length is set to 30 seconds in our simulation. In Figure 4.3(a) to (c), we set the current speed of node n to 2m/s. In Figure 4.3(d) to (f), the current speed of n is set to 4m/s. When the initial distance is equal to 0 (Figure 4.3(a,d)), di®erent µ 1 values produce the same result since node m and n are at the same location. As a result, we only show one pair of lines when d 0 =0. When the current speed of node n increases from 2m/s to 4m/s, there is a big change on continuous link availability for small t values. However, link availabilities are getting close to each other when t > 50. Since the mean epoch length is 30 seconds, node n is likely to move with a random velocity after that period of time. As a result, both 46 0 0 20 40 60 80 0 0.2 0.4 0.6 0.8 1 Link availability Ï€ Ï€/2 0 0 20 40 60 80 0 0.1 0.2 Link availability Ï€/2 Ï€ (a) t=20 sec (b) t=70 sec Figure 4.4: Distribution of continuous link availability L(d 0 ;t; ~ v 1 ) as a function of d 0 and µ 1 , v max =5 m/s, ¸ ¡1 m =¸ ¡1 n =30 sec, v 1 =2 m/s, R=100m. nodes can either walk towards or away from each other when t is large. According to the simulation results in Section 4.1, a di®erent initial distance between the two nodes does not have a big impact on future link availability. Therefore, the current velocity of node n has a limited impact on continuous link availability in the far future. Figure 4.4 shows the distribution of L(d 0 ;t; ~ v 1 ) for two given t values. We use the same simulation settings as those used in Figure 4.3 (a)-(c). As illustrated in Figure 4.3 and 4.4, µ 1 does not have a big impact on future link availabilities when d 0 is small. However, when d 0 increases from 50m to 100m, we can see a big di®erence on future link availabilityfordi®erentµ 1 values. Thisisduetothefactthatnodenwillkeepitscurrent velocity during the initial period of time. When d 0 increases, di®erent µ 1 values have a large impact on how far node n can move in one direction before it reaches the boundary of m's communication range. Figure4.5showstheaverageerrorratiosbetweenthepredictedresultsandthesimula- tionresultsforallpossibleµ 1 values. AswehavediscussedinSection3.3.1,thecalculation 47 0 50 100 150 200 0.00 0.05 0.10 0.15 Absolute prediction error t (sec) d 0 =0 d 0 =50 d 0 =80 0 50 100 150 200 0.00 0.05 0.10 0.15 Absolute prediction error t (sec) (a) v 1 = 2m/s (b) v 1 = 4m/s Figure 4.5: Absolute prediction errors with known current velocity of node n, v max =5 m/s, ¸ ¡1 m =¸ ¡1 n =30 sec, d 0 =50 m, R=100m. ofL m2 (t)incorporatestherandommobilityvector ~ R m (t)from[MZ99b]. However, asdis- cussed in [MZ99b], ~ R m (t) works best for large t values and normally distributed speed values. As a result, the predicted results have a bigger error margin for small t values. The error reaches its maximum when t is equal to the mean epoch length. After that, n is more likely to walk with a random velocity and L m2 (t) becomes a less dominant factor in calculating Equation 3.24. The maximum prediction error is less than 12%, and for most t values, the error is less than 2%. This demonstrates that our algorithm is very accurate in predicting continuous link availability. Figure4.6showsthesimulationresultswhentheinitialvelocitiesofbothnodescanbe estimated. Wecomparedtheresultsofourenhancedlinkavailabilitymodelwiththepre- viousmodelforknownrelativevelocityinSection4.1. Giventhecurrentrelativevelocity, there are many possible combinations of both nodes' velocities. Di®erent combinations may result in di®erent future link availabilities. Therefore, our previous relative velocity 48 0 50 0.0 0.2 0.4 0.6 0.8 1.0 Predicted results Simulation results Relative velocity model v 1 =v 2 =2m/s,θ 1 =0,θ 2 =Ï€ v 1 =1m/s,v 2 =3m/s,θ 1 =0,θ 2 =Ï€ Continuous link availability Duration (sec) Figure 4.6: Continuous link availability with known initial velocities for both nodes, v max =5 m/s, ¸ ¡1 m =¸ ¡1 n =30 sec, d 0 =50 m, R=100m. model may not be very accurate if both nodes' velocities are known. In Figure 4.6, the current relative velocity is set to 4m/s and the direction is from m to n. The dotted line is the prediction result from our relative velocity model. We also experimented with two di®erent velocity combinations for the given relative velocity. The solid lines are the simulation results for two di®erent velocity combinations and the corresponding dashed linesarethepredictionsresults. Becauseitisverylikelythatthecurrentrelativevelocity keeps unchanged for a period of time, both models produce the same continuous link availability when t is small. However, when t increases, our enhanced link availability model works more accurately than the relative velocity model if the velocities of both nodes are known. 49 4.3 Summary In this chapter, we evaluated our link availability model by comparing the outputs of our algorithm with the actual simulation results. With an error margin of less than 7%, we demonstratedthatouriterativealgorithmcanexcellentlypredictthelinkavailabilityeven if GPS equipment is not applicable. Then we showed that our enhanced link availability model can work more accurately than our iterative algorithm if velocity information is available to us. Given a precise prediction of future link availability, our approach is applicable andadvantageousformanyapplications. The following Chapters demonstrate the advantage of our link availability model in helping improve mobile ad-hoc streaming experiences. 50 Chapter 5 Applying Link Availability Model to Mobile Streaming IntheprevioustwoChapters, wediscussedhowtocalculatethecontinuouslinkavailabil- itybetweentwomobilead-hocpeers. Asmobiledevicesarebecomingapopularplatform for streaming applications, integrating our link availability model with mobile streaming applications can bring better experiences to users. In this section, we introduce a pio- neering mobile streaming application and discuss how our link availability algorithm can help to improve the streaming performance in MANETs. 5.1 MStream: A Position-Aware Mobile Audio Streaming System MStream[QZL05,LZC05]isdesignedtoprovidelocationsensitiveaudiostreamingservice to multiple mobile devices. It is developed on Microsoft Windows Mobile 2003 and uses IEEE 802.11 wireless networks for communication. The viability of such an approach has been enabled by the proliferation of a®ordable wireless networking, most notably the pervasive availability of 802.11 networks. The bandwidth provided by di®erent forms 51 of the 802.11 standard is su±cient for multimedia streaming, especially since modern audio/video compression algorithms provide excellent aural/visual quality at a moderate data rate. In addition, new generation handheld devices such as the HP5555 PDA now provide high computing capabilities along with longer battery life, which together make our application feasible. In the original MStream design, di®erent audio tracks are streamed to mobile PDAs based on their physical locations. The geographical space is divided into multiple regions and each region is associated with a dedicated audio track. The audio ambience can be speci¯callytailoredtoaparticipant'senvironmentbyobtaininglocationinformation. We envision MStream to be widely used in location sensitive applications such as guides for a university campus, a park, a zoo or a botanical garden, where users can get relevant audio information based on their physical location and time. Also, users can exchange the multimedia information they recorded with other in their vicinity. Instead of using a pure centralized client-server streaming design, MStream utilizes a hybrid approach. As shown in Figure 5.1, the server streams audio to clients within its communication range in a client-server fashion. On the other hand, clients within the same streaming area may cluster themselves and construct a peer-to-peer topology. As a result, the MStream architecture can even function without a centralized server. The MStream server provides several functions. First, it acts as a repository for all the available audio ¯les. Second, it contains the decision logic that determines which ¯le to stream to a client based on its location information and other parameters, such as the time of the day and the day of the week. 52 Figure 5.1: System architecture of MStream. There are several bene¯ts for incorporating such a hybrid architecture instead of a centralized broadcast server: ² The server does not need to setup an individual link to every client in the region. Peers can stream audio tracks to their neighbors. This reduces the server workload and makes the system more scalable. ² The signal from the server may not cover the complete streaming area and may degrade due to weather or geographical obstacles. Allowing clients stream from nearby peers can extend the service area. ² The communication range of a PDA is limited. A client request may not be able to reach the server. In such a case, it would be advantageous to have a nearby neighbor process the request. 53 While the hybrid approach provides many advantages, the fact that the clients are clustered in a peer-to-peer fashion introduces additional reliability problems. In a mobile application, the physical locations of users change frequently, so the quality and avail- ability of the wireless links among them vary. It is crucial to be able to predict the future availability of a wireless link between two peers. If many nearby peers have the requested audio track, we can reduce the number of future link breakdowns by setting up a connection with the peer that has the highest link availability. The interaction between a client and the server unfolds in several phases as follows. When a GPS is available, the client application periodically polls the GPS reading from an attached GPS unit as shown in Figure 5.2. It utilizes such information to calculate its speed distribution. If no GPS is available, ¯xed speed distribution and position informa- tion from prior statistical analysis is used. To request streaming service, a client checks whether the MStream server is nearby. If so, it sends the most recent GPS readings to the server in conjunction with a streaming request. After receiving the inquiry from a client, the MStream server examines its table of streaming policy entries and determines which audio ¯le to stream to the client. The steaming policy table is a data structure that contains position, location radius, time of day intervals and day of the week entries. If the client's GPS reading is within the radius of a tuple in the policy table, the server selects the audio ¯le of the current time and date and streams it to the client. The client stores the streaming policy and records the audio ¯le during the streaming process so that it can answer future streaming requests from other peers. If a client cannot ¯nd the MStream server, it broadcasts its request to nearby neigh- bors. Peers that store the streaming policy check their policy table and reply whether 54 Figure 5.2: The MStream application running on an HP iPaq h5555 PDA with a Pharos GPS unit support. they are able to stream the audio ¯le to that client. Finally, the client selects one of the neighbors and starts streaming the audio content. If there is no neighbor nearby, the client re-tries the request later. During the streaming phase, a client will constantly monitor the link strength. If the wireless link is broken in the middle of the streaming, the client will immediately contact the server or seek another peer that has the audio content with the same strategy as described above. 5.2 Improve Mobile Streaming with Link Prediction MStream requires continuous link availability for a smooth streaming experience, and hence it can bene¯t greatly from our link availability model to reduce the number of 55 link breaks and to achieve a smoother streaming performance. Again, we assume battery power and bandwidth limitations do not incur any problems during streaming. 5.2.1 Support MStream with Known Streaming Time When wireless bandwidth is stable, it is possible for streaming applications to predict the transmission time. Therefore, we can use the remaining streaming time with our link availability model to select the best source among a number of neighboring nodes. To analyze the bene¯ts of using our hybrid approach, we conducted 1000 independent simulations with the settings shown in Table 5.1. 100 clients are randomly dispersed into the simulation area. For simplicity, only a single 150-second audio ¯le is used for our simulation. We chose the random walk mobility model with re°ection at the boundary. When a user reaches the boundary of the simulation area, she changes her direction as if she bounced o® a wall. During every second, each user has a 0.1% probability of requesting the audio ¯le. After ¯nishing listening to the audio ¯le once, the client no longerlistenstoitagain. Werunthesystemuntilallusersintheareahavelistenedtothe audio once. If the link breaks up during the streaming, a client waits until an alternative link is available and requests the remaining audio stream from that link. Each client is given a random maximum velocity from 1m/s to 4m/s. Figure 5.3 shows the average number of users listening to the audio stream by using a centralized server scheme versus those using the hybrid approach. For a centralized server, requests from clients that are close to the boundary of the simulation area cannot reach the server. Therefore, the number of users that can listen to the audio at a time is limited. By using the hybrid approach as shown in Figure 5.1, remote clients can still 56 Table 5.1: Simulation settings for the MStream system with the hybrid approach Parameters Value Total number of clients 100 Total Simulation area [0;300] 2 Communication range of all nodes 100 m Mean epoch length of each client 30 sec Server position [150,150] Length of the audio ¯le 150 sec Connection setup time (bu®ering, negotiation, etc) 1 sec 0 500 1000 1500 2000 0 4 8 12 16 # of clients listening the audio Time (sec) Centralized server Hybrid architecture Figure 5.3: The average number of clients listening to the audio as a function of time. stream the audio ¯le as long as nearby users have part of the audio. As a result, the number of successful requests is greatly increased. After a simulation duration of 1600 seconds, mostoftheclientshavelistenedtotheaudiooncebyusingourhybridapproach. Thus the number of clients that are being served by the system drops below that of using the centralized approach. The original MStream protocol assumes no link prediction model. When a wireless link is broken during the middle of streaming, the client contacts the server ¯rst. If the serverisunavailable,theclientbroadcastsaLINKBROKENrequesttonearbyneighbors. 57 Itthenchoosesthepeerthatreplies¯rst. Wemodi¯edthisstrategytoincorporateourlink prediction model. When a LINKBROKEN request is received from a client, neighbors that store the audio ¯le reply to the client with their maximum speed and location information. After receiving such information, the client contacts the neighbor that has the highest continuous link availability for the remaining audio ¯le length. For example, if the audio length is 100 seconds and the client has already recorded 30 seconds of the content, then the algorithm chooses an available peer that has the highest continuous link availability for the remaining 70 seconds. If a neighbor does not have a GPS, we assume the speed of that neighbor is uniformly distributed between 0 » 3 m/s and the signalstrengthisusedtoestimatethedistancebetweenthepeers. Foracomparisonwith our algorithm, we also incorporated the link availability model from [JDJ01]. Similar to [JDJ01], we ¯rst estimate a time period T p that the current link between the client andtheneighborwilllastifbothnodeskeeptheircurrentvelocity. Thenwelettheclient choose the neighbor that has the highest T p £L min (T p ) value. Figure 5.4 shows the simulation results of MStream by using both link availabil- ity models. To have a smooth streaming experience, the number of link breaks during streamingshouldbekepttominimum. Weconducted1000independentsimulationswith the same settings shown in Table 5.1. Figure 5.4(a) shows the average number of link breakdowns a client su®ers during the streaming process. Our link prediction model exhibits the smallest number of link breakdowns. As discussed in Section 2.3, using L(T p ) cannot re°ect the actual link availabilityovertime. Onthecontrary, ourlinkavailabilitymodelcanpredictcontinuous linkavailabilityoveranyshortperiodoftime. Therefore,itismoreaccurateinpredicting 58 Without link prediction Comparing link reliability by T p xL min (T p ) With our proposed link model 0.0 0.3 0.6 0.9 1.2 1.5 0 10 20 30 % (a) Average number of link breaks during the streaming (b) Percentage of clients that do not su®er any link breaks 0 20 40 60 80 Duration(seconds) 0 1 2 3 4 5 6 7 Waiting time(seconds) (c) Average continuous streaming duration before a link breaks or streaming ¯nishes (d) Average total waiting time a client su®ers due to link breaks Figure 5.4: Simulation results of supporting MStream with di®erent link availability models. 59 thereliabilityofalink. AsshowninFigure5.4(b),36%percentoftheclientsdonotsu®er anylinkbreaksduringstreaming. Thisresultisasigni¯cantlyimprovementovernotusing any link prediction model or using the link prediction model proposed in [JDJ01]. Figure 5.4(c) shows the average duration that a streaming process can last without anyinterruptions. Whenaclient¯ndsanavailablelinkaftersendingtheinitialstreaming or a LINKBROKEN request, it is often desirable to prolong the duration that it can con- tinuously stream the audio until a link breakdown takes place. Compared with the other two scenarios, our algorithm yields a longer continuous streaming duration. Therefore, even if there are link breaks, the audio is continuous most of the time. Figure 5.4(d) shows the total time a client spends on seeking and establishing new connections. The average total time is only 6 seconds for all three situations. Our link availability model does not make a big di®erence in reducing the overall connection waiting time. This is because after a link is broken, a client often spends more time to ¯nd a suitable neighbor than it takes to establish a new link. Since both link prediction algorithms only reduce the occurrences that link breakdown happens, the time it takes for a client to ¯nd a new peer that stores the current audio ¯le is independent of link prediction algorithms. Therefore, there is no signi¯cant di®erence in the total waiting time with or without link prediction. When there is no server available, the MStream system simpli¯es to a pure peer-to- peer (p2p) streaming application. To request streaming service, a mobile peer broadcasts the streaming request to nearby neighbors. After receiving the request, neighbors that store the requested multimedia content reply to the peer with their velocity and location information. The peer then contacts the neighbor that has the highest continuous link 60 availability for the remaining streaming time. To demonstrate the usefulness of our link availability model in p2p streaming scenario, we conducted 200 independent simulations with the same settings shown in Table 5.1. We assume that all nodes are location-aware and are able to measure their current velocity through GPS or acoustic sensing. 100 clientsarerandomlydispersedintothesimulationarea. Tenofthemstorethemultimedia content that will be requested by the other nodes. During every second, each user has a 0.5% probability of requesting the multimedia content. Foracomparisonwithouralgorithm,wealsoincorporatedthelinkavailabilitymodels from [QK03]. For the model from [QK03], we assume that all nodes do not change their the current velocities until the link is broken. Therefore, a mobile peer chooses the link that has the highest T p value when there are multiple media sources in its vicinity. Figure 5.5 shows the simulation results by using these three di®erent link availability models with various mean epoch length settings. Figure 5.5(a) shows the average number of link breaks a client su®ers during the streaming process. Again, our link prediction model exhibits the smallest number of link breakdowns. The result of using T p £L min (T p ) (see dashed line in Figure 5.5(a)) is even worse than that of assuming nodes do not change their velocities in the future. However, it keeps improving when the mean epoch length increases. On the other hand, ourlinkavailabilitymodelcanpredictcontinuouslinkavailabilityoveranyshortperiodof time. Therefore, it is more accurate in predicting the reliability of a link, especially when nodes tend to change their velocities frequently. According to our study in Section 3.2.1, smaller epoch lengths result in higher future link availability. When the mean epoch lengthreducesfrom40to10seconds, asindicatedin5.5(a, b), ourlinkavailabilitymodel 61 Assuming no velocity change Compare link reliability by T p xL min (T p ) Our enhanced link availability model 10 20 30 40 0.6 0.9 1.2 1.5 # of link breaks Mean epoch length (sec) 10 20 30 40 30 40 50 60 % of nodes Mean epoch length (sec) 10 20 30 40 60 70 80 90 Continuous duration (sec) Mean epoch length (sec) (a) Average number of link breaks during the streaming (b) Percentage of clients that do not su®er any link breaks (c) Average continuous streaming duration before a link breaks or streaming ¯nishes Figure 5.5: Simulation results of supporting mobile p2p streaming with di®erent link availability models. can reduce the number of link breakdowns by 0.31 and increase the percentage of clients that do not su®er any link breakdowns by 19%. These results demonstrate a signi¯cant advantage of our algorithm over the other two link prediction models. Figure 5.5(c) shows the average duration that a streaming process can last without any interruptions. Compared with the other two scenarios, our algorithm yields a longer continuous streaming duration. As shown in Figure 5.5, the performances of these three link availability models are converging when the mean epoch length increases. As the meanepochlengthincreases,nodestendtomoveinastraightdirection. Allthreemodels should have a similar performance when assuming nodes do not change their velocities in the future. Therefore, our link prediction model is particularly suited for environments in which velocity change is frequent. 62 5.2.2 Locating Stable Links with Unknown Streaming time In many situations, predicting the actual streaming time can be very hard due to band- widthvariations[BW04]. Therefore, itismoredesirabletoselectamediasourcethathas the longest continuous link duration. For example, consider the scenario where a tourist is wandering in a dark forest and several ¯re ¯ghters are searching to try to locate her. If thereisnocellphonesignalinthesurroundingarea,ad-hocliveaudiostreamingbecomes the preferred communication method. It may require several minutes for the tourist to explainhersituationclearlyto¯re¯ghters. Thushowtoselectthebestnearby¯re¯ghter so that she can talk to him as long as possible is very crucial. In such a situation, it is hard to determine how long the streaming application is going to last. Therefore, we should choose the source that has the maximum R 1 t=0 tL(t)dt value. However, computing R 1 t=0 tL(t)dt is very time consuming since it involves the calcu- lation of L(t) for all possible t values. Therefore, it is impractical to use R 1 t=0 tL(t)dt to evaluate link reliability in real time. To reduce the computation time, we can select a certain t and compare di®erent links' continuous availability during [t 0 ;t+t 0 ]. To evaluate the correctness of such an approximation, we conducted 300 independent simulations by randomly placing 20 moving media sources around a mobile requester. Eachnodestartswitharandomspeedbetween1to4m/sandarandomdirectionbetween [0, 2¼]. When the simulation begins, the requester chooses a neighboring source that has the highest continuous link availability during [t 0 + t]. Then we calculate the actual continuous link duration between the requester and the source. We experimented with threedi®erenttvaluesandcomparedourresultswiththoseoftheothertwolinkprediction 63 10 20 30 40 50 60 100 200 300 400 500 600 Continuous link duration (sec) Mean epoch length (sec) Our enhanced model,t=50 Our enhanced model,t=100 Our enhanced model,t=150 Maximum possible duration Assuming no velocity change Comparing T p xL min (T p ) Figure 5.6: Average continuous link duration between the requester and the source with di®erent link prediction models. models in the previous section. Figure 5.6 shows the average continuous link duration between the source and the requester with di®erent mean epoch length settings. As shown in Figure 5.6, our link availability model achieves similar link durations for di®erent t values. Therefore, we can randomly choose a reasonable t value and it will not largely a®ect the performance of our algorithm. Unlike what is shown in Figure 5.5, the performance of the link availability model from [JDJ01] shown in Figure 5.6 works betterthanthatofassumingtherewillbenofuturevelocitychange. Therefore,itismore suited for predicting the reliability of a link. Since all three link prediction models try to ¯nd the link that is possibly the most reliable, it is probable that they do not locate the link that is actually the longest lasting. Therefore, as shown in Figure 5.6, the maximum possible link duration in the simulation is much higher than that of using our enhanced 64 model. Our link prediction model outperforms the other two models by 16-80% when the mean epoch length decreases from 60 to 10 seconds. This demonstrates a signi¯cant advantage when velocity change is frequent. 5.3 Guaranteed Continuous Media Streaming Service with Dynamic Service Replication In MStream, a mobile host can only stream media content from its neighbors. However, in the peer-to-peer environment, it is desirable to stream media content from a node (a server instance) that is multiple hops away if no nodes nearby can provide streaming service. Streaming media content through multi-hop paths can largely extend the service coverage area of a single server. However, there may still exist some disconnected groups of nodes that cannot access any streaming service. Additionally, a current path between astreamingserverandamobilehostmaybreaksoonduetomobility. Inordertoprovide guaranteed continuous streaming service to all mobile hosts, we introduce a new QoS criterion and propose a dynamic service replication strategy [QZ06b] based on a novel partitionpredictionalgorithminspiredbyourlinkavailabilitymodel. UnliketheNonStop protocol, our model can work with the random walk mobility model. Therefore, there is no need for each client to determine its current group membership. Service replication is invoked when the continuous path availability between a server instance and a client drops below a certain threshold. 65 …… l 1 l 2 l k m n Figure 5.7: Path availability between two mobile ad-hoc peers 5.3.1 Path-Availability-Based Service Coverage Mobile ad-hoc streaming applications require continuous link or path availability for smoother streaming performance. To provide guaranteed streaming service to all mobile clients, a client should be able to stream the media content from a nearby server at any moment. Also, the client and the server should stay connected for a period of time for non-interrupted streaming experience. Here we do not take multi-path streaming [GL02] into consideration because it may cause too much interference in wireless environment. As we have shown in Chapter 5.2, using our link availability model to represent link reliability is more accurate than using the predicted duration that a link is going to last. Inordertore°ecthowwellamobileclientcanstreamthemediacontentfromastreaming server at the moment, we introduce a new QoS criterion called path-availability-based service coverage to MANETs. Let us assume that the requested streaming service requires t seconds to complete. Then, for a given path p, we de¯ne continuous path availability L p (t) as the probability that the path will be continuously available during [t 0 ;t 0 +t] given that it is available at t 0 . Our link prediction model calculates continuous link availability between two mobile 66 hosts. Here we extend it to compute continuous path availability over multiple hops. As shown in Figure 5.7, let l 1 ;l 2 ;:::;l k denote the links that constitute a path p. According to [HLM04], the correlation between two adjacent ad-hoc links is weak in a MANET. As a result, L p (t) can be approximated by L p (t)=L l 1 (t)L l 2 (t):::L l k (t) (5.1) Ourpath-availability-basedservicecoveragespeci¯esthataclientiscoveredbyastream- ing server instance if the continuous path availability L(t) between the client and the media server instance satis¯es L(t)> °. Where 0 < °6 1 is an adjustable threshold to determine path robustness. The implication behind this QoS criterion is that if the client begins to stream the multimedia object at the moment, the chance for the streaming process to complete without any interruption is larger than °. As a result, a higher ° value implies a smoother streaming performance for each mobile client. Duetonodemobility, aclientthatiscurrentlycoveredbyastreamingserverinstance may leave that server's coverage after a period of time. To provide guaranteed service coveragetoallmobilehostsatalltimes,ourdynamicservicereplicationstrategyregularly calculates the continuous path availability between a client and a server and replicates the service when a client is about to leave the coverage of a server. Algorithm 1 shows the procedure of path availability calculation and partition prediction. In Algorithm 1, each node calculates its new continuous path availability when an update message is received from its neighbors. If it ¯nds a better path from a server, it broadcasts an update message to nearby hosts. A client can process several update 67 Algorithm 1 Dynamic service replication based on path availability analysis 1: i=NodeID 2: node(i):curentavai=0 3: node(i):nextavai=0 4: if node(i):type=server then 5: node(i):curentavai=1 6: node(i):nextavai=1 7: node(i):path=? 8: broadcast update msg(i;node(i):curentavai;node(i):nextavai;node(i):path) to nearby hosts 9: else 10: whiletherearemessagesreceivedfromaneighbor j withincertainamountoftime do 11: flag =false 12: if L i;j (t)£node(j):currentavai>node(i):currentavai then 13: node(i):currentavai=L i;j (t)£node(j):currentavai 14: node(i):path=node(j):path+fjg 15: flag =true 16: end if 17: if L i;j (t+¢t)£node(j):nextavai>node(i):nextavai then 18: node(i):nextavai=L i;j (t+¢t)£node(j):nextavai 19: flag =true 20: end if 21: if flag =true AND node(i):currentavai>° then 22: broadcast update msg(i;node(i):curentavai;node(i):nextavai;node(i):path) to nearby hosts 23: end if 24: end while 25: end if 26: if node(i):currentavai>° AND node(i):nextavai<° then 27: Begin to replicate the service from the path given by node(i):path 28: else 29: do nothing, still covered by a streaming server 30: end if 68 messages at a time before sending its new path availability information. This procedure is similar to the distance vector routing protocol and is determined to converge in a few steps. To reduce the number of messages to be passed, a client does not need to send update messages to its neighbors if the continuous path availability between that client and a server instance is less than °. Also, a hop limit can be introduced so that messages cannot travel too far and °ood the network. When a mobile node detects that it is about to leave the coverage of a server and cannot ¯nd another server nearby, it should immediately contact its current serverand request the streaming service to be replicated. After service replication, the mobile host can serve as a new streaming server instance. To save energy, a mobile node does not need to request for service replication if another node in its vicinity is already replicating the service. 5.3.2 Simulation Results Tostudythee®ectofourdynamicservicereplicationstrategy, weconductedanumberof simulations with the settings shown in Table 5.2. Initially, three randomly chosen mobile hosts provide the streaming service to all the remaining nodes. When the simulation starts, hosts that are about to leave the coverage area of these three nodes request the servicetobereplicatedtothem. Figure 5.8showstheservicecoverageratioasafunction of time, where service coverage ratio is de¯ned as number of nodes covered total number of moving nodes . InFigure 5.8(a), weset° to0:7. Becausecontinuouslinkavailabilityincreasesasthe replicationtimedecreases, nearly100%ofthenodesarecoveredatalltimesifreplication time is less than 10 seconds. When service replication time increases, it takes more time for an uncovered node to be covered due to longer replication time. Also, the chance for 69 Table 5.2: Simulation settings our service replication strategy Parameters Value Simulation area [0;1000] 2 Communication range of all nodes 100 m Mean epoch length of each client 60 sec Initial number of servers 3 Maximum velocity of each node 3 m/s 0 200 400 600 800 1000 0 20 40 60 80 100 % replication time=5 sec replication time=10 sec replication time=20 sec replication time=30 sec Service Coverage Time (sec) 0 200 400 600 800 1000 0 20 40 60 80 100 % γ=0.5 γ=0.7 γ=0.9 Service Coverage Time (sec) (a) service coverage ratio with di®erent replication time, ° =0:7 (b) service coverage ratio with di®erent ° values, replication time=20 sec Figure 5.8: Service coverage ratio as a function of time, N =200 a path to break during service replication is higher. Therefore, the service coverage ratio is always lower if replication time becomes longer. Figure 5.8(b) shows the service coverage ratio with di®erent ° values when the repli- cation time is 20 seconds. According to our de¯nition, a higher ° value should result in higherQoSforeachclient. However,whenthe° valueincreases,theservicecoveragearea of a single server is reduced. As shown in Figure 5.8(b), the initial service coverage ratio islowerwhen° islarger. However,ittakesaboutthesameamountoftimeforourservice replication strategy to distribute the content to cover all the hosts in the network. This 70 0 200 400 600 800 1000 0 20 40 60 # of server instances Time (sec) N = 200 N = 250 N = 300 N = 400 0 200 400 600 800 1000 0 20 40 60 # of server instances Time (sec) γ=0.6 γ=0.7 γ=0.8 γ=0.9 (a) ° =0:7 (b) N =250 Figure 5.9: Number of server instances as a function of time is because when ° is small, the chance that the service cannot be successfully replicated due to a link breakdown is also high. Therefore, a node that is currently replicating the servicefromaservermaysuddenlylostitsconnectionandneedtowaitalongtimebefore it encounters another server that can provide it with streaming service. Figure 5.9 shows the number of server instances as a function of time when the replication time is equal to 20 seconds. If we replicate the service to all the nodes in the network, the service coverage ratio is de¯nitely 100%. However, doing this is very expensiveandunnecessary. InFigure5.9(a),weset° to0.7andstartthesimulationwith di®erent node density. As shown in Figure 5.9(a), the total number of server instances largelydependsonthenodedensity. WhenN issmall,moreserverinstancesarerequired to cover all the mobile hosts since nodes are more likely to be isolated. In contrast, when the node density is high, all the mobile hosts are likely to be connected. It takes only a few replications to cover all the hosts in the network. As a result, our dynamic service replication strategy is most e®ective when node density is high. Figure 5.9(b) shows the 71 numberofserverinstanceswithvarying° values. When° islarge,asingleserverinstance covers fewer mobile clients. Therefore, it requires more server instances to cover all the nodes. Toevaluateourservicereplicationmechanism,wecompareditwithasimilarstrategy that is based on the remaining path duration. To achieve this, we extend the work of [LW03] by allowing service replication through multi-hop paths. We let each node regularly calculate the remaining link duration between itself and its neighbors based on their current locations and velocities. Thus for a given path between a server instance and a client, the remaining path duration is determined by the minimum duration of all links along the path. A client requests for service replication when it ¯nds that the maximum remaining duration of all paths to a server is equal to the service replication time. We assume that each node moves independently and there is no need for each node to identify its group membership. Figure 5.10 shows the results of using these two di®erent strategies when the service replication time is equal to 30 seconds. In Figure 5.10, we execute our path-availability-based service replication strategy by setting ° to 0.7. Consequently, most of the mobile clients can ¯nd some server instances thatareabletoprovidestreamingservicetothemwithachanceof70%ormore. Asshown in Figure 5.10(a), our algorithm has a better service coverage ratio than the duration- based service replication strategy. Figure 5.10(b) shows the percentage of nodes that can immediately access the service over time. Unlike the service coverage ratio, a client is considered to be able to immediately access the service even if the path between that client and the server is about to break. Therefore, the service access ratio is identical to theservicecoverageratiowhensetting° to0. AsshowninFigure5.10(b),clientsthatuse 72 0 200 400 600 800 1000 0 20 40 60 80 100 % path availability based remaining duration based Service coverage Time (sec) 0 200 400 600 800 1000 60 80 100 % Service access ratio Time (sec) path availability based remaining duration based (a) Service coverage ratio, ° =0:7 (b)Service access ratio over time Figure 5.10: Comparison between path-availability-based and duration-based service replication strategy, N =250 our replication strategy can always ¯nd a path to a streaming server instance over time. This is due to the fact that our path availability model can reduce the number of link breakdowns [QZL05] during service replication and is thus more e®ective in replicating services. We found a total of 37 link breakdowns during the service replication time by usingourstrategy,comparedto50linkbreakdownsbyusingtheduration-basedstrategy. As a result, more service replication attempts ended in failure when using the remaining duration based strategy. In wireless environment, it is often unrealistic to stream media content from a server that is too many hops away. Streaming multimedia data between ad-hoc peers that are many hops away may cause a lot of problems, including interference, high loss rate and low bit rate. To avoid these problems, we extend our service replication strategy by introducing a hop limit between a server instance and a client. In Algorithm 1, a client 73 0 200 400 600 800 1000 0 20 40 60 80 100 % No hop limit Hop limit=3 Hop limit=2 Hop limit=1 Service coverage Time (sec) 0 200 400 600 800 1000 0 20 40 60 80 100 120 140 No hop limit Hop limit=3 Hop limit=2 Hop limit=1 # of server instances Time (sec) (a) Availability-based service coverage ratio (b) Number of server instances over time Figure 5.11: Service replication with hop limit, N =250;° =0:7 does not need to send update messages to nearby hosts if its hop count from a server instance reaches the limit. Figure 5.11 shows the simulation results of our service replication strategy when hop limit is enforced. Compared to the case when there is no hop limit, a server instance covers fewer clients if the hop limit is smaller. As shown in Figure 5.11(a), the smaller the hop limit, the lower the initial service coverage ratio. However, our dynamic service replication algorithm can quickly increase the service coverage ratio to 100% even if multi-hop streaming is not allowed. Figure5.11(b)showsthenumberofserverinstancesovertime. Becausethenumberof clients that each server instance can cover largely depends on the hop limit, more server instances are required to cover all the hosts if the hop limit becomes smaller. Initially, fewer hosts are covered if multi-hop streaming is not allowed. According to Equation 5.1, continuous path availability is a®ected by the number of hops in the path. It is less likely 74 that a path with a lot of hops may have continuous availability larger than °. Therefore, the impact on the number of server instances diminishes as the hop limit increases. 5.4 Summary In this chapter, we studied the advantages of our link prediction model by integrating it with the MStream mobile p2p streaming architecture. We ¯rst studied the e®ect of applying our algorithm to link selection in mobile ad-hoc streaming. Simulation results illustrate that our algorithm can improve the mobile streaming experience by reducing thenumberoflinkbreaks, increasingtheprobabilityofnotsu®eringfromanylinkbreaks and providing a longer continuous streaming duration. Then we introduced a new QoS criterion and a dynamic service replication strategy by extending our link availability model to calculate path availability. Results showed that our replication strategy can quickly disseminate multimedia content and provide guaranteed continuous streaming service to all the mobile hosts in a large MANET. 75 Chapter 6 Link Quality Analysis In previous chapters, we introduced a continuous link availability model for calculating the probability that an ad-hoc link between two mobile hosts can last for t seconds. However, for mobile ad-hoc streaming applications, the streaming time t is very hard to determine due to bandwidth variations. Additionally, bu®er size has an immense impact on the amount of data that can be transmitted in a certain period of time. A small bu®er saturates quickly and limits the streaming bandwidth afterwards. Therefore, our previous work is only suitable when the wireless bandwidth is ¯xed and the bu®er size is in¯nite. Inthischapter, weintroduceamorecomprehensivestreamingprobabilitymodel by incorporating a simple link quality model of IEEE 802.11 protocols [QZ07]. 6.1 Modelling Streaming Probability for 802.11 Networks To simplify our discussion, we assume there are only two streaming participants in the wireless network. This is because wireless bandwidth drops signi¯cantly as multiple streaming applications coexist in the same region [NLJ04, ABCG05, SCN03, SSBRA05]. 76 11Mbps zone 5 Mbps zone 2 Mbps zone 1 Mbps zone Distance Figure 6.1: Bandwidth zone distribution of 802.11b with Auto-Rate Fallback In [BGK04], the authors demonstrated that if there are k participants in the same ra- dio range, each link get about 1=k of the total available bandwidth. When obstacles are present, the coverage area of an 802.11 wireless device is no longer a perfect circle. Therefore, it becomes very di±cult to analyze the link quality due to the irregular shape of the wireless coverage. For simplicity, we focus our discussion on an open environment, where there are very few obstacles. In such an environment, the signal strength of an 802.11protocolcanbeapproximatedbythetwo-raygroundmodel[Rap96]withgoodac- curacy [GOB + 04, GC04]. According to Equation 2.7, given a certain transmission power and receiver sensitivity, we can easily calculate the communication radius R of a wireless ad-hoc device. For IEEE 802.11 protocols, Auto-Rate Fallback (ARF) is used to adapt to changes in link quality. When consecutive transmission errors occur, the sender will step down its transmission rate by using a lower modulation scheme. And conversely, if there are no errors in a short period of time, the transmission rate will be increased. Most 802.11 protocolssupportmultiplemodulationtechniquesandreceivershavevaryingsensitivities 77 Table 6.1: Orinoco 802.11b wireless card speci¯cation Modulation scheme BPSK QPSK CCK5.5 CCK11 datarate(Mbps) 1 2 5.5 11 receiver sensitivity(dbm) -94 -91 -87 -82 transmission power(dbm) 15 when operating with these modulations. For example, Table 6.1 shows the modulation techniques and receiver sensitivities designed for the Orinoco 802.11b wireless card [pro]. Consequently, 802.11 protocols have di®erent communication radii when operating with di®erent maximum bandwidth. As shown in [LMT04], the goodput of 802.11 protocols dropssuddenlyasthedistancebetweentwoad-hocnodesincreasesaboveacertainthresh- old. Therefore, the communication range of the 802.11 protocol can be classi¯ed into a number of zones. Di®erent zones are associated with di®erent mean goodput. Figure6.1showstherelativezonedistributionofthe802.11bprotocolwithsettingsof Table 6.1. Many studies (e.g., [BGK04]) have veri¯ed that bandwidth changes abruptly rather than smoothly when an ad-hoc device moves across the zone boundary of another device. Therefore, to accurately model streaming probability in mobile ad-hoc networks, both continuous link availability and non-constant wireless bandwidth need to be con- sidered. To the best of our knowledge, there has been no study on combining these two subjects. Table 6.2 lists all the terms that are used for link quality analysis. For simplicity, we assume that the requested media stream is encoded in a constant bitrate(CBR) br and satis¯es br <bw M . Since most media streams of handheld devices use maximum bitrates of less than 400kbps (DivX5 [div]), it can be supported by the lowest bitrate modulation 78 scheme(1Mbps) of the 802.11b protocols. In table 6.2, bw i is the actual bandwith of the ith zone. It is lower than the maximum nominal bandwidth of that zone. This is because 802.11 protocols use collision avoidance schemes such as CTS/RTS, which signi¯cantly reduce channel utilization. For example, when operating in CCK11 modulation, the actual usable bandwidth for UDP is around 6Mbps rather than the theoretical 11Mbps. Without loss of generality, zones are numbered from inside to outside. Therefore, the actual bandwidth of each zone satis¯es bw 1 > bw 2 > :::bw M . To analyze the streaming probability, we assume the following properties between two mobile ad-hoc peers: ² Data can be streamed from one node to another as long as the distance between them is smaller than R M ² Alinkisconsideredconsidered"broken"ifthedistancebetweentwonodesislarger than R M . ² the wireless bandwidth between two mobile ad-hoc peers is determined by the zone that a node is currently located in. Let m and n denote the two mobile ad-hoc nodes of a given link. Both n and m can move independently with regard to each other. The initial distance between them is approximated by d 0 (d 0 · R M ). To simplify our discussion, we ¯x node n's frame of reference to m's position and move n relative to m. The temporal wireless bandwidth between n and m is determined by the bandwidth zone of node m that n is currently located in. Because both nodes of a link will keep their movement for a certain amount of time after the link breaks, it is very unlikely for two nodes to get reconnected before the 79 Table 6.2: List of terms used for studying link quality Parameters Value M number of bandwidth zones S size of the multimedia object br bitrate of the multimedia object B bu®er size at the receiver d(t) the distance between the 2 ad-hoc peers after t seconds R i the radius of the outer circle of the ith zone (smaller i with higher bandwidth) bw i theactualbandwidthoftheithzone(bw 1 >bw 2 >:::>bw M ) t l the initial latency when playing back the multimedia content due to transmission and decoding delay connection times out. Figure 6.2 shows the histogram of the reconnection time after a link is broken. Since the random waypoint mobility model assumes that both nodes will not change their velocities when simulation area is large, here we use the random walk mobility model with v 1max = v 2max = 5m=s and ¸ 1 = ¸ 2 = 30sec in our simulation. A total of 5000 simulations are conducted with the same wireless card model given in Table 6.1. Initially two mobile nodes are placed at the same location. After the link is broken, we count the number of seconds before both nodes get reconnected. Because it may take in¯nitely long time for two nodes to get reconnected, we set the maximum link breakdown time to 2000 seconds in our simulation. If the link takes more than 2000 seconds to recover, it is shown as 2000 seconds in Figure 6.2. As indicated in Figure 6.2, after a link is broken, there is only a small chance that it will recover quickly. Therefore, in order to guarantee seamless delivery of a multimedia object, the content has to be streamed to the receiver before the link is broken. 80 0 400 800 1200 1600 2000 0 300 600 900 1200 1500 1800 Number of occurances Duration before the link re-establishes after it breaks Figure 6.2: Histogram of the reconnection time after a link breaks Let t i denotes the total time that the node n is within the ith zone of node m before the link between them breaks. The total link duration is thus given by t = P M i=1 t i . According to the actual bandwidth distribution, the maximum possible amount of data that can be streamed between m and n during time period t is P M i=1 t i bw i . Because the playback latency t l is generally very small, we simply assume that it satis¯es t l < t. t l can be estimated through RTP [HSJ03]/RTCP feedbacks or NTP [Mil85], if accessible. Therefore, the amount of data that can be consumed by the receiver is determined by br£(t¡t l ). The receiver bu®er is saturated if M X i=1 (bw i ¡br)t i +br£t l >B (6.1) Since the maximum amount of data that can be bu®ered is min(B; P M i=1 (bw i ¡br)t i + br£ t l ). The total amount of data that can be streamed to the receiver is given by 81 min(B+br£(t¡t l ); P M i=1 bw i t i ). To guarantee delivery of the multimedia object before the link is broken, the following inequation has to be satis¯ed: min(B+br£(t¡t l ); M X i=1 bw i t i )¸S (6.2) According to the above inequation, when the bu®er size is adequate, the probability to stream a multimedia object is largely determined by the time period t i that node n spends in each zone of m. On the other hand, small bu®er size results in a longer streaming time t, which greatly lowers the streaming probability due to node mobility. To calculatet i , we divide our discussion to consider two commonly used mobility models: the Random Waypoint Mobility Model and the Random Walk Mobility Model. 6.1.1 Random Waypoint Mobility Model Therandomwaypointmodelisoneofthemostcommonlyused models for mobilead-hoc network simulations. In this model, a node is initialized with a certain starting position. Then it randomly selects a destination on the map and moves towards that destination withaspeedrandomlychosenbetween[0;v max ]. Afterreachingthedestination, thenode selects a new random destination and continues the above process. Let v and µ denote the relative speed and direction of node n with respect to node m. When the simulation area is large, the distance between two consecutive destinations is usually very long, assuming uniform distribution. As a result, neither node changes its velocity before the link between them breaks. Therefore, we can assume that v and µ do 82 d 0 m n R i d 0 m n ( ) i r θ ( ) i r θ θ θ Figure 6.3: Relative movement between two ad-hoc peers not change during the streaming process. As shown in Figure 6.3, the distance node n can travel within a circle of radius R i is given by r i (µ)= 8 > > > > > > < > > > > > > : q R 2 i ¡d 2 0 sin 2 µ¡d 0 cosµ d 0 ·R i 2 q R 2 i ¡d 2 0 sin 2 µ d 0 >R i ;cosµ·¿ 0 otherwise (6.3) where ¿ is de¯ned as ¿ = ¡ r 1¡ R 2 i d 2 0 . Since the relative velocity does not change, the time t i node n spent in zone i is given by: t i = r i (µ)¡r i¡1 (µ) v (6.4) To simplify our discussion for the case when i = 1, we de¯ne r 0 (µ) = 0 for all µ val- ues. Combining Equations 6.2 and 6.4, the relative speed v has to satisfy the following condition in order for the streaming process to ¯nish successfully: v·min µ r M (µ)br S¡B+br£t l ; § M i=1 bw i (r i (µ)¡r i¡1 (µ)) S ¶ (6.5) 83 De¯ne v(µ)=min µ r M (µ)br S¡B+br£t l ; § M i=1 bw i (r i (µ)¡r i¡1 (µ)) S ¶ (6.6) The probability to successfully stream the media object before the link breaks is thus given by R 2¼ 0 prob(v·v(µ))dµ, where prob(v·v(µ))= 1 ¼ rcos v 2 1max +v 2 2max ¡v 2 (µ) 2v 1max v 2max (6.7) and the rcos function is de¯ned as rcos(x)= 8 > > > > > > < > > > > > > : 0 x>1 cos ¡1 (x) ¡1·x·1 ¼ x·¡1 (6.8) Figure 6.4 shows the streaming probability when using the wireless card model from Table 6.1 if both nodes are moving in accordance with the random waypoint mobility model. The transmission loss is set to 10 dbm. In Figure 6.4(a), we can see that the bu®ersizehasanimmenseimpactonstreamingprobability. Whenthebu®erissmall,the probabilitytosuccessfullystreamamultimediaobjectdropssigni¯cantlyifthesizeofthe media object becomes larger than the bu®er. Our ¯rst observation is that maintaining a large bu®er size is crucial for mobile ad-hoc streaming applications. Contrary to our previous outcome in [QZL05], results in Figure 6.4(b) show that the initial distance does have a big impact on the streaming probability even if the bu®er size is adequate. This is because our previous work assumes a uniform transmission rate. Therefore, the streaming time is ¯xed and the probability does not vary too much 84 0 10 20 30 40 0.0 0.2 0.4 0.6 0.8 1.0 Probability S (MB) B=1 MB B=10 MB B=20 MB B=40 MB 0 10 20 30 40 0.0 0.2 0.4 0.6 0.8 1.0 Probability S (MB) d=0 m d=100 m d=200 m d=250 m (a) d 0 =0 (b) B =20MB Figure6.4: StreamingprobabilitywithRandomWaypointMobilityModel, br =128kbps, v max =5m=s since both nodes can either move towards or away from each other. When 802.11 ARF is considered, node n may be located in di®erent zones of node m if the initial distance changes. Consequently,thestreamistransmittedatadi®erentrateandthetimerequired to stream the media object can be greatly a®ected. 6.1.2 Random Walk Mobility Model The random walk mobility model is very hard to analyze due to its randomized nature. Here, we simplify our discussion to the case when d 0 · R 1 . Hence, initially node n can stream the multimedia content from m with bandwidth equal to bw 1 . In order to estimate the probability to stream a media object, we introduce a recursive algorithm for calculating the approximate streaming time t. By obtaining the streaming time t, we can use our link availability algorithm in [QZL05] to approximate the streaming probability. Hence the streaming probability is approximated as L(t), which is the probability that m and n are continuously connected for t seconds. 85 Let ~ R mn (t)= ~ R n (t)¡ ~ R m (t) represent the relative mobility vector between n and m. Given that the magnitude of ~ R mn (t) is r at time t, the probability that node n is located within zone 1:::i after t seconds is given by Pfd(t)·R i jR mn (t)=rg= 8 > > < > > : 1 r·R i ¡d 0 1 ¼ cos ¡1 d 2 0 +R 2 i ¡r 2 2d 0 R i r >R i ¡d 0 (6.9) From Equation 3.10, we have Pfd(t)·R i g= Z R i +d 0 r=0 Pfd(t)·R i jR mn (t)=rgf r (r)dr (6.10) According to [QZL05], node distribution is similar whether the link has to be con- tinuously available or not. Consequently, by requiring node m and n to be continuously connected, the conditional probability that node n is located within zone 1:::i after t seconds can be approximated by Pfd(t)·R i jd(t)·R M g= Pfd(t)·R i g Pfd(t)·R M g (6.11) To simplify our representation, let P i (t) denote the probability that node n is within zone i after t seconds given that m and n are continuously connected. De¯ne Pfd(t)· R 0 jd(t)·R M g=0 for all t values, we have P i (t) = PfR i¡1 ·d(t)·R i jd(t)·R M g = Pfd(t)·R i jd(t)·R M g¡Pfd(t)·R i¡1 jd(t)·R M g (6.12) 86 The expected maximum bandwidth after t seconds is thus given by bw(t)= M X i=1 bw i P i (t) (6.13) Lemma 6.1.1 Given that d 0 <R 1 , bw(t) is a monotonic decreasing function. Proof According to the Rayleigh distribution, the probability density of jR mn (t)j as a function of r and µ is given by f(r;µ;t)= r ¼(® m +® n ) e ¡r 2 ® m +® n (6.14) Given r 1 and r 2 (r 1 <r 2 ), de¯ne G(t)= f(r 1 ;µ;t) f t (r 2 ;µ;t) = r 1 r 2 e r 2 2 ¡r 2 1 ®m+®n (6.15) as a function of t, we have G 0 (t)=¡ r 1 (r 2 2 ¡r 2 1 ) r 2 (® m +® n )t e r 2 2 ¡r 2 1 ® m +® n <0 (6.16) Therefore,functionG(t)isamonotonicdecreasingfunction. Foragivenµ,nodenismore likelytobedistributedinareaswherer islargerastincreases. Becausenodedistribution is similar whether the link is continuously available or not, it is more probable for node n to be within the outer zones of m as t increases. Therefore, bw(t) is a monotonic decreasing function of t. When t is in¯nitely large, G(t) is equal to r 1 r 2 by Equation 6.15. As a result, node n is uniformly distributed after the simulation has run a long enough 87 0 200 400 2 3 4 5 Expected bandwidth time (sec) v max =5m/s v max =2m/s 0 100 200 300 400 2.3 2.4 2.5 2.6 2.7 2.8 Expected bandwidth time (sec) v max =5m/s v max =2m/s (a) d 0 =0 m (b) d 0 =180m Figure 6.5: Expected bandwidth over time, ¸ ¡1 1 =¸ ¡1 2 =30sec time. This corresponds to the result from [HLM04, BV05] when the stationary regime of random walk model has been reached. Figure6.5showstheexpectedwirelessbandwidthovertimefromEquation6.13. Here we use the same wireless model as shown in Table 6.1 and the actual bandwidth of each zone is about half of the maximum bandwidth of that zone. As shown in Figure 6.5(a), the expected bandwidth is constantly dropping if node n is initially located within zone 1 of node m. However, when the initial distance d 0 > R 1 , the expected bandwidth is no longer a monotonic decreasing function. In Figure 6.5(b), for example, node n is initially located within zone 2. When both nodes start to move, it is possible for node n to move into zone 1 after t seconds. As a result, the expected bandwidth may increasetemporallysincezone1hasahigherbandwidththanotherzones. Therefore, the expected bandwidth may °uctuate during the initial period of the simulation depending on the bandwidth distribution of each zone and the probability that node n is located within a speci¯c zone. 88 Given a time period of t seconds, the expected total time that node n is within the zone i of node m is given by t i =t Z t s=0 P i (s)ds (6.17) Combining Equations 6.2 and 6.17, we have min(B+br£(t¡t l );t£ M X i=1 bw i Z t s=0 P i (s)ds)¸S (6.18) The ¯rst half of the Equation 6.18 can be easily solved to get an upperbound of t. However, determining the upperbound of t from the second half of Equation 6.18 is di±cult. Here we introduce a novel recursive algorithm to approximate the upperbound of t. Note that we are studying the case when m and n are continuously connected. By obtaining a rough estimation of the streaming time t, we can use our link availability algorithmtoapproximatethestreamingprobabilityas L(t), whichistheprobabilitythat m and n are continuously connected for t seconds. BecausethemaximumpossibleamountoftimetostreamanobjectofsizeSis S bw M ,it ischosenastheinitialvalueoftinourrecursiveapproach. However,theactualstreaming timeshouldbemuchsmallerthan S bw M sincethestreamingbandwidthisnotalwaysbw M . Given that t= S bw M , we can calculate the expected time t i that the streaming bandwidth is bw i by integrating node n's distribution in zone i over the t seconds time period from Equation 6.17. Based on such an integration, we can calculate a new average bandwidth and a new streaming time t new . The above procedure continues until t new is within a certain threshold from its previous value. Algorithm 2 shows the procedures of this recursive algorithm. 89 Algorithm 2 Recursive algorithm for ¯nding the ad-hoc streaming time 1: t new = S bw M , t=0 2: whilejt¡t new j¸² do 3: t=t new 4: i=1 5: while i·M do 6: E(t i )= R t s=0 P i (s)ds 7: i=i+1 8: end while 9: newbw = P M j=1 bw j E(t j ) t 10: t new = S newbw 11: end while Theorem 6.1.2 If the expected bandwidth is monotonic decreasing over time, our recur- sive algorithm converges to the only value t 0 that satis¯es M X i=0 bw i Z t 0 s=0 P i (s)ds=S (6.19) Proof Because the function f(t)= M X i=0 bw i Z t s=0 P i (s)ds (6.20) isamonotonicincreasingfunctionoft,thereexistsonlyonevaluet 0 thatsatis¯esf(t 0 )= S. Notice that t's initial value S bw M >t 0 . Without loss of generality, suppose the current value of t=t 0 +¢t (¢t¸0) is passed to our recursive algorithm. Therefore, t new = S(t 0 +¢t) P M j=1 bw j R t 0 +¢t s=0 P j (s)ds = S(t 0 +¢t) S+ P M j=1 bw j R t 0 +¢t s=t 0 P j (s)ds (6.21) 90 Since the expected bandwidth is decreasing overtime, we have M X j=1 bw j Z t 0 +¢t s=t 0 P j (s)ds· ¢t t 0 M X j=1 bw j Z t 0 s=0 P j (s)ds= S¢t t 0 (6.22) Consequently, t new ¸ S(t 0 +¢t) S+ S¢t t 0 =t 0 (6.23) According to the de¯nition of P j (s)ds, we have M X j=1 Z t 0 +¢t s=t 0 P j (s)ds=¢t (6.24) From Equation 6.21 and 6.24, we have t new · S(t 0 +¢t) S+bw M ¢t (6.25) So the di®erence between t new and t 0 satis¯es ¯ ¯ ¯ ¯ t new ¡t 0 ¢t ¯ ¯ ¯ ¯ · ¯ ¯ ¯ ¯ S¡t 0 bw M S+bw M ¢t ¯ ¯ ¯ ¯ < ¯ ¯ ¯ ¯ S¡t 0 bw M S ¯ ¯ ¯ ¯ <1 (6.26) Therefore, after each iteration, t new is getting closer to t 0 and the rate of convergence is smaller than ¯ ¯ ¯ S¡t 0 bw M S ¯ ¯ ¯. So our recursive algorithm converges to t 0 . The actual convergence rate of our recursive algorithm is very fast. When ² is chosen as1,forexample,ittakesonly3to4iterationsforourrecursivealgorithmto¯nishforall di®erent S values shown in Figure 6.6. However, when the initial distance d 0 > R 1 , the above recursive algorithm is not guaranteed to converge. This is because the expected 91 0 10 20 30 40 0.0 0.2 0.4 0.6 0.8 1.0 Probability S (MB) B=1 MB B=10 MB B=20 MB B=40 MB 0 10 20 30 40 0.0 0.2 0.4 0.6 0.8 1.0 Probability S (MB) d=0 m d=100 m d=200 m (a) d 0 =0 (b) B =20MB Figure 6.6: Streaming probability for di®erent object sizes, br = 128kbps, v max = 5m=s, ¸ ¡1 1 =¸ ¡1 2 =30sec bandwidth is not monotonically decreasing over time and Inequation 6.22 may not be satis¯ed. It is possible that the t values °uctuate around t 0 . In order to solve such situations, when our iterative algorithm returns a t new <t 0 , we calculate the new t value as t+t new 2 and then compare P M i=0 bw i R t s=0 P i (s)ds with S. If the new t value is larger than t 0 , we keep this t value and start the recursive algorithm again. Otherwise, we keep on updating t by using the above linear interpolation method. However, this situation rarely happens as we experimented with di®erent d 0 values that are larger than R 1 . Figure 6.6 shows the streaming probability if nodes are moving according to the random walk mobility model. To verify the accuracy of our recursive algorithm, we simulatedthestreamingprocessbyusingns-2[ns2]andMATLAB.Thesimulationresults are shown in lines marked with a cross. We use the same wireless card model from Table 6.1. 92 Similar to that of Figure 6.4, bu®er size has a huge impact on mobile streaming per- formanceswhenS islarge. InFigure6.6, whend 0 issmall, thesimulationresultisnearly identical to the result from our recursive algorithm. However, as d 0 increases, the actual streaming time t has wider variations. Therefore, approximating the streaming time by a single t value and then calculating L(t) as the streaming probability may not be very accurate. When d = 200m, for example, there is a maximum of 15% di®erence between the simulated and predicted results. Consequently, our algorithm is more accurate for smaller d 0 values. Figure 6.7 shows the con¯dence interval of the actual streaming time whenB =S =20MB. Weonlyincludethosestreamingsimulationsthataresuccessfully completedbeforethelinkbreaks. When d 0 issmall, moststreamingprocessestakeabout the same amount of time to complete. As d 0 increases, there is a big variance of the actual streaming time. However, the mean streaming time and the predicted results do not di®er too much. Hence most successful streaming processes still ¯nish within a short period of time since it is very unlikely for a link to last for a long time. Our recursive algorithm provides similar results as the mean streaming time. Therefore, it captures the approximate time that a successful streaming process may take. 6.2 Calculation of Bu®er Size Requirement From Figures 6.4 and 6.6, we observe that the bu®er size has a very signi¯cant impact on the probability to successfully stream a media object when S is large. If B is small, thebu®ersaturatesquicklyandalargeportionofthewirelessbandwidthiswastedafter- wards. Consequently, it takes a long time for the multimedia content to be successfully 93 0 50 100 150 200 250 20 40 60 80 100 120 140 160 Time (sec) d 0 (m) Predicted results Mean streaming time Figure 6.7: Streaming time as a function of d 0 , B = S = 20MB, br = 128kbps, v max = 5m=s, ¸ ¡1 1 =¸ ¡1 2 =30sec streamed and the streaming probability may be greatly lowered. In contrast, a large bu®er size ensures that we can use the maximum possible bandwidth to stream the mul- timedia object if the link can last long enough. Therefore, we observe that determining the minimum bu®er size is very important for improving mobile streaming applications. InEquation6.2,whetherthebu®eristoosmallornotcanbedeterminedbycomparing B +br£(t¡t l ) and P M i=1 bw i t i . Therefore, we can calculate the minimum bu®er size B min by solving the equation B min +br£(t¡t l )= M X i=1 bw i t i =S (6.27) When B > B min , the stream is guaranteed to be delivered if the following inequation establishes: M X i=1 bw i t i >=S (6.28) 94 However, if the remaining link duration between m and n is short, B > B min does not guarantee that the stream can be delivered since P M i=1 bw i t i < S. For the random walk mobility model, from Equation 6.18, we can ¯rst calculate the streaming time P M i=1 t i by assumingthebu®ersizeB isin¯nite. Theminimumbu®ersizecanthenbedeterminedby S¡br£( P M i=1 t i ¡t l ). Note that the expected time for node n and m to be continuously connected before the link breaks is given by t e = Z S bw M t=0 tL(t)dt (6.29) The minimum bu®er size can thus be determined by B min =S¡br£(max(t e ;t)¡t l ) (6.30) The calculation of t e is introduced in Chapter 4. Because we use a single t value to approximatethe streamingtime of therandom walkmobilitymodel, B min valuemaynot be very accurate due to such approximations. When B > B min , it is very likely, rather than de¯nitely, that the stream can be successfully delivered if the link lasts longer than t seconds. For the random waypoint mobility model, from Equation 6.5, di®erent µ values result indi®erentB min values. Foragivenµ,lett(µ)denotetheamountoftimethatbothnodes must be continuously connected in order for the multimedia object to be successfully streamed. We have t i = (r i (µ)¡r i¡1 (µ))t(µ) r M (µ) (6.31) 95 0 10 20 30 40 0 10 20 30 40 Minimum buffer size (MB) S (MB) Random walk Random waypoint Figure 6.8: Minimum bu®er size as a function of S, d 0 = 100m, br = 256kbps, v max = 5m=s, ¸ ¡1 1 =¸ ¡1 2 =30sec From Equation 6.2, we have t(µ)= r M (µ)S P M i=1 (r i (µ)¡r i¡1 (µ))bw i (6.32) Since the maximum relative speed is smaller than v 1max +v 2max , for a given µ, B min (µ) satis¯es B min (µ)=S¡br£(max( r M (µ) v 1max +v 2max ;t(µ))¡t l ) (6.33) Therefore, if µ is known, we can use Equation 6.33 to calculate the minimum bu®er size. When µ is unknown, we can calculate the average B min value by B min = 1 2¼ Z 2¼ µ=0 B min (µ)dµ (6.34) Figure6.8showsthedistributionofB min asafunctionofS. AsindicatedinFigure6.8, di®erent mobility models do not have much impact on bu®er size requirements. Also, 96 B min increases linearly with S. According to Equation 6.27, the di®erence between B min and S is mostly a®ected by the stream rate br. A smaller br value results in a higher bu®er size requirement for the multimedia object to be successfully streamed. 6.3 Summary In this chapter, we introduced a mathematical model for calculating the probability of streaming a multimedia object in mobile ad-hoc environment. Compared to previous techniques, this model does not assume uniform wireless bandwidth, ¯xed node location, or in¯nite bu®er size. A simple link quality model is used for studying the relationship betweendistanceandwirelessbandwidth. Basedonthismathematicalmodel,westudied thebu®ersizerequirementformobilestreamingapplicationsanddemonstratedthatboth the random walk and the random waypoint mobility model have a similar bu®er size requirement. 97 Chapter 7 Improving Video Streaming Probability for Mobile Devices In the previous Chapter, we have demonstrated that bu®er size has an immense im- pact on the probability to stream a multimedia object. In this Chapter, we intro- duce a new streaming strategy by utilizing such information to improve mobile ad-hoc streaming applications. This strategy takes advantage of the Scalable Video Coding (SVC) [WWL + 01] scheme. It adaptively determines the number of enhancement layers to be streamed based on the available bu®er space and streaming probability. Addi- tionally, it can be easily extended to incorporate other video encoding schemes, such as multiple description coding (MDC) [Goy01, CWP03] and multiple description scalable coding (MDSC) [LSD03, ZYC05]. This strategy is well suited for di®erent environment where the link quality is constantly changing. 7.1 Improving Streaming Probability through SVC For most handheld devices, B is often limited by their available physical memory. There- fore, given a video sequence of size S, we can determine whether there is enough bu®er space based on our previous study of B min . Note that when B < B min , S, br and B all 98 I I Base Layer QCIF, 15 fps Enhancement Layer CIF, 30fps I P P P I P Spatial prediction Figure 7.1: Illustration of the Group Of Pictures (GOP) structure of the scalable video encoding scheme a®ect the streaming probability. On the other hand, when B > B min , only the stream size S a®ects the streaming probability. Therefore, for a ¯xed B value, we can either reduce the video stream size S or the bitrate br to improve the probability of successfully delivering the stream. Because users are often more interested in the general content of a video sequence, delivery of the whole video stream is of greater importance than video quality. To de- liver more video content, we introduce a new streaming strategy by taking advantage of the Scalable Video Coding (SVC). SVC has been widely adopted by many video en- coding methods, including the latest extension to the popular MPEG-4 [RvdSC01] and H.264/AVC [hhi, SMW06]. The method divides a video sequence into a base layer and several enhancement layers. The base layer has a lower bitrate compared to the original stream. It can be decoded independently to reconstruct the original video stream with a lower resolution or frame rate. Enhancement layers can be added to the base layer to improve video quality. Figure 7.1 illustrates the typical GOP structure of SVC. An alternative to SVC is the Multiple Description Coding (MDC). MDC divides the original videostreamintoseveralcorrelatedbitstreams. UnlikeSVC,eachstreaminMDCcanbe 99 decoded independently. Because our work only utilizes the multi-layer feature of SVC, it can be easily extended to MDC. When using SVC to stream video content, it is possible to lower the bitrate of the stream by discarding enhancement layers. Therefore, the streaming probability can be increasedbysacri¯cingthevideoqualityforacertainnumberofvideoframes. Toachieve this, we can calculate the number of enhancement layers to be discarded by studying the present bu®er space and streaming rate. Algorithm 3 shows this adaptive streaming strategy. In algorithm 3, we regularly (each t step seconds) monitor the current available bu®er size B at the receiver side and the distance d between the two ad-hoc peers. For each enhancement layer i to be added to the stream, we calculate the stream bitrate rate i and the remaining stream size S i . Note that the current bu®ered data at the receiver may have a di®erent average consumption rate than rate i . Therefore, we need to adapt to suchinconsistencybycalculatingtheaverageconsumptionrateabr i inthenexttseconds, where t is the maximum of the expected remaining link duration or remaining streaming time. As shown in Figure 7.2, the bu®ered video sequence contains both the enhancement and the base layer. However, the incoming stream only contains the base layer. As a result, the actual available bu®er size is larger than B since the bu®ered video sequence isconsumed at a fasterratethan theincoming rate. Assuming the currentbu®eredvideo sequence requires t b seconds to play back. If t b > t, then abr i is the average bitrate of the ¯rst t seconds of the bu®ered video. Otherwise, data consumed in these t seconds 100 Algorithm 3 Selective transmission of enhancement layers 1: streamedtime=0 2: estimate the initial playback latency t l 3: for i=0 to L do 4: rate i =rate baselayer + P i j=1 rate enhancelayer j 5: end for 6: while streamedtime<totaltime do 7: estimate the current available bu®er size B and distance d. 8: for i=0 to L do 9: S i =rate i £(totaltime¡streamedtime) 10: if random waypoint model then 11: t=max( P M i=1 t i ; R M (µ) v 1max +v 2max )¡t l 12: else 13: t=max( P M i=1 t i ;t e )¡t l 14: end if 15: calculatetheaverageconsumptionrateabr i ofthe¯rsttsecondsvideosequences in the bu®er 16: B i min =S i ¡abr i £t 17: end for 18: ¯nd the maximum k that satis¯es B k min ·B, if none, k =0 19: j =0;i=k 20: while i>0 and j =0 do 21: Calculate the probability P i to stream a media object of size S i with the right side of Equation 6.2 22: if P i >P min then 23: j =i 24: end if 25: i=i¡1 26: end while 27: Stream the base layer and enhancement layer 1 to j during the next t step seconds 28: update streamedtime 29: t l =max(0;t l ¡t step ) 30: end while 101 decoder Buffer Enhancement Layer Base Layer t b Incoming stream Figure 7.2: Consumption rate is higher than the incoming rate include all the video frames that are currently bu®ered and the ¯rst t¡t b seconds video of bitrate rate i . Thus abr i can be calculated as abr i = (t¡t b )£rate i +(B max ¡B) t (7.1) where B max is the maximum bu®er size at the receiver. For each resulting S i and abr i pair, B i min can be calculated from Equation 6.30 or 6.33 depending on the mobility model. If B is smaller than all B i min , it is unlikely for the sender to deliver the whole video stream before the link breaks if she streams any enhancement layers. On the other hand, if the available bu®er size B is larger than some B i min , there are two possible cases: ² If t e or R M (µ) v 1max +v 2max is smaller than the expected streaming time P t i , streaming enhancement layer 1 to layer i does not ensure delivery of the whole video stream, though the bu®er will not saturate before the link is broken. 102 ² If t e or R M (µ) v 1max +v 2max is larger than the expected streaming time P t i , it is very likely thatthewholevideostreamcanbesuccessfullydeliveredgiventhatweonlystream enhancement layer 1 to layer i. Therefore, B >B i min doesnotguaranteethatthevideosequencecanbesuccessfully streamed if we start streaming enhancement layer 1 to layer i. This is because bu®er size is not the only determinant of the streaming probability. As we have discussed earlier, when there is enough bu®er size, the streaming probability is determined by the stream size S. Therefore, we need to check the remaining stream size S i to see if it can be streamed before the link breaks. As shown in Algorithm 3, when B > B imin , we do not streamenhancementlayeriiftheprobabilityP i todeliverastreamofsizeS i within¯nite bu®er is smaller than P min . Consequently, the algorithm tries to ensure that the receiver has a probability higher than p min to receive the whole video stream. By reducing the number of enhancement layers to be streamed, we can increase the overall streaming probability. As a result, increasing the probability to deliver the video stream comes at the cost of degrading the video quality for a number of frames. Unlike traditional SVC based streaming applications which use SVC to adapt to heterogeneous environment or ensurefaulttolerance, ourstreamingstrategyutilizesSVCtoensuredeliveryofthevideo sequence by adapting to node mobility and bu®er size limitations at the receiver. 7.2 Simulation Results To analyze the bene¯ts of our streaming strategy, we simulated it in MATLAB with the settings shown in Table 7.1 and the radio model from Table 6.1. For simplicity, the video 103 Table 7.1: Simulation settings Parameters Value Video sequence length 600 sec bitrate of the base layer 64kbps bitrate of the enhancement layer 256kbps Maximum velocity 5m/s Mean epoch length of each client 30 sec t step 1 sec t l 100 msec sequence we use contains only one enhancement layer of 256 kbps. The stream size S is 4.7MB for the base layer only or 23.4 MB for both layers. For each setting of B, we conduct 10000 independent simulations and calculate the average results. Figure 7.3 shows the probability to successfully deliver the video stream by using our streaming strategy compared with using only the base layer or both layers. In Figure 7.3, when B is 1 MB, it takes more than 500 seconds to stream the video sequenceevenifthestreamonlyconsistsofthebaselayer. Therefore,itisveryimprobable to deliver the whole video stream due to node mobility. When the bu®er size increases, ourstrategycanachieveacomparablestreamingprobabilitytothatofonlydeliveringthe baselayerbysettingP min to0.9. Comparedtotherandomwaypointmobilitymodel, the random walk mobility model gives a slightly higher chance to stream the video sequence. This is because in the random walk mobility model, a mobile node tends to move around its origin after the simulation starts. Therefore, the link can often last longer than that of the random waypoint model. Our algorithm can re°ect such di®erences by yielding a higher streaming probability for the random walk model. 104 0 5 10 15 20 25 0.0 0.2 0.4 0.6 0.8 1.0 d 0 = 0 m Probability B (MB) Selective, P min =0.9 Selective, P min =0 Both layers Base layer only 0 5 10 15 20 25 0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 d 0 = 200 m Probability S (MB) (a) Random waypoint mobility model 0 5 10 15 20 25 0.0 0.2 0.4 0.6 0.8 1.0 d 0 = 0 m Probability B (MB) 0 5 10 15 20 25 0.0 0.2 0.4 0.6 0.8 d 0 = 200 m Probability B (MB) (b) Random walk mobility model Figure 7.3: Comparison of streaming probability with di®erent enhancement layer selec- tion strategies 105 It is interesting to note that increasing the bu®er size does not always increase the streaming probability. As shown in Figure 7.3, when B is larger than 15 MB, the actual streamingprobabilityisdecreasingif P min =0. Thisisbecausewhenouralgorithm¯nds that there is enough bu®er space for the remaining video stream, it will begin to stream bothlayersfortheremainingvideo. However,thisgreatlyincreasestheamountofdatato be delivered, which also determines the streaming probability due to wireless bandwidth constraints and node mobility. When P min is larger, our algorithm is very conservative in such cases and only delivers the base layer if the predicted streaming probability is smallerthanP min . Incontrast, ifP min issmall, thenbothlayerswill bestreamed aslong as there is enough bu®er space. Therefore, su±cient bu®er size does not guarantee the delivery of the whole video stream if P min is small. Figure 7.4 shows the average percentage of the base layer that is streamed to the receiver for all the simulations. Similar to Figure 7.3, the performance of our streaming strategy is close to that of using the base layer only. Therefore, the receiver can capture most of the video content in a slightly lower or equal resolution. Figure 7.5 shows the average percentage of the enhancement layer that is streamed to thereceiver. Thismetricdescribesthequalityofthevideothatisreceivedbytherecipient. Note that only streaming the base layer always results in 0 percent of enhancement layer to be streamed. Compared with the strategy of streaming both layers, our streaming strategy makes a tradeo® between the video quality and the streaming probability. If the bu®ersizeissmall, averysmallportionoftheenhancementlayerwillbestreamed. As B increases,ahigherpercentageoftheenhancementlayerwillbedelivered. WhenP min is0, 106 0 5 10 15 20 25 20 30 40 50 60 70 80 90 100 d 0 = 0 m % Average percentage of base layer delivered B (MB) 0 5 10 15 20 25 0 20 40 60 80 100 d 0 = 200 m % Average percentage of base layer delivered B (MB) (a) Random waypoint mobility model 0 5 10 15 20 25 0 20 40 60 80 100 d 0 = 0 m % Average percentage of base layer delivered B (MB) 0 5 10 15 20 25 20 30 40 50 60 70 80 90 100 d 0 = 200 m % Average percentage of base layer delivered B (MB) (a) Random walk mobility model Figure 7.4: Average percentage of base layer streamed 107 0 5 10 15 20 25 0 20 40 60 80 100 d 0 = 0 m % Average percentage of enhancement layer delivered B (MB) 0 5 10 15 20 25 0 10 20 30 40 50 60 d 0 =200 m % Average percentage of enhancement layer delivered B (MB) (a) Random waypoint mobility model 0 5 10 15 20 25 0 20 40 60 80 100 d 0 = 0 m % Average percentage of enhancement layer delivered B (MB) 0 5 10 15 20 25 0 10 20 30 40 50 60 70 d 0 =200 m % Average percentage of enhancement layer delivered B (MB) (a) Random walk mobility model Figure 7.5: Average percentage of enhancement layer streamed our streaming strategy exhibits the same performance as the strategy of streaming both layers. Therefore, tuning P min adjusts the streaming performance for di®erent scenarios. When P min is large, although our streaming strategy ensures a high streaming prob- ability, the percentage of the enhancement layer that can be streamed to the receiver is comparatively low. However, the video quality can be improved if we have more detailed information of node movement. For example, in Equation 6.27, using v 1max +v 2max as 108 0 5 10 15 20 25 0 20 40 60 80 100 d 0 =200 d 0 =0 % Average percentage of enhancement layer delivered B (MB) 0 5 10 15 20 25 30 40 50 60 70 80 90 100 % Average percentage of base layer delivered B (MB) (a) enhancement layer percentage (b) base layer percentage Figure7.6: Simulationresultsoftherandomwaypointmodelwithknownrelativevelocity information, P min =0:9 theupperboundofthecurrentrelativespeedisveryconservative. Theprobabilityforthe relative speed to be equal to v 1max +v 2max is very small. Therefore, if we know the cur- rent relative speed between two mobile nodes, we can obtain a more accurate estimation of the bu®er size. Figure7.6showsthesimulationresultswhenthe relativevelocitybetweentwomobile ad-hocnodescanbeaccuratelyestimatedbyusingtherandomwaypointmobilitymodel. As shown in Figure 7.6, with known relative velocity information, our streaming strategy can still ensure the maximum achievable streaming probability along with higher video quality compared to that of Figure 7.5. Figure 7.7 and 7.8 shows the average bitrate at each second for those successfully delivered video streams with both random waypoint and random walk mobility model, respectively. As shown in Figure 7.7, our algorithm is very conservative during the initial 109 0 100 200 300 400 500 600 50 100 150 200 250 300 350 d 0 = 0 Bitrate (Kbps) time (sec) B=5 MB B=15 MB B=25 MB 0 100 200 300 400 500 600 0 50 100 150 200 250 300 350 d 0 = 200 Bitrate (Kbps) Time (sec) (a) P min =0:9 0 100 200 300 400 500 600 50 100 150 200 250 300 350 d 0 = 0 Bitrate (Kbps) time (sec) 0 100 200 300 400 500 600 50 100 150 200 250 300 350 d 0 = 200 Bitrate (Kbps) Time (sec) (a) P min =0 Figure7.7: Averagevideoqualityofsuccessfullydeliveredstreamswithrandomwaypoint model 110 0 100 200 300 400 500 600 50 100 150 200 250 300 350 d 0 = 0 Bitrate (Kbps) Time (sec) 0 100 200 300 400 500 600 0 50 100 150 200 250 300 350 d 0 = 200 Bitrate (Kbps) Time (sec) (a) P min =0:9 0 100 200 300 400 500 600 50 100 150 200 250 300 350 d 0 = 0 Bitrate (Kbps) Time (sec) 0 100 200 300 400 500 600 0 50 100 150 200 250 300 350 d 0 = 200 Bitrate (Kbps) Time (sec) (a) P min =0 Figure 7.8: Average video quality of successfully delivered streams with random walk model 111 phase when p min is large. The ¯rst several hundred seconds of the video are always of lower video quality. Consequently, more video content can be delivered with the same bu®er space. By conserving more bu®er space for later frames, our strategy will ¯nd it feasible to deliver the rest of the video frames in both layers at a certain point of time. Therefore, the video quality is always poorer during the initial period of the playback time. This may not be very desirable for some video sequences. For example, some video frames may require higher quality in order for the viewer to notice some details in it, while other frames have no requirement on video quality. In order to solve this problem, we can label some of the video frames with high priority. When enhancement layers of these video frames are encountered, the sender always stream all layers to the receiver regardless of the prediction result from our link quality model. However, doing so may not be very fair for video frames in the later part of the video sequence. For example, if all earlier frames are marked with high priority, they might consume all the bu®er space quickly and make it improbable to deliver the rest video frames before the link is broken. To deliver as many video frames as possible, our strategy ignores the high priority °ag if it ¯nds that the base layers of the remaining video sequence cannot be successfully streamed. Figure7.9showstheaveragebitratewhenthe¯rstandthelast100secondsofthevideo sequence are marked with high priority. Note that when B = 5MB, these 200 seconds of the video sequence cannot all be streamed in both layers. Therefore, after streaming both layers of the ¯rst 50 seconds of the video sequence, our streaming strategy lowers the video quality to base layer only. And the bitrate is increased again after part of the bu®ered video is consumed during the last 100 seconds of the playback time. 112 0 100 200 300 400 500 600 50 100 150 200 250 300 350 d 0 = 0 Bitrate (Kbps) Time (sec) 0 100 200 300 400 500 600 50 100 150 200 250 300 350 d 0 = 200 Bitrate (Kbps) Time (sec) (a) Random waypoint mobility model 0 100 200 300 400 500 600 50 100 150 200 250 300 350 d 0 = 0 Bitrate (Kbps) Time (sec) 0 100 200 300 400 500 600 50 100 150 200 250 300 350 d 0 = 200 Bitrate (Kbps) Time (sec) (a) Random walk mobility model Figure7.9: Simulationresultswhenthe¯rstandthelast100secondsoftheenhancement layer are of higher priority, P min =0 113 0 400 800 1200 1600 2000 0 300 600 Number of occurances Duration before the link re-establishes after it breaks Figure 7.10: Histogram of the reconnection time after a link breaks in a 1000£1000m 2 simulation area 7.3 Improving Video Quality through Enhancement Layer Redelivery Whenthesimulationareaissmall,itisverylikelythattwodisconnectedpeerswillquickly get reconnected. Figure 7.10 shows the distribution of the reconnection time after a link isbrokenifthesimulationareais1000£1000m 2 . WeusethesamesettingsasFigure6.2. Both nodes are initially located at the center of the simulation area. To constrain a node's movement into the simulation area, we use the random walk mobility model with re°ection at the boundaries. Compared to the result of Figure 6.2, the reconnection time is much shorter when the simulation area is smaller. Therefore, it is very likely that the receiver has not consumed all its bu®ered content. We can thus "repair" the bu®ered video stream by delivering all missing data. 114 For traditional video streaming applications, it is only possible to resume streaming thevideosequencefromwhereitislefto®aftertheconnectionisrecovered. Ontheother hand, our SVC-based approach makes it is possible to transmit the missing enhancement layers after the reconnection even if all the base layers have been delivered. However, the decoder has to be able to accommodate such changes since the enhancement layers to be transmitted will not be stored contiguously to their corresponding base layers. Additionally, the bu®er management has to be modi¯ed as the original video stream and these missing enhancement layers will coexist in the same circular bu®er. Because the receiver is continuously consuming its bu®ered data, we only need to repair those video frames that are still in the bu®er. There are three possible cases according to the video content that has been delivered before the link is recovered: ² Some of the base layers of the original video sequence are still undelivered. In this case, the receiver cannot play back the entire video sequence. Since some of the video content are missing, we need to continue streaming the remaining video frames. Wecan useAlgorithm3todeliverthe remainingvideocontent. After that, the situation becomes the same as the next case. ² All the base layers of the original video sequence have been delivered while some frames in the bu®er with their enhancement layer missing. In this case, we can selectively transmit the missing enhancement layers to the receiver. However, the receiver needs to keep track of the missing enhancement layers to avoid wasting of the bu®er space and wireless bandwidth. 115 ² The bu®ered video content contains all the base and enhancement layers of the remaining video frames that have not been played back. For this case, we need to do nothing since the video quality for the bu®ered stream is already high. Because the ¯rst case requires us to resume streaming from where it is left o®, Al- gorithm 3 can successfully achieve this. However, for the second case, the situation is a little complicated. First, the receiver needs to keep track of all the missing enhancement layers. Because for each t step seconds the sender use the same bitrate to transmit the video stream, continuous frames are often of the same video quality. The receiver can use such information to keep track of how many layers are streamed for each frame. It does not need to keep track of all the frames that have already been consumed. Only the missing enhancement layers for the bu®ered video frames should be requested by the receiver. Second, the missing enhancement layers have to be synchronized with their cor- responding base layers before passing to the decoder. In order to solve this problems, the sender can add sequence numbers to all the frames before they are delivered. However, sincealltheenhancementlayerstoberetransmittedsharethesamebu®erspacewiththe original stream, this complicates the bu®er management. In order to simplify our bu®er management, we divide the original bu®er space into two parts: a dynamically increasing circular bu®er and a decreasing one-way tempo- rary bu®er. The one-way temporary bu®er stores the unconsumed video content that is streamed before any missing enhancement layers are transmitted. On the other hand, the circular bu®er stores all the missing enhancement layers that are transmitted after thereconnection. Forexample, asshowninFigure7.11(a), theunconsumedvideoframes have sequence number from 100 to 200. The shaded bu®er space is the circular bu®er 116 Original Buffer Enhancement Layer Base Layer 102 104 100 103 Begin of the dynamic circular buffer Begin of the temporary buffer 200 101 102 Original Buffer Enhancement Layer Base Layer 102 104 102103 200 107 108 Slot 1 Slot 2 (a) Initial bu®er allocation (b) Increasing circular bu®er size Original Buffer Enhancement Layer Base Layer 104 110103 200 107 109 108 111 Original Buffer Enhancement Layer Base Layer 112 120112 200 117 119 118 111 116 (c) Circular bu®er saturates (d) Enhancement layer not in the circular Figure 7.11: Bu®er management for recovering video quality 117 while the remaining bu®er space is the one-way bu®er. The size of the circular bu®er can be increased by allocating adjacent empty space from the one-way bu®er. For exam- ple, in Figure 7.11(a), the frames that do not have enhancement layers are labeled from 101 to 200. As new enhancement layers coming in, the bu®er may quickly saturate. In Figure 7.11(b), for example, the bu®er is nearly full after the enhancement layer with sequence number 107 comes in. During the mean time, the receiver has consumed two frames with sequence number 100 and 101. Therefore, the 108th enhancement layer can be inserted into two possible slots. Since slot 1 is not used, the circular bu®er increases its size and the enhancement layer is inserted into slot 1. However, as the enhancement layer of the 109th frame comes in, the one-way bu®er has no adjacent empty space to be allocated to the circular bu®er. So the content of the bu®er becomes that of Fig- ure 7.11(c) afterwards. When the 111th enhancement layer comes, it ¯nds that it cannot be accommodated by the circular bu®er. However, it is possible to put it into the tem- porary bu®er. In this case, we do not increase the size of the circular bu®er since the circular bu®er is trying to free the space occupied by 103th enhancement layer, which is not adjacent to the temporary bu®er. Therefore, the 111th enhancement layer is put to the beginning of the temporary bu®er without changing the size of the circular bu®er. After the 110th frame has been consumed, the content of the original bu®er may become that of Figure 7.11(d). Since the decoder cannot ¯nd the 111th enhancement layer in the circular bu®er, it will go to the beginning of the temporary bu®er to locate it. After this frame is consumed, the circular bu®er can increase its size again next time when the enhancement layer with sequence number 118 is consumed. Note that this approach may lower bu®er utilization since the freed bu®er space can not be reclaimed before the 118th 118 Original Buffer Enhancement Layer Base Layer 120 120121 200 126 119 118 122 Original Buffer Enhancement Layer Base Layer 120 120121 200 126 119 122 (a) Before (b) After Figure 7.12: Content of the original bu®er before and after the enhancement layer with sequence number 118 is consumed frame is consumed. However, it makes the memory management easier by not requiring a lot of memory movement. Figure 7.12 shows the content of the original bu®er before and after the enhancement layer with sequence number 118 is consumed. To show the e®ect of streaming missing data after reconnection, we simulated our approach with the same settings shown in Table 7.1. As long as the receiver has not consumed all its bu®ered video, it can request the sender to transmit the missing en- hancement layers or to continue streaming the un¯nished video content. The simulation area is set to 1000£1000m 2 . One node is initially located at the center of the simulation area while the other node is d 0 distance away from it. Figure 7.13 shows the probability to stream the entire video content. Compared to Figure 7.3, the new strategy has a 10% higherstreamingprobabilitysinceitcanresumestreamingthevideosequencefromwhere it is left o®. Figure 7.14 and 7.15 show the average percentage of the base layer and enhancement layer that has been received by the receiver, respectively. Similar to Figure 7.13, a higher percentage of the base layer can be received since the sender can resume streaming the 119 0 5 10 15 20 25 0.2 0.4 0.6 0.8 1.0 P min =0.9 P min =0 d 0 =0 Probability B (MB) 0 5 10 15 20 25 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 d 0 =200 Probability B (MB) (a) Random waypoint mobility model 0 5 10 15 20 25 0.2 0.4 0.6 0.8 1.0 d 0 =0 Probability B (MB) 0 5 10 15 20 25 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0 d 0 =200 Probability B (MB) (b) Random walk mobility model Figure 7.13: Comparison of streaming probability with di®erent enhancement layer se- lection strategies 120 0 5 10 15 20 25 40 60 80 100 d 0 =0 % Average percentage of base layer delivered B (MB) 0 5 10 15 20 25 50 60 70 80 90 100 d 0 =200 % Average percentage of base layer delivered B (MB) (a) Random waypoint mobility model 0 5 10 15 20 25 60 65 70 75 80 85 90 95 100 d 0 =0 % Average percentage of base layer delivered B (MB) 0 5 10 15 20 25 60 70 80 90 100 d 0 =200 % Average percentage of base layer delivered B (MB) (a) Random walk mobility model Figure 7.14: Average percentage of base layer streamed 121 video content. Note that in Figure 7.15, P min does not have any impact on the average percentageoftheenhancementlayerthatisreceivedbyeachreceiver. However, thisdoes notcontradictwithourresultinFigure7.5. Becauseournewstrategycandelivermissing enhancement layers after reconnection, the percentage of enhancement layer that can be delivered is largely determined by the amount of time that two nodes are connected with each other. Therefore, a smaller P min does not guarantee that a higher percentage of the enhancement layer will be streamed. Combining with the result of Figure 7.13, 7.14 and 7.15, it is better to use a larger P min value so that we can have a higher streaming probability along with better video quality. Figure 7.16 and 7.17 show the average bitrate of the video stream at each second for those successfully delivered video streams with both the random waypoint and random walk mobility model, respectively. Compared to Figure 7.7 and 7.8, the video quality is not always higher with our new approach. For example, in Figure 7.7(a), the average bitrate when d 0 = 200m and B = 25MB is always 320 kbps, which is higher than Figure 7.16. This is because more nodes are able to receive the whole video stream in poorer quality as the sender can resume the streaming process. In Figure 7.7(a), only thosereceiversthatcankeepconnectedwiththeirsendersforalongtimecansuccessfully streamthewholevideosequence. Becausethebu®erisenoughlarge, soallthelayerswill be streamed. However, in Figure 7.16, the sender may only transmit the base layer to the receiver if it ¯nds that the link cannot last for a long time. Although the streaming process may still successfully complete if both nodes are reconnected after a period of time, the average video quality is greatly lowered. 122 0 5 10 15 20 25 0 20 40 60 80 100 d 0 =0 % Average percentage of enhancement layer delivered B (MB) 0 5 10 15 20 25 0 10 20 30 40 50 60 70 80 % d 0 =200 Average percentage of enhancement layer delivered B (MB) (a) Random waypoint mobility model 0 5 10 15 20 25 0 20 40 60 80 100 d 0 =0 % Average percentage of enhancement layer delivered B (MB) 0 5 10 15 20 25 0 10 20 30 40 50 60 70 d 0 =200 % Average percentage of enhancement layer delivered B (MB) (a) Random walk mobility model Figure 7.15: Average percentage of enhancement layer streamed 123 0 100 200 300 400 500 600 50 100 150 200 250 300 350 d 0 =0 Bitrate (Kbps) Time (sec) 0 100 200 300 400 500 600 50 100 150 200 250 300 350 d 0 =200 Bitrate (Kbps) Time (sec) (a) P min =0:9 0 100 200 300 400 500 600 50 100 150 200 250 300 350 d 0 =0 Bitrate (Kbps) Time (sec) 0 100 200 300 400 500 600 50 100 150 200 250 300 350 d 0 =200 Bitrate (Kbps) Time (sec) B=5 MB B=15 MB B=25 MB (a) P min =0 Figure 7.16: Average video quality of successfully delivered streams with random way- point model 124 0 100 200 300 400 500 600 50 100 150 200 250 300 350 d 0 =0 Bitrate (Kbps) Time (sec) 0 100 200 300 400 500 600 50 100 150 200 250 300 350 d 0 =200 Bitrate (Kbps) Time (sec) (a) P min =0:9 0 100 200 300 400 500 600 50 100 150 200 250 300 350 d 0 =0 Bitrate (Kbps) Time (sec) 0 100 200 300 400 500 600 50 100 150 200 250 300 350 d 0 =200 Bitrate (Kbps) Time (sec) (a) P min =0 Figure 7.17: Average video quality of successfully delivered streams with random walk model 125 7.4 Summary In this chapter, we introduced a new streaming strategy for improving the performance of video streaming applications between two mobile ad-hoc peers. This strategy takes advantage of the scalable video coding scheme to adaptively change the bitrate of the requested video stream. When receiver's bu®er space is limited, the sender will discard all the enhancement layers to increase streaming probability. On the contrary, if there is su±cientbu®erspace,thevideoqualitywillbeenhancedbystreamingallthelayerstothe receiver. Simulationresultsshowthatourstrategycanimprovethestreamingprobability by a maximum of 60% while keeping the video quality relatively high. Furthermore, we canimproveourvideostreamingstrategybylabelingsomevideoframeswithhighpriority or by resuming the streaming process after the link is recovered. 126 Chapter 8 Conclusion In this paper, we introduced a mathematical framework for modeling media streaming performance in mobile ad-hoc environment. We ¯rst described an iterative algorithm for predicting continuous link availability between two mobile peers with the random walk mobility model. Our algorithm can accurately approximate continuous link availability with an error margin of less than 7%. We then extend this algorithm to the case when either or both nodes' velocities can be estimated. To demonstrate the advantages of this link availability model, we integrated it with the MStream mobile p2p streaming architecture. Simulation results illustrate that our algorithm can improve mobile stream- ing experience by reducing the number of link breaks and providing a longer continuous streaming duration. Based on this link availability model, a service replication strategy for providing guaranteed streaming service coverage in a large mobile ad-hoc networks is introduced. This strategy is useful for many areas such as surveillance, battle ¯eld and road networks where customer access to the media service is crucial. Because the amount of time to stream a multimedia object in mobile ad-hoc envi- ronment can be a®ected by many factors, such as bu®er size, bit rate, and nonconstant 127 wireless bandwidth, relying solely on link availability cannot yield an accurate approxi- mation of the probability to deliver a media object. In order to achieve better accuracy andbemorerealistic,amorecomprehensivemodelforanalyzingmobilead-hocstreaming performance by integrating a simple link quality model into our link availability model is introduced. This model supports IEEE 802.11 ARF scheme along with two popular mobilitymodels: the random waypoint andthe random walk mobilitymodel. Simulation results from this model show that the probability to successfully stream a media object is mainly a®ected by the receiver's bu®er size and the remaining link duration. To enhance the probability to stream a whole video sequence with limited bu®er size, we introduced a novel streaming strategy by taking advantage of the scalable video coding scheme. Our strategy selectively transmits the enhancement layers to the receiver by taking the current receiver's bu®er space into consideration. This strategy can greatly increase the probability to successfully stream a video sequence by a maximum of 60% with minor video quality degradation. Our work can be extended in many directions. First, it can incorporate other mo- bility models, such as the manhattan mobility model [BCF06] or the freeway mobility model [KHC + 05, LKK06]. To achieve this, the link availability algorithm need to be modi¯ed by carefully studying the distribution of link duration. Second, since our cur- rent streaming strategy only works for video sequences, incorporating audio into our streaming strategy would be very useful. For example, the MPEG-4 Scalable Audio Coding [saa, YLRH05] can be used to change the bit rate of audio streams. Our current streamingstrategyisbasedonthelayeredstructureofthescalablevideoencodingscheme. It can be easily modi¯ed to use other similar video encoding schemes such as multiple 128 description coding or multiple description scalable coding, etc. For mobile ad-hoc net- works, constraints such as battery power and available bandwidth are not addressed in this work. Real experiments can be carried out in future researches to study such issues. Finally,issuessuchasdigitalrightsmanagementmayariseasstreamsaredeliveredfreely fromonepeertoanother. Sinceourstreamingstrategyonlybu®ersthestreamedcontent, it might partially solve this problem. 129 References [ABCG05] GiuseppeAnastasi,EleonoraBorgia,MarcoConti,andEnricoGregori. Ieee 802.11badhocnetworks: Performancemeasurements. 8(2-3):135{145, July 2005. [ALLC00] Ian F. Akyildiz, Yi-Bing Lin, Wei-Ru Lai, and Rong-Jaye Chen. A new random walk model for pcs networks. 18(7):1254{1260, July 2000. [Bas99] StefanoBasagni. Distributedclusteringforadhocnetworks. In Proceedings of the 1999 International Symposium on Parallel Architectures, Algorithms and Networks (ISPAN '99), pages 310{315, June 1999. [BB87] Fran» cois Baccelli and Pierre Br¶ emaud. Palm Probabilities and Stationary Queues, volume 41 of Lecture Notes in Statistics. Springer-Verlag, 1987. [BBFB + 03] Erik Bach, Sigrid S. Bygdas, Mathilde Flydal-Blichfeldt, Andre Mlonyeni, Oystein Myhre, Silja I. Nyhus, Tore Urnes, Asmund Weltzien, and Anne Zanussi. Bubbles: Navigating multimedia content in mobile ad-hoc net- works. In Proceedings of the 2nd International Conference on Mobile and Ubiquitous Multimedia, December 2003. [BCF06] Seema Bandyopadhyay, Edward J. Coyle, and Tillmann Falck. Stochastic properties of mobility models in mobile ad hoc networks. In Proceedings of 40th Annual Conference on Information Sciences and Systems, pages 1205{1211, March 2006. [BGK04] Samip Bararia, Shahram Ghandeharizadeh, and Shyam Kapadia. Evalua- tion of 802.11a for Streaming Data in Ad-hoc Networks. In Proceedings of 4th Workshop on Applications and Services in Wireless Networks, August 2004. [Blu] Bluetooth. http://www.bluetooth.com/Bluetooth/. [Bou05] Jean-Yves Le Boudec. On the stationary distribution of speed and location of random waypoint. IEEE Transactions on Mobile Computing, 4(4):404{ 405, July-August 2005. [BSH03] Fan Bai, Narayanan Sadagopan, and Ahmed Helmy. Important: A frame- work to systematically analyze the impact of mobility on performance of routing protocols for adhoc networks. In INFOCOM, March 2003. 130 [BV05] Jean-Yves Le Boudec and Milan Vojnovic. Perfect simulation and station- arity of a class of mobility models. In INFOCOM, March 2005. [BW04] Guangwei Bai and Carey Williamson. The e®ects of mobility on wireless media streaming performance. In Proceedings of Wireless Networks and Emerging Technologies (WNET), July 2004. [CBD02] Trace Camp, Je® Boleng, and Vanessa Davies. A survey of mobility models for ad hoc network research. Wireless Communications & Mobile Com- puting (WCMC): Special issue on Mobile Ad Hoc Networking: Research, Trends and Applications., 2(5):483{502, 2002. [CDT02] Mainak Chatterjee, Sajal K. Das, and Damla Turgut. Wca: A weighted clustering algorithm for mobile ad hoc networks. Cluster Computing, 5(2):193{204, 2002. [CWP03] Philip A. Chou, Helen J. Wang, and Venkata N. Padmanabhan. Layered multiple description coding. In Proceedings of International Packet Video Workshop, April 2003. [div] divx video codec. http://www.divx.com. [Fri46] Harald T. Friis. A note on a simple transmission formula. In Proceedings of IRE, volume 34, pages 254{256, May 1946. [GC04] Gregor Gaertner and Vinny Cahill. Understanding link quality in 802.11 mobile ad hoc networks. IEEE Internet Computing, 8(1):55{60, 2004. [GdWMJ03] MichaelGerharz,ChristiandeWaal,PeterMartini,andPaulJames. Strate- gies for ¯nding stable paths in mobile wireless ad hoc networks. In Proceed- ings of the 28th Annual IEEE Conference on Local Computer Networks, pages 130{139, October 2003. [GE01] Lewis Girod and Deborah Estrin. Robust range estimation using acoustic and multimodal sensing. In Proceedings of the IEEE/RSJ International Conference on Intelligent Robots and Systems, October 2001. [GL02] Leana Golubchik and John C. S. Lui. Multi-path streaming: is it worth the trouble? SIGMETRICS Performance Evaluation Review, 30(3):12{14, 2002. [GOB + 04] Gregor Gaertner, Eamonn ONuallain, Andrew Butterly, Kulpreet Singh, and Vinny Cahill. 802.11 link quality and its prediction - an experimen- tal study. Personal Wireless Communications, Lecture Notes in Computer Science, 3260:147{163, 2004. [Goy01] Vivek K. Goyal. Multiple description coding: Compression meets the net- work. IEEE Signal Processing Magazine, 18(5):74{93, September 2001. 131 [Hal05] Benjamin J. Halpert. Interference e®ects on wireless link availability. In Proceedings of IEEE SoutheastCon 2005, pages 537{ 541, April 2005. [Har01] TakahiroHara. E®ectivereplicaallocationinadhocnetworksforimproving data accessibility. In INFOCOM, pages 1568{1576, April 2001. [hhi] Scalable extension of h.264/avc. http://ip.hhi.de/imagecom G1/savce/in- dex.htm. [HLM04] Yijie Han, Richard J. La, and Armand M. Makowski. Distribution of path durations in mobile ad-hoc networks - palm's theorem at work. In Proceed- ings of the 16th ITC Specialist Seminar, September 2004. [HSJ03] Ron Frederick Henning Schulzrinne, Stephen L. Casner and Van Jacobson. RTP: A Transport Protocol for Real-Time Applications. RFC 3550, IETF, July 2003. [HWB00] Je®reyHightower,RoyWant,andGaetanoBorriello. Spoton: Anindoor3d location sensing technology based on rf signal strength. Technical Report UW CSE 2000-02-02, University of Washington, Department of Computer Science and Engineering, 2000. [IEE99] IEEE standard for wireless lan-medium access control and physical layer speci¯cation. Technical report, IEEE Computer Society, November 1999. [ipo] iPod. Apple Computer, Inc. http://www.apple.com/ipod/. [JDJ01] Shengming Jiang, He Dajiang, and Rao Jianqiang. A prediction-based link availability estimation for mobile ad hoc networks. In INFOCOM, pages 1745{1752, April 2001. [Jia04] Shengming Jiang. An enhanced prediction-based link availability estima- tion for manets. IEEE Transactions on Communications, 52(2):183{186, Feburary 2004. [JMB96] DavidB.Johnson,DavidA.Maltz,andJoshBroch. DynamicSourceRout- ing in ad hoc Wireless Networks. In Tomasz Imielinski and Hank Korth, editors, Mobile Computing, pages 153{181. Kluwer Academic Publishers, 1996. [KHC + 05] Jaehyun Kim, Woojin Han, Woohyuk Choi, Yunil Hwang, Taehwan Kim, Joowook Jang, Jaeyong Um, and JunChae Lim. Performance analysis on mobility of ad-hoc network for inter-vehicle communication. In Proceedings of the Fourth Annual ACIS International Conference on Computer and In- formation Science (ICIS'05), pages 528{533, December 2005. [KKS06] Ku-Lan Kao, Chih-Heng Ke, and Ce-Kuen Shieh. Video transmission per- formance evaluation of ad hoc routing protocols. In Proceedings of IEEE International Conference on Intelligent Information Hiding and Multimedia Signal Processing (IIHMSP 2006), December 2006. 132 [KMP99] Goutham Karumanchi, Srinivasan Muralidharan, and Ravi Prakash. Infor- mationdisseminationinpartitionablemobileadhocnetworks. InSRDS'99: Proceedings of the 18th IEEE Symposium on Reliable Distributed Systems, October 1999. [KT75] Samuel Karlin and Howard E. Taylor. A First Course in Stochastic Pro- cesses. Academic Press, 2 edition, March 1975. [KTS + 06] TaniyamaKenta,MoriiTakeshi,KoizumiShinya,NoguchiKazuhiro,Kotani Yukihiro, and Katto Jiro. Experimental evaluation of an on-demand mul- tipath routing protocol for video transmission in mobile ad hoc networks. Journal of Zhejiang Univeristy Science A, 7(2):145{150, 2006. [LH00] Ben Liang and Zygmunt J. Haas. Virtual backbone generation and main- tenance in ad hoc network mobility management. In INFOCOM, pages 1293{1302, March 2000. [LKK06] Jung-Shian Li, Chuan-Kai Kao, and Hung-Cheng Kao. Routing in fast- moving mobile ad hoc networks. In Proceedings of the 2006 International Conference on Wireless Networks, pages 231{236, June 2006. [LMT04] Mathieu Lacage, Mohammad Hossein Manshaei, and Thierry Turletti. IEEE 802.11 rate adaptation: a practical approach. In Proceedings of 7th ACM international symposium on Modeling, analysis and simulation of wireless and mobile systems, pages 126{134, October 2004. [LSD03] Yuxin Liu, Paul Salama, and Edward J. Delp. Multiple description scal- able coding for error-resilient video transmission over packet networks. In ProceedingsoftheSPIEInternationalConferenceonImageandVideoCom- munications and Processing, volume 5002, pages 157{168, January 2003. [LW03] Baochun Li and Karen H. Wang. Nonstop: Continuous multimedia stream- ing in wireless ad hoc networks with node mobility. 21(10):1627{1641, De- cember 2003. [LZC05] LeslieS.Liu, RogerZimmermann, andWilliamCarter. Mstream: Position- aware mobile music streaming. In Proceedings of the 3rd Annual Interna- tional Conference on Mobile Systems, Applications and Services,June2005. [McG05] MichaelMcGuire. Stationarydistributionsofrandomwalkmobilitymodels for wireless ad hoc networks. In MobiHoc '05: Proceedings of the 6th ACM international symposium on Mobile ad hoc networking and computing, May 2005. [Mer] Mercora. http://www.mercora.com. [Mil85] Dave L. Mills. Network Time Protocol (NTP). Network Working Group Request for Comments: 958, 1985. 133 [MZ99a] A.BruceMcDonaldandTaiebF.Znati. Linkavailabilitymodelsformobile ad-hoc networks. Technical Report TR 99-07, University of Pittsburgh, Department of Computer Science, May 1999. [MZ99b] A. Bruce McDonald and Taieb F. Znati. A mobility-based framework for adaptive clustering in wireless ad hoc networks. 17(8):1466{1487, August 1999. [MZ99c] A.BruceMcDonaldandTaiebF.Znati. Apathavailabilitymodel forwire- lessad-hocnetworks. InProceedings of the IEEE Wireless Communications and Networking Conference, September 1999. [NLJ04] Ping Chung Ng, Soung Chang Liew, and Li Bin Jiang. A performance evaluationframeworkforieee802.11ad-hocnetworks. In Proceedings of the 1st ACM international workshop on Performance evaluation of wireless ad hoc, sensor, and ubiquitous networks, pages 123{124, October 2004. [ns2] the network simulator - ns-2. http://www.isi.edu/nsnam/ns/. [PCB00] Nissanka B. Priyantha, Anit Chakraborty, and Hari Balakrishnan. The cricket location-support system. In MobiCom '00: Proceedings of the 6th annualinternationalconferenceonMobilecomputingandnetworking,pages 32{43, August 2000. [PIP + 03] Neal Patwari, Alfred O. Hero III, Matt Perkins, Neiyer S. Correal, and Robert J. O'Dea. Relative location estimation in wireless sensor networks. IEEE Transactions on Signal Processing, 51(8):2137{2148, August 2003. [PR98] Charles E. Perkins and Elizabeth M. Royer. Ad hoc on demand distance vector (AODV) routing. Internet-Draft Version 2, IETF, March 1998. [pro] Proxim orinoco 11b client pc card speci¯cation. http://www.proxim.com/ learn/library/datasheets/11bpccard.pdf. [QCG06] Asfandyar Qureshi, Jennifer Carlisle, and John Guttag. Tavarua: Video streaming with wwan striping. In Proceedings of ACM Multimedia 2006, October 2006. [QK03] Liang Qin and Thomas Kunz. Increasing packet delivery ratio in dsr by link prediction. In Proceedings of 36th Hawaii International Conference on System Sciences, pages 300{309, 2003. [QZ05] Min Qin and Roger Zimmermann. An energy-e±cient voting-based cluster- ing algorithm for sensor networks. In Proceedings of the 6th ACIS Inter- national Conference on Software Engineering, Arti¯cial Intelligence, Net- working and Parallel/Distributed Computing (SNPD 2005), pages 444{451, May 2005. 134 [QZ06a] Min Qin and Roger Zimmermann. An Enhanced Link Availability Model for Supporting Multimedia Streaming in MANETs. Technical Report 06- 878,ComputerScienceDepartment,UniversityofSouthernCalifornia,June 2006. [QZ06b] Min Qin and Roger Zimmermann. Supporting guaranteed continuous me- dia streaming in mobile ad-hoc networks with link availability prediction. In Proceedings of the 14th annual ACM international conference on Multi- media, October 2006. [QZ07] MinQinandRogerZimmermann. Improvingvideostreamingprobabilityin mobilead-hocenvironmentthroughscalablevideocoding. InProceedings of the 15th annual ACM international conference on Multimedia (submitted), September 2007. [QZL05] Min Qin, Roger Zimmermann, and Leslie S. Liu. Supporting multimedia streaming between mobile peers with link availability prediction. In Pro- ceedings of the 13th annual ACM international conference on Multimedia, pages 956{965, November 2005. [Rap96] Theodore S. Rappaport. Wireless Communications, Principles and Prac- tice. Prentice Hall, 2 edition, 1996. [Ros05] Sheldon M. Ross. Introduction to Probability Models. Academic Press, Boston, Massachusetts, 8 edition, December 2005. [RvdSC01] HayderM.Radha,MihaelavanderSchaar,andYingweiChen. TheMPEG- 4 ¯ne-grained scalable video coding method for multimedia streaming over IP. IEEE Transactions on Multimedia, 3(1):53{68, March 2001. [RYZ + 05] Kultida Rojviboonchai, Fan Yang, Qian Zhang, Hitoshi Aida, and Wenwu Zhu. Amtp:a multipath multimedia streaming protocol for mobile ad hoc networks. In Proceedings of IEEE Intemational Conference on Communi- cations (ICC), volume 2, pages 1246{1250, May 2005. [saa] Mpeg-4 audio: Scalable aac coding. http://www.iis.fraunhofer.de/fhg/Im- ages/aac%20scalable tcm97-67338.pdf. [SBKH03] Narayanan Sadagopan, Fan Bai, Bhaskar Krishnamachari, and Ahmed Helmy. Paths: analysis of path duration statistics and their impact on reactive manet routing protocols. In Proceedings of the 4th ACM interna- tional symposium on Mobile ad hoc networking computing, pages 245{256, June 2003. [SCN03] Samarth H. Shah, Kai Chen, and Klara Nahrstedt. vailable bandwidth estimation in ieee 802.11-based wireless networks (extended abstract). In Proceedings of the 1st ISMA/CAIDA Workshop on Bandwidth Estimation, December 2003. 135 [SHS01] Andreas Savvides, Chih-Chieh Han, and Mani B. Strivastava. Dynamic ¯ne-grained localization in ad-hoc networks of sensors. In MobiCom '01: Proceedings of the 7th annual international conference on Mobile computing and networking, pages 166{179, July 2001. [SLG01] WilliamSu,Sung-JuLee,andMarioGerla. Mobilitypredictionandrouting inadhocwirelessnetworks. InternationalJournalofNetworkManagement, 11(1):3{30, January 2001. [SMW06] Heiko Schwarz, Detlev Marpe, , and Thomas Wiegand. Overview of the scalable h.264/mpeg4-avc extension. In Proceedings of IEEE International Conference on Image Processing, October 2006. [SSBRA05] Yuan Sun, Irfan Sheri®, Elizabeth M. Belding-Royer, and Kevin C. Almeroth. An experimental study of multimedia tra±c performance in mesh networks. In Proceedings of the 2005 workshop on Wireless tra±c measurements and modeling, pages 25{30, June 2005. [WL02a] Karen Wang and Baochun Li. E±cient and guaranteed service coverage in partitionable mobile ad-hoc networks. In INFOCOM, volume 2, pages 1089{1098, June 2002. [WL02b] KarenH.WangandBaochunLi. Groupmobilityandpartitionpredictionin wireless ad-hoc networks. In Proceedings of IEEE International Conference on Communications (ICC), April 2002. [WLC04] B.HofmannWellenhof,HerbertLichtenegger,andJamesCollins. Globalpo- sitioningsystem: theoryandpractice. SpringerVerlag,5edition,September 2004. [WWL + 01] Qi Wang, Feng Wu, Shipeng Li, Yuzhuo Zhong, and Ya-Qin Zhang. Fine- granularity spatially scalable video coding. In Proceedings of IEEE Inter- national conference on Acoustics, Speech and Signal Processing (ICASSP), volume 3, pages 1801{1804, May 2001. [XG03] Qi Xue and Aura Ganz. Ad hoc qos on-demand routing (AQOR) in mobile ad hoc networks. Journal of Parallel and Distributed Computing, Special issue on Routing in mobile and wireless ad hoc networks, 63(2):154{165, February 2003. [YF04] Ossama Younis and Sonia Fahmy. Distributed clustering in ad-hoc sensor networks: A hybrid, energy-e±cient approach. In INFOCOM, March 2004. [YLG03] Dan Yu, Hui Li, and Ingo Gruber. Path availability in ad-hoc network. In Proceedings of the International Conference on Telecommunications, Febru- ary 2003. [YLN03] Jungkeun Yoon, Mingyan Liu, and Brian Noble. Random waypoint consid- ered harmful. In INFOCOM, March 2003. 136 [YLRH05] Rongshan Yu, Xiao Lin, Susanto Rahardja, and Haibin Huang. Mpeg-4 scalable to lossless audio coding-emerging international standard for digital audio compression. In Proceedings of International Workshop on Multime- dia Signal Processing 2005, pages 1{4, October 2005. [ZD97] Mahmood M. Zonoozi and Prem Dassanayake. User mobility modeling and characterization of mobility patterns. IEEE Journal on Selected Areas in Communications, 15(7):1239{1252, 1997. [ZND99] CarlR.Zeisse,BrettD.Nener,andRandleV.Dewees. Measurementoflow- altitude infrared transmission. Technical Report 1797, SPAWAR Systems Center, June 1999. [zun] Zune. http://www.zune.net. [ZYC05] Haifeng Zheng, Lun Yu, and ChangWen Chen. Robust video transmission based on multiple description scalable coding with erec. In Proceedings of Visual Communications and Image Processing 2005, July 2005. 137
Abstract (if available)
Abstract
Numerous types of handheld devices are becoming popular with end users, who increasingly use them to carry multimedia content on the go. As wireless connectivity is integrated into these devices, streaming multimedia content among mobile ad-hoc peers is becoming a popular application. One of the most important challenges in streaming multimedia content among mobile ad-hoc peers is to deliver the content, usually large in size, over a dynamic peer-to-peer based network where link availability is constantly changing. Hence, an accurate prediction of future link condition is very important and allows, for example, the selection of the most stable link when a multimedia object is available from multiple peers. However, existing techniques often simplify the problem by calculating average link durations, fixing node locations or assuming a constant wireless bandwidth. Additionally, they often do not utilize the current node information in predicting future link status.
Linked assets
University of Southern California Dissertations and Theses
Conceptually similar
PDF
Techniques for peer-to-peer content distribution over mobile ad hoc networks
PDF
Scalable peer-to-peer streaming for interactive applications
PDF
Automatic image matching for mobile multimedia applications
Asset Metadata
Creator
Qin, Min (author)
Core Title
Supporting multimedia streaming among mobile ad-hoc peers with link availability prediction
School
Andrew and Erna Viterbi School of Engineering
Degree
Doctor of Philosophy
Degree Program
Computer Science
Publication Date
09/17/2007
Defense Date
05/08/2007
Publisher
University of Southern California
(original),
University of Southern California. Libraries
(digital)
Tag
link availability,mobile ad-hoc networks,multimedia streaming,OAI-PMH Harvest,random walk
Language
English
Advisor
Zimmermann, Roger (
committee chair
), Chew, Elaine (
committee member
), Kuo, C.-C. Jay (
committee member
), Neumann, Ulrich (
committee member
)
Creator Email
mqin@usc.edu
Permanent Link (DOI)
https://doi.org/10.25549/usctheses-m823
Unique identifier
UC1224473
Identifier
etd-Qin-20070917 (filename),usctheses-m40 (legacy collection record id),usctheses-c127-553628 (legacy record id),usctheses-m823 (legacy record id)
Legacy Identifier
etd-Qin-20070917.pdf
Dmrecord
553628
Document Type
Thesis
Rights
Qin, Min
Type
texts
Source
University of Southern California
(contributing entity),
University of Southern California Dissertations and Theses
(collection)
Repository Name
Libraries, University of Southern California
Repository Location
Los Angeles, California
Repository Email
cisadmin@lib.usc.edu
Tags
link availability
mobile ad-hoc networks
multimedia streaming
random walk