Study smarter with Fiveable
Get study guides, practice questions, and cheatsheets for all your subjects. Join 500,000+ students with a 96% pass rate.
Software-Defined Networking fundamentally changes how we think about network architecture by separating the control plane from the data plane—but that separation only works if the pieces can talk to each other effectively. The protocols you'll encounter in SDN aren't just technical specifications; they represent different approaches to solving core networking challenges: how do we configure devices, compute optimal paths, manage traffic flows, and enable programmability at scale?
You're being tested on more than protocol names and port numbers. Exam questions will ask you to identify which protocol solves a specific problem, compare southbound versus northbound interfaces, and explain why certain protocols work together in production deployments. Don't just memorize what each protocol does—understand which layer of the SDN architecture it operates in and what problem it was designed to solve.
These protocols handle communication between the SDN controller and network devices (switches, routers). They're the foundation of SDN's centralized control model, enabling the controller to push forwarding rules and receive network state information from the data plane.
Compare: OpenFlow vs. OF-Config—both work with OpenFlow-enabled switches, but OpenFlow manages forwarding behavior while OF-Config manages device configuration. If an exam question asks about configuring switch ports or managing certificates, OF-Config is your answer; if it's about flow rules and packet forwarding, that's OpenFlow.
These protocols focus on device configuration, state management, and operational control. They enable automation and orchestration across network infrastructure, whether physical or virtual.
Compare: NETCONF vs. OVSDB—both handle configuration, but NETCONF is a general-purpose protocol for any network device, while OVSDB is specifically designed for Open vSwitch virtual switches. NETCONF uses XML; OVSDB uses JSON. Choose NETCONF for physical device management, OVSDB for virtual switching environments.
These protocols enable intelligent path selection and traffic optimization. They provide network topology visibility and computational capabilities that allow SDN controllers to make informed routing decisions.
Compare: BGP-LS vs. PCEP—BGP-LS collects and distributes topology information, while PCEP uses that information to compute and provision paths. They're complementary: BGP-LS feeds the controller's topology database, PCEP handles the actual path computation and signaling. Expect exam questions that test whether you understand this division of labor.
These protocols and languages enable custom network behavior and application-level integration. They represent the programmable nature of SDN beyond simple configuration management.
Compare: P4 vs. OpenFlow—both affect packet processing, but OpenFlow programs existing switch behavior through flow rules, while P4 defines the switch behavior itself at the pipeline level. OpenFlow works within fixed-function hardware; P4 requires programmable hardware but offers unlimited flexibility.
| Concept | Best Examples |
|---|---|
| Southbound (Controller-to-Switch) | OpenFlow, OF-Config, OVSDB |
| Device Configuration | NETCONF, OVSDB, OF-Config |
| Topology Distribution | BGP-LS |
| Path Computation | PCEP |
| Data Plane Programmability | P4 |
| Routing System Integration | I2RS |
| High-Performance RPC | gRPC |
| Real-Time Messaging | XMPP |
Which two protocols would you use together to both configure an OpenFlow switch's ports and manage its flow tables? What does each one handle?
A network operator wants to compute optimal paths based on bandwidth constraints and then signal those paths to network devices. Which two protocols work together to accomplish this?
Compare NETCONF and OVSDB: what data encoding does each use, and in what deployment scenario would you choose one over the other?
An exam question describes a scenario where an application needs to temporarily inject routes into the network's RIB without affecting the underlying routing protocol state. Which protocol addresses this use case, and what key characteristic makes it appropriate?
Explain why P4 and OpenFlow are sometimes described as complementary rather than competing technologies. In what type of hardware deployment would you need P4 instead of (or in addition to) OpenFlow?