The goal of Software-Defined Networking (SDN) is to enable cloud computing and network engineers and administrators to respond quickly to changing business requirements via a centralized control console. SDN encompasses multiple kinds of network technologies designed to make the network more flexible and agile to support the virtualized server and storage infrastructure of the modern data center. Software-defined networking originally defined an approach to designing, building, and managing networks that separates the network’s control or SDN network policy (brains) and forwarding (muscle) planes thus enabling the network control to become directly programmable and the underlying infrastructure to be abstracted for applications and network services for applications as SDN cloud computing or mobile networks.
How Does Software-Defined Networking Work?
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 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.
The Software-Defined Networking Framework
Software-Defined Networking is Not OpenFlow
Often people point to OpenFlow as being synonymous with software-defined networking, but it is only a single element in the overall SDN architecture. OpenFlow is an open standard for a communications protocol that enables the control plane to interact with the forwarding plane. It must be noted that OpenFlow is not the only protocol available or in development for SDN.
The Business Benefits of Software-Defined Networking
SDN offers a centralized, programmable network that can dynamically provision so as to address the changing needs of businesses. It also provides the following technical and business benefits:
- Directly Programmable: SDN network policy is directly programmable because the control functions are decoupled from forwarding functions, which enables the network to be programmatically configured by proprietary or open source automation tools, including OpenStack, Puppet, and Chef.
- Centralized Management: Network intelligence is logically centralized in an SDN controller software that maintains a global view of the network, which appears to applications and SDN network policy engines as a single, logical switch.
Reduce CapEx: Software-Defined Networking potentially limits the need to purchase purpose-built, ASIC-based networking hardware, and instead supports pay-as-you-grow models
- Reduce OpEX: SDN enables algorithmic control of the network of network elements (such as hardware or software switches/routers) that are increasingly programmable, making it easier to design, deploy, manage, and scale networks. The ability to automate provisioning and orchestration optimizes service availability and reliability by reducing overall management time and the chance for human error.
- Deliver Agility and Flexibility: Software-Defined Networking helps organizations rapidly deploy new applications, services, and infrastructure to quickly meet changing business goals and objectives.
- Enable Innovation: SDN enables organizations to create new types of applications, services, and business models that can offer new revenue streams and more value from the network.
Social media, mobile devices, and cloud computing are pushing traditional networks to their limits. Compute and storage have benefited from incredible innovations in virtualization and automation, but those benefits are constrained by limitations in the network. Administrators may spin up new compute and storage instances in minutes, only to be held up for weeks by rigid and oftentimes manual network operations.
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.
As detailed above, Software-Defined Networking offers several benefits for businesses trying to move into a virtual environment. There is a multitude of use cases for different organizations, including carrier and service providers, cloud computing and data centers, as well as enterprise campuses.
For carrier and service providers, Software-Defined Networking offers bandwidth-on-demand, which gives controls on carrier links to request additional bandwidth when necessary, as well as WAN optimization and bandwidth calendaring. For cloud computing and data centers, network virtualization for multi-tenants is an important use case as it offers better utilization of resources and faster turnaround times for creating a segregated network. Enterprise campuses experience network access control and network monitoring when using Software-Defined Networking policies.