Introduction to SDN

Work in progress. This note is still being written and incomplete.

Software-defined networking (SDN) is a network architecture that separates control logic from packet forwarding. A logically centralised controller exposes the network to programmable applications.

  • Control and data planes are decoupled.
  • Applications express network policies through APIs.
  • The controller maintains a network-wide view.
  • Forwarding devices execute the rules installed by the controller.

Traditional Network Planes

A traditional network device combines 3 planes within the same device.

PlaneResponsibilityExamples
Data planeForward packets using installed forwarding state.Table lookups, packet switching, queueing.
Control planeCompute forwarding decisions and install forwarding state.OSPF, BGP, STP.
Management planeConfigure, monitor, and maintain the device.CLI, SNMP, syslog.

The control plane builds the routing information base (RIB). Selected routes populate the forwarding information base (FIB), which the data plane uses to forward packets.

Traditional routing distributes control across devices. Each device exchanges protocol messages with other devices and computes its own forwarding state.

  • Distributed control supports resilience without a central controller.
  • Network behaviour depends on the combined state of many devices.
  • A routing protocol’s topology view does not provide a unified interface for all network policy and configuration.

Motivation for SDN

Vendor Dependence

Vertical integration bundles hardware, the operating system, and control software from a vendor.

  • Vendor-specific interfaces restrict portability.
  • New features depend on vendor release cycles.
  • Hardware constraints can require equipment replacement.
  • Deploying experimental control logic becomes difficult.

Network ossification is the difficulty of introducing changes into an established network architecture.

Per-Device Configuration

A network-wide policy often requires separate low-level changes on many devices.

  • Vendor syntax differs across devices.
  • Related changes must remain consistent.
  • Testing, verification, and rollback become difficult.
  • Manual configuration increases the opportunity for errors.

Examples:

  • Keeping finance traffic off a guest uplink requires coordinated forwarding and access-control rules.

Traffic Engineering

Shortest-path routing selects paths according to configured link costs. The selected path may not satisfy utilisation, latency, price, or policy objectives.

  • Congested links can coexist with underused alternatives.
  • Network-wide optimisation requires topology and traffic information.
  • Central control can select paths using both network state and policy.

Middlebox Management

Middleboxes perform functions beyond ordinary packet forwarding.

  • Separate appliances require separate configuration and scaling.
  • Traffic must traverse the required functions in the correct order.
  • VLAN and routing configurations can make service paths difficult to verify.

Examples:

  • Firewalls
  • Load balancers
  • Network address translators
  • Intrusion detection and prevention systems

Cloud and Virtualisation

Virtualised workloads require network changes to follow workload changes.

  • Virtual machine migration changes host locations.
  • Tenants need isolated networks over shared infrastructure.
  • Automated provisioning requires programmable network configuration.

SDN Architecture

The SDN architecture has 3 layers.

LayerComponentsResponsibility
Application planeRouting, security, load-balancing, and monitoring applications.Express policy and desired network behaviour.
Control planeSDN controller or network operating system.Maintain network state and translate policy into device operations.
Data planePhysical or virtual forwarding devices.Process packets according to installed rules.

Applications communicate with the controller through northbound interfaces. The controller communicates with forwarding devices through southbound interfaces.

The application plane in this model is distinct from the management plane of an individual device. Device configuration and monitoring remain necessary.

Northbound Interfaces

A northbound interface exposes controller services to network applications.

  • Provides access to topology, statistics, events, and policy operations.
  • Can use REST, gRPC, or native language APIs.
  • The API depends on the controller platform.

Southbound Interfaces

A southbound interface connects the controller to network devices.

InterfaceRole
OpenFlowInstall and manage match-action forwarding rules.
P4RuntimeControl a data-plane pipeline described using P4.
NETCONF with YANGConfigure devices using structured data models.
gNMIExchange configuration and streaming telemetry.
OVSDBManage Open vSwitch configuration.
BGP-LS and PCEPExport topology information and support controller-computed paths.

East-West Interfaces

East-west interfaces support communication between controllers.

  • Coordinate controller instances.
  • Exchange information across administrative domains.

Logical Centralisation

Logical centralisation presents a unified network view to applications. Multiple physical controller instances can implement that view.

  • Replicated state supports controller availability.
  • Distributed instances support scale.
  • Coordination keeps controller decisions consistent.
  • A single physical controller introduces a failure point and capacity limit.

SDN Controller

An SDN controller provides shared network state and control services to applications.

  • Discovery
    Identifies devices and links.
  • Topology service
    Represents the network as a graph.
  • Host tracking
    Tracks host attachment points and movement.
  • Rule management
    Installs forwarding rules and reconciles device state with desired state.
  • State storage
    Stores topology, host, and policy information.
  • Event notification
    Reports link failures, host movement, and traffic changes.
  • Protocol drivers
    Translate controller operations into device-specific protocol messages.

A routing application can compute paths over the topology graph instead of configuring each device through its CLI.

Examples:

  • NOX and POX
  • Floodlight
  • Ryu
  • OpenDaylight
  • ONOS
  • Faucet

Network Programmability

Rules and Intents

Imperative control specifies the operations that devices should perform. Intent-based control specifies the desired network outcome.

ApproachExampleController Responsibility
ImperativeForward matching traffic through port 2.Install the specified rule.
Intent-basedConnect 2 hosts within a specified latency bound.Compute and install a path satisfying the requirement, when feasible.
  • Intent separates policy from device-level mechanisms.
  • Topology changes can trigger recomputation of the implementation.
  • Physical capacity and connectivity constrain which intents can be satisfied.

Traditional Networking and SDN

AspectTraditional NetworkingSDN
Control logicDistributed across individual devices.Logically centralised in a controller platform.
Policy configurationCommonly expressed through per-device configuration.Exposed through programmable interfaces.
Application viewProtocol-specific and device-specific state.Shared network-wide state.
Feature changesOften depend on vendor control software.Can be implemented as controller applications within device capabilities.
ResilienceDistributed protocol convergence.Controller availability plus data-plane recovery mechanisms.

Benefits:

  • Consistent network-wide policy.
  • Automated provisioning and reconfiguration.
  • Traffic engineering using a network-wide view.
  • Separation of applications from device-specific configuration.

Trade-offs:

  • Controller availability and capacity require explicit design.
  • Replicated state introduces consistency challenges.
  • Multi-device changes require coordination.
  • Controller APIs and control channels require protection.
  • Device capabilities and forwarding-table capacity remain constraints.

SDN shifts complexity into the controller platform and its applications. Cost and operational simplicity depend on the deployment.

SDN and NFV

Network functions virtualisation (NFV) runs network functions as software on general-purpose computing infrastructure.

TechnologyMain ConcernExample
SDNPlacement and programmability of network control.A controller selects the path through a firewall.
NFVDeployment of network functions.A firewall runs as software instead of a dedicated appliance.

Service function chaining directs traffic through an ordered set of network functions. SDN can steer traffic through functions deployed using NFV.

Applications of SDN

  • Data centre networks
    Central policy, workload connectivity, and tenant isolation.
  • Inter-data-centre WANs
    Traffic engineering across expensive shared links.
  • SD-WAN
    Central policy and application-aware selection across different access links.
  • Cloud virtual networks
    Automated creation and management of isolated tenant networks.
  • Mobile networks
    Separation of control and user-plane functions.
Written by October 7, 2026 7 min read
Was this helpful?