Download presentation
Presentation is loading. Please wait.
1
Mobility Models and Traces
Wei-jen Hsu Advised by Dr. Ahmed Helmy Presented in CIS6930 class, Spring 2008
2
Outline Simulation of user mobility
Within NS-2 As a stand-alone code Traces from existing wireless networks
3
Simulation of User Mobility
Why? Mobile ad hoc networks are still not widely deployed, even though a lot of research has been done. But it is a fundamental factor that influences network protocol performance. Use simulation as a way to perform experiments in a controlled environment.
4
Simulation of User Mobility
How? Use existing network simulation tools (e.g., NS-2) with extensions to handle user mobility. Build you tool from scratch.
5
Simulation of User Mobility
How to choose a suitable approach? NS-2 Powerful simulation tool, with many existing protocols implemented for it. Hence complex, with high overhead You have to fit your idea into its structure You own tool You can do anything you want, focusing on the part that matters to you Clean-slate implementation You have to re-build everything; credibility
6
Simulation of User Mobility
What do you want from the simulation? Mobility metrics or statistics for the mobility model Performance of routing protocols under the mobility model
7
NS-2 Mobility Interface
Protocol performance Mobility metric Mobility generator Protocol Simulation (NS) NS trace file format
8
Ns-2 Mobility file format
Mobility trace file Format (the line you need to instruct how a node moves): $ns_ at <time> “$node_(<id>) setdest <x> <y> <speed>” Example: $ns_ at "$MN2 setdest “ Why is this format chosen??
9
Ns-2 Mobility file format
10
Ns-2 Mobility file format
NS provides only linear movement What if I want a movement trajectory of arbitrary curve? B(t1) A(t0)
11
Plugging scenario files into NS
It’s simple, just add these lines in your tcl script Create tcl variables for file location set val(cp) "../mobility/scene/cbr-3-test" set val(sc) "../mobility/scene/scen-3-test" Include these files in simulation source $val(cp) source $val(sc)
12
How do I generate these files?
Default mobility file generator is RWP model. /indep-utils/cmu-scen-gen/setdest/setdest Default traffic file generator is “random UDP flows” /indep-utils/cmu-scen-gen/cbrgen.tcl Use IMPORTANT tool to generate more complex mobility scenario Or… Write your own stand alone code!
13
How to use IMPORTANT tool?
Remember that it is a stand-alone program, with nothing to do with NS except that it’s output scenario files are NS-compatible. So understand the program, compile it, provide parameters you want, and run it!
14
What mobility models does IMPORTANT tool provide?
Temporal Dependence Spatial Dependence Geographic Restriction Application Random Waypoint Model General No No No Group Mobility Model Battlefield No Yes No Freeway Mobility Model Metropolitan Traffic Yes Yes Yes Manhattan Mobility Model Metropolitan Traffic Yes No Yes
15
Random waypoint Random Waypoint Model
Each node chooses a random destination and moves towards it with a random velocity chosen from [0, Vmax] After reaching the destination, the node stops for a duration defined by the “pause time” parameter After this duration, it again chooses a random destination and repeats the whole process again until the simulation ends Parameters: Max Velocity Vmax, Pause time T
16
Setdest utility Format Command $node(<id>) set X_ <x0>
$node(<id>) set Y_ <y0> $node(<id>) set Z_ <z0> $ns_ at <time> “$node_(<id>) setdest <x> <y> <speed>” Command ./setdest –n <num_of_nodes> -p <pause_time> -M <max_speed> -t <simu_time> -x <max_x> -y <max_y> > <trace_filename>
17
Reference Point Group Mobility
Reference Point Group Model Each group has a logical center (group leader) that determines the group’s motion behavior Each nodes within group has a speed and direction that is derived by randomly deviating from that of the group leader Parameter: Angle Deviation Ratio(ADR) and Speed Deviation Ratio(SDR) Max_velocity
18
Group Mobility Generator
In simulation, we use two sets of trace files Single group: all nodes move within one group Multiple group: each group moves independent of each other and in an overlapping fashion Input Mobility trace file of group leaders Output Mobility trace file of all nodes SG MG
19
Freeway Model Freeway Model
Each mobile node is restricted to its lane on the freeway The velocity of mobile node is temporally dependent on its previous velocity If two mobile nodes on the same freeway lane are within the Safety Distance (SD), the velocity of the following node cannot exceed the velocity of preceding node
20
Implementation Parameters Input: map format Output Key
Map and Max_velocity Input: map format <freeway id> <lane id> <x0,y0> <x1,y1> Output Trace file for all nodes Key Link list to maintain the order of nodes on the same lane Randomly insert the nodes into various lane
21
Manhattan Model Similar specification with freeway, but it allows node to make turns at each corner of street At each intersection Probability of moving on the same street is 0.5 Probability of turning right is 0.25 Probability of turning left is 0.25 Parameter Map Max_velocity
22
Manhattan Map Input: map
Street: <street_id> <lane_id> <direction> <x0,y0> <x1,y1> Corner: <ver_str_id> <hrn_str_id> <x,y>
23
Time-Variant Community Model
Available at User manual and mobility trace generator. It generates mobility trace in 2 formats – NS-2 format and (x, y, t) format You can configure the time period structure and communities for each node with full freedom
24
Issues with Mobility Models
Open network v.s. closed network Each node has an ID, there is a given number of nodes, and they don’t leave the simulation area This does not really capture the dynamics for a highly given environment Potential solution: the “black hole” Take care of the dynamics, but it is still the same node Reuse the same node for a different virtual ID?
25
Issues with Mobility Models
Boundary Effects The boundary can be also “torus” or “reflective” Torus is unrealistic but analytically nice. Reflective is more realistic. You need to make decisions on all these small things in the mobility model!!
26
Traces Why traces? A realistic measurement of user’s behavior in wireless networks For example, “re-play” the trace as a mobility input for users in the simulation Note this is a very different approach from mobility modeling (philosophy and granularity)
27
Where to get the traces? Collect it yourself
Sniffers, bluetooth encounters, etc. Monitor the existing infrastructure WLANs? Cellular phone networks? Internet traffic? Go to the trace archives
28
The UF WLAN Trace Collected from the on-campus WLAN in UF, at two different levels Access points report syslogs Authentication servers report syslogs The trace is being uploaded to our server in the lab at almost “real time”
29
Access Points Syslogs Users are reported by MAC addresses
When they associate with a AP When they disaccosiate from a AP When they roam away from a AP When some other event happens (error in packet checksum, max retry for a packet reached, etc.)
30
Authentication server syslogs
The authentication server reports the following events DHCP lease – IP xxx is given to MAC yyy User log in – User Gatorlink-ID logs in from MAC yyy User log out – User Gatorlink-ID logs out, and it has been online for time ttt, sent/received bbb bytes Every 30 minutes, each online user is reported for its traffic usage in the past 30 mins
31
What is new? The differentiation of “having the intention to use wireless network” v.s. “just turning on the computer” The capability to analyze the data at “device level (MAC address)” and “user level (Gatorlink ID)” Getting the trace at “almost real time” Traffic summary with location information
32
Other Popular WLAN traces
USC trace Collected from summer 2005 to today Time/location information of the user (association) at switch port level. The mapping between switch port and building is available but messy (changing a lot) Dartmouth trace Collected from 2001 to 2004 Time/location information of user, SNMP logs from access points, tcpdump traffic headers
33
Other Popular WLAN traces
UCSD – PDA experiment ~275 PDA users Time/location information, each PDA logs all APs in communication range MIT/IBM Corporate users from 3 buildings Time/location information, SNMP logs
34
Traces of Other Types Encounter traces Cellphone traces
The Intel/Cambridge Haggle/Pocket Switch Network project The U of Toronto PDA-based encounter experiments Cellphone traces MIT Reality Mining: encounter, location of users (by cellphone tower/bluetooth), call log
35
Usage of the Traces To understand existing systems (WLANs)
How, when, where do users use WLAN? Can users be classified based on their behaviors? Can we build models of users? To leverage it as a ground for not-yet-deployed services/protocols IF users behave like this, what if we do…. IF users continue to develop a trend, where will we be in year 201X?
36
Final Notes Downside of trace-based work Concerns
Unable to access the ground truth Using the current user data to speculate the future We have plenty data sets for the normal scenarios, but should they be the focus? Concerns Privacy What’s a real-world application that can’t be done with today’s the great Internet?
37
Potential Directions Combing the trace with small-scale experiments
Build new testbeds and prototype new services Come up with a specific scenario to provide solutions for Challenge the established knowledge
38
Tricks of Trace Processing
Identify a common format that you can convert multiple traces into I use one file for each user, within each file, each line represents “time location duration” Abuse your hard drive Keep intermediate results if they take long time to generate.... You will thank your former self years after you generated those files Learn handy tools Shell script, perl, database (Udayan’s turn)
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.