From the course: Cisco CCNA (200-301) Cert Prep: 3 Security, Automation, and Programmability

Networking planes

- [Instructor] Everything a networking device does can be broken into various planes or areas of control. The data plane is responsible for all of the various parts of forwarding a message. That covers reception, processing, and forwarding. It's for this reason that the data plane is often referred to as the forwarding plane. Functions here include encrypting traffic, network address translation, filtering traffic with ACLs, encapsulating and decapsulating as packets move up and down the OSI model, and adding or removing 802.1Q headers. The control plane is where the decision-making happens. This will be systems like routing protocols, STP, IPv4 ARP, IPv6 neighbor discovery, and switches learning MAC addresses. In essence, its methods used to control the flow of data, or how the device knows where to forward traffic. Last, the management plane is everything associated with management of the device. This could be protocols like Telnet or SSH that an engineer uses to make configuration changes. This could also be interfaces that automation products will use to connect in and make adjustments. In the vast majority of networks today, the control plane is configured in a distributed architecture. The idea is that each device makes its own forwarding decision based on information it has at hand. While routing protocols like OSPF share information that help routers make better decisions, ultimately they decide on their own. There's also the concept of controller-based or software-defined networking environments. This is a centralized piece of software that will replace the control plane on the devices in the networking environment. The individual devices will use the intelligence of the centralized software plane to decide how packets should be forwarded in the network. It's for this reason it's called a centralized control plane. When the controller needs to reach out to a piece of network equipment, it does so via what's called the southbound interface. The SBI is often an application programming interface which is just a method for one program to talk to another. An SBI could be something as simple as SSH, SNMP, or OpenFlow or Cisco's OpFlex. A northbound interface allows connections from other applications that want to interact with the controller to connect in. The controller can gather information about the network topology, lists of devices, device capabilities, even device interfaces and their states. Although the nomenclature discussed may seem pretty foreign, you will be surprised how frequently it comes up in SDN and in controller-based discussions.

Contents