Ns-3 Training Emulation support ns-3 training, June 2016.

Slides:



Advertisements
Similar presentations
Operating Systems Components of OS
Advertisements

VINI Overview. PL-VINI: Prototype on PlanetLab PlanetLab: testbed for planetary-scale services Simultaneous experiments in separate VMs –Each has root.
ns-3 Introduction Tom Henderson (University of Washington) July 2014
User-Mode Linux Ken C.K. Lee
Estinet open flow network simulator and emulator. IEEE Communications Magazine 51.9 (2013): Wang, Shie-Yuan, Chih-Liang Chou, and Chun-Ming Yang.
Copyright 2014 Kenneth M. Chipps Ph.D. Software Defined Networking Lab Using Mininet and the POX Controller Last Update
PlanetLab Architecture Larry Peterson Princeton University.
Chap 2 System Structures.
1 In VINI Veritas: Realistic and Controlled Network Experimentation Jennifer Rexford with Andy Bavier, Nick Feamster, Mark Huang, and Larry Peterson
Cs238 Lecture 3 Operating System Structures Dr. Alan R. Davis.
Copyright Arshi Khan1 System Programming Instructor Arshi Khan.
Using ns-3 emulation to experiment with Wireless Mesh Network Routing: Lessons learned José Núñez-Martínez Research Engineer Centre Tecnologic de Telecomunicacions.
Rensselaer Polytechnic Institute CSCI-4210 – Operating Systems David Goldschmidt, Ph.D.
Computer System Architectures Computer System Software
Hosting Virtual Networks on Commodity Hardware VINI Summer Camp.
Lecture 1 The OSI Model Reference: TCP/IP Protocol Suite, 4 th Edition (chapter 2) 1.
Chapter 6 Operating System Support. This chapter describes how middleware is supported by the operating system facilities at the nodes of a distributed.
Eric Keller, Evan Green Princeton University PRESTO /22/08 Virtualizing the Data Plane Through Source Code Merging.
V IRTUALIZATION Sayed Ahmed B.Sc. Engineering in Computer Science & Engineering M.Sc. In Computer Science.
Section 3.1: Operating Systems Concepts 1. A Computer Model An operating system has to deal with the fact that a computer is made up of a CPU, random.
Running large scale experimentation on Content-Centric Networking via the Grid’5000 platform Massimo GALLO (Bell Labs, Alcatel - Lucent) Joint work with:
Issues Autonomic operation (fault tolerance) Minimize interference to applications Hardware support for new operating systems Resource management (global.
 Virtual machine systems: simulators for multiple copies of a machine on itself.  Virtual machine (VM): the simulated machine.  Virtual machine monitor.
GSoC March Generally Successful owing-to Communication: ns-3 Experiences with GSoC Craig Dowell University of Washington Google SoC Infosession March.
FTOP: A library for fault tolerance in a cluster R. Badrinath Rakesh Gupta Nisheeth Shrivastava.
PrimoGENI Miguel Erazo, Nathanael Van Vorst, Jason Liu (PI) Co-PIs: Julio Ibarra, Heidi Alvarez.
Background Computer System Architectures Computer System Software.
Embedded Real-Time Systems Processing interrupts Lecturer Department University.
01/27/10 What is PlanetLab? A planet-wide testbed for the R & D of network applications and distributed computing Over 1068 nodes at 493 sites, primarily.
Find – used to find files corresponding to a certain criteria find starting_dir matching_criteria [options] Examples: find /usr –name startx find /usr.
Introductions of SDN in NS-3
Chapter 4 – Thread Concepts
Introduction to threads
Operating Systems {week 01.b}
Networking Using the OSI Model.
The OSI Model Prof. Choong Seon HONG.
Operating System & Application Software
Module 3: Operating-System Structures
Operating System Structures
What I Learned From Mininet
Current Generation Hypervisor Type 1 Type 2.
Managing The Internet of Things
Shadow: Real Applications, Simulated Networks
Chapter 4 – Thread Concepts
Introduction to ZBOSS Embedded Systems Software Training Center
CS490 Windows Internals Quiz 2 09/27/2013.
Cs506 First lecture.
IOS Network Model 2nd semester
Chapter 3: Windows7 Part 4.
Session 1. ns-3 기초 신연철 Multimedia & Wireless Networking Laboratory, SNU
Chapter 3: Open Systems Interconnection (OSI) Model
Lecture 14 Virtual Memory and the Alpha Memory Hierarchy
Software Defined Networking (SDN)
Ns-3 Training Emulation.
Intro. To Operating Systems
Operating Systems Lecture 4.
Chapter 3: Operating-System Structures
Basic Concepts Protection: Security:
OSI Model The Seven Layers
Windows Virtual PC / Hyper-V
Chapter 2: Operating-System Structures
Introduction to Operating Systems
ns-3 Training Visualization ns-3 Annual Meeting June 2016
Mark McKelvin EE249 Embedded System Design December 03, 2002
ns-3 Direct Code Execution ns-3 Annual Meeting June 2016
Chapter-1 Computer is an advanced electronic device that takes raw data as an input from the user and processes it under the control of a set of instructions.
Chapter 2: Operating-System Structures
Lecture 6 Introduction to Process Management
Virtual Private Network
Presentation transcript:

ns-3 Training Emulation support ns-3 training, June 2016

Direct Code Execution (DCE) Outline Emulation modes Tap Bridge FdNetDevice Direct Code Execution (DCE) Applications Linux Kernel DCE Cradle ns-3 training, June 2016

Emulation support Support moving between simulation and testbeds or live systems A real-time scheduler, and support for two modes of emulation Linux is only operating system supported Must run simulator in real time GlobalValue::Bind (“SimulatorImplementationType”, StringValue (“ns3::RealTimeSimulatorImpl”)); Must enable checksum calculations across models GlobalValue::Bind (“ChecksumEnabled”, BooleanValue (true)); Must run as root ns-3 training, June 2016

ns-3 emulation modes Various hybrids of the above are possible real machine ns-3 Testbed 2) testbeds interconnect ns-3 stacks real machine virtual machine virtual machine ns-3 1) ns-3 interconnects real or virtual machines Various hybrids of the above are possible ns-3 training, June 2016

Example use case: testbeds Support for use of Rutgers WINLAB ORBIT radio grid ns-3 training, June 2016

Example use case: PlanetLab The PlanetLabFdNetDeviceHelper creates TAP devices on PlanetLab nodes using specific PlanetLab mechanisms (i.e. the vsys system), and associates the TAP device to a FdNetDevice in ns-3. ns-3 training, June 2016

Example use case: mininet Mininet is popular in the Software-Defined Networking (SDN) community Mininet uses "TapBridge" integration https://github.com/mininet/mininet/wiki/Link-modeling-using-ns-3 ns-3 training, June 2016

Emulation Devices ns-3 training, June 2016

File Descriptor Net Device (FdNetDevice) Device models File Descriptor Net Device (FdNetDevice) read and write traffic using a file descriptor provided by the user this file descriptor can be associated to a TAP device, to a raw socket, to a user space process generating/consuming traffic, etc. Tap Bridge Integrate Tun/Tap devices with ns-3 devices ns-3 training, June 2016

“TapBridge": netns and ns-3 integration Linux ns-3 Wifi ghost node ghost node Container Container TapBridge TapBridge WiFi WiFi tapX tapY /dev/tunX /dev/tunY Tap device pushed into namespaces; no bridging needed ns-3 training, June 2016

TapBridge modes ConfigureLocal (default mode) UseLocal UseBridge ns-3 configures the tap device useful for host to ns-3 interaction UseLocal user has responsibility for device creation ns-3 informed of device using “DeviceName” attribute UseBridge TapDevice connected to existing Linux bridge ns-3 training, June 2016

ConfigureLocal ns-3 ensures that Mac addresses are consistent ns-3 training, June 2016

UseLocal Mac X spoofed to Mac Y ns-3 training, June 2016

UseBridge ns-3 devices must support SendFrom() (i.e. bridging) ns-3 training, June 2016

FdNetDevice Unified handling of reading/writing from file descriptor Three supported helper configurations: EmuFdNetDeviceHelper (to associate the ns-3 device with a physical device in the host machine) TapFdNetDeviceHelper (to associate the ns-3 device with the file descriptor from a tap device in the host machine) (not the same as TapBridge) PlanetLabFdNetDeviceHelper (to automate the creation of tap devices in PlanetLab nodes, enabling ns-3 simulations that can send and receive traffic though the Internet using PlanetLab resource. ns-3 training, June 2016

EmuFdNetDeviceHelper Device performs MAC spoofing to separate emulation from host traffic ns-3 training, June 2016

PlanetLabFdNetDeviceHelper Special case of TapFdNetDeviceHelper where Tap devices configured according to PlanetLab conventions ns-3 training, June 2016

ns-3 over host sockets Two publications about how to run ns-3 applications over real hosts and sockets "Simulator-agnostic ns-3 Applications", Abraham and Riley, WNS3 2012 Gustavo Carneiro, Helder Fontes, Manuel Ricardo, "Fast prototyping of network protocols through ns-3 simulation model reuse", Simulation Modelling Practice and Theory (SIMPAT), vol. 19, pp. 2063– 2075, 2011. ns-3 training, June 2016

Generic Emulation Issues Ease of use Configuration management and coherence Information coordination (two sets of state) e.g. IP/MAC address coordination Output data exists in two domains Debugging can be more challenging Error-free operation (avoidance of misuse) Synchronization, information sharing, exception handling Checkpoints for execution bring-up Inoperative commands within an execution domain Deal with run-time errors Soft performance degradation (CPU) and time discontinuities ns-3 training, June 2016