Software-defined networking (SDN) is an approach to communication networking that allows network administrators to manage network services through abstraction of lower-level functionality. This is done by decoupling the system that makes decisions about where traffic is sent (the control plane) from the underlying systems, that forward traffic to the selected destination (the data plane).
SDN requires some method for the control plane to communicate with the data plane. One such mechanism, OpenFlow, is often misunderstood to be equivalent to SDN, but other mechanisms could also fit into the same concept.
The networking camp is divided into are two camps. Some network architects believe that SDN is an extraordinary technology that will change the world. Others see SDN as another idea in a long string of quirky networking ideas that never gained acceptance. They think that SDN is a buzzword and will go nowhere useful.
SDN architecture benefits
- Infrastructure Savings: Separating route/switching intelligence from packet forwarding reduces hardware prices as routers and switches must compete on price-performance features.
- Operational Savings: In a physical environment, the isolation for the customer workloads requires configuring VLANs on separate networking devices, including routers, switches, etc. Since most of the networking is done at the SDN, it is easy for service providers to isolate the customer virtual machines from other customers by using various isolation methods available in the SDN.
- Flexibility: SDNs create flexibility in how the network can be used and operated. Since SDN is software-based, it is easy to use SDN API references for vendors to extend the capabilities of an SDN solution by developing applications to control the behavior of networking traffic.
- Central Management: SDN provides the ability to control the virtual and physical networking by using a central management tool. A virtual administrator can process the necessary changes without needing to collaborate with different teams.
- Availability: Since SDN helps in virtualizing most of the physical networking devices, it is relatively easy to perform an upgrade for one piece rather than for several devices. SDN also supports snapshotting the configuration, which helps quickly recover from any failures caused by the upgrades.
3 challenges of SDN networks
SDN holds great promise in terms of simplifying network deployment and operation along with lowering the total cost of managing enterprise and carrier networks by providing programmable network services. A number of challenges, however, remain to be addressed.
1. Integration with existing networks
It would be straightforward to deploy a completely new infrastructure based on SDN technology. For this, all elements and devices in the network would be SDN-enabled. However, there exists an installed-base of networks today that cannot be replaced in one day.
The transition to SDN requires simultaneous support of SDN and legacy equipment. Further development and complicated integration is required to achieve a hybrid SDN infrastructure in which traditional, SDN-enabled and hybrid network nodes can operate in harmony. Such interoperability requires developing equipment that supports both the requirements for SDN communication interfaces and provides backward compatibility with existing IP routing and MPLS control plane technologies. Such hybrid equipment would reduce the cost, risk and disruption for enterprise and carrier networks transitioning to SDN.
2. Management and control of global networks
Traditional packet networks became scalable because they do not require extensive state to be held between system units. Each network node is autonomous, requiring only limited knowledge of its neighbors. Routing protocols control the traffic and the networks are designed with alternative paths and redundancy equipment for high availability. Some state is being held between systems to ensure that during a failure, there is little or no interruption in service.
Real time management and control of SDN networks introduces three main issues:
- Latency between multiple nodes and a single controller.
- Real time communication between SDN controllers using the east and westbound APIs.
- Complexity of the controller application.
Distributed controller infrastructure would share the communication burden of the controller and may resolve the complexity problem. However, it will increase the challenge of controller-to-controller interactions and it may require another layer of orchestration to enable global network control.
3. Security of Software Defined Networks
Multiple potential security vulnerabilities exist across the SDN architecture. The controller is a particularly attractive target for attacks since it manages and controls the entire network. Controllers are required to implement authentication and authorization mechanisms to enable multiple organizations access network resources. Furthermore, with the introduction in SDN of open interfaces and known protocols to simplify network programming by any application provider, the door is open for attackers. With full knowledge of how to control the network, with access to the controller, the operation of the network can quickly and easily be exploited by the attacker.
Bottom line – Will SDN actually happen?
The answer is very clear. Yes, it will become a reality in the coming years and will overcome all challenges.
The reason is very simple. Current networks cannot provide a good solution for future needs. Vendors should develop new equipment that supports the new requirements for simple, low cost and agile networks.