Software Defined Network (SDN) is an emerging network architecture that has become popular for deploying application in a dynamic and cost-effective manner. It is used to control access to switches and routers. The core aim of this architecture is to improve network control by making it directly programmable. There is a physical separation of the network plane from the control plane. The control plane controls several devices. The control plane is used to manage configurations of connected devices and the network plane is responsible for forwarding traffic to its destination. The control plane dictates which path flows will take before they reach the network plane. The SDN architecture decouples the network control from forwarding functions. The separation enables service providers to respond quickly to changing business requirements.
The Software Defined Networking (SDN) architecture is different from traditional network architecture as SDN gives administrators the ability to manage and provision network services from a centralized location without having to directly manage the individual devices. In the traditional approach, individual network devices make traffic decisions with respect to their configured routing tables. The needs of the modern enterprises have grown exponentially and hence also the demand and popularity of the SDN architecture.
SDN works by bringing together many different technologies, such as functional separation, virtualization and automation through programmability.
A typical SDN architecture consists of three layers of architecture;
- Application layer: This layer consists of the network application or functions that an organization uses. A specialized appliance would be used in a traditional network whereas a software defined network replaces the appliance with an application that uses the controller to manage network plane.
- Control layer: This is the central unit of SDN and represents the centralized SDN controller software. This layer manages the flow of traffic throughout the network.
- Infrastructure layer: This layer is made of physical switches in the network.
The three layers in a software defined network communicate with each other. Within a typical Software Defined Network, a data packet arrives at the switch and is forwarded to their destination using a set of packet handling rules. These rules are sent to the switch from the centralized controller.
The switch also known as the network plane takes guidance from the controller as needed. It also provides information to the controller about the traffic it handles. It treats every data packet in the same way and sends each packet to the same destination.
In SDN, there is a provision of overlaying a logically separate network over the physical network through the virtualization aspect. This is done to segment network traffic. This is especially useful for service providers and operators with cloud services, as they can provide a separate virtual network and specific policies for each tenant.
Benefits of SDN
- Centralized Network
Software defined networks enable us to centralize enterprise management by providing a centralized view of the entire network. It provides an end-to-end visibility as the administrator has only to deal with a centralized controller. Configuration of multiple individual devices becomes unnecessary and the policies are distributed to the connected switches through the centralized controller.
- Centralized Security
One of the greatest advantages of software defined network is the centralization of security into one entity like the SDN controller. Due to the network centralization, the controller can monitor traffic and put in place security policies. If the controller deems any traffic to be suspicious, it has the capability to re-route or drop the data packets. The SDN controller can be used effectively throughout the enterprise to manage security, safely and properly.
- Reduced Operating Costs
SDN operated enterprises indicate towards an overall reduction in operating costs owing to improvements in server utilization and increased administrative efficiency. As the routine network administration issues can be centralized and automated, there is a considerable amount of saving that happens.
As a result of centralized provisioning, SDN gives the user the more scalability. It gives the user the ability to provision resources and change the network infrastructure at will, in sharp contrast to the traditional network where resources need to be purchased and configured manually.
- Lower capital expenditures and reduced hardware footprint
Existing hardware can be repurposed on adopting SDN and hardware usage can be optimized efficiently. It essentially means that the user can assign new purpose to active hardware at will. This means that hardware is not confined to a single purpose and the resources can be shared with ease.
Disadvantages of SDN
While security is the greatest advantage in an SDN network, it is also a reason for great concern. In the case of an attack, the centralized controller can be a single point of failure and can hamper the whole network.
Also, the cost of deploying the SDN network can be a deterrent to small and medium enterprises, as they often also do not have the resources to tackle the problems of an emerging technology.
Ways in which SDN differs from Traditional Networking
While traditional networks rely on physical hardware such as switches and routers to make connections, SDN is a software network. In a software based network, the user interacts with software to accommodate new devices. The user can control the allocation of resources through the control plane at a virtual level.
SDN virtualizes the entire network. Virtualization creates an abstract version of the physical network that enables the user to provision resources from a centralized location.
In a traditional network, the control plane is located within the switch or the router. This makes it inconvenient for the administrators to easily dictate the flow of traffic. In a SDN network however, the control plane itself being software based can be easily accessed and enables the administrator to easily access traffic and gives the user more control over the network.
Software Defined Network does not depend on the need of physical infrastructure and hence allows administrators to provision resources and bandwidth instantaneously. For this reason, SDN is fast becoming an alternative to the traditional network.