SOFTWARE DEFINED NETWORKS
SDN or "Software Defined Networking", is a new concept in networking that
appeared back in 2008, revolutionizing the way we connect, control, and
provision resources. Traditional networking is hardware-based, making use of
routers and switches to control network traffic. However, the use of these
networks had a number of drawbacks. In particular, manual configurations
were time-consuming and costly and led to weak network security and poor
scalability.
Comparatively, SDN is a newer, more refined form of networking that is
"software-based" as opposed to traditional hardware-based networking.
Software-Defined Networking employs software-based controllers or APIs to
direct underlying hardware infrastructure and network traffic flow.
Initially, SDN can be traced back to the separation of the control plane and
data plane used in the public switched telephone network in order to simplify
management and control. This architecture was soon adopted for use in data
networks, and SDN was born. SDN doesn't necessarily exist to replace existing
traditional networks, but to add value to what we already have. They are,
instead, enhancing and sharpening legacy networks.
With SDN, regardless of the complexity of the underlying network technology
or the type of devices used, operators can manage the entire network and all
devices running on it consistently. The goal is to improve overall network
control and enable enterprises to quickly adapt to changing business
requirements.
Software Defined Networks: is an evolutionary approach to network design
based on the ability to programmatically modify the behavior of network
devices.
SDN is a framework to allow network administrators to automatically and
dynamically manage and control a large number of network devices, services,
topology, traffic path (TP) and packet handling (QoS), policies using high-level
languages and APIs.
How SDN works
To better understand how SDN works, it helps to define the basic components
that create the network ecosystem. The components used to build a software-
defined network may or may not be located in the same physical area. These
include:
· Applications – Tasked with relaying information about the network or
requests for specific resource availability or allocation.
· SDN controllers – Handle communication with the apps to determine the
destination of data packets. The controllers are the load balancers within SDN.
· Networking devices – Receive instructions from the controllers regarding
how to route the packets.
· Open-source technologies – Programmable networking protocols, such
as OpenFlow, direct traffic among network devices in an SDN network. The
Open Networking Foundation (ONF) helped to standardize the OpenFlow
protocol and other open source SDN technologies.
By combining these components, organizations get a simpler, centralized way to manage
networks. SDN strips away the routing and packet forwarding functions, known as the
control plane, from the data plane, or underlying infrastructure. SDN then implements
controllers, considered the brain of the SDN network, and layers them above the network
hardware in the cloud or on-premises. This lets teams use policy-based management—a
kind of automation—to manage network control directly.
Virtualization and software-defined networking
The term “virtual network” is sometimes erroneously used synonymously with the
term SDN. These two concepts are distinctly different, but they do work well together.
Network functions virtualization (NFV) segments one or many logical, or virtual, networks
within a single physical network. NFV can also connect devices on different networks to
create a single virtual network, often including virtual machines.
SDN works well with NFV. It assists NFV by refining the process of controlling data
packet routing through a centralized server, improving visibility and control.
Types of SDN
There are four primary types of software-defined networking (SDN):
· Open SDN – Open protocols are used to control the virtual and physical devices
responsible for routing the data packets.
· API SDN – Through programming interfaces, often called southbound APIs,
organizations control the flow of data to and from each device.
· Overlay Model SDN – It creates a virtual network above existing hardware, providing
tunnels containing channels to data centers. This model then allocates bandwidth in each
channel and assigns devices to each channel.
· Hybrid Model SDN – By combining SDN and traditional networking, the hybrid model
assigns the optimal protocol for each type of traffic. Hybrid SDN is often used as an
incremental approach to SDN.
Where is SDN Used?
Enterprises use SDN, the most widely used method for application deployment, to deploy
applications faster while lowering overall deployment and operating costs. SDN allows IT
administrators to manage and provision network services from a single location.
Cloud networking software-defined uses white-box systems. Cloud providers often use
generic hardware so that the Cloud data center can be changed and the cost of CAPEX and
OPEX saved.
CHALLENGES OF TRADITIONAL NETWORKS BEFORE SDN
1. Difficulty to perform real-world experiment on large-scale networks because
of incompatibility.
2. Research stagnation- huge costly equipment.
3.Rate of innovations in the networks is slower as protocols are defined in
isolation and lack high level abstractions
4. Inconsistent policies.
5. Closed systems:
I. it is hard to collaborate meaningfully due to the lack of standard open
interfaces.
ii. vendors starting to open up but not meaningfully
iii. innovation is limited to vendors/vendor partners.
Advantages of SDN to existing networks:
1. Virtualization
2. Programmability
3. Dynamic scaling
4. Visibility
5. Automation: troubleshooting, reduced down-time & policy enforcement.
How Does SDN Address the Challenges of Traditional Networks?
1. SDN provides open interfaces enabling development that can control the
connectivity provided by a set of network resources and the flow of network
traffic through them.
2.it decouples the network control from the network forwarding nodes, and
centralize network intelligence.
3. It allows applications to govern network resources and by extension
maximize efficiency, flexibility and scalability.
4.SDN makes network troubleshooting or diagnostics and statistics accessible.
SDN has a central intelligence which is its core.
CENTRALIZED INTELLIGENCE
1.It creates a logically centralized network controller that communicates with
both applications and forwarding nodes and with the responsibility for
application needs at the network composite nodes and reporting information
back to the application.
2. We can deduce that SDN is a similar to a network operating system.
CROSS-PLANER COMMUNICATION
SDN also creates interfaces between the applications, controller and
forwarding planes to allow network control instruction to propagate ''down''
and state & diagnostics information to propagate ''up''.
Difference between centralized and distributed system
Centralized Distributed system
1 Fast response to changes It takes time to converge and respond
2 Fast consistency Low consistency
3 Less scalable Not scalable
4 Has single point of failure Fault tolerance
The technology used in SDN is Open flow; It is a protocol that acts like SDN
interfacing technology.
SDN is made of 3 layers
1. Application layer
Application Layer: The applications layer includes network programs and
applications that communicate the desired network behavior and
requirements to the underlying SDN control layer. In traditional
networks, you would instead use a dedicated firewall as an appliance or
a load balancer.
2. Control layer
The control layer represents the centralized SDN controller software that
acts as the brain of the software-defined network. This controller resides
on a server and manages policies and traffic flows throughout the
network
3. Infrastructure layer
This is the underlying network of physical switches and routers in the
network.
FLOW TABLE
It is composed of 3 segments;
1. Rule – it has the characteristics of the incoming packets that defines it.
2. Action – it entails what to do with the packets specified by rule.
3. Stats – this entails tracking information for this type of packets, (general
detail history of rule.)
Traditional networking has a number of significant limitations that slow
innovations and prevent intelligent networking, SDN on the other hand is a
recent system aimed at addressing these limitations by increasing openness,
interconnectivity, and programmability. With SDN, we can achieve greater
flexibility, reactivity and network awareness.
There are 4 planes of networking
1. Data plane
2. Control plane
3. Management plane
4. Service plane
Open flow separates control planes and move it to a central controller by
extension, simplifying the forwarding element.
Switches match incoming packets with flow entries in a table and handle as
instructed by the rule, the controller supplies the flow table and other
instructions.
Open flow has been extended to IPv4, IPv6 and optical network. Hence, SDN
originated from open flow. It is a centralized controller as it is easy to program,
it can easily change routing policies.
SDN is easy if the control is centralized, but complete removal of the control
plane can be harmful to SDN.
SDN applications
1. Software defined switches
2. Software defined routers
3. Software defined data centers
4. Software defined storage
5. Software defined base stations
Network function virtualization
Advantages of Virtualization
It helps in quick positioning, scalability, mobility while reducing cost.
WHY NFV IS NEEDED.
1. Virtualization – helps to use the network resources without worrying
where it is located.
2. Orchestration – helps to manage thousands of devices.
3. Programmable – should be able to change behavior
4. Visibility – monitors resources and connectivity.
5. Performance – helps to optimize network device utilization.
Thin line between NFV and SDN
1. The concept of NFV originates from SDN, therefore NFV and SDN are
complimentary.
2. Both of them have similar goals but approaches are different.
3. SDN needs new interfaces, control modules and application. Whereas,
NFV requires moving network applications from dedicated hardware to
virtual container on commercial off-the-shelf hardware (COTS).
4. NFV is present whereas SD is the future
5. Virtualization alone provides many of the required features.
ACROYMS OF SDN
1. API – Application Programming Interface
2. ACL – Access Control List
3. ARP – Address Resolution Protocol
4. BGP – Border Gateway Protocol
5. CLI – Command Line Interface
6. CDN – Content Distribution Network
7. CDNI – Content Distribution Network Interconnection
8. CMS – Content Management System
9. BNC – Big-switch Network Controller
10. IOT – Internet of Things
11.IPsec – Internet Protocol Security
12. IPv4 – Internet Protocol Version 4
13. IPv6 – Internet Protocol Version 6
14. ACI – Access Control Infrastructure