what are the functions of data plane
local, per-router function
determines how datagram arriving on router input port is forwarded to router output port
forwarding function
what are the functions of control plane
network-wide logic
determines how datagram is routed among routers along end-end path from source host to destination host
what is a SDN?
A network in which the control plane is physically separate from the data plane,
and
A single (logically centralized) control plane controls several forwarding devices.
The controller interacts with a control agent (CA) in each of the routers via a well-defined protocol to configure and manage that router’s flow table
what is management plane?
configuring and tuning the network – Traffic engineering, ACL configuration, device provisioning, …
what do you mean logically centralized?
By “logically centralized” control we mean that the routing control service is accessed as if it were a single central service point, even though the service is likely to be implemented via multiple servers for fault-tolerance, and performance scalability reasons
what are the headers in open flow?
Pattern: match values in packet header fields
Actions: for matched packet: drop, forward, modify, matched packet or send matched packet to controller
Priority: disambiguate overlapping patterns
Counters: #bytes and #packets
Why a logically centralized control plane?
easier network management: avoid router misconfigurations, greater flexibility of traffic flows
table-based forwarding (recall OpenFlow API) allows “programming” routers
centralized “programming” easier: compute tables centrally and distribute
distributed “programming: more difficult: compute tables as result of distributed algorithm (protocol) implemented in each and every router
open (non-proprietary) implementation of control plane
what if network operator wants u-to-z traffic to flow along uvwz, x-to-z traffic to flow xwyz?
need to define link weights so traffic routing algorithm computes routes accordingly