SDN INSEM PREPATION NOTES
Q1) Explain SDN architecture with neat diagram. (7 marks)
Software Defined Networking (SDN) separates network control logic from forwarding
hardware, enabling centralized, programmable network management. This architecture
consists of three distinct layers:
1. Application Layer (Northbound):
Network applications and services
Examples: Firewall, Load Balancer, Monitoring Tools
Communicate via REST APIs with controller
2. Control Layer (SDN Controller):
Centralized software controller
Makes global forwarding decisions
Manages network policies
Examples: OpenDaylight, ONOS, Floodlight
3. Infrastructure Layer (Southbound):
Network forwarding devices
Switches, routers, access points
Follow flow rules from controller
Key Interfaces:
Northbound API: Controller to Applications (REST)
Southbound API: Controller to Devices (OpenFlow)
SDN Architecture Diagram:
How It Works:
1. Applications request services via Northbound API
2. Controller computes optimal paths
3. Controller installs flow rules via OpenFlow
4. Devices forward packets based on flow tables
Benefits:
Centralized management
Programmable network behavior
Vendor independence
Faster innovation
Q2) Explain Centralized and Distributed Control and Data Planes. (7 marks)
Control Plane vs Data Plane:
Control Plane: Makes decisions (routing, policies)
Data Plane: Forwards traffic (packet switching)
1. Centralized Control Plane:
Single controller makes all decisions
Global network view
Consistent policy enforcement
Advantage: Simplified management
Disadvantage: Single point of failure
Example: Basic SDN architecture
2. Distributed Control Plane:
Decisions made by multiple devices
Uses routing protocols (OSPF, BGP)
Advantage: Scalability, fault tolerance
Disadvantage: Complex coordination
Example: Traditional networks
Data Plane (Always Distributed):
Forwarding happens locally in each device
Fast packet processing
Based on local forwarding tables
Comparison:
Aspect Centralized Control Distributed Control
Decision Making Single controller Multiple devices
Network View Global Local
Scalability Limited High
Fault Tolerance Low High
Management Simple Complex
Q3) SDN vs Traditional Network (Comparison)
Feature Traditional Network Software Defined Network
(SDN)
Architecture Control plane and data plane are Control plane separated from
inside the same device data plane
Network Distributed across routers and Centralized in SDN controller
Intelligence switches
Configuration Manual configuration on each device Programmatically controlled
Flexibility Low flexibility Highly flexible and
programmable
Management Device-by-device management Centralized network
management
Scalability Difficult to scale Easily scalable
Innovation Slow innovation due to hardware Fast innovation using software
dependency
Example Traditional routers, switches OpenFlow based SDN
networks
Key Points (Write in Exam)
Traditional networks combine control plane and data plane inside devices.
SDN separates control plane from forwarding devices.
SDN uses centralized controller to manage the network.
Network behavior can be programmed using software.
SDN improves automation, scalability, and flexibility.
Q4) Benefits / Advantages of SDN
1. Centralized Control
Network intelligence located in SDN Controller.
Provides global view of the network.
2. Programmability
Network can be controlled using software APIs.
Easy to implement new policies and services.
3. Automation
Reduces manual configuration of devices.
Network management becomes automatic and faster.
4. Flexibility
Easy to modify network behavior dynamically.
Supports new applications and services quickly.
5. Improved Network Management
Centralized monitoring and troubleshooting.
Simplifies configuration and maintenance.
6. Cost Reduction
Uses commodity hardware switches.
Reduces dependency on expensive proprietary devices.
7. Faster Innovation
Developers can create network applications.
New features implemented without changing hardware.
Short Conclusion
SDN improves network control, flexibility, automation and cost efficiency compared to
traditional networks.
Q5) Traditional Network Challenges
Traditional networking faces several limitations due to tight coupling of control and data
planes.
1. Complex Network Management
Each device configured manually.
Managing large networks becomes difficult.
2. Lack of Flexibility
Hard to modify network behavior.
Changes require device reconfiguration.
3. Vendor Dependency
Hardware devices depend on specific vendors.
Limits interoperability.
4. Slow Innovation
New features require hardware upgrades.
Deployment takes long time.
5. Limited Network Visibility
Network administrators cannot easily view the entire network state.
6. Scalability Issues
Difficult to expand networks efficiently.
7. High Operational Cost
Requires skilled administrators and expensive hardware.
Conclusion
Traditional networks are complex, costly and difficult to manage, which led to the
development of SDN architecture.
Q6) Explain SDN controller with neat diagram. (7 marks)
The SDN Controller is the central intelligence in SDN architecture, managing network
devices and implementing policies.
Key Functions:
1. Topology Discovery: Learns network structure
2. Path Computation: Calculates optimal routes
3. Flow Management: Installs flow rules
4. Statistics Collection: Monitors network performance
5. Policy Enforcement: Applies security/QoS policies
Controller Components:
Popular Controllers:
OpenDaylight: Modular, Java-based
ONOS: Carrier-grade, distributed
Floodlight: Simple, OpenFlow-focused
RYU: Python-based, developer-friendly
Controller Operation:
1. Discovers network devices via LLDP
2. Builds network topology map
3. Receives application requirements
4. Computes and installs flow rules
5. Monitors network status
Benefits:
Single point of management
Global network visibility
Automated configuration
Rapid service deployment
Q7) Explain various OpenFlow Message Types. (7 marks)
OpenFlow messages enable communication between controller and switches. Three main
categories:
1. Controller-to-Switch Messages:
Features Request/Reply: Query switch capabilities
Flow Mod: Add/modify/delete flow entries
Packet Out: Send packets from controller
Stats Request/Reply: Collect statistics
Barrier Request/Reply: Synchronization
2. Asynchronous Messages (Switch → Controller):
Packet In: Send unknown packets to controller
Flow Removed: Notify flow timeout/deletion
Port Status: Report port changes
Error: Report errors
3. Symmetric Messages (Both directions):
Hello: Initial connection/version negotiation
Echo Request/Reply: Keep-alive, latency check
Key Messages Details:
Flow Mod Message: Installs flow rules
Command: ADD, MODIFY, DELETE
Match fields, instructions, timeouts
Priority for rule ordering
Packet In Message: Sends packets to controller
Trigger: No match, explicit action, TTL expired
Contains packet data (may be truncated)
Includes match fields
Stats Messages: Collect various statistics
Flow stats (per flow entry)
Port stats (per interface)
Table stats (per flow table)
Aggregate stats
Message Format:-
Importance:
Enables programmable forwarding
Provides network visibility
Supports dynamic configuration
Facilitates centralized control
Q8) Explain SDN Interfaces with neat diagram. (7 marks)
SDN interfaces define communication between different SDN layers.
1. Northbound Interface (NBI):
Between: Applications and Controller
Protocols: REST APIs (most common)
Purpose: Applications request network services
Examples:
o Load balancer requests bandwidth
o Firewall defines security policies
o Monitoring app queries statistics
2. Southbound Interface (SBI):
Between: Controller and Network Devices
Protocols: OpenFlow (standard), NETCONF
Purpose: Controller programs forwarding devices
Functions:
o Install flow rules
o Collect device statistics
o Configure port settings
3. East-West Interface:
Between: Multiple Controllers
Purpose: Coordination in distributed control
Functions: State synchronization, load balancing
SDN Interfaces Diagram:
Key Protocols:
OpenFlow (Southbound):
Standard protocol for SDN
Defines switch-controller communication
Supports flow table programming
Enables vendor interoperability
REST APIs (Northbound):
HTTP-based interface
JSON/XML data formats
Stateless, scalable
Easy integration with applications
Benefits of Standardized Interfaces:
Vendor independence
Multi-vendor interoperability
Rapid innovation
Simplified integration
Q9) Explain physical ports, logical ports and reserved ports in OpenFlow switches. (7
marks)
OpenFlow switches use three port types for packet handling:
1. Physical Ports:
Actual hardware interfaces
Ethernet ports, optical interfaces
Identified by port numbers
Properties: Speed, duplex, state (up/down)
Example: Port 1 (eth0), Port 2 (eth1)
2. Logical Ports:
Software-defined interfaces
Don't correspond to physical hardware
Types:
o Tunnel ports (GRE, VxLAN)
o Link aggregates (LAG groups)
o Virtual interfaces
Purpose: Enable network virtualization
Example: VxLAN tunnel endpoint
3. Reserved Ports (Special Ports):
Predefined for specific functions:
Port Value Purpose
OFPP_IN_PORT 0xfffffff8 Return to ingress port
OFPP_NORMAL 0xfffffffa Use normal L2/L3 pipeline
OFPP_FLOOD 0xfffffffb Flood on all ports
OFPP_CONTROLLER 0xfffffffd Send to controller
OFPP_LOCAL 0xfffffffe Switch management port
OFPP_ANY 0xffffffff Wildcard port
Port Hierarchy:
OpenFlow Ports
├── Physical Ports (Hardware interfaces)
├── Logical Ports (Software interfaces)
└── Reserved Ports (Special functions)
Importance:
Enable flexible forwarding
Support network virtualization
Provide standard control mechanisms
Facilitate traffic engineering
Q10) Explain Flow tables with neat diagram. (7 marks)
Flow Table Diagram:
Definition
Flow Tables are forwarding databases in OpenFlow switches that contain rules used to
match packets and decide forwarding actions.
They control how packets are processed, forwarded, modified, or dropped in the network.
1. Flow Table Structure
Each flow table entry contains the following components:
Match Fields – Packet header fields used for matching.
Priority – Determines rule precedence (higher priority executed first).
Counters – Collect statistics like number of packets and bytes.
Instructions – Actions the switch should perform.
Timeouts – Time limits for flow entries (Idle timeout / Hard timeout).
2. Match Fields
Used to identify packets based on header information such as:
Ingress port number
Ethernet source/destination address
IP source/destination address
Protocol type (TCP/UDP)
TCP/UDP port numbers
VLAN tags and metadata
3. Instructions and Actions
Instructions (What to do)
Apply-Actions – Execute actions immediately
Write-Actions – Add actions for later execution
Goto-Table – Forward packet to another flow table
Write-Metadata – Store information for pipeline processing
Actions (How to perform)
Output – Forward packet to a specific port
Set-Field – Modify packet header fields
Push/Pop VLAN – Add or remove VLAN tags
Group Action – Forward packet using group table
4. Table Pipeline Processing
Packets are processed sequentially through tables.
Flow:
Packet → Table 0 → Match Rule → Execute Instructions
If no match occurs, the packet follows the table-miss rule.
5. Table-Miss Entry
Has lowest priority (0)
Defines default behavior
Common actions:
o Drop the packet
o Send packet to SDN controller
6. Multiple Flow Tables
OpenFlow switches may contain multiple tables for efficient processing.
Example:
Table 0 – Access control rules
Table 1 – Routing decisions
Table 2 – Quality of Service (QoS)
Final Table – Packet forwarding
Advantages
Programmable packet forwarding
Fine-grained traffic control
Detailed traffic statistics
Dynamic rule updates from controller
Q11) Steps to Optimize Use of Multiple Flow Tables
OpenFlow switches can contain multiple flow tables to improve packet processing efficiency.
Step 1: Packet Entry
Packet enters the first flow table (Table 0).
Switch checks for matching rule.
Step 2: Flow Matching
Packet header fields compared with flow entries.
Example: IP address, port number.
Step 3: Apply Instructions
If match found, switch performs actions such as:
Forward packet
Drop packet
Modify header
Send to controller
Step 4: Table Pipeline Processing
Packet may be forwarded to next flow table.
This creates pipeline processing.
Step 5: Efficient Rule Organization
Rules are divided into tables such as:
Routing rules
Access control rules
QoS policies
Step 6: Reduced Rule Complexity
Using multiple tables reduces:
Redundant entries
Processing overhead
Step 7: Final Action Execution
Packet exits switch after executing final action.
Advantages
Improves switch performance
Reduces flow table size
Supports modular rule processing
Q12) OpenFlow Protocol for Separation of Control Plane and Data Plane
Definition
OpenFlow is a communication protocol that allows SDN controller to interact with network
switches.
It enables separation of control plane and data plane.
Control Plane
Located in SDN Controller.
Responsible for:
o Network decision making
o Policy enforcement
o Routing decisions
Data Plane
Located in OpenFlow Switch.
Responsible for:
o Packet forwarding
o Flow rule execution
Working of OpenFlow
1. Packet arrives at switch.
2. Switch checks flow table entries.
3. If match found → packet forwarded.
4. If no match → packet sent to controller.
5. Controller installs new flow rule.
6. Switch forwards packet according to rule.
Advantages
Enables centralized network control
Improves network programmability
Supports dynamic traffic management
Simplifies network configuration
Q13) Data Plane Protocols (Communication with Network Devices)
Data plane protocols allow communication between controller and forwarding devices.
1. OpenFlow
Most widely used southbound protocol.
Allows controller to control switch flow tables.
2. NETCONF
Protocol for network configuration management.
Uses XML encoding.
3. OVSDB (Open vSwitch Database)
Used for managing Open vSwitch configuration.
Controls virtual switches.
4. P4 Runtime
Used in programmable data plane devices.
Supports flexible packet processing.
5. BGP (Border Gateway Protocol)
Used in SDN for routing communication between networks.
Functions of Data Plane Protocols
Install flow rules
Monitor network traffic
Configure switches
Collect network statistics
Manage forwarding behavior
Conclusion
Data plane protocols enable communication between SDN controller and network devices,
ensuring efficient packet forwarding and network management.