Software Defined Networks

In the context of Software Defined Networking, we have developed the following solutions:

  • SDN Controller, by extending an Active Stateful PCE with OpenFlow instantiation capabilities, and
  • OpenFlow agents for Fixed/Flexi-Grid DWDM Optical Switches


SDN Controller

An SDN controller is a logically centralized entity that implements a control plane and configures the forwarding plane of the underlying network devices using for example the OpenFlow protocol. From a control plane perspective, an SDN controller and an active stateful PCE have several functions in common; for example, in what concerns network topology or connection management. That said, both entities also complement each other, since a PCE is mainly responsible for path computation accessible via an open, standard and flexible protocol, and the SDN controller assumes the task of the actual data plane forwarding provisioning. In other words, the stateful PCE becomes active by virtue of relying on an OpenFlow controller for the establishment of connections. In this framework, the integration of both entities presents an opportunity allowing a return on investment, reduction of operational expenses and reduction of time-to-market, resulting in an efficient approach to operate transport networks.

We propose a centralized control plane based on a stateful PCE, acting as an OpenFlow controller, targeting the control and management of optical networks. We have introduced extensions to both the OpenFlow and the PCEP protocols addressing the requirements of elastic optical networks.



OpenFlow agents

In order to map and translate OpenFlow messages  to configure the underlying optical hardware, we have developed specific OpenFlow agents that are co-located with ROADMs and OXC nodes, and which use the API offered by a Hardware Abstraction Layer. Basically, the agents are responsible for connecting to the OpenFlow controller, performing the OpenFlow handshake where the optical hardware static features are announced and discovered and, finally, for configuring the optical hardware upon request (i.e., upon reception of the OFP_CFLOW_MOD message for the establishment or release of an optical cross-connect). The agents are processes developed in C++ that run in a dedicated Intel PCE running GNU/Linux.