VANET Simulations with JiST/ SWANS SEVECOM Kick-off Workshop Elmar Schoch

Slides:



Advertisements
Similar presentations
What is a Computer Program? For a computer to be able to do anything (multiply, play a song, run a word processor), it must be given the instructions.
Advertisements

UNIVERSITY OF JYVÄSKYLÄ P2PDisCo – Java Distributed Computing for Workstations Using Chedar Peer-to-Peer Middleware Presentation for 7 th International.
Introduction To Java Objectives For Today â Introduction To Java â The Java Platform & The (JVM) Java Virtual Machine â Core Java (API) Application Programming.
Sensor Network Platforms and Tools
Overview: Chapter 7  Sensor node platforms must contend with many issues  Energy consumption  Sensing environment  Networking  Real-time constraints.
Introduction CSCI 444/544 Operating Systems Fall 2008.
A Mobile Infrastructure Based VANET Routing Protocol in the Urban Environment School of Electronics Engineering and Computer Science, PKU, Beijing, China.
Technical Advisor : Mr. Roni Stern Academic Advisor : Dr. Meir Kalech Team members :  Amit Ofer  Liron Katav Project Homepage :
Introduction to Java Kiyeol Ryu Java Programming Language.
Contiki A Lightweight and Flexible Operating System for Tiny Networked Sensors Presented by: Jeremy Schiff.
Performance Comparison of Routing Protocols for Ad Hoc Networks PATTERN ENDIF Ferrara.
Java for High Performance Computing Jordi Garcia Almiñana 14 de Octubre de 1998 de la era post-internet.
Scripting Languages For Virtual Worlds. Outline Necessary Features Classes, Prototypes, and Mixins Static vs. Dynamic Typing Concurrency Versioning Distribution.
SANS A Simple Ad hoc Network Simulator Nicolas Burri Roger Wattenhofer Yves Weber Aaron Zollinger.
Figure 1.1 Interaction between applications and the operating system.
Matnet – Matlab Network Simulator for TinyOS Alec WooTerence Tong July 31 st, 2002.
WSN Simulation Template for OMNeT++
Component-Based Routing for Mobile Ad Hoc Networks Chunyue Liu, Tarek Saadawi & Myung Lee CUNY, City College.
VADD: Vehicle-Assisted Data Delivery in Vehicular Ad-hoc Networks
Introduction to Java.
Web Application Architecture: multi-tier (2-tier, 3-tier) & mvc
QualNet 2014/05/ 尉遲仲涵. Outline Directory Structure QualNet Basic Message & Event QualNet simulation architecture Protocol Model Programming.
OMNET++. Outline Introduction Overview The NED Language Simple Modules.
Lecture 1 Introduction to Java MIT- AITI 2004 What is a Computer Program? For a computer to be able to do anything (multiply, play a song, run a word.
Minor Thesis Presentation By: Junaid M. Shaikh Supervisor: Dr. Ivan Lee 1.
Arpit Jain Mtech1. Outline Introduction Dalvik VM Java VM Examples Comparisons Experimental Evaluation.
Redes Inalámbricas Máster Ingeniería de Computadores 2008/2009 Tema 7.- CASTADIVA PROJECT Performance Evaluation of a MANET architecture.
An intro to programming. The purpose of writing a program is to solve a problem or take advantage of an opportunity Consists of multiple steps:  Understanding.
Mobile Networking Challenges1 5.6 Mobile Ad Hoc Networks  Ad hoc network does not have any preexisting centralized server nodes to perform packet routing,
Why Java? A brief introduction to Java and its features Prepared by Mithat Konar.
Introduction to the Java Virtual Machine 井民全. JVM (Java Virtual Machine) the environment in which the java programs execute The specification define an.
Jens Mittag DSN Research Group – Institute of Telematics – University of Karlsruhe ns-3 and wifi - An overview of physical layer models Jens Mittag, Timo.
Chapter 34 Java Technology for Active Web Documents methods used to provide continuous Web updates to browser – Server push – Active documents.
1 Module Objective & Outline Module Objective: After completing this Module, you will be able to, appreciate java as a programming language, write java.
BLU-ICE and the Distributed Control System Constraints for Software Development Strategies Timothy M. McPhillips Stanford Synchrotron Radiation Laboratory.
Silberschatz, Galvin and Gagne  2002 Modified for CSCI 399, Royden, Operating System Concepts Operating Systems Lecture 7 OS System Structure.
Enrique Alba, Sebastián Luna, and Jamal ToutouhAccuracy and Efficiency in Simulating VANETs MCO’08 Metz, France September 8-10 th, 2008 MCO’08 Metz, France.
Middleware for FIs Apeego House 4B, Tardeo Rd. Mumbai Tel: Fax:
A study of Intelligent Adaptive beaconing approaches on VANET Proposal Presentation Chayanin Thaina Advisor : Dr.Kultida Rojviboonchai.
Small-Scale and Large-Scale Routing in Vehicular Ad Hoc Networks Wenjing Wang 1, Fei Xie 2 and Mainak Chatterjee 1 1 School of Electrical Engineering and.
Operating Systems David Goldschmidt, Ph.D. Computer Science The College of Saint Rose CIS 432.
02/09/2010 Industrial Project Course (234313) Virtualization-aware database engine Final Presentation Industrial Project Course (234313) Virtualization-aware.
SELMA: A middleware platform for self- organizing distributed applications in mobile multi-hop ad-hoc networks Daniel Görgen, Hannes Frey, Johannes K.
Core Java Introduction Byju Veedu Ness Technologies httpdownload.oracle.com/javase/tutorial/getStarted/intro/definition.html.
A scalable workbench for implementing and evaluating distributed applications in mobile ad-hoc networks Johannes K. Lehnert, Daniel Görgen, Hannes Frey,
Kun-chan Lan and Chien-Ming Chou National Cheng Kung University
An Efficient Gigabit Ethernet Switch Model for Large-Scale Simulation Dong (Kevin) Jin.
DSN & SensorWare Projects Rockwell Science Center –Charles Chien UCLA –Mani Srivastava, Miodrag Potkonjak USC/ISI –Brian Schott, Bob Parker Virginia Tech.
Lesson 1 1 LESSON 1 l Background information l Introduction to Java Introduction and a Taste of Java.
Lecture1 Instructor: Amal Hussain ALshardy. Introduce students to the basics of writing software programs including variables, types, arrays, control.
RealTimeSystems Lab Jong-Koo, Lim
1 Chapter 2: Operating-System Structures Services Interface provided to users & programmers –System calls (programmer access) –User level access to system.
Lesson 2: First Java Programs. 2.1 Why Java? Java is one of the most popular programming languages in the world. Java is a modern object-oriented programming.
Session 1: Technology Development August 15 NSF Workshop.
Sung-Dong Kim, Dept. of Computer Engineering, Hansung University Java - Introduction.
Realistic Mobility Models for Vehicular Ad hoc Network (VANET) Simulations ITST 高弘毅 洪佳瑜 蔣克欽.
INTRODUCTION TO WIRELESS SENSOR NETWORKS
Computer System Structures
Applications Active Web Documents Active Web Documents.
Analysis the performance of vehicles ad hoc network simulation based
Simulators for Sensor Networks
Mobicom ‘99 Per Johansson, Tony Larsson, Nicklas Hedman
Lecture 1 Runtime environments.
Introduction Enosis Learning.
Introduction Enosis Learning.
Chapter 3: Operating-System Structures
Introduction CSC 111.
Accuracy and Efficiency in Simulating VANETs
ModelNet: A Large-Scale Network Emulator for Wireless Networks Priya Mahadevan, Ken Yocum, and Amin Vahdat Duke University, Goal:
Lecture 1 Runtime environments.
Presentation transcript:

VANET Simulations with JiST/ SWANS SEVECOM Kick-off Workshop Elmar Schoch

SEVECOM Kick-off Workshop Elmar Schoch 2 Cornell University Overview JiST Java in Simulation Time - Discrete event simulation engine in Java DUCKS - Framework for automated simulation execution and evaluation SWANS Scalable Wireless Ad Hoc Network Simulator - Library for MANET simulations STRAW - Street Mobility Model VANS extensions - Geographic routing setup, control, evaluate use UULM North Western University

SEVECOM Kick-off Workshop Elmar Schoch 3 JiST – Simulation Kernel Basic idea: Convert virtual machine into simulation platform –Introduce virtual time –Make use of modern language concepts Base: Java and JVM –All components are pure Java (Rewriter, simulation kernel, library, simulation setup, …) –Reuse Java: reflection, interfaces, libraries, … Kernel –Strict partitioning of a simulation into entities –Method invocations on objects marked as entities represent simulation events –No explicit event queue, but virtual, explicit time progress Entity Object

SEVECOM Kick-off Workshop Elmar Schoch 4 JiST – System architecture Java source files are compiled with regular Java compiler Running JiST invokes Rewriter –Rewriter modifies Java bytecode to introduce simulation time semantics JiST invokes simulation program –Rewritten program interacts with simu kernel –Virtual time progress independent of program progress (instructions take zero virtual time) –Time is advanced explicitly via JistAPI.sleep() –Time synchronization between Entities on method invocation (each Entity runs at own simulation time) Classes may be used without underlying JiST Kernel Java source code javac Java bytecode Rewriter Modified classes JVM + kernel

SEVECOM Kick-off Workshop Elmar Schoch 5 JiST example import jist.runtime.JistAPI; class Hello implements JistAPI.Entity { public static void main(String[] args) { System.out.println(“Simulation start“); Hello h = new Hello(); h.doSequence(3); } public void doSequence(int count) { while( count > 0 ) { JistAPI.sleep(1); System.out.println(“Hello t=“+JistAPI.getTime()); count--; } } } # java jist.runtime.Main Hello > Simulation start > Hello t=1 > Hello t=2 > Hello t=3

SEVECOM Kick-off Workshop Elmar Schoch 6 JiST – Performance Event troughput –~ three times faster than ns2-C –ns2-Tcl shows extreme performance degradation –JiST shows kink in the first simulation second due to JIT compiler Memory footprint Source: JiST User Guide

SEVECOM Kick-off Workshop Elmar Schoch 7 SWANS Library for MANET simulations SWANS is an application of JiST Special properties: –Promises to handle huge node numbers with reasonable time/memory requirements Example: Neighbor Discovery Protocol, 15 minutes –Efficient signal propagation by hierarchical binning –Allows running standard Java network apps over simulated networks Source:

SEVECOM Kick-off Workshop Elmar Schoch 8 Network SWANS overview Field Radio MAC/LL Message Queue Routing Transport Application Mobility Random waypoint/walk, Static, Teleport CBR, heartbeat, legacy Java networking UDP, TCP Zero, Rayleigh or Rician fading, Free-space or Two-Ray path-loss IPv4 AODV, DSR, ZRP IEEE b, Naive MAC Indep. & additive noise

SEVECOM Kick-off Workshop Elmar Schoch 9 VANET simulations Node mobility model –Vehicle movements High velocities Quasi one-dimensional movements on highways Short encounters of oncoming traffic –Vehicle Behavior Radio/Medium Access –Decentralized medium access, bandwidth allocation –Realistic radio propagation in urban environments Routing –Position-based routing particularly suitable Applications –Extreme variety of application ideas –Other C2C projects? Currently implemented by UULM STRAW

SEVECOM Kick-off Workshop Elmar Schoch 10 STRAW Mobility Model By Northwestern University, Aqualab – Written for JiST/SWANS Models vehicular node movements on streets –Structures: segments, ramps, intersections –Movements: acceleration, deceleration, … Uses TIGER ® street maps –By U.S. Census Bureau

SEVECOM Kick-off Workshop Elmar Schoch 11 DUCKS simulation framework Problem: –JiST/SWANS lacks tools for handling simulation parameters and output Solutions by DUCKS: –Easily define complete simulation scenarios by config files (e.g. various simulation setup parameters like field size, node number,...) –Automated execution of simulations –Easy distribution of simulation on multiple servers –Structured statistics collection, storage and evaluation Implementation nearly finished (still fixing some issues and extending usability)

SEVECOM Kick-off Workshop Elmar Schoch 12 Store results on relational database DUCKS architecture Simulation Generator Simulation server(s) Database server Simulation config Generator config Without faking With 10% fakers Defines complete simulation scenario Demultiplexes scenario to single simulations Distributes jobs to simulation servers GUI allows to visually create graphs Distributed simulation computation on regular JiST-servers Collect results

SEVECOM Kick-off Workshop Elmar Schoch 13 DUCKS config file example ducks.config.runs=20 ducks.general.fieldsize.x=500,1000 ducks.general.fieldsize.y=(ducks.general.fieldsize.x 500,1000) ducks.general.nodes=50-200/50,500 ducks.general.duration=120 ducks.general.waittime.start=10 ducks.general.waittime.end=(-> ducks.general.waittime.start) ducks.mobility.movement=waypoint ducks.mobility.waypoint.speed.min=1 ducks.mobility.waypoint.speed.max=5,20 ducks.mobility.waypoint.pausetime=(ducks.mobility.waypoint.speed.max == 5 ? 0 : 10) ducks.mobility.waypoint.precision=100 ducks.traffic.type=cbr ducks.traffic.cbr.rate=20 ducks.traffic.cbr.packetspercon=1 ducks.traffic.cbr.waittime=0 ducks.routing.protocol=aodv ducks.mac.protocol=802.11

SEVECOM Kick-off Workshop Elmar Schoch 14 JiST/SWANS Pros & Cons Fast & scalable Completely Java-based approach –Advantages of Java (Garbage collection, type-safety, reflection, library, …) –No other language needed –Portability of JVM Interesting virtual time concept Usage of legacy, socket-based Java applications is possible Maturity unproven –Still little attention in research community –Correctness of implementation –Minor bugs/deficiencies –Issues regarding platform independence Sparse tool support –No GUI modeling/output –No framework for automated simulation execution leveraged by DUCKS ProsCons

SEVECOM Kick-off Workshop Elmar Schoch 15 Further work Ongoing activities –Implementation of geographic routing –Implementation of positioning and position verification –DUCKS consolidation –Performance tests Planned activities –More realistic signal propagation models e.g. including obstacles like buildings –Abstraction layer to be able to switch between simulator and real hardware Scientific plans –Qualitative comparison of SWANS and ns-2 (e.g. regarding delivery ratio, delay, …) –Use for SEVECOM protocol validation

SEVECOM Kick-off Workshop Elmar Schoch 16