  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.
