ENDSEM IMP SOFTWARE DEFINED NETWORKS
UNIT – 4
Q.1] What are Current Languages and Tools used in SDN programming?
ANS : Current Languages and Tools Used in SDN Programming
1. Python – Used for writing SDN applications and controllers (e.g., Ryu,
ONOS).
2. C++ – Used for high-performance SDN controllers and network
functions.
3. Java – Commonly used in SDN controllers like ONOS and
OpenDaylight.
4. P4 (Programming Protocol-independent Packet Processors) – A
language designed for programming network switches.
5. Mininet – A tool for creating and testing SDN networks in a virtual
environment.
6. OpenFlow – A protocol that allows SDN controllers to communicate
with network devices.
Q.2] Explain the Composition of SDNs?
ANS : Composition of SDNs (Software-Defined Networks):
1. Application Layer – This includes network applications (like firewalls,
load balancers) that define network behavior.
2. Control Layer – The brain of SDN, where the SDN controller manages
and directs network traffic.
3. Infrastructure Layer – Physical or virtual network devices (like
routers and switches) that forward data.
4. Northbound API – Connects the application layer to the control layer,
allowing applications to communicate with the SDN controller.
5. Southbound API – Connects the control layer to the infrastructure
layer, enabling the controller to manage network devices.
6. Centralized Management – SDNs use a centralized controller to
manage the entire network, making it flexible and efficient.
Q.3] What is Mininet? Explain basic commands of mininet.
ANS : What is Mininet?
Mininet is a network emulator that creates a virtual network on a single
computer. It is mainly used for testing and developing network applications
and protocols without using real hardware.
Basic Commands of Mininet:
1. sudo mn – Starts the default Mininet network.
2. sudo mn --topo tree,2 – Creates a tree topology with two levels.
3. nodes – Lists all hosts, switches, and controllers in the network.
4. pingall – Tests connectivity between all hosts in the network.
5. h1 ifconfig – Displays network details of host h1.
6. exit – Stops Mininet and exits.
Q.4] Explain Northbound Application Programming Interface.
ANS : Northbound Application Programming Interface (Northbound API)
A Northbound API is used in networking and software systems to allow
communication between a lower system (like a controller) and higher-
level applications. It helps manage and automate network operations.
Key Points:
1. Definition – A Northbound API enables communication from network
controllers to higher-level applications or management systems.
2. Purpose – It helps in automating network management, monitoring,
and policy implementation.
3. Direction – It works "upward" in the network hierarchy, from the
controller to applications.
4. Usage in SDN – In Software-Defined Networking (SDN), Northbound
APIs allow SDN controllers to communicate with network applications
and services.
5. Common Protocols – Uses RESTful APIs, JSON, and XML for easy
integration.
6. Example – An SDN controller using a Northbound API to provide
network data to a cloud management system.
Q.5] Explain in detail Network Functions Virtualization (NFV).
ANS : Network Functions Virtualization (NFV) – Explained Simply
Definition:
Network Functions Virtualization (NFV) is a technology that replaces
traditional hardware-based network devices (like routers, firewalls, and
load balancers) with software-based solutions that run on standard
servers. It helps telecom providers and enterprises to improve flexibility,
reduce costs, and scale networks easily.
Key Points (for 6 Marks):
1. Replaces Hardware with Software – NFV replaces physical network
devices with virtualized network functions (VNFs) running on general-
purpose servers.
2. Cost-Effective – Reduces the need for expensive, dedicated hardware,
lowering both capital (CAPEX) and operational (OPEX) costs.
3. Improves Flexibility – Allows businesses to deploy, update, or scale
network services quickly without replacing hardware.
4. Enhances Performance – Provides automated network management,
reducing downtime and improving service efficiency.
5. Supports Cloud & 5G – NFV plays a key role in modern networks,
enabling fast deployment of cloud-based services and 5G networks.
6. Key Components of NFV:
o Virtualized Network Functions (VNFs) – Software versions of
networking hardware.
o NFV Infrastructure (NFVI) – Physical servers and virtualization
layers that host VNFs.
o NFV Management & Orchestration (MANO) – Manages and
automates NFV operations.
Q.6] Enlist the applications of Software Defined Networks.
ANS : Applications of Software-Defined Networks (SDN):
1. Network Virtualization – Allows multiple virtual networks to run on a
single physical network, improving flexibility and resource usage.
2. Traffic Management – Enables dynamic control of network traffic to
optimize performance and reduce congestion.
3. Security Management – Simplifies network security by providing
centralized control to monitor, detect, and respond to security threats.
4. Cloud Data Centers – Helps in managing and optimizing resources in
cloud-based environments by providing automated and flexible
network configurations.
5. Network Automation – Automates the configuration and management
of network devices, reducing manual intervention and errors.
6. Load Balancing – Distributes network traffic evenly across servers to
ensure high availability and reliability of applications.
Q.7] Discuss SDN Programming concepts?
ANS : Here’s a simple and easy explanation of SDN (Software-Defined
Networking) Programming Concepts:
1. Centralized Control:
o SDN separates the control plane (network decisions) from the
data plane (traffic forwarding).
o The control plane is centralized in a software-based controller,
allowing for easier management and network programmability.
2. Programmability:
o Networks can be programmatically controlled using software
applications.
o Network behavior can be dynamically adjusted by sending
commands to the SDN controller, making the network more
flexible.
3. Controller:
o The SDN controller is the brain of the network. It manages and
configures switches and routers in the data plane.
o It uses protocols like OpenFlow to communicate with the
networking devices.
4. OpenFlow Protocol:
o OpenFlow is a widely used communication protocol between the
controller and the network devices.
o It allows the controller to manage packet forwarding rules on
switches and routers, providing fine-grained control over data
flow.
5. Network Virtualization:
o SDN allows creating virtual networks on top of the physical
network, enabling isolated, customizable networks for different
services.
o This is achieved by abstracting the network infrastructure and
allowing the controller to define virtual topologies.
6. Automation and Dynamic Configuration:
o SDN makes it easier to automate network configuration,
reducing the need for manual intervention.
o Network changes such as adding new devices, adjusting
bandwidth, or rerouting traffic can be done automatically based
on the network’s needs.
Q.8] Explain Case study: Ballarat Grammar uses SDN to fight malware.
ANS : Here’s a simple and easy explanation of the case study: Ballarat
Grammar uses SDN to fight malware:
1. Challenge Faced:
o Ballarat Grammar, an Australian school, faced frequent malware
attacks on its network.
o Malware often spread quickly across the network, causing
disruptions and affecting users' devices.
2. Adoption of SDN:
o To solve this issue, the school decided to implement Software-
Defined Networking (SDN).
o SDN provided a centralized and programmable approach to
control the network and respond to threats more efficiently.
3. Real-Time Threat Detection:
o With SDN, the school used real-time monitoring to detect
unusual traffic patterns or malicious activity on the network.
o The SDN controller could automatically identify suspicious
behaviors, such as malware trying to spread.
4. Dynamic Network Reconfiguration:
o Once malware was detected, the SDN controller could
dynamically isolate infected devices from the network.
o The controller reconfigured network paths in real-time to
prevent the malware from spreading, effectively containing the
threat.
5. Improved Response Time:
o SDN allowed the school’s IT team to respond to security
incidents faster by automating network changes.
o This reduced the manual intervention needed and allowed for
quicker containment of malware.
6. Enhanced Security:
o By using SDN, Ballarat Grammar improved its overall security
posture.
o The flexibility and programmability of SDN made it easier to
adjust security policies as new threats emerged, keeping the
network more secure.