Version 13 (modified by Ryan Izard, 8 years ago) (diff)


Vertical Handoff with OpenFlow


This tutorial is designed to give an insight into how OpenFlow can be used to conduct network experiments. The experiment we will conduct is a basic client-initiated handover. As background, a vertical handover is the (ideally seamless) migration of a network connection from one network interface to another of a different technology. An example might be your cell phone transitioning from a WiFi to a 4G connection while streaming a video. Vertical handovers are traditionally handled entirely by the network infrastructure (i.e. the network-level), leaving little-to-no control of the handover execution at the client. Clemson University is developing and testing a client-initiated and controlled vertical handover. This project is being conducted using GENI resources -- namely Clemson's GENI WiFi and WiMAX testbeds. Additional development has also been conducted on GENI's Orbit testbed at Rutgers.

The vertical handover project is near completion and has been implemented on physical machines; however, for the purpose of this tutorial, our client-level development environment has been ported to a virtual machine (VM) so all can participate without regard the unique hardware capabilities of each participant. This tutorial will walk you through how to perform a Layer-2 (L2) handover using OpenFlow within a VM. As you will discover, because this solution is dependent only on Linux network interface handles, you can apply it to any interface on a physical host. The VM provided has two host-only interfaces and one interface tied to a physical adapter on the host machine. The host-only interfaces communicate with the virtualization software's gateway interface on the host machine. In this tutorial, we will demonstrate how to run this basic form of our handover solution between these host-only interfaces and the host machine (i.e. your laptop).




Where to get Help:


Tutorial Instructions

  • Part I: Design/Setup
    • Step 1: Design Experiment
    • Step 2: Establish Management Environment
    • Step 3: Obtain Resources
  • Part II: Execute
    • Step 4: Configure and Initialize Services
    • Step 5: Execute Experiment
    • Step 6: Analyze and Visualize Experiment

Attachments (1)

Download all attachments as: .zip