0% found this document useful (0 votes)
2 views

sdn module2

Uploaded by

Rajkumar S
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
2 views

sdn module2

Uploaded by

Rajkumar S
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 29

1.Identify the size of IPv4 and IPv6 in bytes.

1. IPv4 Address Size:


• IPv4 addresses are 32-bit addresses.
• In bytes, an IPv4 address is 4 bytes long.
2. IPv6 Address Size:
• IPv6 addresses are 128-bit addresses.
• In bytes, an IPv6 address is 16 bytes long.

2.Give examples of APIs used in the northbound interface.


i) OpenDaylight v)Ryu
ii)ONOS
iii)POX
iv)Beacon

3. Define the primary function of the data plane in software-defined


networking.
Packet Forwarding, Flow Table Lookup, Packet Processing, Quality of
Service (QoS) Enforcement, Traffic Classification, Security Functions.

4. What is the purpose of the OpenFlow protocol in SDN?


Centralized Network Control, Programmability and Flexibility, Flow Table
Management, Traffic Engineering and Optimization, Network
Virtualization, Standardization, Rapid Innovation and Experimentation

5. Draw the basic structure of a flow table in SDN's data plane.


Match fields priority counters instructions timeouts cookie flags

6. State functionality of the group table in the OpenFlow protocol.


It can trigger the right action at a time from the multiple flows .Different
flows in to a single group. Flow the packets from flow table into group table
using pipeline concept. There are three 4 components such as group
identifier, group type , counters and action buckets .

7. What is the role of the data plane in SDN?


Data forwarding ,control support , input queue, output queue , Rule
Enforcement, traffic Classification, Quality of Service (QoS), Network
Virtualization, Dynamic Adaptation,
8. Write about the concept of flow table pipelines in SDN data plane
processing?
• If there is more than one flow table , they are organized as a pipeline
• It provides the SDN controller with flexibility
• Two stages of processing
- Ingress processing: It identifies the switches where the packet
arrives
- Egress processing: It identifies the correct address of either source
or destination among the multiple address in the multi tasking
concept

9. What are the key significances of REST in SDN?


Key significances :client server concept, stateless, cache, uniform interface,
Layered system and code on demand .

10. What component of SDN is responsible for communicating with the


controller?
Control plane

11. Define the role of the southbound interface in the SDN.


It provides logical connection between the SDN controller and data plane
switches.
Some support only a single south bound protocol
Make flexible approach support in multiple south bound protocol
Some APIs in south bound interface
Openflow, open switch database management, forwarding and control
element separation and protocol oblivious forwarding

12. Write about the OpenFlow logical network device and its significance
in SDN.
There are two requirements must be met to implement SDN architecture
i)A common logical architecture in all switches ,routers and other network
devices which are managed by SDN controller
ii)A standard, secure protocol is needed between the SDN controller and
network device

13. List the four protocols used in the data plane of SDN
OpenFlow, FORCES (Forwarding and Control Element Separation), P4
(Programming Protocol-Independent Packet Processors) and NETCONF
(Network Configuration Protocol)
14. Write the primary functions of the control plane in SDN.
Shortest path forwarding, notification manager, Security mechanism,
topology manager, statistics manager, Device manager

15. Define the functions of the Northbound Interface in SDN controllers.


It enables the developer to create software that can be independent
North bound interface can manage over all network
NBI can also provide the functions that can perform network management
and service task
Application developer and network manager can access the APIs to perform
services
Application can be executed in different servers with the help of APIs.

16. What is the use of multiple tables in the flow processing of the SDN
switch?
-Allow the transmission of nesting flows
-parallel pipeline concept
-the single flow can be splitted into sub flows that will be executed using
parallel pipeline concept
-multiple flows from same source into same distinction in case flows ,
calculate least cost route from source to destination then flows put them
together.

17. Write about the role of "Southbound Interface" APIs with an example.
The Southbound Interface plays a crucial role in the SDN architecture by
allowing the SDN controller to have centralized control over the underlying
network infrastructure. It abstracts the underlying hardware details,
providing a standardized way for the controller to communicate with diverse
network devices from different vendors.
Example
OpenFlow : OpenFlow is a standardized communication protocol that
allows the SDN controller to interact with the forwarding elements, such as
switches, in the data plane.

18. Draw the OpenDaylight API architecture.


******given in the class notes. ******
19. What is the need for the OpenFlow API?
- It provides
- Abstraction layer which can give flexibility to access APIs
- Controller-to-Switch Communication
- Flow Table Management
- Packet-In and Packet-Out Messages
- Dynamic Control

20. Write about the benefits of the REST architectural style in SDN.
- high Scalability
- high Reliability
- high Privacy in security
- Incremental deployment

15 marks questions

1. Explain the SDN control plane architecture, the primary functions of


the control plane, and their interactions.
****SDN control plane Architecture is given in class notes ***
**** Handwritten notes are shared in the Google Classroom *******
-It maps application layer service requests into specific commands and
directives to data plane switches.
- it supplies applications with information about data plane topology and
activity
-the control layer is implemented as a server or corporating set of servers
known as SDN controller.
Primary functions:
1. Shortest path forward :it can collect the set routes from switches
Prefer the route from source to destination based on collected
information from switch
Establish the connectivity towards the destination
2. Notification manager : it receives the processes and forward different
events along notification related to security, changes in the state.
3. Security Mechanism : mainly focus on security and provides the
security enforcement between application and services.
4. Topology manager: it builds and maintains the switch
interconnection and topology information
5. Statistics manager: it collects the traffic data through the switches
6. Device manager :different parameters of the switches or different
attributes of the switches
It also manages flow tables
2. Describe the concept of the Southbound Interface to a specific SDN
architecture and discuss its implications.
- it provides the logic connection b/w the SDN and data plane switches
- single SBI protocol – some supports only
- Multiple SBI protocol- flexible approach
APIs in SBI
- Openflow , open switch database management protocol(OVSDB)
- Forwarding and control element separation (FORCES)
- Protocol oblivious forwarding (POF)
****SDN controller interface Architecture is given in class notes ***
**** Handwritten notes are shared in the Google Classroom *******

Openflow:
It provides
- Abstraction layer which can give flexibility to access APIs
- Controller-to-Switch Communication
- Flow Table Management
- Packet-In and Packet-Out Messages
- Dynamic Control
open switch database management protocol(OVSDB)
- It is mainly used for implementing virtual switches and
interoperable hypervisor concepts
- It uses self openflow for farwarding the message in the control
plane both physical and virtual ports
Forwarding and control element separation (FORCES):
-developed by IETF
- standardized interface b/w control plane and data plane for internet
protocol routers
Protocol oblivious forwarding (POF)
- It is the extended version of openflow
- It makes the logic is very generic for forwarding the packets and
simplifies the logic

3. Write about the advantages of using multiple tables in the flow


processing pipeline of the SDN switch for optimization.

Using multiple tables in the flow processing pipeline of an SDN (Software-


Defined Networking) switch can provide several advantages for optimizing
network behavior and supporting advanced functionalities. The flow
processing pipeline typically consists of a sequence of tables through which
incoming packets pass, with each table capable of performing specific
operations. Here are some advantages of employing multiple tables:

1. Modularity and Abstraction:


• Multiple tables allow for a modular and abstract representation
of flow processing logic. Different tables can be dedicated to
specific tasks, making it easier to understand, manage, and
modify the behavior of the SDN switch. Each table can focus
on a particular aspect of packet processing, enhancing the
overall organization of the pipeline.
2. Improved Flow Matching:
• With multiple tables, each table can specialize in matching
specific fields of the packet header. This enables more granular
and efficient flow matching. For example, one table might focus
on matching source and destination IP addresses, while another
table can concentrate on matching transport layer protocols or
port numbers. This division of labor enhances the switch's
ability to identify and classify flows accurately.
3. Parallel Processing:
• Multiple tables allow for parallel processing of flow entries,
enabling the switch to process multiple aspects of a packet
simultaneously. This parallelism can result in faster decision-
making and forwarding, contributing to improved overall
network performance and reduced latency.
4. Resource Optimization:
• Different tables can be allocated varying amounts of resources
based on the importance of the tasks they perform. For instance,
tables handling critical security policies or QoS (Quality of
Service) markings might be given more resources to ensure
efficient processing. This optimization ensures that resources
are allocated where they are most needed, enhancing the
switch's overall efficiency.
5. Scalability:
• As networks grow in complexity and size, the ability to scale
efficiently becomes crucial. Multiple tables provide a scalable
architecture, allowing network administrators to expand the
capabilities of the SDN switch by adding new tables without
disrupting existing functionality. This scalability is particularly
valuable in large and dynamic network environments.
6. Support for Advanced Functions:
• The use of multiple tables facilitates the implementation of
advanced functions and features. For example, one table might
be dedicated to security-related tasks, such as intrusion
detection or access control, while another table focuses on load
balancing or traffic engineering. This flexibility supports the
deployment of diverse and sophisticated network services.
7. Easier Rule Management and Updates:
• Dividing flow processing into multiple tables makes it easier to
manage and update individual rules. Administrators can modify
rules in one table without affecting the operation of other tables,
simplifying the process of implementing changes or adapting to
evolving network requirements.
****Use of multiple tables Architecture is given in class notes ***
**** Handwritten notes are shared in the Google Classroom *******

4.Construct the ITU-T 3300 model and how it relates to SDN.

**** ITU-T 3300 model Architecture is given in class notes ***


**** Handwritten notes are shared in the Google Classroom
*******
- High level architecture defined in ITU-T 3300 model
- It consists of 3 layers
• Application layer : application services
• Control layer :
Application support, orchestration, abstraction
• Resource layer: control support, data transport processing
- Application control APIs that can interact application layer with
SDN control layer that can be formed as a interface
- SDN control layer to dynamically control the behavior of the
network resources
- SDN controller controls the resource layer based on the instruction
from the application layer
- Application support : provide the APIs for the SDN applications
to access network information
- Orchestration :provide the automatic control and management of
the network resources.
It also provides coordination of prerequest from the application
layer for network resources
The concept of orchestration is that it makes the automated
configuration, management and coordination of resources.
- Abstraction : it closes to the data plane which provides the
abstraction of the network resources for flexibility purpose
- Resource layer : it consists of forwarding elements and switches
Switch can transmit and process the forwarding elements which
has 2 sublayers
Control support:
It provides programmability of resource layer functions with help
of SBI APIs
- Data transport processing : It provides data forwarding and data
routing functions
- The whole structure of architecture can minimize the complexity
5. Differentiate between traditional routing protocols and routing
protocols in SDN and discuss the advantages and disadvantages of SDN
routing.

Traditional Routing Protocols:


Decentralized Control:
• In traditional routing protocols (e.g., OSPF, BGP), the control
plane is decentralized, and each router independently makes its
own routing decisions based on distributed algorithms.
2. Limited Programmability:
• Traditional routing protocols have limited programmability.
Configuration changes and updates are typically performed
through device-specific command-line interfaces, and network-
wide changes can be time-consuming.
3. Static Nature:
• Traditional routing protocols often rely on static configurations
and are less adaptable to dynamic changes in network
conditions. The ability to respond rapidly to changes is
constrained by the distributed nature of the control plane.
4. Network Complexity:
• Managing and troubleshooting complex networks can be
challenging due to the distributed nature of the control plane.
Changes may require coordination across multiple routers,
leading to potential scalability and administrative overhead.

Routing Protocols in SDN:


1. Centralized Control:
• SDN introduces a centralized control plane where a controller
(e.g., OpenDaylight, ONOS) makes global decisions for the
network. This allows for a more comprehensive view of the
network and centralized control over the routing decisions.
2. Programmability:
• SDN provides a high level of programmability. Network
administrators can dynamically adapt routing policies and
behaviors by programming the SDN controller, leading to
increased flexibility and agility.
3. Dynamic Adaptation:
• SDN routing is more adaptive to changing network conditions.
The centralized controller can dynamically adjust routing
decisions based on real-time information, optimizing the
network for performance, load balancing, and fault tolerance.
4. Simplified Management:
• SDN simplifies network management by abstracting the
underlying network infrastructure. Administrators can define
and enforce network policies in a centralized manner, reducing
the complexity associated with managing individual network
devices.

Advantages of SDN Routing:


1. Centralized Control:
• SDN routing offers centralized control, providing a global view
of the network. This centralized approach enhances visibility,
simplifies management, and allows for more effective decision-
making.
2. Programmability and Automation:
• SDN allows for programmable and automated network
management. Changes to routing policies and configurations
can be implemented through software, reducing manual
configuration efforts and enabling faster adaptation to changing
network requirements.
3. Flexibility and Adaptability:
• SDN routing is highly flexible and adaptable. Network
administrators can define and modify routing policies in real-
time, responding to changing conditions, traffic patterns, or
application requirements.
4. Improved Troubleshooting:
• Centralized control and programmability in SDN facilitate
better troubleshooting. Network administrators can identify and
isolate issues more efficiently, and the controller can
dynamically reroute traffic to avoid problematic areas.

Disadvantages of SDN Routing:


1. Dependency on Controller:
• SDN routing relies heavily on the performance and availability
of the centralized controller. If the controller fails or
experiences issues, it can disrupt the entire network's
functionality.
2. Security Concerns:
• Centralizing control introduces security concerns. If
unauthorized access is gained to the SDN controller, it could
lead to potential vulnerabilities and unauthorized modifications
to the network.
3. Transition Challenges:
• Transitioning from traditional routing protocols to SDN can be
challenging. Existing network infrastructure may not be easily
compatible with SDN, and a gradual migration process may be
required.
4. Potential Scalability Issues:
• While SDN offers scalability benefits, the centralized nature of
the control plane can introduce potential scalability challenges
as the network grows. Efficient controller scalability is crucial
to supporting large and complex networks.

6.Summarize the effectiveness of the REST architecture in SDN


communication and assess its impact on the overall system's
performance.

*****Draw the architecture of REST ******


- An architectural style used to define APIs
- Standard way of constructing northbound APIs
- Six constraints that an API must follow to be RESTful
• Client server concept
• Stateless
• Cache
• Uniform interface
• Layered system ]code on demand
Architecture is mainly concentrated on
• Maximize the capability
• Interoperability
• Independent of the s/w interaction with other components
• REST is based on web based concept
Client -server constraint :
- Client sends a request to server and then send a response for
client’s request in the form of request and respond style which is
involved independently
Stateless : client’s request contains all necessary information and respond
carries desired information about request
Server does not retain the any record of client state
Client and server in different machines
http protocol
cache :
Respond to request implicitly or explicitly labelled as catchable or non
catchable

Catchable : Reuse storage for lateral use


Non Catchable: to reduce the communication of client and server and
handle the response by local client
Uniform Interface : it emphasizes the uniform interface b/w the components
and enables controller to evolve independently.
Layered system :
Architecture is implemented with many aspects
Functions are organized different layers
Code on demand :
Client functionality to be extended by downloading or by executive the code
in the form of code script

7..Illustrate the architecture of OpenDaylight and its role in SDN.

**** OpenDaylight Architecture is given in class notes ***


**** Handwritten notes are shared in the Google Classroom
*******
-open source project is hosted by linux foundation
-Aim of the organization is to produce an extensible open source ,
virtual networking platform
- architecture consists of 5 layers : n/w application ,orchestration and
services
Open daylight APIs, controller functions and services, Service
abstraction layer and data plane elements.
controller functions and services: control and monitor the behavior of
the network
orchestration: it can perform automatic reconfiguration, management
and coordination of services
open daylight APIs: REST,OSGI(open service gateway interface
OSGI uses same machine and same address space of application
REST uses the different m/c and address space
controller functions and services: it can be performed the following
functions
Shortest path forward :it can collect the set routes from
switches
Prefer the route from source to destination based on collected
information from switch
Establish the connectivity towards the destination
Notification manager : it receives the processes and forward
different events along notification related to security, changes in
the state.
Security Mechanism : mainly focus on security and provides
the security enforcement between application and services.
Topology manager: it builds and maintains the switch
interconnection and topology information
Statistics manager: it collects the traffic data through the
switches
Device manager :different parameters of the switches or
different attributes of the switches.
Service abstraction layer:
- Provide uniform view of the data plane resources
- Controller functions can be implemented based on specific
interface, protocols
- SBI and protocols give the support to openflow and other
standards (ONF,IETF…)
- Also gives the support for multiple protocols

8.Estimate the strategies of cooperation and coordination among SDN


controllers in a distributed network environment.

In a distributed network environment where multiple SDN (Software-


Defined Networking) controllers are deployed, cooperation and
coordination strategies are crucial to ensure efficient and reliable network
operation. Here are several strategies for achieving cooperation and
coordination among SDN controllers:
1. Hierarchical Structure:
• Implementing a hierarchical structure for SDN controllers
helps in organizing them into tiers, with each tier responsible
for specific functions. This structure enables controllers to
collaborate within their respective tiers, reducing the
complexity of global coordination. Higher-tier controllers can
oversee and coordinate the activities of lower-tier controllers.
2. Inter-Controller Communication:
• Establishing communication protocols and interfaces for inter-
controller communication is essential. This allows controllers
to exchange information, share global network views, and
coordinate decisions. Protocols like the Southbound Interface
(e.g., OpenFlow) and Northbound Interface APIs facilitate
communication between controllers.
3. Consistency and Synchronization:
• Ensuring consistency and synchronization of network state
among distributed controllers is critical. Coordination
mechanisms should be in place to synchronize the flow tables,
policies, and network views across controllers, preventing
inconsistencies that could lead to suboptimal routing or
security vulnerabilities.
4. Global Network View:
• Maintaining a global network view is essential for effective
coordination. Controllers should share information about
network topology, traffic patterns, and device statuses to make
informed decisions. This shared view enables controllers to
collectively optimize network performance.
5. Load Balancing:
• Implementing load balancing strategies among controllers
helps distribute the management load evenly. This prevents
congestion or bottlenecks in any single controller and ensures
that the network operates efficiently even during peak loads or
failures.
6. Fault Tolerance:
• Designing fault-tolerant mechanisms is crucial for handling
controller failures. Redundancy, backup controllers, and
failover strategies help maintain network continuity in the
event of controller malfunctions. Coordination is needed to
ensure a smooth transition when a controller fails or is
replaced.
7. Policy Coordination:
• Coordination mechanisms are necessary to handle conflicting
policies across controllers. Consistent policies and rules should
be enforced across the entire network to prevent
misconfigurations and ensure security and compliance with
organizational objectives.
8. Dynamic Load Rebalancing:
• Implementing dynamic load rebalancing allows controllers to
adapt to changes in network conditions or workload
distribution. This strategy enables controllers to redistribute
tasks or responsibilities based on the current state of the
network, optimizing resource utilization.
9. Distributed Decision Making:
• Encouraging distributed decision-making capabilities among
controllers can enhance responsiveness. Each controller can
autonomously handle specific tasks based on its local
knowledge, reducing the need for constant global coordination
for routine operations.
10. Collaborative Learning:
• Enabling controllers to collaboratively learn and adapt to
changing network conditions improves decision-making over
time. This involves sharing insights, analytics, and experiences
among controllers to collectively enhance network
performance and efficiency.
11. Standardization:
• Adhering to standardization efforts in SDN can facilitate
cooperation. Standardized interfaces and protocols ensure
interoperability, making it easier for controllers from different
vendors to communicate and coordinate effectively.

9.Describe the architecture of a typical SDN and its key components.

**** SDN Architecture is given in class notes ***


**** Handwritten notes are shared in the Google Classroom
*******

The architecture of a typical Software-Defined Networking (SDN) is


designed to separate the control plane from the data plane,
providing a centralized control mechanism for managing and
configuring the network. The key components of SDN architecture
include:

1. Application Layer:
• The application layer contains SDN applications and services
that leverage the programmability and openness of the SDN
architecture. These applications can be created by network
operators, third-party developers, or the SDN controller vendor.
Examples of applications include network monitoring, load
balancing, security services, and traffic engineering.
2. Northbound APIs (Application Programming Interfaces):
• Northbound APIs facilitate communication between SDN
applications and the SDN controller. These APIs allow
applications to request network services, query network state
information, and instruct the controller to modify network
behavior based on the application's requirements. Examples of
Northbound APIs include RESTful APIs, RESTCONF, and
gRPC.
3. SDN Controller:
• The SDN controller is the central component responsible for
making global decisions about the network. It acts as the brain
of the SDN architecture, providing a unified view of the entire
network, maintaining the network state, and managing
communication with SDN switches. Popular SDN controllers
include OpenDaylight, ONOS (Open Network Operating
System), and Ryu.
4. Southbound APIs:
• Southbound APIs enable communication between the SDN
controller and network devices in the data plane. These APIs
allow the controller to instruct switches and routers on how to
forward packets based on the controller's decisions. The most
widely used Southbound API is OpenFlow, although others,
such as ForCES (Forwarding and Control Element Separation),
may be used.
5. Network Devices (Switches and Routers):
• Network devices in the data plane, such as switches and routers,
are responsible for forwarding packets based on the instructions
received from the SDN controller. These devices typically
include a flow table that the controller populates with rules
specifying how to handle different types of traffic flows.
6. Flow Tables:
• Flow tables are part of the data plane and reside in SDN
switches. They store flow entries that define how specific types
of packets should be processed and forwarded. The entries
include match criteria and actions to be taken, such as
forwarding to a specific port or modifying packet headers. The
SDN controller programs these flow tables.
7. OpenFlow Protocol:
• OpenFlow is a widely used Southbound protocol that defines
the communication between the SDN controller and network
devices (switches). It allows the controller to dynamically
manage flow tables, instruct switches on packet forwarding
decisions, and collect information about network state.
8. Network Operating System (NOS):
• Some SDN architectures include a Network Operating System,
acting as an intermediary layer between the controller and
network devices. The NOS abstracts device-specific details,
providing a standardized interface for the controller to interact
with different types of network hardware.
9. Security Services:
• Security services may include mechanisms for authentication,
authorization, and encryption to secure communication between
SDN components. Security is crucial to prevent unauthorized
access to the controller, protect sensitive network information,
and ensure the integrity of SDN operations.

10.Explain key aspects of the North Bound Interface in SDN.

It enables the developer to create software that can be independent


North bound interface can manage over all network
NBI can also provide the functions that can perform network management
and service task
Application developer and network manager can access the APIs to perform
services
Application can be executed in different servers with the help of APIs.
A number of different initiatives have resulted in SDN controller
implementation
- Open daylight
- Open stack operating system(ONOS)
- POX
- Beacon
- Floodlight
- Ryu

Open daylight: open source platform and implemented with single


centralized controller but have more than one controllers in distributive and
collaborative manner
Open stack operating system(ONOS):
open source platform
freely available
open SDN operating system
support for open network foundation
used in distributive controller that provide a lot of functionalities related
to network management
POX:
open source and openflow controller
developed by developer and engineers
support GUI concept
written in python
Beacon:
open source package and developed by Stanford university
fast to learn for beginners
mainly for learning purpose
Floodlight :
open source package and developed by big switch network
developed based on Beacon
large number of features
support for both web based and graphical user interface which is in
java basis
exposes different functionalities of the controller with the help of
REST API
Ryu:
Developed in python
Distributed controller
Jointly was developed with VMare (google)
Commercial implementation
Most significant controller is open daylight and ONOS

11. Discuss the importance of application-programming interfaces in


SDN.

Application Programming Interfaces (APIs) play a crucial role in


Software-Defined Networking (SDN) by facilitating communication and
interaction between different components within the SDN architecture.
The importance of APIs in SDN can be highlighted in several key aspects:
1. Interoperability:
• SDN environments often involve a mix of hardware and
software components from various vendors. APIs provide a
standardized way for these diverse components to
communicate and interoperate. This interoperability is crucial
for creating a flexible and vendor-agnostic SDN ecosystem.
2. Abstraction of Complexity:
• SDN abstracts the underlying network infrastructure, and APIs
contribute to this abstraction by providing a simplified
interface for external entities. SDN controllers, applications,
and network devices can interact through APIs without
needing to understand the intricate details of each other's
implementation.
3. Programmability:
• APIs in SDN enable programmability, allowing network
administrators and developers to create, modify, and control
network behaviors dynamically. Through Northbound APIs,
applications can programmatically request network services,
modify policies, and respond to changing network conditions.
4. Communication between Layers:
• APIs facilitate communication between different layers of the
SDN architecture. Northbound APIs allow applications to
communicate with the SDN controller, while Southbound
APIs enable communication between the controller and
network devices in the data plane. This separation of layers
enhances modularity and flexibility.
5. Rapid Development and Innovation:
• APIs empower developers to rapidly create and deploy SDN
applications. The standardized interfaces provided by APIs
enable quicker development cycles, fostering innovation and
experimentation. This agility is essential for adapting the
network to evolving business requirements and technology
advancements.
6. Dynamic Adaptation:
• SDN's strength lies in its ability to dynamically adapt to
changing network conditions. APIs enable the SDN controller
and applications to receive real-time information about the
network state and make decisions accordingly. This dynamic
adaptation is crucial for optimizing network performance,
implementing load balancing, and responding to security
incidents.
7. Centralized Control:
• In SDN, the control plane is centralized, and APIs are the
means through which the SDN controller communicates with
the application layer (Northbound APIs) and the data plane
(Southbound APIs). This centralized control facilitates unified
decision-making, reducing the complexity associated with
traditional, distributed control plane architectures.
8. Ecosystem Expansion:
• APIs encourage the development of a diverse and expansive
SDN ecosystem. Third-party developers can create
applications that extend the functionality of the SDN
environment without having to modify the underlying
infrastructure. This open ecosystem promotes innovation and
collaboration.
9. Standardization:
• The use of standardized APIs, such as RESTful APIs or
protocols like OpenFlow, contributes to the standardization of
SDN. This standardization is critical for ensuring
compatibility, simplifying integration, and creating a
consistent user experience across different SDN
implementations.

12. Explain the key functions of the data plane network device in SDN
and its architecture.

**** SDN data plane network device Architecture is given in class


notes ***
**** Handwritten notes are shared in the Google Classroom
*******
**** openflow environment Architecture is given in class notes
***
**** Handwritten notes are shared in the Google Classroom
*******
**** openflow switchArchitecture is given in class notes ***
**** Handwritten notes are shared in the Google Classroom
*******

- Data forwarding ,control support , input queue, output queue ,


Rule Enforcement, traffic Classification, Quality of Service (QoS),
Network Virtualization, Dynamic Adaptation
The data plane, also known as the forwarding plane, is a crucial
component of Software-Defined Networking (SDN). The data plane
network devices, such as switches and routers, are responsible for the
actual forwarding and processing of network packets based on the
instructions received from the SDN controller. The key functions of the
data plane in SDN include:
- Packet Forwarding:
o The primary function of the data plane is to forward
network packets from the source to the destination based on
the routing or switching decisions made by the SDN
controller. This involves examining the headers of
incoming packets and determining the appropriate output
port or next-hop device.
- Flow Table Lookup:
o Data plane devices maintain flow tables that store
information about how to handle different types of network
flows. The flow table entries include match criteria and
corresponding actions. When a packet arrives, the data
plane performs a flow table lookup to determine the
appropriate action for that packet.
- Flow Classification:
o The data plane classifies incoming packets into specific
flows based on predefined criteria such as source and
destination IP addresses, transport layer protocols, or port
numbers. Flow classification is essential for applying
specific policies or treatments to different types of traffic.
- Packet Processing:
o Data plane devices may perform various packet processing
tasks, including encapsulation, decapsulation,
fragmentation, and header modification. These tasks are
often defined by the SDN controller through the
programming of flow rules in the flow tables.
- Quality of Service (QoS) Enforcement:
o The data plane enforces QoS policies defined by the SDN
controller. This includes prioritizing certain types of traffic,
applying traffic shaping, and ensuring that network
resources are allocated according to predefined QoS
parameters to meet service-level agreements (SLAs).
- Traffic Management:
o Data plane devices manage and control the flow of network
traffic based on the instructions received from the SDN
controller. This includes handling congestion, load
balancing, and making routing decisions to optimize
network performance.
- Reporting and Statistics:
o The data plane provides real-time information and statistics
about network traffic, such as packet counters, error rates,
and bandwidth utilization. This information is often
communicated back to the SDN controller for monitoring,
analysis, and decision-making.
- Security Functions:
o Some security functions, such as access control lists
(ACLs) and packet filtering, may be implemented in the
data plane. The data plane enforces these security policies
by inspecting packet headers and making decisions about
whether to allow or block specific types of traffic.
- Support for Network Virtualization:
o Data plane devices support network virtualization by
providing the necessary mechanisms to create and manage
virtual networks. They ensure the isolation of traffic
between different virtual networks and enforce policies
specific to each virtualized environment.
- Dynamic Adaptation:
o The data plane dynamically adapts to changes in network
conditions or policies. As the SDN controller updates flow
rules or routing instructions, the data plane devices adjust
their behavior accordingly, allowing for flexible and
responsive network operation.

13. Discuss the role of the flow table, group table, and meter table in
OpenFlow and their structure.

1. Flow Table:
• The flow table is a key component in OpenFlow-enabled
switches and is responsible for making decisions about how to
handle different types of network flows. Each flow table entry
consists of match fields, priority, and instructions for actions
to be taken when a packet matches the specified criteria. The
match fields typically include information from the packet
header, such as source and destination addresses, protocol
types, and port numbers.
• Roles:
• Packet Matching: The flow table is used for matching
incoming packets against predefined rules based on their
header information.
• Action Execution: It specifies the actions to be
executed for packets matching a particular flow entry,
such as forwarding the packet to a specific port,
modifying headers, or dropping the packet.
• Prioritization: Entries in the flow table have priorities,
allowing for the implementation of quality-of-service
(QoS) policies and the prioritization of certain types of
traffic.
2. Group Table:
• The group table in OpenFlow is designed to handle group-
based actions. It allows the definition of groups of actions that
can be applied to packets collectively. Group actions can
include actions such as load balancing, multicast forwarding,
and specifying multiple output ports for a packet.
• Roles:
• Group Actions: It defines groups of actions that can be
executed collectively for a set of packets. Group actions
are often used for load balancing, redundancy, or
multicast scenarios.
• Reducing Redundancy: Instead of specifying
individual actions for each flow entry, a group table
entry can be referenced by multiple flow entries,
reducing redundancy in rule definitions.
• Modularity: Group tables enhance the modularity of
OpenFlow configurations by allowing the reuse of
common sets of actions for different flows.
3. Meter Table:
• The meter table in OpenFlow is responsible for implementing
metering and QoS functionalities. It enables the measurement
and regulation of the rate of traffic flowing through the switch,
allowing for the enforcement of bandwidth constraints, traffic
shaping, and other QoS policies.
• Roles:
• Traffic Metering: The meter table allows the switch to
measure the rate of incoming packets and enforce
policies based on defined metering rules.
• Traffic Policing: It supports the enforcement of traffic
rate limits, ensuring that the network adheres to
predefined QoS parameters.
• Congestion Management: The meter table is crucial for
managing network congestion by controlling the flow
rates of different types of traffic.
**** The structure of flow tables and group tables is given in class
notes. **
**** Handwritten notes are shared in the Google Classroom
*******

14.Describe the components of the control plane and its architecture.

**** draw the architecture of SDN control plane is given in class


notes **
**** Handwritten notes are shared in the Google Classroom
*******
Shortest path forward :it can collect the set routes from
switches
Prefer the route from source to destination based on collected
information from switch
Establish the connectivity towards the destination
Notification manager : it receives the processes and forward
different events along notification related to security, changes in
the state.
Security Mechanism : mainly focus on security and provides
the security enforcement between application and services.
Topology manager: it builds and maintains the switch
interconnection and topology information
Statistics manager: it collects the traffic data through the
switches
Device manager :different parameters of the switches or
different attributes of the switches.
15. Explain in detail about SDN application plane functions and its
interfaces.
**** The architecture of SDN application plane functions and
interfaces is given in class notes. **

***The architecture of the network services abstraction


layer in Module III is given in the class notes. **
***Handwritten notes are shared in the Google Classroom in
module III*******
The SDN application plane, also known as the northbound interface, is the
layer of the SDN architecture responsible for hosting and interfacing with
SDN applications. It acts as a bridge between the SDN controller and the
applications that leverage the programmability and centralized control
capabilities of SDN. The functions and interfaces of the SDN application
plane are detailed below:
Functions of the SDN Application Plane:
1. Network Services:
• The application plane hosts SDN applications that provide
various network services. These services can include traffic
engineering, load balancing, security, monitoring, and any
other functionality that benefits from dynamic network
control.
2. Policy Enforcement:
• SDN applications in the application plane can enforce network
policies and rules. These policies may include quality-of-
service (QoS) parameters, security policies, and traffic
management rules. The application plane ensures that these
policies are communicated to the SDN controller for
implementation in the network.
3. Application Logic:
• SDN applications within the application plane implement
specific logic and algorithms to optimize network behavior.
For example, an application may use machine learning
algorithms for traffic prediction or dynamic load balancing
algorithms for resource optimization.
4. Dynamic Adaptation:
• SDN applications can dynamically adapt to changes in the
network environment. They receive real-time information
about network conditions and events, enabling them to make
informed decisions and adjust their behavior accordingly.
5. Customization and Innovation:
• The application plane allows for the development and
deployment of custom SDN applications tailored to the
specific needs of the network operator or organization. This
flexibility encourages innovation by enabling the creation of
novel network services and functionalities.
Interfaces of the SDN Application Plane:
1. Northbound APIs (NBIs):
• The primary interface of the SDN application plane is the
northbound API. Northbound APIs define how SDN
applications communicate and interact with the SDN
controller. These APIs expose functionalities and information
to the applications, enabling them to request services, retrieve
network status, and provide instructions to the controller.
• Examples of Northbound APIs:
• RESTful APIs: Provide a web-based interface for
communication using standard HTTP methods (GET,
POST, PUT, DELETE).
• gRPC (gRPC Remote Procedure Call): A high-
performance, open-source RPC framework that
facilitates communication between applications and the
SDN controller.
• Custom APIs: SDN controllers may provide custom
APIs for specific functionalities.
2. Information Models:
• Information models define the data structures and formats used
to represent network information and states. SDN applications
need a standardized way to understand the current network
status and topology. Information models, such as YANG data
models, help achieve this standardization.
• Examples of Information Models:
• YANG Data Models: Define the structure of
configuration and state data for network devices,
providing a standardized way to model network
information.
• OpenConfig: A collaborative effort to define a vendor-
neutral data model for networking devices.
3. Event Notification:
• The SDN application plane interfaces with event notification
mechanisms to receive real-time updates about changes in the
network. Events may include link failures, topology changes,
or security incidents. Event-driven architectures allow SDN
applications to respond promptly to dynamic network
conditions.
• Protocols for Event Notification:
• Publish-Subscribe Mechanisms: Enable SDN
applications to subscribe to specific types of events and
receive notifications when those events occur.
• Message Queues: Facilitate asynchronous
communication between the SDN controller and
applications, ensuring efficient event handling.
4. Southbound API Abstraction:
• While primarily focused on northbound interfaces, the SDN
application plane may also abstract certain southbound APIs to
shield SDN applications from underlying infrastructure details.
This abstraction simplifies application development by
providing a consistent interface, regardless of the specific
southbound API used by the SDN controller.

16. Compare the OpenDaylight and other north-bound interface APIs in


SDN and analyze their roles and contributions.

OpenDaylight (ODL) is an open-source SDN controller platform that


supports multiple northbound interface (NBI) APIs. These NBIs define
how SDN applications can communicate with the OpenDaylight
controller. Let's compare OpenDaylight's NBI with other commonly used
NBI APIs in SDN, such as RESTful APIs and gRPC (gRPC Remote
Procedure Call), and analyze their roles and contributions:
OpenDaylight's Northbound Interface (NBI):
1. RESTful APIs:
• Role and Contribution:
• OpenDaylight provides RESTful APIs as a widely used
northbound interface. REST (Representational State
Transfer) is an architectural style that uses standard
HTTP methods (GET, POST, PUT, DELETE) for
communication. It allows SDN applications to interact
with OpenDaylight over a web-based interface.
• RESTful APIs contribute to simplicity and ease of
integration. They follow a stateless communication
model and are well-suited for scenarios where
lightweight communication is essential.
2. YANG Data Models:
• Role and Contribution:
• YANG (Yet Another Next Generation) data models
define the structure of configuration and state data for
network devices. OpenDaylight supports YANG-based
data models, providing a standardized way to represent
and exchange information between the SDN controller
and applications.
• YANG contributes to the standardization of information
models in SDN. It ensures consistency in data
representation and facilitates interoperability between
OpenDaylight and various SDN applications.
3. gRPC (gRPC Remote Procedure Call):
• Role and Contribution:
• OpenDaylight supports gRPC as a northbound interface.
gRPC is an open-source RPC (Remote Procedure Call)
framework developed by Google. It uses HTTP/2 as the
transport protocol and Protocol Buffers as the
serialization format.
• gRPC contributes to efficient communication between
OpenDaylight and SDN applications. It offers features
such as bidirectional streaming and support for multiple
programming languages, enhancing flexibility and
performance.
4. Java API (MD-SAL):
• Role and Contribution:
• OpenDaylight's Model-Driven Service Abstraction
Layer (MD-SAL) exposes a Java API for SDN
applications. It provides a programmatic way for
applications to interact with the OpenDaylight controller
using Java programming language.
• The Java API contributes to the ease of development for
Java-based SDN applications. It leverages the
capabilities of the Java programming language and
provides a familiar environment for developers.
Comparison and Analysis:
1. Communication Style:
• OpenDaylight (RESTful APIs): Uses RESTful APIs with
HTTP methods, suitable for simple and stateless
communication.
• gRPC: Utilizes a more sophisticated RPC model with
bidirectional streaming, suitable for efficient and interactive
communication.
2. Data Modeling:
• OpenDaylight (YANG): Supports YANG data models for
standardizing information representation.
• gRPC: Uses Protocol Buffers for serialization, providing a
compact and efficient format for data exchange.
3. Ease of Integration:
• OpenDaylight (RESTful APIs): Offers a simple and widely
adopted web-based interface, making integration
straightforward.
• gRPC: Provides a modern and feature-rich framework but
may require additional considerations for integration in certain
environments.
4. Programming Language Support:
• OpenDaylight (Java API): Supports Java API for
applications developed in Java.
• gRPC: Offers support for multiple programming languages,
providing flexibility for developers to use their preferred
language.
5. Use Cases:
• OpenDaylight (RESTful APIs): Suitable for scenarios where
simplicity and ease of integration are prioritized.
• gRPC: Well-suited for use cases requiring bidirectional
streaming and enhanced performance.

You might also like