OpenState SDN

View My GitHub Profile

Welcome to OpenState SDN project.

OpenState is a research effort focused in the development of a stateful data plane API for Software-Defined Networking. We propose an extension to current OpenFlow abstraction that use state machines implemented inside switches to reduce the need to rely on remote controllers. To know more about our project you can read our first paper:

G. Bianchi, M. Bonola, A. Capone, and C. Cascone, “OpenState: Programming Platform-independent Stateful OpenFlow Applications Inside the Switch” ACM SIGCOMM Computer Communication Review, vol. 44, no. 2, pp. 44–51, 2014. [PDF] [BibTex].


Protocol specification (beta)

Click here to download the OpenState specification (OpenFlow 1.3 Experimenter extension) in PDF format.

Try OpenState

The following commands have been tested in a clean Mininet 2.2.1 VM on Ubuntu 14.04 (64 bit). You can download a Mininet VM at this link. For help running Mininet please refer to

1) Inside a Mininet VM shell type the following command:

$ bash -c "$(wget -O -"

The command above will install OpenState-enabled softswitch and controller in only one shot!

2) Check out some OpenState sample applications


OpenState softswitch

OpenState controller


(in alphabetical order)

Carmelo Cascone, Davide Sanvito, Hanieh Rajabi, Luca Pollini, Marco Bonola