Implementation of the SWIM Mobility Model in OMNeT++ Asanga Udugama - - PowerPoint PPT Presentation

implementation of the swim mobility model in omnet
SMART_READER_LITE
LIVE PREVIEW

Implementation of the SWIM Mobility Model in OMNeT++ Asanga Udugama - - PowerPoint PPT Presentation

Implementation of the SWIM Mobility Model in OMNeT++ Asanga Udugama 1 , Behruz Khalilov 1 , Anas bin Muslim 1 , Anna Frster 1 and Koojana Kuladinithi 2 1 University of Bremen, Germany 2 Hamburg University of Technology, Germany OMNeT++


slide-1
SLIDE 1

Implementation of the SWIM Mobility Model in OMNeT++

OMNeT++ Community Summit 2016 Brno University of Technology, Czech Republic September 15 – 16, 2016

Asanga Udugama1, Behruz Khalilov1, Anas bin Muslim1, Anna Förster1 and Koojana Kuladinithi2

1 University of Bremen, Germany 2 Hamburg University of Technology, Germany

slide-2
SLIDE 2

Contents

Motivation SWIM Mobility Model Mobility Models in OMNeT++ SWIM Implementation in OMNeT++ Evaluations Summary and Future Work

2

slide-3
SLIDE 3

Motivation

3

slide-4
SLIDE 4

Motivation

Internet of Things (IoT)

Over 200 billion devices by 2020 [1]

Focus of research

Opportunistic Networking

IoT Scenarios

Many human oriented scenarios e.g., Smartphone user enabling health monitoring

Nature of human oriented Scenarios

Mobile users

Scale of Devices in the IoT - Large

Require simulators – OMNeT++

4

slide-5
SLIDE 5

Motivation

OMNeT++ has a number of Mobility Models

Random Way Point, Random Direction, etc.

Human mobility has different characteristics Small Worlds in Motion (SWIM) is a Mobility Model that captures these characteristics [2] Focus: Develop the SWIM Model to simulate human

  • riented scenarios

Useful for the OMNeT++ community

5

slide-6
SLIDE 6

SWIM Mobility Model*

6

* A. Mei and J. Stefa, SWIM: A Simple Model to Generate Small Mobile Worlds, IEEE INFOCOM, 2009

slide-7
SLIDE 7

SWIM

Based on 2 intuitions of human mobility

Regularly visited locations are near to home and, A far location is visited due to its popularity

Categorizes locations as,

Home (Neighboring) location Visiting locations

Next location selection based on weights

7

w(C) = α · distance(hA, C) + (1 − α) · seen(C)

  • w(C) - weight assigned to cell C by node A;
  • distance(hA, C) - function of distance from node A to cell C ;
  • seen(C) - number of nodes that node A encountered at cell C;
  • α - constant in the range of [0; 1].
slide-8
SLIDE 8

SWIM contd…

Weight function

Increases with popularity of a place, Decreases with the distance from the home location

Empirically verified

8

slide-9
SLIDE 9

Mobility Models in OMNeT++

9

slide-10
SLIDE 10

Mobility Models in OMNeT++

OMNeT++ has a number of models

Available in the INET framework

Simulation of mobility – using 2 methodologies

Synthetic models – artificially generated mobility patterns Traces – mobility pattern data collected from actual movements

Synthetic Models – classified based on the nature of movement

Deterministic models – devoid of stochasticity Random models – stochasitic movement patterns

SWIM – Synthetic model with random destination selection

10

slide-11
SLIDE 11

Mobility Architecture in OMNeT++

IMobility Interface – implemented by mobility models

Other models invoke methods in interface to obtain information

OMNeT++ Base Mobility Implementations

Extensible classes to include mobility model specific functionality e.g., LinearSegmentsMobilityBase – linear movement and moves in segments

SWIM – Extends the LinearSegmentsMobilityBase model

11

slide-12
SLIDE 12

SWIM Implementation in OMNeT++

12

slide-13
SLIDE 13

SWIM Implementation Requirements

Basic functionality required

Constant speed of mobility, Linear movements

SWIM extends LineSegmentsMobilityBase Functionality separation in a node

Initialization Phase – setup activities Mobility Phase – activities related to movement of node

13

slide-14
SLIDE 14

SWIM Implementation Flow Chart

14

Locations Created? Create Locations (i.e., Grid the network Load Locations Decide Node’s Own Position Identify Location Separation (Home, Neighbouring and Visiting) Decide Next Destination Location and the Position within that Location to move to (also handle Pause Time wait) Move Update Node Counts at Locations

Initialisation Phase Mobility Phase

Start Simulation End Simulation Signal Received? No Yes Reached Destination? Yes Yes No No

Initialization Phase

Create and load locations Decide node’s own position Identify location separation

Mobility Phase

Decide next destination and pause time Move Update node counts

slide-15
SLIDE 15

SWIM Configurable Parameters

15

neighbourLocationLimit – distance to determine location separation noOfLocations – locations to create from movement area alpha – SWIM α value initialX, initialY, initialZ – initial coordinates of a node maxAreaX, maxAreaY, maxAreaZ – movement area waitTime – pause time after reaching a destination speed – velocity of node when moving

slide-16
SLIDE 16

Evaluations

16

slide-17
SLIDE 17

Evaluations

17

Focused on how destinations are selected

Emphasis on Visiting Locations (lower α) Emphasis on Neighboring Locations (higher α)

50 100 150 200 250 300 350 400 50 100 150 200 250 300 350 400 Home Neighboring Locations Visiting locations Mobility

X (meters) Y (meters)

50 100 150 200 250 300 350 400 50 100 150 200 250 300 350 400 Home Neighboring Locations Visiting locations Mobility

X (meters) Y (meters)

slide-18
SLIDE 18

Summary and Future Work

18

slide-19
SLIDE 19

Summary

19

SWIM – an empirically validated mathematical model to model human mobility, proposed by authors of [2] Based on 2 intuitions related to human mobility

Regularly travelled locations lie close to home Further locations are visited due to their popularity

Purpose of this work – implementation of the SWIM model in OMNeT++ Currently available at Github (search: SWIM mobility)

slide-20
SLIDE 20

Future Work

20

Our work with SWIM – use in opportunistic networks Organic Data Dissemination (ODD) – Communication Model ([3])

Opportunistic networks Internet of Things

ODD – Currently as an OMNeT++ model SWIM is ideally suited for evaluating ODD – but not all scenarios Key lacking area – reactiveness

Destinations change (while in motion) due to external events e.g., an emergency, change of plans

slide-21
SLIDE 21

References

21

slide-22
SLIDE 22

References

22

[1] IDC IVIEW, Digital Universe in 2020, December 2012 [2] A. Mei and J. Stefa, SWIM: A Simple Model to Generate Small Mobile Worlds, IEEE INFOCOM, 2009 [3] A. Foerster et al, A Novel Data Dissemination Model for Organic Data Flows, MONAMI 2015, September 2015, Santander Spain

slide-23
SLIDE 23

Thank You.

23

Questions?