What is SDN?
Software-defined networking (SDN) is an approach to network virtualization that seeks to optimize network resources and quickly adapt networks to changing business needs, applications, and traffic. It works by separating the network’s control plane and the data plane, creating software-programmable infrastructure that is distinct from physical devices.
SDN came into being with the arrival of Openflow protocol that can move network control out of proprietary network switches and into control software that’s open source and locally managed. After understanding the benefits of Openflow, most of the major router and switch vendors jumped on the bandwagon and see Openflow as a pathway to SDN. Since then, the term SDN has evolved
What is OpenFlow?
OpenFlow (OF) is considered one of the first software-defined networking (SDN) standards. It originally defined the communication protocol in SDN environments that enables the SDN Controller to directly interact with the forwarding plane of network devices such as switches and routers, both physical and virtual (hypervisor-based), so it can better adapt to changing business requirements.
Why need Software Defined Networking Now?
Computing has advanced rapidly over the past three decades, but the way that networking is done has remained virtually unchanged. The networks themselves have become a critical component of all infrastructures in society and an important part of the emerging public and private clouds. However, traditional networking approaches have become too complex, closed, and proprietary. They have become a barrier to creating new, innovative services within a single data center, on interconnected data centers, or within enterprises, and an even larger barrier to the continued growth of the Internet.
The root cause of a network’s limitation is that it is built using switches, routers, and other devices that have become exceedingly complex because they implement an ever-increasing number of distributed protocols and use closed and proprietary interfaces. In this environment, it is too difficult, if not impossible, for network operators, third parties, and even vendors to innovate. Operators cannot customize and optimize networks for their use cases that are relevant to their business and cannot offer customized solutions to their customers. The net result is the following:
- Difficult to optimize.
Network operators are finding it difficult to introduce new revenue generating services and optimize their expensive infrastructures: data centers, wide-area networks, and enterprise networks.
- Known problems.
Networks continue to have serious known problems with security, robustness, manageability, mobility and evaluability that have not been successfully addressed so far.
- Capital costs.
Network capital costs have not been reducing fast enough and operational costs have been growing, putting excessive pressures on network operators.
Software-defined networking has the potential to revolutionize legacy data centers by providing a flexible way to control the network so it can function more like the virtualized versions of compute and storage today.
- Difficult to customize.
Even vendors and third parties are not able to provide customized cost effective solutions to address their customers’ problems.
How SDN Networks Woks?
Software-defined networking providers offer a wide selection of competing architectures, but at its most simple, the Software Defined Networking method centralizes control of the network by separating the control logic to off-device computer resources. All SDN models have some version of an SDN Controller, as well as southbound APIs and northbound APIs:
Controllers: The “brains” of the network, SDN Controllers offer a centralized view of the overall network, and enable network administrators to dictate to the underlying systems (like switches and routers) how the forwarding plane should handle network traffic.
Southbound APIs: Software-defined networking uses southbound APIs to relay information to the switches and routers “below.” OpenFlow, considered the first standard in SDN, was the original southbound API and remains as one of the most common protocols. Despite some considering OpenFlow and SDN to be one in the same, OpenFlow is merely one piece of the bigger SDN landscape.
Northbound APIs: Software Defined Networking uses northbound APIs to communicates with the applications and business logic “above.” These help network administrators to programmatically shape traffic and deploy services.
Some of the Specific Advantages of Software Defined Networking:
- Centralized Network Provisioning.
Software defined networks provide a centralized view of the entire network, making it easier to centralize enterprise management and provisioning. For example, more VLANs are becoming part of physical LANs, creating a Gordian knot of links and dependencies. By abstracting the control and data planes, SDN can accelerate service delivery and provide more agility in provisioning both virtual and physical network devices from a central location.
- Holistic Enterprise Management.
Enterprise networks have to set up new applications and virtual machines on demand to accommodate new processing requests such as those for big data. SDN allows IT managers to experiment with network configuration without impacting the network. SDN also supports management of both physical and virtual switches and network devices from a central controller; something you can’t do with SNMP. SDN provides a single set of APIs to create a single management console for physical and virtual devices.
- More Granular Security.
One of the advantages of security defined networking that appeals most to IT managers is centralized security. Virtualization has made network management more challenging. With virtual machines coming and going as part of physical systems, it’s more difficult to consistently apply firewall and content filtering polices. When you add in complexities such as securing BYOD devices, the security problem is compounded.
The SDN Controller provides a central point of control to distribute security and policy information consistently throughout the enterprise. Centralizing security control into one entity, like the SDN Controller, has the disadvantage of creating a central point of attack, but SDN can effectively be used to manage security throughout the enterprise if it is implemented securely and properly.
- Lower Operating Costs.
Administrative efficiency, improvements in server utilization, better control of virtualization, and other benefits should result in operational savings. Although it is still early to show real proof of savings, SDN should lower overall operating costs and result in administrative savings since many of the routine network administration issues can be centralized and automated.
- Hardware Savings and Reduced Capital Expenditures.
Adopting SDN also gives new life to existing network devices. SDN makes it easier to optimize commoditized hardware. Existing hardware can be repurposed using instructions from the SDN controller and less expensive hardware can be deployed to greater effect since new devices essentially become “white box” switches with all the intelligence centered at the SDN controller.
- Cloud Abstraction.
Cloud computing is here to stay and it is evolving into a unified infrastructure. By abstracting cloud resources using software defined networking, it’s easier to unify cloud resources. The networking components that make up massive data center platforms can all be managed from the SDN controller.
- Guaranteed Content Delivery.
The ability to shape and control data traffic is one of the primary advantages of software defined networking. Being able to direct and automate data traffic makes it easier to implement quality of services (QoS) for voice over IP and multimedia transmissions. Streaming high quality video is easier because SDN improves network responsiveness to ensure a flawless user experience.
SDN, by its nature, is oriented toward joining different pieces of technology via the orchestration mechanism of a logically centralized controller. In fact, a unique SDN protocol, does not exist—users must combine various technologies. Therefore, in consideration of the technical solutions of SDN, it will be increasingly important to study the end-user’s benefit from a system wide perspective to ensure the final configuration supports the user’s objectives.