Sergey Nivens - Fotolia
The following is an excerpt from the book Software Defined Networks: A Comprehensive Approach. In this section of Chapter 4: How SDN Works (.pdf), authors Paul Goransson and Chuck Black explain one of the fundamental characteristics of SDN, which is control plane separation. In the rest of the chapter, Goransson and Black take a look at network automation and virtualization, as well as network openness and SDN software switches. The authors expand on SDN controller types in the chapter, including diagrams that expose the anatomy of an SDN controller and thoughts on controller modules and interfaces. The authors end the chapter with a look at alternate SDN methods.
The first fundamental characteristic of SDN is the separation of the forwarding and control planes. Forwarding functionality, including the logic and tables for choosing how to deal with incoming packets based on characteristics such as MAC address, IP address, and VLAN ID, resides in the forwarding plane. The fundamental actions performed by the forwarding plane can be described by the way it dispenses with arriving packets. It may forward, drop, consume, or replicate an incoming packet. For basic forwarding, the device determines the correct output port by performing a lookup in the address table in the hardware ASIC. A packet may be dropped due to buffer overflow conditions or due to specific filtering resulting from a QoS rate-limiting function, for example. Special-case packets that require processing by the control or management planes are consumed and passed to the appropriate plane. Finally, a special case of forwarding pertains to multicast, where the incoming packet must be replicated before forwarding the various copies out different output ports.
The protocols, logic, and algorithms that are used to program the forwarding plane reside in the control plane. Many of these protocols and algorithms require global knowledge of the network. The control plane determines how the forwarding tables and logic in the data plane should be programmed or configured. Since in a traditional network each device has its own control plane, the primary task of that control plane is to run routing or switching protocols so that all the distributed forwarding tables on the devices throughout the network stay synchronized. The most basic outcome of this synchronization is the prevention of loops.
Although these planes have traditionally been considered logically separate, they co-reside in legacy Internet switches. In SDN, the control plane is moved off the switching device and onto a centralized controller.
Read the rest of Chapter 4: How SDN Works.
Buy the book Software Defined Networks: A Comprehensive Approach, with a 25% off discount using the promotion code PBTY14 now through March 31, 2015.