680 likes | 828 Views
“Sociological Orbits” Mobility Profiling and Routing for Mobile Wireless Networks. Joy Ghosh Ph.D. Dissertation Defense Major Advisor: Dr. Chunming Qiao. Outline. Mobility - Impact on Routing / Advantages Acquaintance Based Soft Location Management (ABSoLoM)
E N D
“Sociological Orbits”Mobility Profiling and Routingfor Mobile Wireless Networks Joy Ghosh Ph.D. Dissertation Defense Major Advisor: Dr. Chunming Qiao
Outline • Mobility - Impact on Routing / Advantages • Acquaintance Based Soft Location Management (ABSoLoM) • Sociological ORBIT Mobility Framework • Mobility Profiling Techniques and Applications • Sociological Orbit aware Location Approximation and Routing (SOLAR) – MANET & ICMAN • Theoretical Analysis of SOLAR • Routing problem formulation for ICMAN • Approximation algorithm for delivery probability • Mathematical model for computing contact probability • Edge-constrained routing protocol and its performance • Concluding Remarks
Mobility Impact on Routing • Node Mobility Dynamic network topology • Proactive protocols are inefficient • Need to exchange control packets too often • Leads to congestion • E.g., Distance Vector, Link State • Reactive protocols are better suited, but • Locating a node incurs more delay • Route maintenance is tricky as nodes move • E.g., Dynamic Source Routing (DSR), Location Aided Routing (LAR)
Framework for analyzing impact of mobility on protocol performance • F. Bai, N. Sadagopan, and A. Helmy, “Important: a framework to systematically analyze the impact of mobility on performance of routing protocols for adhoc networks”, Proceedings of IEEE INFOCOM '03, vol. 2, pp. 825-835, March 2003.
Greedy Geographic Forwarding • Pros • Less affected by mobility than source routes • Smaller header size (no path cached) • Cons • Nodes need to know own location • Needs sufficient node density • Workarounds for local maxima • Broadcast • Planar graph perimeter routing (e.g., GPSR)
Advantages of Node Mobility – Individual node’s view of network
Advantages of Node Mobility – Node’s view of network through “acquaintances”
Acquaintance Based Soft Location Management (ABSoLoM) • Forming and maintaining acquaintances • Limit number of acquaintances • Keep updating acquaintances of location • Query acquaintances for destination location • Limit query propagation by logical hops • On learning of destination, use geographic forwarding to send packets to destination • Nosy Neighbors • Can respond to query if destination’s location is known • Caches node locations while forwarding certain packets
Performance Analysis • Simulated in GloMoSim • LAR & DSR borrowed from the GloMoSim distribution • Implementation of SLALoM by Dr. Sumesh J. Philip (author) • ABSoLoM parameters • Number of friends = 3 • Maximum logical hops = 2 • 100 nodes in 2000m x 1000m for 1000s • Random Waypoint mobility • Velocity = 0m/s-10m/s; Pause = 15s • Random CBR connections varied in simulation • 50 packets per connection; 1024 bytes per packet
Simulation Results – II(a) Hop Latency vs. Load & (b) Throughput vs. Mobility
Parallel growth of models and protocols • Practical mobility models • Random Waypoint simple, but impractical!! • Entity based individual node movement • Group based collective group movement • Scenario based geographical constraints • Mobility pattern aware routing protocols • Mobility tracking and prediction • Link break estimation • Choice of next hop
Our Motivation • Not to suggest only a practical mobility model • MANET is comprised of wireless devices carried by people living within societies • Society imposes constraints on user movements • Study the social influence on user mobility • Realization of special regions of some social value • Identify a macro level mobility profile per user • Use this profile to aid macro level soft location management and routing
Sociological Orbit Framework • Mobile Users • influenced by social routines • visit a few “hubs” / places(outdoor/indoor) regularly • “orbit” around (fine to coarse grained) hubs at several levels
Illustration of A Random Orbit Model(Random Waypoint + Corridor Path) Conference Track 2 Conference Track 1 Exhibits Lounge Conference Track 3 Registration Posters Conference Track 4 Cafeteria
Traces Used • Profiling techniques applied to ETH Zurich traces • Duration of 1 year from 4/1/04 till 3/31/05 • 13,620 wireless users, 391 APs, 43 buildings • Grouped users into 6 groups based on degree of activity • Selected one sample (most active) user from each group • Mapped APs into buildings based on AP’s coordinates, and each building becomes a “hub” • Converted AP-based traces into hub-based traces • Other traces • Expect similar results from Dartmouth’s traces • No sufficient AP location info from other traces • UMass’s traces are for buses, more predictable than users • Need to obtain actual users’ traces with GPS
Hub Based Mobility Profiles and Prediction On any given day, a user may regularly visit a small number of “hubs” (e.g., locations A and B) • On any given day, a user may regularly visit a small number of “hubs” (e.g., locations A and B) • Each mobility profile is a weighted list of hubs, where weight = hub visit probability (e.g., 70% A and 50% B) • In any given period (e.g., week), a user may follow a few such “mobility profiles” (e.g., P1 and P2) • Each profile is in turn associated with a (daily) probability (e.g., 60% P1 and 40% P2) • Example: P1={A=0.7, B=0.5} and P2={B=0.9, C=0.6} • On an ordinary day, a user may go to locations A, B and C with the following probabilities, resp.: 0.42 (=0.6x0.7), 0.66 (= 0.6x0.5 + 0.4+0.9) and 0.24 (=0.4x0.6) • 20% more accurate than simple visit-frequency based prediction • Knowing exactly which profile a user will follow on a given day can result in even more accurate prediction Each mobility profile is a weighted list of hubs, where weight = hub visit probability (e.g., 70% A and 50% B) In any given period (e.g., week), a user may follow a few such “mobility profiles” (e.g., P1 and P2) Each profile is in turn associated with a (daily) probability (e.g., 60% P1 and 40% P2) • Example: P1={A=0.7, B=0.5} and P2={B=0.9, C=0.6} • On an ordinary day, a user may go to locations • A, B & C with the following probabilities: • 0.42 (=0.6x0.7), 0.66 (= 0.6x0.5 + 0.4+0.9), 0.24 (=0.4x0.6) • 20% more accurate than simple visit-frequency based prediction • Knowing exactly which profile a user will follow on a given day • can result in even more accurate prediction
Orbital Mobility Profiling • Obtain each user’s daily hub lists as binary vectors • Represent each hub list (binary vector) as a point in a n-dimensional space (n = total number of hubs) • Cluster these points into multiple clusters, each with a mean • Using the Expectation-Maximization (EM) algorithm based on a Mixture of Bernoulli’s distribution • Probe other classification methods: Bayesian-Bernoulli’s • Each cluster mean represents a mobility profile, described as a probabilistic hub visitation list • User’s mobility is aptly modeled using a mixture of mobility profiles with certain “mixing proportions”
Profiling illustration Translate to binary hub visitation vectors Apply clustering algorithm to find mixture of profiles Obtain daily hub stay durations
Hub-based Location Predictions - I • Unconditional Hub-visit Prediction • Prediction Error = Incorrect hubs predicted over Total hubs • SPE – Statistical based Prediction Error • SPE-ALL: (n+1)th day prediction based on hub-visit frequency from day 1 through day n • SPE-W7 : (n+1)th day prediction based on hub-visit frequency within last week, i.e., day (n-7) through day n • PPE – Profile based Prediction Error • PPE-W7 : (n+1)th day prediction based on profiles of the last week, i.e., day (n-7) through day n • Prediction Improvement Ration (PIR) • PIR-ALL = (SPE-ALL – PPE-W7) / SPE-ALL • PIR-W7 = (SPE-W7 – PPE-W7) / SPE-W7
Unconditional Prediction Results The profile mixing proportions vary with every window of n days
Hub-based Location Predictions - II • Conditional Hub-visit Prediction • Improvement given current profile is known/identifiable • It is possible sometimes to infer profile from current hub information alone • Our method effectively leverages information when available Actually visited Ht on day D or not Target Hub ID: will the user visit this hub? Predicted probability using visit frequency The current day in question Predicted probability based on profile Indicator (Current) Hub Current Profile Sample user categories
Hub-based Location Predictions - III • Hub sequence prediction based on hub transitional probability • Prediction Accuracy = 1 – (incorrect predictions / total predictions) • Scenario 1: only starting hub is known for sequence prediction • Scenario 2: hub prediction is corrected at every hub in sequence • Better performance with increasing knowledge – intuitive Time based Prediction Accuracy (TPA) – temporal profiles Statistical based Prediction Accuracy (SPA) – no profile information Profile based Prediction Accuracy (PPA) – no time information
Applications of Orbital Mobility Profiles • Location Predictions and Routing within MANET and ICMAN • Anomaly based intrusion detection unexpected movement (in time or space) sets off an alarm • Customizable traffic alerts alert only the individuals who might be affected by a specific traffic condition • Targeted inspection examine only the persons who have routinely visited specific regions • Environmental/healthmonitoring identify travelers who can relay data sensed at remote locations with no APs
Profile based Routing within MANET • Build a sociological orbit based mobility model (Random Orbit) • Assume that mobility profiles are obtained • Devise routing protocols to leverage mobility information within MANET setting • Key assumption – geographical forwarding is feasible
Sociological Orbit aware Location Approximation and Routing (SOLAR) - Basic • Every node knows • Own coordinates, Own Hub list, All Hub coordinates • Periodically broadcasts Hello • SOLAR-1 : own location & Hub list • SOLAR-2 : own location & Hub list + 1-hop neighbor Hub lists • Cache neighbor’s Hello • Build a distributed database of acquaintance’s Hub lists • Unlike “acquaintanceship” in ABSoLoM, SOLAR has • No formal acquaintanceship request/response its not mutual • Hub lists are valid longer than exact locations lesser updates • For unknown destination, query acquaintances for destination’s Hub list (instead of destination’s location), in a process similar to ABSoLoM
Sociological Orbit aware Location Approximation and Routing (SOLAR) - Advanced • Subset of acquaintances to query • Problem: Lots of acquaintances lot of query overhead • Solution: Query a subset such that all the Hubs that a node learns of from its acquaintances are covered • Packet Transmission to a Hub List • All packets (query, response, data, update) are sent to node’s Hub list • To send a packet to a Hub, geographically forward to Hub’s center • If “current Hub” is known – unicast packet to current Hub • Default – simulcast separate copies to each Hub in list • We compared simulcast, unicast, multicast – simulcast had best performance with higher cost of overhead and delay • On reaching Hub, do Hub local flooding if necessary • Improved Data Accessibility – Cache data packets within Hub • Data Connection Maintenance • Two ends of active session keep each other informed • Such location updates generate “current Hub” information
Sociological Orbit aware Location Approximation and Routing (SOLAR) – Illustration Hub E Hub A Hub H Hub D Hub B Hub G Hub F Hub I Hub C
Performance Analysis Metrics • Data Throughput (%) • Data packets received / Data packets generated • Relative Control Overhead (bytes) • Control bytes send / Data packets received • Approximation Factor for E2E Delay • Observed delay / Ideal delay • To address “fairness” issues!
Routing challenges in ICMAN • ICMAN Features of DTN/ICN + MANET • Lack of infrastructure and any central control • May not have an end-to-end path from source to destination at any given point in time • Conventional MANET routing strategies fail • User mobility may not be deterministic or controllable • Devices are constrained by power, memory, etc. • Applications need to be delay/disruption tolerant
User level routing strategies • Deliver packets to the destination itself • Intermediate users store-carry-forward the packets • Mobility profiles used to compute pair wise user contact probability P(u,v) via Semi-Markov Process • Form weighted graph G with edge weights w(u,v) = log (1/P(u,v)) • Apply modified Dijkstra’s on G to obtain k-shortest paths (KSP) with corresponding Delivery probability under following constraints • Paths are chosen in increasing order of total weights (i.e., minimum first) • Each path must have different next hop from source • S-SOLAR-KSP (static) protocol • Source only stores set of unique next-hops on its KSP • Forwards only to max k users of the chosen set that come within radio range within time T • D-SOLAR-KSP (dynamic) protocol • Source always considers the current set of neighbors • Forwards to max k users with higher delivery probability to destination
Hub level routing strategy • Deliver packets to the hubs visited by destination • Intermediate users store-carry-forward the packets • Packet stored in a hub by other users staying in that hub (or using a fixed hub storage device if any) • Mobility profiles used to obtain delivery probabilities (DP), not the visit probability, of a user to a given hub • i.e. user may either directly deliver to hub by traversing to the hub, or may pass onto other users who can deliver to the hub • Fractional data delivered to each hub proportional to the probability of finding the destination in it • Routing Strategy SOLAR-HUB protocol
SOLAR-HUB Protocol • Pdnihj: delivery probability (DP) of user ni to hub hj • Ptnihj: probability of user ni to travel to hub hj • h(ni): hub that user ni is going to visit next • Pcnink(hj): probability of contact between users ni & nj in hub hj • N(ni): neighbors of user ni • Pdnihj = max(Ptnihj, maxk(Pcnink(h(ni))*Ptnkhj)) • Source ns will pick ni as next hop to hub hj as: • {ni | max(Pdnihj), niЄ N(ns)} iff Pdnihj > Pdnshj • Packet Delivery Scheme • Source transmits up to k copies of message • k/2 to neighbors with higher DP to “most visited” hub • k/2 to neighbors with higher DP to “2nd most visited” hub • Downstream users forward up to k users • with higher DP to the hub chosen by upstream node
Performance – Number of Hubs • Overhead of EPIDEMIC is much more than others and had to be omitted from plot • Overall D-SOLAR-KSP performs best
Performance – Number of Users • Overhead of EPIDEMIC is much more than others and had to be omitted from plot • Overall D-SOLAR-KSP performs best like before because it is the most opportunistic in forwarding to any of its current neighbors
Performance – Cache Size (Only SOLAR) • All versions fair better with more cache • Overall D-SOLAR-KSP performs best
Performance – Cache Timeout (Only SOLAR) • All versions fair better with larger timeout • Overall D-SOLAR-KSP performs best
Routing problem in probabilistic graphs • Objective: maximize delivery probability from nodes s to t under various constraints • G = (V,E) be a complete directed graph • V = ICMAN users; E = probabilistic contact between users • Let A be a routing algorithm and G(A) be the delivery sub-graph induced by A • Delivery probability is then s,t-connectedness probability (two-terminal reliability) denoted by Conn2(G(A)) • Goal is to find a delivery sub-graph G(A) to maximize Conn2(G(A)) • we have shown it to be #P-hard • 2 Possible approaches • Approximate Conn2(G(A)) by another polynomial time function • Develop heuristics for A for which Conn2(G(A)) can be approximated in polynomial time
Approximation algorithm • G = (V, E) where edge probability between nodes u and v is pe(u,v) (a) • In G, starting from s, all nodes choose at most k downstream edges to get Gk = (V, Ek) (b) • Weight of each edge in Gk is set to • we(u,v) = -1 * log (pe(u,v)) to get G’k say • Compute shortest path from s to all nodes in G’k to get Gsp = (V, Esp) & assign BFS level #s (c) • Reset we(u,v) = pe(u,v) & add all edges (v,d)that were in G to get G’ = (V, E’) (d) • Let Pd(u,v) be delivery probability of node u to v • Apply Algorithm 1 to G’ to get Pd(s,d) • Start with any u≠ d with maximum level # • Pd(u,d) = 1 – Πk1(1 – pi) • Where pi = we(u,vi) * Pd(vi, d) for all edges (u,vi)