Simulation Analysis of Characteristics and Application of Software-Defined Networks
Simulation Analysis of Characteristics and Application of Software-Defined Networks
Simulation Analysis of Characteristics and Application of Software-Defined Networks
Abstract - Software-defined network (SDN) is an approach to implementation of additional network services and
computer networking that allows network administrators to components. An additional benefit of SDN is the possibility of
manage network services through abstraction of higher-level using the network components from different manufacturers,
functionality. This research includes comparison of multiple basically without having to know how to operate the devices
scenarios of the software-defined network, which are based on since the complete network environment is managed from a
different types of coverage and local area networks (LAN), i.e. a single point, or through the SDN controller. The SDN network
traditional LAN. Differences are evident in the scenario of architecture consists of a controller SDN, OpenFlow network
network performance and can be perceived as advantages and devices and a communication channel that connects them.
disadvantages of SDN in relation to the traditional network. The
parameters used in the analysis are data rate, packet delay (i.e. Today, the largest application of SDN is present in data
latency), packet loss, throughput, the cost of network centers which are also known as software-defined data centers
performance and others. The application and the simulation (SDDC). Such data centers contain all the elements of the
demonstration of a software-defined network is shown in the infrastructure needed for networking, storage, processing
graphical network simulator GNS and emulator Mininet. This (Central processing unit - CPU), the realization of security and
research has analysed the advantages and disadvantages of a virtualization, and are being delivered as a service.
software-defined network over a conventional network, taking Development, provisioning, configuring, and other operations
into account various parameters and stakeholders.
of the whole infrastructure are separated from the hardware and
Keywords - Software-defined network/networking, simulation
executed by the software.
analysis, controller, Application programming interface (API) The aim of this research was to conduct an analysis of the
characteristics and the application of software-defined
I. INTRODUCTION networks. The analysis is based on a comparison of
Nowadays, we are witnessing a very high degree of conventional networks and software-defined networks with the
application of virtualization technologies with the growing display of significant differences. The research includes a
customer demand for a fast establishment and delivery of simulation of different network topologies using the graphical
services and placement services within the Cloud Computing network simulator GNS3 on Linux. For the purposes of the
concept. In addition, users require flexible and automated simulation, it was necessary to specify the differences between
network environment that is adaptable to current applicative network architecture of traditional networks and software-
requirements. Such new challenges require responses by the defined networks, and to conduct the process of designing
application of a different approach in relation to the classical software-defined network via a graphical network simulator
network infrastructure management. Cloud computing allows GNS3 and emulator Mininet. The research is in fact an analysis
users to store data and install software on the servers that are of different scenarios and parameters (data rate, packet delay,
connected through the Internet. With the help of a web browser packet loss, throughput, the cost of network performance, etc.).
and special customers, these services are flexible and the users
pay only for what they use. II. BACKGROUND AND RELATED WORK
Software-defined network (SDN) is a network architecture Numerous available articles and research are dealing with
in which the networks control is separated from the packet the analysis of the characteristics and architecture of software-
forwarding and it contains the possibility of direct defined networks / networking, and the analysis is mainly
programming. Such migration of control, which is sometimes based on the impact due to changes in certain performance of
strongly related to an individual network device, in the external the network and the application of SDN controller [1], [2], [3].
computing devices allows basic infrastructure separation of Within the development of the Internet of Things (IoT)
applications and network services, which are therefore able to concept, many authors reveal the application of software-
treat the network as a logical or virtual entity. SDN enables defined networks / networking and access in the IoT
dynamic adjustment of the network environment to the current environment, and thus achieve the differentiation level of
application requirements or the users needs, and simplifies service due to the different needs of IoT in different
management and increases the scalability of the network, (heterogeneous) scenarios, especially related to the wireless
which is particularly manifested through a simple networks [4], [5], [6]. The development of software for the
simulation of the operation of information and communications
networks has achieved efficient testing of various networks and the southbound Application Program Interfaces (API). Figure 1
network elements, ways of networking and the presentation of shows the logical layers of SDN. At the lowest level there are
various possible scenarios, which is also present within network elements such as switches, computers, servers and
software-defined networks. Typically used software for the other network devices. It is important to note that the switches
implementation of software-defined networks simulation is the are located on top of the lowest layer. The middle layer is a
OpenNet [7], Mininet [8], ns3 [9] and EstiNet [10]. The article layer of controller that communicates with the switches.
[11] presents a comparative analysis of the existing simulators
for SDN according to different characteristics and functions.
According to [12], the authors were interested in research
of the SDN technology and its possibilities, and were thereby
using Mininet simulator and POX SDN controllers. The results
were compared with the results obtained by the application of
network devices and the use of "traditional" network. The
throughput in a software-defined network is increased in
comparison to a traditional" network and the number of lost
packets in a software-defined network is smaller.
Within the SDN analysis conducted by the Open Network
Foundation (ONF) it has been concluded that separate control
and data planes result in better programmability, automation
and better control of the network, which results in scalable and Figure 1 - Logic layers of SDN
flexible networks which allow, for example, business The highest level is the application level in which the user
companies to easily adapt to variable business needs [13]. can define the applications that will allow the definition of the
Analyzing the issues of SDN, the Cisco Systems company has network flow. As result, a network approaches the applications
come to the conclusion that SDN greatly helps to simplify as one logic switch thus providing control of the entire network
operations by automating and centralizing network business from one logic point and simplifies the network design and all
management [14]. One part of the research also analyzes the of the operations within the network. SDN also simplifies the
traffic parameters as part of the transport engineering in SDN operating of the network devices because they no longer have
networks, using various simulation methods and simulation to understand, but only to process a lot of protocol standards
experiments [15], [16]. led only by the instructions of the SDN controller [14].
III. OVERVIEW OF CHARACTERISTICS AND ARCHITECTURE A. SDN Controller
OF SOFTWARE-DEFINED NETWORK
The central controller (SDN controller) is a software entity
The SDN concept is based on the need to separate and that needs to have a global view on the entire network. The
redefine a network construction, and its implementation uses network operating system, launched logically for the choice of
the following three principles: path, needs to be launched on the central SDN controller. The
controller has an overview of the entire network and it can
1) Control and forwarding planes: Control planes are
determine the optimized flow and program hardware ports. The
separated from the forwarding planes. Forwarding planes are basic characteristics of the controller are:
still located in the switch, while control planes are moved to
the SDN controller in the form of software. Detection of end user devices such as laptops,
2) Control intelligence: Control intelligence is centralized desktops, printers, mobile terminal devices, etc.
at SDN controller. Detection of network devices that form the network
3) Network programmability by applications: The network infrastructure such as switches, routers and wireless
can be programmed beginning from the applications. access points.
Applications interface can be exposed to the controller to Management of network devices topology by
manipulate the network. maintaining information about the details of the link
between the network devices and directly connected
The main objective of SDN is to achieve better terminal devices.
management of networks with large extent and complexity and
to ensure that all logical decisions of control level are made Control of database maintenance managed by the
from the central point. This central access will reduce the need controller and performing of necessary coordination
for the N-number of intelligent nodes in an N-nodes topology. with the devices to ensure the synchronization of flow
The basic role of every network software is to program the path entry of devices with that database.
that will allow the traffic to flow. Now, when the dependence B. Southbound API
of software on the hardware is reduced, there is no need for
intelligent software to operate on all nodes. Within the architecture of software-defined network, the
southbound API are being used for communication of SDN
SDN is based on the concept of logical starting of software controllers with network switches and routers. Southbound
in a centralized location and programming of switches using APIs mitigate the efficient network control and allow the SDN
controller to dynamically make changes according to the real- and the network configuration switches. It will be installed on
time requirements and needs. the Linux OS, which allows the combination of virtual and real
devices and allows the simulation of complex networks. It uses
C. Northbound API Dynamics emulation software to simulate Cisco's Internetwork
Within the SDN network, northbound APIs are being used Operating System (Cisco IOS). The software used in the
for communication of the SDN controller with the services and configuration of the switches is used in the actual physical
applications launched within the network. Northbound APIs devices. The network topology used to compare the
can be used in order to mitigate the innovations and provide an conventional configuration and the SDN network consists of
efficient orchestration and automatization of network which five switches and two Linux PCs connected as shown in
can align due to its programmability with the needs of various Figure 2.
applications. Northbound APIs are most critical of all within
the SDN environment, because the value of SDN is related to
innovative applications which can be potentially supported and
provided and they have to support a wide range of applications.
IV. PLANNING OF SOFTWARE-DEFINED NETWORK
Many organizations inforce the initiative of the
implementation of SDN solution, but there is a question of the
best performance onto the more automated network
architecture and what is to be considered and applied within. In
many cases, the software-defined solution does not need to
look any different from the conventional network. It is
important to define the impact of the SDN model on the
existing services and to use samples of applications that Figure 2 - Network topology of conventional network and SDN
connect and checkout the continuity of the service before and network [18]
after the implementation. That will prevent the disruption of
service and eliminate all implementation-related problems. By using GNS3 simulator, a network is created as shown in
However, regardless of the number of preparations, some of Figure 3. Before any traffic can flow from PC-1 to PC-2, it is
the circumstances are still unpredictable. Therefore, it is necessary to configure all the switches, to make sure that the
important to have an alternative plan that allows the traffic from PC-1 to PC-2 flows via the shortest route, which is
administrators to return the previous network configuration. made possible by using FIB (Forwarding Information Base) on
The implementation of SDN without the proper knowledge each switch.
represents a certain risk, but the ignoring of SDN represents a
significant risk for IT organizations and IT experts. In the case
of IT organizations, the risk is that they will not be able to
solve the problems for which SDN has been designed, which
results in the lack of competitiveness. The risk for IT
professionals is that they can fall behind in learning and
education related to this approach and thus will not have the
competitive value for the current or for the future employer.
SDN security needs to be built into the architecture, as well as
delivered as a service to protect the availability, integrity, and
privacy of all connected resources (and information). Figure 3 - Conventional network topology in GNS3 simulator
According to previous analyses and research it can be Once the ports, IP addresses and configured switches are
concluded that in the upcoming period SDN will have a assigned, the network topology must be learned by all
significant impact on corporate networks and roles of the switches.
network experts. Because of that, it is important that the IT
organizations and the IT experts develop a plan for the SDN Even though the network topology contains a small number
implementation. The implementation may vary depending on of network devices and is not complex, it can be concluded that
the size and the complexity of the network, as well as the the configuration of larger networks has higher demands for
experience of the IT team. New skills and additional training is the number of connections and the time. If the network consists
needed. With proper planning, most organizations can quickly of a thousand network devices and hosts, which is very
and easily take advantage of SDN solutions. frequent in todays networks, every switch and every flow has
to be particularly configured for the appropriate traffic. This
V. SIMULATION DEMONSTRATION OF SOFTWARE-DEFINED process takes a number of procedures and increases the total
NETWORK OPERATION time. Within the SDN solution all the procedures, from switch
configuration and learning of network topology, are performed
A. Development of the network topology
by SDN controller from one centralized point and within a very
Graphical Network Simulator 3 (GNS3) [17] was used for short period of time, which makes it an advantage over the
the purpose of creation of the conventional network topologies conventional networks. The only condition is that switch has to
be connected onto the SDN controller, and all the other work is evident that this process facilitates the processes of a
performed by the controller itself. conventional network, where every single switch has to be
configured manually, which is within the SDN controller
The development of the SDN network topology is quickly performed by separating the control planes from the
performed by Mininet [8] emulator in order to show how the data planes, which are still present within the switch. After the
controller operates. This emulator allows creation of virtual controller knows about the switch, the next step is to gain
networks and initiates a real kernel, switch and the application insight into the entire view of the network (i.e. learn about the
code on virtual machine, which is in this case VM Virtual Box. details of switch devices and about the connections between
Mininet is installed on the Linux OS and uses an appropriate them). This is conducted in two steps: the first step is to learn
script in Python programming language to initiate previously about the individual switches, and the second is to learn about
created network topology. The SDN controller is needed with the connections between the switches. The first step is
the use of Mininet. For the purpose of testing OpenDaylight performed by feature request and feature reply mechanisms.
controller was used [19]. The topology consists of five Open The controller sends feature-request message at the moment the
vSwitches and two Linux PCs all connected as shown in Figure so-called TCP handshake is conducted. The newly connected
2. After successful initiation of Mininet, it is necessary to start switch replies with the feature-reply message. The feature-
your own creation of topology specially intended for this case
reply message informs the controller about the capabilities of
and written in Python programming language under the name the switch, details of the port and the available operations. In
of TestTopology. The command for initiation of the test the next step, the identification of the switch connections is
network is: made by Link Layer Discovery Protocol (LLDP) frames that
sudo mn mac controller=remote,ip=192.168.165.1,port=663 are sent onto the connected ports of switches.
custom TestTopology.py topo=mytopo, and the meaning of
B. Performance measurement
the individual parts of the command are:
Measuring of the performances includes two different
sudo mn: initiates command with root privilege scenarios, where the measurement of the permeability and
--mac: sets MAC addresses of hosts similar to IP packet delay within the client server communication based on
addresses, which makes it easier to read the generated the TCP protocol will be the first one, and the second one will
traffic shown in Wireshark measure the packet loss based on the UDP protocol. Scenario 2
is different in ending of the link triggered by closing the port
--controller=remote: informs the Mininet that SDN is between Switch 1 and Switch 5. Network topologies of
not on the local computer conventional and SDN network are made in GNS3 simulator,
to ensure the same conditions, on 4 Linux PCs by using real
Ip=192.168.165.1: IP address of the SDN controller, software with Cisco switches and Open vSwitch software
as well as the IP address of the host computer where based on SDN switches. Figure 5 shows the presentation of the
the controller is started used topology for Scenario 1.
Port=6633: Standard TCP port for connecting the
switch onto the controller
--custom TestTopology.py topo=mytopo: initiates its
own topology written in Python.
By entering an accurate code, Mininet will create the
network by adding controllers, hosts, switches and links that
will configure the hosts and initiate switches. Figure 4 shows
the visibility of switches and their connection in the
OpenDaylight controller.