CenturionStudio.it - Fotolia
What is SDN? The term doesn't mean what it used to. The magic of marketing and the very real need to focus more...
on ends than means have forced software-defined networking (SDN) to stretch to cover more concepts than it did originally.
When everyone began to get excited about SDN a few years ago, we thought of it as only one thing: the separation of network control from network data packet handling. Traditional networks had already started down this path, with the addition of controller cards to manage line cards in scalable chassis-based switches, and with various data center fabric technologies. SDN took the idea to its logical end, removing the need for the controller and the packet handlers to be on the same backplane or even from the same vendor. In a software-defined network, the data plane handles packets under the direction of a control plane, but the controllers are just applications that can run on standard x86 hardware. SDN controllers use a standard protocol (OpenFlow) to communicate with data plane devices. Other specialized network appliances -- like firewalls and load balancers -- that get recast as SDN applications also run on standard x86 hardware using the SDN controller to get the data plane devices to do what they need to do.
The "SDN Classic" model, as illustrated by this graphic from the Open Networking Foundation, offers many potential benefits:
- Increased agility by making it possible to reconfigure the network from a central point.
- Increased flexibility by making it possible to deliver any network function on any network port; a node's location in the network no longer determines what services can be delivered to it.
- Reduced vendor lock in by separating controllers from data plan devices.
- Reduced capital costs by making data plane switches generic commodity items and allowing controller and applications to run on standard server hardware.
- Reduced maintenance costs.
As SDN excitement grew, the term software-defined was adopted by marketers and applied liberally to all kinds of products and technologies: software-defined storage, software-defined security, software-defined data center. The SDN definition was itself stretched to accommodate several kinds of technology that support the primary goals of SDN Classic -- to make the network agile and flexible and less dependent on specific arrangements of specialized physical devices -- without embracing the primary means (applications, control plane, OpenFlow, data plane).
Automation, virtualization now under SDN umbrella
This aspect of SDN focuses on the creation of a network automation hub, with APIs over which network orchestration and cloud management systems can request changes in the network (provisioning, deprovisioning, reprovisioning). Whether it is a classic SDN controller speaking OpenFlow, or a standalone tool that can dynamically reprogram existing, conventional switches using their command line interfaces (CLIs), or some other technology, these are all now recognized as living under the SDN umbrella.
As a concept, virtualization is about separating the logical, functional version of something from the physical infrastructure underlying it, such as virtual servers and desktops separated from x86 hardware, virtual storage separated from the disk arrays, and so on. The network has been slower to virtualize than other parts of the data center, a choke point in data center operations: Where virtual servers and storage might be spun up in a few minutes, the correct network setup might take days or weeks. Classic SDN virtualized the network: Logical function resided in the software layer only, and the software was not tied to specific devices. Other approaches are now part of SDN and include the following:
- Running multiple versions of a logical appliance on the same physical hardware (e.g., multiple virtual firewalls on a single physical one).
- The virtualization of network appliances into applications or virtual machines running on commodity server hardware (the core of NFV, network functions virtualization).
- The creation of an overlay network.
Overlay networks use the physical network already in place for transport, and appliances and switches under the control of the overlay network use tunneling protocols, primarily VXLAN, to communicate with each other. The physical network passes packets along, but the overlay network determines who can talk to whom.
SDN's boundaries have shifted from an emphasis on the means used to the ends accomplished. Thanks to that shift in focus, the answer to the question "What is SDN?" has changed. The term has now come to broadly embrace not just OpenFlow-based separation of control from packet-handling, but also automation technologies that help make the network fully programmable, and virtualization technologies that free function from the constraints of cabling and topology.
SDN may evolve further to meet the demand of Internet of Things
The promise of SDN extends beyond the data center
Barriers slowing enterprise adoption of software networking