Software Defined Networking or
SDN is a completely new way to approach Networking. Conventionally, an Appliance (a
Switch or
Router, for instance) receives packet and route it to the destination based on the learnings the Appliance's
firmware has. The
SDN approach is to take out the decision making process from the firmware and give it to a software program called controller.
SDN is based on
OpenFlow protocol. OpenFlow protocol offers much control to the Network Administrators to remotely control the routing tables.
Overview
The separation of real network infrastructure into
control plane and
data plane which brings better control for Network Management, future evolution and also the software operating on the control plane can grow independent of the hardware. Control plane brings the logic for controlling the forwarding behavior of a packet, in other words the functions of routing protocols. Data plane forwards the packet based on the logic induced by the control plane. IP forwarding and Layer 2 switching are typical functions of a data plane.
The fundamental reasoning behind
SDN is the evolution of Networks. Traditionally all Network devices are using distributed configurations and operationalize with some Configuration Management mechanisms integrate with the device manufacturer provided tools. This mechanism cannot scale and expandable. Moreover if any error (cause due to any software bug) shows up and difficult to debug. This is precisely being the rationale behind the thought of
SDN and its importance now. With
SDN it is easy to
- integrate network devices
- make use of programming (code make use of the packet header)
Introduced in 2004, RCP gave the basis for the OpenFlow protocol. A significant change from the conventional functionality of independent devices are by eliminating duplication by storing single copy of route on multiple interacting devices and hence avoid redundant computation of the routes. This also works well to accelerate the network routes by excluding affected routes dynamically.