Skip to content

An aggregation of tools to assist and perform OpenFlow rule-fitting

Notifications You must be signed in to change notification settings

wandsdn/rule-fitting-overview

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 

Repository files navigation

This repository contains an overview of the code and evaluation artifacts I created during my PhD. The main focus of my thesis was to enable a network operator to easily deploy existing SDN applications to incompatible hardware devices by algorithmically fitting existing application's ruleset to an incompatible constrained fixed-function pipeline. My thesis is being marked; a link will follow.

Rule-fitting

A rule-fitting solver to transform an OpenFlow 1.3 ruleset to a new constrained fixed-function pipeline. The solver is primarily written in Python and depends on the ofequivalence and ttp-tools libraries described below. This code includes an implementation of the rule-fitting technique which I describe and evaluate in my thesis, which uses SAT constraints to narrow the search to find valid solutions.

A zmq interface to the Minisat2 SAT solver. Ofsolver uses minisat-zmq to interface with the Minisat solver.

The rulesets and pipelines I used for evaluation of ofsolver and the raw results I collected.

Ruleset Equivalence

A tool to convert an OpenFlow 1.3 ruleset's forwarding behaviour to a canonical MTBDD which is trivially comparable with another. The code is primarily written in Python. We published this work to SOSR19: Identifying Equivalent SDN Forwarding Behaviour, Richard Sanger, Matthew Luckie, Richard Nelson.

Table Type Patterns

A library and set of tools for working with Table Type Patterns (TTPs). This library verifies the validity of a TTP and parses it into an internal representation. The library includes tools to view and verify TTPs and code to place OpenFlow rules into the pipeline described by a TTP.

A Flask web application for validating a Table Type Pattern. An online version is avaliable here.

OpenFlow switch packet-in and out (slow-path) performance

This research was not included in my thesis but was published during my PhD. We published this work to NFV-SDN 2018: Characterising the Limits of the OpenFlow Slow-Path, Richard Sanger, Brad Cowie, Matthew Luckie, Richard Nelson.

A modified version of oflops-turbo with support for new versions of OpenFlow (including 1.3) and with encrypted control-channel support.

The evaluation artifacts and scripts from our paper.

About

An aggregation of tools to assist and perform OpenFlow rule-fitting

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published