SDN - jibingl/CCNA-CCNP GitHub Wiki
Software-Defined Networking
An networking approach that centralizes the control plane into an application called a controller.
SDN Architecture & Network Automation
SDN Architecture Network Automation
+------------+
| Apps |
+------------+
Application Layer | | Management Plane
---------------------------------( REST API )---------------------------------
| NBI |
+------+-----+-----+
| Controller |
| .--------------. |
| |Control Plane | |
| `--------------` |
+------------------+
Control Layer | SBI | Control Plane
--------------------------------|--( API )---|---------------------------------
Infrastructure Layer / \ Data Plane
+---(+)---+ +---(+)---+
| R1 | | R2 |
| .-----. | | .-----. |
| |Data | | | |Data | |
---(packet)---| |Plane| |--(packet)--| |Plane| |---(packet)---
| `-----` | | `-----` |
+---------+ +---------+
NBI (Northbound Interface) - human/apps-to-controller; SBI (Southbound Interface) - controller-to-devices.
SBI traffics can be OpenFlow, onePK, OpFlex, NETCONF, RESTCONF.
Notes | Data Plane | Control Plane | Management Plane |
---|---|---|---|
Functions | Data forwarding | How to forward data | Manage Devices |
If effect forwarding? | Yes | Yes | No |
Examples | routing (match to routing-table), forwarding (match to MAC-table), de- & re-encapsulation, add & remove 802.1q tags, VPN (add new IP), NAT (changing IPs), dropping due to ACLs or port-security | maintain routing table, ARP table, MAC address table, STP | SSH, Telnet, Syslog, SNMP, NTP |