Software Defined Networking (SDN) is umbrella term encompassing several kinds of network technologies aimed at making the network as agile and flexible as the virtualized server and storage infrastructure of the modern data center. The goal of Software Defined Networking is to enable network engineers and administrators to respond quickly to changing business requirements via a centralized control console Software defined networking was originally defined an approach to designing, building, and managing networks that separates the network’s control (brains) and forwarding (muscle) planes enabling the network control to become directly programmable and the underlying infrastructure to be abstracted for applications and network services.
How Does SDN 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 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.
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 Benefits of Software Defined Networking
Offering a centralized, programmable network that can dynamically provision so as to address the changing needs of businesses, software-define networking also provides the following benefits:
- Directly Programable: Network directly programmable because the control functions are decoupled from forwarding functions.which enable 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 SDN controller software that maintains a global view of the network, which appears to applications and 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 are a multitude of use cases that SDN offers for different organizations, including carrier and service providers, cloud 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 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.