An SDN controller is a software platform that centralizes some or all control-plane functions, giving the network a global view and programmatic control. Network devices retain data-plane responsibilities: they forward messages according to instructions received from the controller. section 22.2 section 22.2.2
A controller participates in a three-layer architecture:
- Application Layer communicates network requirements and desired behavior to the controller. section 22.2.2
- Control Layer translates high-level requirements into actionable device instructions. section 22.2.2
- Infrastructure Layer contains routers and switches that execute the received instructions. section 22.2.2
- Northbound APIs connect applications to the controller, while southbound APIs connect the controller to infrastructure devices. section 22.2.2
Figure 22.5 SDN architecture centralizes the Control Plane functions in the controller. However, the Data Plane functions (message forwarding) remain distributed among each network device.
Visualizes how the controller centralizes control-plane functions while forwarding remains distributed across network devices. section 22.2.2
Cisco controller examples map to specific SDN fabrics:
- Catalyst Center, formerly DNA Center, controls Cisco SD-Access campus fabrics built from a physical underlay and VXLAN overlay. section 22.2.3
- Cisco SD-WAN uses multiple controllers for router onboarding, control-plane functions, and management-plane functions. section 22.2.3
- APIC controls Cisco ACI by translating high-level network policies into configurations deployed across the data-center fabric. section 22.2.3
