|
|
# Introduction
|
|
|
|
|
|
This is the wiki used to document the high-level views about the goSDN SDN-Controller. goSDN is a SDN controller initially developed as part of research and development cooperation between Deutsche Telekom and the [da/net research group](https://danet.fbi.h-da.de/).
|
|
|
This is the wiki used to document the high-level views about the _goSDN_ SDN controller. goSDN is a SDN controller initially developed as part of research and development cooperation between Deutsche Telekom and the [da/net research group](https://danet.fbi.h-da.de/).
|
|
|
|
|
|
There are already a number of existing SDN-controllers, such as, but not limited to, [ONOS](https://opennetworking.org/onos/), [Opendaylight](https://www.opendaylight.org/), [Ryu](https://ryu-sdn.org/) and [Floodlight](https://github.com/floodlight).
|
|
|
# Why yet another SDN controller?
|
|
|
|
|
|
There is already a number of existing SDN-controllers, such as, but not limited to, [ONOS](https://opennetworking.org/onos/), [Opendaylight](https://www.opendaylight.org/), [Ryu](https://ryu-sdn.org/) and [Floodlight](https://github.com/floodlight).
|
|
|
|
|
|
While each of these has their own merrits, e.g., Ryu is a development framework that one can program in order to make use of certain southbound protocols, while ONOS is aiming at a general purpose all-you-can-do controller.
|
|
|
|
|
|
However, for our purpose we need a cleanly designed and documented SDN controller, as we aim at multiple intended uses, as we do not see that the currently available SDN controllers fulfill our needs.
|
|
|
|
|
|
The intended use cases:
|
|
|
- Multi-domain controller for optical wide-area networks – this includes hierarchically stacked SDN controllers
|
|
|
- controller for data center networks
|
|
|
- controller for mobile networks
|
|
|
- controller for teaching and learning topics in networking in general and software defined networks
|
|
|
|
|
|
The high-level requirements:
|
|
|
- clearly structured source code with no or limited SDN development legacy
|
|
|
- focus on KISS: Keep It Simple Stupid
|
|
|
- cope with the fallout of KISS
|
|
|
- document the architecture, design decisions, the source code, and the external and internals workings of goSDN
|
|
|
- support of multiple Southbound-Interfaces (SBI) in parallel
|
|
|
|
|
|
|
|
|
# Overview of this wiki
|
|
|
|
... | ... | |