A research project from Princeton CS on joint host/network traffic management solution for data centers
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.


HONE Project

Programmable Host-Network Traffic Management from Princeton CS.

Project website: http://hone.cs.princeton.edu/
I highly encourage you to visit our website. You can get an overview of the system, and find various management applications we have built. Those examples can give you a quick sense of what HONE can do, and how you will program on HONE.

Author: Peng Sun

Zhihong Xu, Lavanya Jose, Minlan Yu, Jennifer Rexford, Michael J. Freedman, David Walker

Public Amazon EC2 AMI:
ami-bd0a7dd4 (HONE-enabled Ubuntu Cloud Image 11.04)

Public VirtualBox VM image:
HONE VM image


  • psutil 0.7.0
  • web10G kernel patch 3.2
  • estats userland library (included with web10G kernel patch 3.2)
  • Python 2.7+
  • ipaddr-py 2.1.10
  • Python Twisted 13.0.0

Setup steps:

  1. Insert HONE kernel module on host machine. The current kernel module is for HONE-enabled image only, since we have modified kernel NETLINK to make it work.

    cd ~/hone/HostAgent/kpsimple
    sudo make up
  2. Compile C++ implementation into python modules.

    cd ~/hone/HostAgent
  3. Start network module (if necessary for your scenario). HONE interacts with the network devices via Floodlight. Please check out how to install and start Floodlight on its Getting-started page.

  4. Start the HONE controller.

    cd ~/hone/Controller
    python hone_run.py mgmtProgramName
  5. Start the HONE host agent.

    cd ~/hone/HostAgent
    python agentRun.py controllerIP controllerPort # default port is 8866