Using ns 3 emulation to experiment with wireless mesh network routing lessons learned
Download
1 / 24

Using ns-3 emulation to experiment with Wireless Mesh Network Routing: Lessons learned - PowerPoint PPT Presentation


  • 168 Views
  • Uploaded on

Using ns-3 emulation to experiment with Wireless Mesh Network Routing: Lessons learned. José Núñez-Martínez Research Engineer Centre Tecnologic de Telecomunicacions de Catalunya 25/03/2011. Goal of this talk.

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'Using ns-3 emulation to experiment with Wireless Mesh Network Routing: Lessons learned' - bowie


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
Using ns 3 emulation to experiment with wireless mesh network routing lessons learned

Using ns-3 emulation to experiment with Wireless Mesh Network Routing:Lessons learned

José Núñez-Martínez

Research Engineer

Centre Tecnologic de Telecomunicacions de Catalunya

25/03/2011


Goal of this talk
Goal of this talk Network Routing:

Give the implementation details of porting the implementation of a routing protocol to a real WMN testbed by means of ns-3 emulation framework

Initial results on the the performance evaluation of the ns-3 emulation framework in a real testbed


Outline
Outline Network Routing:

  • Testbed Setup

  • Ns-3 WMR

  • Main changes in the routing protocol

  • Performance Evaluation

  • Conclusions


Outline1
Outline Network Routing:

  • Testbed Setup

  • Ns-3 WMR

  • Implications in the routing protocol

  • Performance Evaluation

  • Conclusions


Wireless mesh node
Wireless Mesh Node Network Routing:

  • Motherboard:

    • Portwell Mini-ITX 1.6Ghz processor

  • Storage:

    • 80Gb PATA hard disk.

  • Wireless Interfaces

    • up to four mini-PCI CM9 atheros wireless

    • 54Mbps

      • 5Ghz band pseudo ad-hoc mode, one antenna

    • 3G Femtocell connected through Ethernet

      iface via Switch

  • OS

    • Linux Fedora Core 2.6.32

    • Madwifi 0.9.4


Wireless mesh testbed
Wireless Mesh Testbed Network Routing:

  • Deployed in the first floor of the CTTC building

    • An approximate area of 1200 square meters

  • 12 WiFi nodes acting as Wireless Mesh Routers

    • Static and non-power constrained

    • Backbone wireless mesh network

    • Using 1 WiFi interface and 1 Ethernet to connect Femtocells

    • WifiMesh initially set up to single radio single channel

    • Network control via Ethernet LAN Controller for remote management purposes



Testbed routing configuration
Testbed Routing Configuration Network Routing:

  • Flows directed to a Femtocell

    • Add static routes to packets directed to the Femtocell connected by Ethernet Interface

    • Backpressure to route packets to another Femtocell not directly connected by Ethernet Interface

  • Flows coming from a Femtocell

    • Static Default route added to reach the WMR directly connected via Ethernet Interface

    • Static Default route of the GW in the mesh to reach Core Network

  • Flows originated at the WMR

    • Generate them within ns-3


Outline2
Outline Network Routing:

  • Testbed Setup

  • Ns-3 WMR

  • Implications in the routing protocol

  • Performance Evaluation of ns3

  • Conclusions


Ns 3 wmr configuration
Ns-3 WMR configuration Network Routing:

  • EmuNetDevice associated to each interface

    • associated to ath0

      Ptr<EmuNetDevice> device = CreateObject<EmuNetDevice> ();

      device->SetAttribute ("Address",

      Mac48AddressValue ("00:0b:6b:81:ce:2a");

      device->SetAttribute ("DeviceName", StringValue (deviceName));

  • Static Routing and Backpressure Routing

    • Static routing more priority than backpressure routing and removed routes associated in static routing to use backpressure routing

      list.Add (staticRouting, 10); // static routing

      list.Add (backpressure, 0); //dynamic backpressure routing

      staticRouting->RemoveRoute (1); //so that backpressure would be used to route within the WMN


Ns 3 wmr configuration1
Ns-3 WMR configuration Network Routing:

  • To disable ARP in the testbed, fix static ARP entries in the node interfaces

    • Create ARP cache

      Ptr<ArpCache> arp = CreateObject<ArpCache> ();

      arp->SetAliveTimeout (Seconds(3600*24*365));

  • Add ARP cache entry

    Mac48Address macAddr = Mac48Address("00:0b:6b:81:ce:2a");

    Ipv4Address ipAddr = Ipv4Address("10.3.40.193");

    ArpCache::Entry * entry = arp->Add(ipAddr);

    entry->MarkWaitReply(0);

    entry->MarkAlive(macAddr);

  • Associate Arp Cache to the IP interface

    • ipIface->SetAttribute("ArpCache", PointerValue(arp));


Outline3
Outline Network Routing:

  • Testbed Setup

  • Ns-3 WMR

  • Implications in the routing protocol

  • Ns-3 Emulation Performance Evaluation

  • Conclusions


Dynamic backpressure routing protocol implementation
Dynamic Backpressure Routing protocol Implementation Network Routing:

  • EMU_MODE/SIMU_MODE

    • depending on the mode there are some changes in the routing protocol module

      backpressure.Set("Mode", EnumValue(EMU_MODE));

  • Due to the particularities of dynamic backpressure routing there are some coding differences

    • Interaction with WiFi MAC Queues

  • Routing Protocol require some adjustments in emulation mode


Transmission opportunities in emu mode
Transmission Opportunities in EMU_MODE Network Routing:

  • Recall that packets coming from upper//lower layers are not necessarily immediately forwarded

  • Instead of this they are stored waiting for transmission opportunities

  • In SIMU_MODE a callback from WiFiMAC layer is launched whenever there are free data slots in the WiFiMAC Layer

  • In this case the real host has to tell somehow to ns-3 whether there is a new transmission opportunity or not



Interacion between ns 3 and madwifi driver
Interacion between NS-3 and Madwifi driver Network Routing:

  • Madwifi patched to trigger interruption

    • Create a file in /proc/sys/

    • Patch madwifi driver to Write in /proc/sys/ file when the HW buffer is full

    • Another write event when HW buffer is not full

  • In the ns-3 dynamic backpressure routing module create a thread waiting for some write event on a file in /proc/sys/

  • Use select() system call waiting for a write event

  • Continuous transmission opportunity in the routing module by default

    • When the thread is unblocked and previously was idle transmission opportunities are locked


Outline4
Outline Network Routing:

  • Testbed Setup

  • Ns-3 WMR

  • Implications in the routing protocol

  • Ns-3 Emulation Performance Evaluation

  • Conclusions


Ns 3 mac spoofing
NS-3 Network Routing:Mac Spoofing

  • Be careful with the selected MAC address to spoof

  • BSSID_MASK: mask to set up potential mac addresses of the VAPS associated to a WiFi card

    • Not every random mac address is appropriate at least for WiFi cards

    • In madWiFi higher bits of the mac address identify the VAP

  • With MAC addresses which do not satisfy BSSID_MASK the WiFi card discard data packets though some of them are able to be processed


Ns 3 performance processing
NS-3 performance Processing Network Routing:

  • Linux host saturating a WiFi interface in 802.11a mode 4000pkts per second payload 1024bytes

  • Ns-3 WMR processing packets

  • EmuNetDeviceRxQueueSize

  • Performance degradation due to queue drops in EmuNetDevice

  • Appropiate EmuNetDevice queue size


Ns 3 performance sending
NS-3 Network Routing:performance Sending

  • Ns-3 WMR saturating WiFiinterface

  • Performance at the receiver

  • UDP traffic 4000pkts per second during 30seconds


Outline5
Outline Network Routing:

  • Testbed Setup

  • Ns-3 WMR

  • Implications in the routing protocol

  • Ns-3 Emulation Performance Evaluation

  • Conclusions


Conclusions
Conclusions Network Routing:

  • Implementation particularities of the routing protocol and ns3 WMR router configuration

  • Main issues with respect to ns-3 simulation are given by the interaction with the testbed

  • But essentials of the routing protocol do not change

    • HELLO messages, routingalgorithm

  • Initial ns-3 Emulation Performance Evaluation is satisfactory but more tests are needed

    • Delays


  • Thanks for your kind attention
    Thanks for your kind attention! Network Routing:

    • Questions?

    José Núñez-Martínez

    Research Engineer

    Centre Tecnologic de Telecomunicacions de Catalunya

    [email protected]


    Receiving and transmitting
    Receiving and Transmitting Network Routing:

    • Ns-3 WMR receiving and transmitting 2000 packetssecond

    • Wificardprioritizespacketreception (i.e., red flow)

    • Ns-3 WMR receiving and transmitting at a rate of 1000 packets per second


    ad