-
Martin Stiemerling authoredMartin Stiemerling authored
Conceptual Design of a SDN Controller as Network Supervisor
Conceptual Structures
This section discusses the basic conceptual organization forms for data networks, as this seems to not clear in many contexts. The main purpose is to clarify what in a network has to be managed, how it has to be managed and by what entity it has to be managed.
Principal Network Domain (PND)
Any network consists out of basic components that are the collection of (network) elements used to form such particular network. These components, let it be any device attached to this network and the (physical) links, with their control-, data-, and management planes, form the Principal Network Domain (PND). A network controller can be
- directly in charge of the devices in the PND and thus be able to manage these network elements directly,
- or connect to a different lower network controller. The network controller would be only able to indirectly communicate with the network elements via the lower network controller or even, in case of a recursion of network controllers, only be able to talk to an even lower level network controller.
The differentiation between the PND and the following definitions of network domain, e.g., IP network, etc is important for the design of a network controller that is supervising a network in its whole. The PND is the concept used by the network controller to keep track of all hosts and links associated~\footnote{XXXwhat means \emph{associated} exactly?} to this controller.
A single controller may be in charge of multiple PNDs.
Network Domain (ND)
A network domain is the collection of network elements and links connecting the elements while these entities, i.e., the elements and links, can be either physically or logical. Examples for
- physical entities: an Ethernet switch with Ethernet links or an optical switch with fibre connections
- logical entities: a VLAN-enabled Ethernet switch where the VLANs from a logical topology on top of the physical infrastructure.
A network domain is bound to a single PND. Network domains can be part of network domains, i.e., this is a case of recursion.
Building Blocks
Some conceptual building blocks for a network supervisor:
-
principal element inventory
This contains all known elements (such as end-hosts or network element as optical switches), independent of their relationship, of the network. This includes their hardware configuration, such as, interfaces attached to a particular host.
-
principal topology inventory
This contains all known links and their connection to interfaces of elements out of the principal element inventory.
-
domain element inventory
contains the elements part of a particular network domain and it has to be a (sub)-set of the elements of the principal element inventory or a logical abstraction, such as a container or a virtual machine.
-
domain topology inventory
This contains all known logical links and their connection to interfaces of elements out of the domain element inventory.
-
host configuration
This is based on the information provided by the host inventory and contains the actual operational configuration of the hosts. This will probably contain only the configuration of the network devices, such as, switches and routers, potentially also servers, but not end-hosts.
-
Network
-
Network Configuration)
-
Southbound Interface (SBI)
-
Northbound Interface (SBI)
-
East-West-bound Interface (SBI)
Applying Changes to What Plane?
Some basic thoughts to dissect how different approaches are applying changes to the various planes.
Changes to the Control Plane
Changes to the Data Plane
This is the use case for the SDN approach: A so-called SDN-controller applies policy rules to the data plane. These policy rules are defining the handling of the flows in the networks on a larger scale or to be more precise the handling of more less specified packets.
A change to the data plane will not directly trigger a change to other planes. Though the flow of packets on the data plane can be observed by the control plane and the control plane can take action depending on the data packets.