Software-Defined Networking (SDN) Fundamentals for CCNA

Today I will be discussing SDN which stands for Software Defined Networking. Network devices such as routers and switches have multiple parts (planes) that work together to form a functioning network device that can send and receive packets. Each plane has its own responsibility. These parts are often called “planes” which are: 

  1. Management Plane 
  2. Control Plane 
  3. Data Plane 

Management Plane – The management plane is the part of the network device responsible for monitoring, configuring and managing the network device. The management plane provides the management interface that administrators and automation tools use to interact with network devices.

Management Interfaces: 

  • CLI (Command Line Interface) 
  • API (Application Programming Interface) 
  • Web Interface (HTTPS) 

Through management interfaces this allows administrators and automation tools to view device status (interface status, CPU utilization), collect operational state/telemetry, modify configurations, and perform maintenance tasks such as software upgrades and configuration backups. There are plenty of protocols and APIs that manage devices through the management plane, enabling both manual administration and automated network management. 

Management Plane Protocols:

  • SSH
  • HTTPS 
  • SNMP
  • Syslog 

Management Plane APIs: 

  • NETCONF 
  • RESTCONF 
  • gNMI

Control Plane – The control plane is the part of the network device responsible for making decisions about how traffic should flow through the network. The control plane learns the network topology, exchanges routing information between neighboring devices, and builds the routing table using protocols such as OSPF, EIGRP or BGP. The control plane is also used for layer 2 control protocols such as STP to maintain a loop-free topology. This plane is essentially the brain of the network device, providing the best path to a destination in the same way a GPS would. 

Data Plane – The data plane is the part of a network device responsible for forwarding user traffic from one interface to another based on the forwarding decisions or rules that have already been programmed into the device. It performs high speed packet processing by analyzing the packet or frame headers for the destination IP address, MAC address, VLAN tags, or MPLS labels and then forwards the traffic based on the devices forwarding table (MAC Address table, routing table). Unlike the control plane, which builds routing information and determines the best paths through the network, the data plane’s only role is to forward packets at wire speed (maximum capacity of the link.)

SDN – SDN (Software Defined Networking) is a networking architecture that separates the control plane, which makes decisions about how traffic should flow throughout the network (OSPF, BGP), from the data plane, which is responsible only for forwarding packets based on those decisions. In a typical network every device such as routers and switches must be configured manually one by one. SDN uses a centralized software based controller that allows administrators to centrally manage, automate, define policies and configure multiple devices from a single controller. 

In SDN, there are two main interfaces that the controller uses to communicate with applications and devices. SDN provides a NBI (Northbound Interface) and an SBI (Southbound Interface). 

NBI – A NBI (Northbound Interface) is an API (Application Programming Interface) that connects the SDN controller to applications (Python scripts), management platforms (NetBox, Solarwinds), and network orchestration tools (Ansible, Terraform.) NBI provides these applications with a simplified (abstracted) view of the network, allowing them to request network services, retrieve network information, define policies, and automate network operations. This abstracted view of the network allows these applications to make configurations and changes to network devices without needing to know the specific vendor, hardware platform or CLI of the individual devices. 

SBI – A SBI (Southbound Interface) is a communication interface used by the SDN controller to communicate with network devices. Depending on the protocol, SBI may configure devices through the management plane using NETCONF or RESTCONF, or it can program forwarding behavior directly in the data plane using OPENFLOW. Its primary purpose is to enable the controller to apply configurations, program forwarding behavior (OPENFLOW), and collect operational/telemetry (DR/BDR IP addresses) from network devices.

Leave a Reply

Your email address will not be published. Required fields are marked *