NOSIX: A Portable Switch Interface for the Network Operating System

TitleNOSIX: A Portable Switch Interface for the Network Operating System
Publication TypeTechnical Report
Year of Publication2012
AuthorsWundsam, A., & Yu M.
Other Numbers3367

Even with the success of software-defined networks (SDN), it remains challenging to write aportable, correct, and efficient controller application. This is due to the mismatch between theexpectations of controller applications and (i) the heterogeneity of switches and (ii) theprimitives offered by OpenFlow, the prevalent SDN protocol. We introduce NOSIX, a portablelow-level switch programming API. Like its OS name-cousin, it facilitates the development ofportable low-level applications (i.e., applications that directly built on the flow model) and atthe same time serves as a building block for higher abstraction frameworks [12, 10]. Designed to be a minimalistic model, NOSIX purposefully only targets one switch as a time, leaving network wide consistency, topology and distribution to higher layers. It provides applications with a view of virtual flow tables without re- source or feature constraints, while supporting consistent and efficient rule updates and counter collection. Underneath NOSIX, vendor defined switch drivers synchronize the virtual flow-tables with the physical tables on the switch, and thus hide heterogeneity and enable switch-specific optimization.


This work was partially funded by the Deutscher Akademischer Austausch Dienst (DAAD) through a postdoctoral fellowship.

Bibliographic Notes

ICSI Technical Report TR-12-013

Abbreviated Authors

A. Wundsam and M. Yu

ICSI Research Group

Networking and Security

ICSI Publication Type

Technical Report