What is Software-Defined Networking (SDN) ?
The limitations of the traditional networks
Traditional networking uses integrated hardware and software to direct traffic across a series of connected switches. The difficulty is that it is hard to perform real-world experiments on large-scale production networks. The reasons for these challenges can be given as Research stagnation due to the expensive equipment to be procured and Networks are lack of modifications and improvements for several years and the rate of innovation in networks is slower as protocols are defined in isolation-lack of high-level abstraction.
SDN came as an idea of virtualizing the network. The initial step for introducing SDN was taken by Stanford University researchers. The Software-Defined Networking (SDN) is a network architecture approach that enables the network to go for a virtualized method which is separating the control-plane that manages the network from the data plane where traffic flows.
A network engineer or administrator can control and monitor traffic from a centralized console without having to touch individual switches in the network with the use of SDN technology. The centralized SDN controller directs the switches to deliver network services wherever they're needed, regardless of the specific connections between a server and devices.
An SDN architecture consists of 3 layers. The three layers are the Infrastructure layer, Control layer, and Application layer. SDN architecture separates the network into three distinguishable layers, connected through northbound and southbound APIs.
An SDN architecture consists of 3 layers. The three layers are the Infrastructure layer, Control layer, and Application layer. SDN architecture separates the network into three distinguishable layers, connected through northbound and southbound APIs.
1. Infrastructure layer:
The infrastructure layer or data plane consists of both physical and virtual network devices such as switches and routers. All the network devices will implement OpenFlow protocol to implement traffic forwarding rules. (OpenFlow protocol is an open API that provides a standard interface for programming the data plane switches). The data plane is responsible for the processing and delivery of packets. The physical and virtual network devices that it consisted of, handles the packet processing and forwarding by the state of routers and endpoints. This provides a very efficient forwarding mechanism.
2. Control layer:
This layer has a centralized control plane that is disconnected from the physical infrastructure to provide an overview of the entire network. The layer will use the OpenFlow protocol to communicate with the infrastructure layer. The control plane is establishing the state in routers and determines how and where packets are forwarded. The data plane is programmable, and a central entity maintains, control, and program the data plane. The control of all the data plane devices is done using SDN Controller. The controller also controls the end applications at the Application Layer of the SDN architecture.
3. Application layer:
It uses network services, applications, and
orchestration tools to interact with the control layer. It provides an open
interface to communicate with other layers in the architecture.
SDN technology can make a difference for an organization in the below areas:
SDN technology can make a difference for an organization in the below areas:
1) Programmable Network:
SDN enables networks to
control by the software without depending only on the physical devices. Because
of SDN, network operators can give a customized solution to their customers. By
separating hardware from software-based functionalities, Network operators can
create innovative new services without limiting to constraints of platforms.
2) Logically centralized network environment:
SDN is a centralized
network topology. It gives intelligent control and management of network
resources. With Bandwidth management, restoration, security, and policies SDN the network provides a great service to network operators by giving them to visualize
a holistic view of the entire network.
3) An abstraction of the network:
Services and application
running on SDN technology are abstracted from the technologies and hardware
that provides physical connectivity from network control. Applications can
interact with the network through APIs, instead of management interfaces.
4) Openness:
SDN architecture uses
open APIs that supports a wide range of applications, including cloud
orchestration, SaaS, and business-critical networked apps. SDN’s intelligent
network services and applications can run within a common software environment.
There are also certain challenges that could be faced because of SDN architecture.
Security is both a benefit and a concern
for an organization that uses SDN technology. The centralized SDN controller
presents a single point of failure so that if an attacker targets a point it
will be affected the entire network's functionality. Different vendors offer various approaches to SDN, with slight modifications and changes in Hardware centric models and virtualization platforms. Therefore, there is really no established definition of “software-defined networking” in the networking industry.
SDN technology emerged with a lot of hype around
2011 when it was introduced alongside the OpenFlow protocol. Since then,
adoption has been relatively slow, especially among enterprises that have
smaller networks and fewer resources. Many industries are concerned about the cost that could be incurred with
the establishment of SDN.
SDN use cases
- DevOps: An approach based on software-defined networking can facilitate DevOps by automating app updates and deployments, including automating IT infrastructure components.
- Campus networks: Campus networks can be difficult to manage, especially with the ongoing need to unify Wi-Fi and Ethernet networks. By using SDN they can have a customized and application-specific service
- Service provider networks: SDN helps service providers simplify and automate the provisioning of their networks by giving control of the end-to-end network.
- Datacenter security: SDN can be useful in protection and simplifies firewall administration.
References


A comprehensive post on SDN for those who are interested in the domain. Keep the good work up Suranga!!!
ReplyDeleteThank you
DeleteLearned a lot. Keep writing!!
ReplyDeleteThank you
DeleteA comprehensive explanation Surangaa. Taking away so much!
ReplyDeleteThank you
DeleteInformative post on SDN!!You have mentioned about cloud orchestration in your artcle.Can you please explain what it means?
ReplyDeleteThank you dilesha. Orchestration is the automated configuration, management, and coordination of computer systems, applications, and services. Cloud orchestration is the use of programming technology to manage the interconnections and interactions among workloads on public and private cloud infrastructure.
DeleteSuranga, you have given a comprehensive answer. Can you refer me a good article to read further about this?
Deletehttps://searchitoperations.techtarget.com/definition/cloud-orchestrator#:~:text=Cloud%20orchestration%20is%20the%20use,permissions%20oversight%20and%20policy%20enforcement.
DeleteYou can read more from above link Asenika
Good article! Keep writing.
ReplyDeletethank you Asenika
DeleteUseful article Suranga. Keep it up!
ReplyDeletethanks anuththiga
DeleteNice article Suranga. Why is SDN taking so long to adopt?
ReplyDeletei think it is because vendors of SDN solutions have not introduce compelling use cases of SDN yet.Because of that IT decision makers stay away from confusing stuff even though those new technologies are beneficial.
DeleteInformative article. It is impressive to see how these networking technologies have matured over time.
ReplyDeletethank you santhoopa
Delete