2
votes

There is something I still don't get in Software defined networks : in legacy networks we used CLI or NETCONF or maybe SNMP to configure devices and in SDN we use Openflow to do so but what about retrieving information ?

Before we used SNMP to get info from devices' MIB. But with SDN, how is it possible ?? Does Openflow allows us to get switches information (I am not talking only about flow tables or counter but also about things like Syslocation etc.. ??)

Thanks for your help!

3

3 Answers

4
votes

Openflow is used to manage the traffic forwarding path by installing forwarding rules on the switch and it (as a separate protocol) has nothing to do with the administrative configuration of the switch itself. SNMP can always be used to administrate openflow switches. You may wanna take a look on this http://searchsdn.techtarget.com/news/2240111241/OpenFlow-applications-work-where-network-management-tools-fail

2
votes

An SDN Controller will support OpenFlow for the control plane of the switch, but some controller's may support protocols for the management plane of the switch. This all depends on the SDN Controller's supported protocols between itself and the underlying network elements (switches/routers).

The control plane defines how packets flow through the network element. The management plane monitors and configures the network element.

The OpenDaylight controller supports OpenFlow, NETCONF and seems to have an SNMP project as well ( https://wiki.opendaylight.org/view/Project_Proposals:SNMP_Plugin) . The ONOS SDN Controller also has support for OpenFlow and NETCONF as well.

SDxCentral recently released their 2015 SDN Controller survey that does a good job discussing the different controllers and their capabilities: https://www.sdxcentral.com/articles/announcements/sdn-controllers-report-2015-download-available/2015/08/

With NETCONF you can retrieve and configure the underlying network element via the SDN Controller. Specifically you can write an application atop the controller that utilizes a RESTful-like api to do this. It is this ability to write applications that makes the SDN Controller different from the CLI.

NETCONF is based on YANG data models (like SNMP is based on MIBs). I will point out that there are some standard YANG models defined and there are more coming, but similar to SNMP there are vendor-specific models and extensions.

Here is a video blog that walks you through how NETCONF can be used to program a network element via an OpenDaylight SDN Controller: http://brcdcomm.github.io/BVC/jekyll/update/devops/netdev/appdev/2015/03/01/restconf-app-2.html

There is also a video describing YANG at a high level: http://brcdcomm.github.io/BVC/jekyll/update/devops/netdev/appdev/2015/04/11/Yang-For-BVC-RESTCONF-Dev.html

0
votes

Openflow, by definition focuses on the "Control Plane" and not the "Management Plane" of the network. SNMP largely deals with the "management plane" where focus is on collecting information about the traffic and status of the elements and is typically consumed by an EMS/NMS by pulling the information periodically. This operation is more of a "passive" operation in the sense it does not affect the flow of traffic (data plane).

As such, it does not come under scope of Openflow. That said, this does point to a gap in SDN - check this out http://www.nojitter.com/post/240166288/monitoring-a-software-defined-network-part-4