Software-Defined Networking Layers as Proposed by the Comprehensive Survey done on the topic:
Kreutz, D., Ramos, F. M., Verissimo, P. E., Rothenberg, C. E., Azodolmolky, S., & Uhlig, S. (2015). Software-defined networking: A comprehensive survey.Proceedings of the IEEE,103(1), 14-76.
The 8 layers are simply presented to be easily understood by the attendees.
Organic Name Reactions for the students and aspirants of Chemistry12th.pptx
SDN Layers: An Overview of Software-Defined Networking Architecture
1. SDN
LAYERS
S O F T WA R E - D E F I N E D N E T W O R K I N G L AY E R S
BY : A B D U L L A H I B R A H I M A H M A D
2. OVERVIEW
• Current State in Networking
• What is SDN?
• SDN Abstractions
• SDN Architecture & Layers
• Cross-Layer Issues
3. STATE OF QUO IN NETWORKING
• Planes of functionality:
– Management (Define the network
policy)
– Control (Enforce the policy)
– Data (Execute the policy)
• Control & data planes are tightly
coupled
– Difficult to add new functionality
• Decentralized structure
– Network resilience
– Complex and Static Architecture
4. WHAT IS SDN?
Network Architecture with four
characteristics:
1. Control and data planes are
decoupled
2. Forwarding decisions are flow
based instead of destination
based
3. Control logic is moved to SDN
controller or Network
Operating System
4. Network is programmable
through software applications
5. SDN ABSTRACTIONS
• What do we do when dealing with
complex problems?
– Decompose it to simpler problems
– Define an abstraction for each
component
• SDN Abstractions:
– Forwarding
– Distribution
– Specification
8. NETWORK INFRASTRUCTURE
• Switches, routers, …
• No embedded control software
• Include open and standard interfaces (e.g.
OpenFlow, POF, …)
• A data plane device is a hardware or software
element specialized in packet forwarding based
on a pipeline of flow tables
10. SOUTHBOUND INTERFACE
• APIs connecting and separating control and
forwarding elements
• Openflow is the most widely accepted
• Openflow provides three information sources
for NOS:
• Event-based messages when a port or link
changes
• Flow statistics
• Packet-in messages when forwarding
device doesn’t know what to do
11. NETWORK HYPERVISOR
• Network-wide software layer
• Under network control applications
• On top of distributed networking devices
• Multiplex, demuiltiplex and monitor
• Implemented via distriputed system
• Distribute networks states and loads
• Logically centralized (huge difference)
• Partition resources through multiple contexts
• Distribute logical context over multiple physical
devices
14. NETWORK OPERATING SYSTEM
Types of SDN Controllers(NOSs)
• Existing controllers can be categorized based
on many aspects
• Centralized vs Distributed
• Centralized
• Single point of failure
• Scaling limitations
• Can be highly parallelized to overcome
above limitations
• Distributed
• Scalable
• Fault tolerant
• May offer weak consistency
17. SDN CONTROLLER PARTS: SOUTH AND
NORTHBOUND
• Southbound:
– Common interface for upper layers while allowing different southbound APIs
– Can be seen as device drivers
• Northbound:
– Ad hoc APIs
– RESTful APIs
– File systems
18. SDN CONTROLLER PARTS:
WEST/EASTBOUND
• Only in distributed
controllers
• Import/export data
between controllers
• Algorithms for data
consistency models
• Monitoring/notificatio
n capabilities
20. NORTHBOUND INTERFACE
• Mostly a software ecosystem
• Can be compared to POSIX standard in
operating systems
• No de facto standard as of right now
• Each controller defines its own northbound
APIs
• NOSIX is an attempt in this direction
21. LANGUAGE-BASED VIRTUALIZATION
• Capability of expressing modularity
• Allowing different levels of abstractions while
still guaranteeing desired properties
• Allow different views of a single physical
infrastructure
• One virtual “big switch” could represent a
combination of several underlying
forwarding devices
• Simplifies the task of application
developers
• See the network as a simple “big switch”
• Simplify the development and deployment of
complex network applications
22. PROGRAMMING LANGUAGES
• Current state in network programming
languages:
• Openflow: same as Assembly language
• Mimic hardware
• Too much low-level details
• No modular code
• No code reuse
• Thus we are moving to higher level
programming languages
• FatTire (functional): uses reg exp to
describe network paths
• FML (dataflow, reactive): high level policy
description language
• Procera (functional, reactive): high level
abstractions to describe reactive and
temporal behaviors
23. NETWORK APPLICATIONS
• “Network brains”
• Implement control-logic which dictate the
forwarding device behavior
• Traffic engineering
• Routing, load balancing, scheduling, …
• Mobility and wireless
• Interference management, wireless
network modeling, …
• Measurement and monitoring
• Measuring link utilization, traffic
monitoring, …
• Security
• Attack detection, access control, flow-
rule enforcement
• Data center networking
• Optimizing network utilization, predict
application workloads, …
24. CROSS-LAYER ISSUES
• Debugging and troubleshooting
– Runtime debugging
• Ndb(same as gdb): breakpoints, watch, back-trace, …
– Post-mortem analysis
• Record and replay network events
• Testing and verification
– Verification
• Connectivity, loop-freedom, access control
– Testing
• Generate streams of packets and test as many events as possible
• Simulation and emulation
– Mininet: prototype and evaluate SDN protocols and applications
25. REFERENCES
• Kreutz, D., Ramos, F. M., Verissimo, P. E., Rothenberg, C. E., Azodolmolky, S., & Uhlig, S.
(2015). Software-defined networking: A comprehensive survey. Proceedings of the
IEEE, 103(1), 14-76.