English

Applying Operating System Principles to SDN Controller Design

Networking and Internet Architecture 2015-10-20 v1

Abstract

Rather than creating yet another network controller which provides a framework in a specific (potentially new) programming language and runs as a monolithic application, in this paper we extend an existing operating system and leverage its software ecosystem in order to serve as a practical SDN controller. This paper introduces yanc, a controller platform for software-defined networks which exposes the network configuration and state as a file system, enabling user and system applications to interact through standard file I/O, and to easily take advantage of the tools available on the host operating system. In yanc, network applications are separate processes, are provided by multiple sources, and may be written in any language. Applications benefit from common and powerful technologies such as the virtual file system (VFS) layer, which we leverage to layer a distributed file system on top of, and Linux namespaces, which we use to isolate applications with different views (e.g., slices). In this paper we present the goals and design of yanc. Our initial prototype is built with the FUSE file system in user space on Linux and has been demonstrated with a simple static flow pusher application. Effectively, we are making Linux the network operating system.

Keywords

Cite

@article{arxiv.1510.05063,
  title  = {Applying Operating System Principles to SDN Controller Design},
  author = {Matthew Monaco and Oliver Michel and Eric Keller},
  journal= {arXiv preprint arXiv:1510.05063},
  year   = {2015}
}

Comments

Proceedings of the Twelfth ACM Workshop on Hot Topics in Networks. ACM, 2013

R2 v1 2026-06-22T11:22:38.557Z