OF Mobile Node

Table of Contents
Introduction
Getting Started
1. Installation
2. Required Software
3. Running a demo

3.1. First Experience

3.2. Multiple flow

3.3. Demo#3

System Framework
Authors & Copyright

The demo next presented suposes an already installation of the required software in the network nodes, as well as the link between them established.

The demo handovers a video stream from access point to another via OpenFlow control messages. Here we describe the necessary rules on the OvS bridges and how to stream the video.

To stream the video we used the VLC application, however if you have another streaming application that you are more familiar with, you can use it as well.

a) Network architecture

The project was develop exploring a tree network topology with 6 nodes (2 access points, router, network controller, mobile node and a terminal). We also explore the fact of the mobile node beeing the source content, streaming a video through the network towards the terminal receiver. Keeping that in mind, the mobile node has a wireless connection with both AP's, whereas all the other nodes have a physical link connection. All nodes can ping each other.

b) Setting up the network

work in progress

To install the VLC app on ubuntu you can use the following command:

sudo apt-get install vlc-nox

AP - install hostapd

sudo apt-get install hostapd

c) Start running

Here we show an example of a demo through a bash script.

#!/bin/bash
# DEMO: handover with openflow
## start capture
sudo tcpdump -ni ath1 -w file_ath1_dump.pcap &
sudo tcpdump -ni ath0 -w file_ath0_dump.pcap &
## implement basic rules in MobileNode's ovs-bridges 
sudo ./rules.sh
sleep 2

## T=0
# start video streaming
cvlc -dvvv BigBuckBunny1080p.mp4 --sout '#duplicate{dst=rtp{{mux=ts,dst=192.168.10.1}}}'
sleep 20
## T=20
# reduce the troughput - decrease the TxPower and bit rate
sudo iwconfig ath0 txpower 1
sudo iwconfig ath0 rate 5.5M
sleep 10
## T=30
# send "handover" solicitation packet to the controller
echo “help” > /dev/udp/11.11.11.11/58549
sleep 30

## T=60
# kill the processes
sudo pkill tcpdump
pkill vlc