What is SDN, exactly?
Software-defined networking (SDN) is a different approach to designing, building and managing networks. The essence of the SDN approach is decoupling the control of network activity from the underlying physical infrastructure. This permits network administrators to efficiently build and manage networks across equipment from disparate manufacturers.
What does that really mean?
SDN centralizes control of the network by separating the control logic to off-device resources. All SDN models have an SDN Controller, Northbound and Southbound APIs. The controller (or the brains of the network) offers a centralized view of the network and allows administrators to dictate to the underlying network components (switches and routers) how the forwarding plane should handle the traffic. Southbound APIs relay info to the switches and routers “below”. OpenFlow is a particular Southbound API and is one of the most common and most well-understood protocols within SDN. Some people even confuse the terms and mistake OpenFlow and SDN for the same technology. Northbound APIs are used to shape traffic and deploy services. They communicate with the applications and business logic “above.”
What is OpenFlow?
OpenFlow is an open standard for a communications protocol that enables the control plane to interact with the forwarding plane. The argument for SDN.
There are a variety of reasons SDN is gaining traction:
- SDN is directly programmable
- It is very agile, allowing administrators to adjust network-wide traffic flow to meet real-time demands
- SDN is centrally managed. The intelligence is located in SDN controllers that maintain a global view of the network and appears as a single, logical switch
- SDN allows administrators to configure, manage and optimize network resources quickly via automated SDN programs, which can be written in-house because there is no dependence on proprietary software
- The technology is based on vendor-neutral Open Standards. Using open standards, SDN simplifies network design and operation because all instructions are provided by SDN controllers rather than multiple, vendor-specific protocols