Articulo Simulacion Capa 2 Odl Mininet
Articulo Simulacion Capa 2 Odl Mininet
1 Introduction
Everyday networks are becoming more complex, loads on these networks are also
increasing and availability is also important. Today, network design is not sufficient
to fulfill this kind of demand, due to this networks becoming more complex,
making [2–4] the administration of these networks more difficult. Therefore, we
need next generation of networking that can manage such high demand and utilize
the bandwidth at its maximum. Due to new trends in computing like a cloud, Big
Data, and Internet of Things, a new design for networking is needed that is fulfilled
by Software-Defined Networking (SDN). SDN helps to detach control plane from
data plane which helps the administrator to manage the network centrally and can
utilize bandwidth at its maximum, resulting in great flexibility [5].
The conventional network architecture where data plane and control plane
remain in the same device which cannot fulfill these high demands and solution to
this problem is Software-Defined Networking (SDN). The network paradigm sep-
arates data plane and control plane [6]. The network can be dynamically managed;
for example, whenever there is a change in topology due to loops or any other
causes, then the network can be managed dynamically. Mininet is a lightweight
container or virtualization-based emulator. Mininet provides a rapid development
for SDN, it is flexible and creates easily configurable topologies such as switches,
controllers, virtual hosts and configurations starts a network in few seconds and also
supports the OpenFlow protocol that can be used for network based SDN simu-
lation. Mininet includes a command–line interface (CLI) that is topology-aware and
OpenFlow-aware [7].
This paper uses Mininet Simulator for simulation of SDN. SDN network consists
of data plane as OVS and control plane in the form of OpenDaylight controller.
OpenDaylight controller functions as Loop Remover, Arp Handler, Packet Handler,
Host Tracker, and Address Tracker.
2 Theory
2.1 OpenFlow
The communication between the OpenFlow controller and switch takes place using
the OpenFlow protocol. By using OpenFlow protocol, a OpenFlow controller can
do CRUD (Create, Read, Update, Delete) operation on flow entries, e.g.,
SDN Layer 2 Switch Simulation Using Mininet … 321
FLOW MOD (ADD) to create a flow entry, FLOW MOD (MODIFY) to modify a
flow entry, FLOW REMOVED to remove a flow entry [8]. Figure 1 illustrates the
architecture of OpenFlow, in which we have OpenFlow Switch, OpenFlow con-
troller, Hosts, and Servers. Communication between controller and switch takes
place securely by using Secure Socket Layer.
OpenFlow Switches are expected to process all 802.1D Spanning Tree Protocol
(STP) packets locally before performing lookup; e.g., in layer 2, OpenFlow
Switches forward broadcast traffic which may result in loops. Spanning tree helps to
provide loop-free topology but when link fails there is exchange of BPDU between
switches and then they take an alternative path which takes some time. However, in
SDN, controllers do topology discovery and link fault detection. In SDN, Spanning
Tree Protocol is comparatively easier. Whenever there is a change in topology, it
simply computes a STP from the topology using prims algorithm.
OpenFlow Switch maintains the flow table according to pattern, action, priority
and counter for e.g. pattern, action, and priority and counter values are Dst IP
address (10.5.2.1), Port 1, 15 and 105 respectively. The complete table and their
values are given below in Table 1.
322 V. K. Rathi and K. Singh
2.2 OpenDaylight
The OpenDaylight can deliver the benefits of SDN to the Internet of Things or
control Ethernet switches using the OpenFlow protocol. OpenDaylight provides a
Model-Driven Service Abstraction Layer (MD-SAL) that allows users to write
apps that can work easily across a wide variety of hardware and south-bound
protocols [9].
OpenDaylight aims to accelerate the adoption of Software-Defined Networking
and creates a solid root for Network Function Virtualization. Newest version of
OpenDaylight is Lithium. OpenDaylight not only supports OpenFlow but also
supports other south-bound protocols like NETCONF, OVSDB, SNMP. For
north-bound Protocols, Representational State Transfer (REST) APIs are used.
OpenDaylight runs on Java Virtual Machine (JVM), and it is platform inde-
pendent that can be run on any Operating System. OpenDaylight makes use of the
following tools Maven, OSGi, Java Interfaces, and REST APIs. Figure 2 shows a
high-level network view of the OpenDaylight controller. In which SDN apps talk to
Northbound API according to request the corresponding API is activated now at
next layer we have two functions Service Functions and Base Network Functions
which contain different modules like Statistics Manager, Device Man- ager,
Topology Discovery, Inventory Manager then request reaches the Service
Abstraction Layer and then through Southbound API which can be it reaches to
Network Device.
SDN Layer 2 Switch Simulation Using Mininet … 323
The Layer 2 Switch gives Layer 2 functionality. There are various modules present
in Layer 2 Switch like Loop Remover which removes the loop in the network and
updates the corresponding STP Status of networks ports. In the operational
inventory data store, Host Tracker tracks the location of the host relatively to the
network. Switch Manager Component holding the inventory information for all the
known nodes in the controller, Topology Manager Component holding the whole
network graph, Statistics Manager Component in charge of using the Service
Abstraction Layer Read Service to collect several statistics from the Network, Arp
Handler which handles the decoded ARP packets, either by installing proactive
flood flows or by dispatching packets back to network, based on the configuration,
Layer 2 Switch Main installs flows on each switch, based on network traffic and
address learned by address tracker [10]. This allows the switch to learn the network
topology and be aware to changes. Thereby, when a packet is received it is directly
redirected to the destination instead of flooding to every other host. This results in
very high efficiency as compared to current switching methodology in layer 2.
324 V. K. Rathi and K. Singh
3 Simulation Design
This section briefly discusses network design and SDN controller as follows.
Our study used IBM server which contains 32 GB RAM, 1 TB hard disk on which
we have place Kernel-based Virtual Machine (KVM) as a Hypervisor and upon it
we have placed two instances: One instance contains Mininet with 192.168.56.103
as ip address, and another instance putting OpenDaylight as controller with the
following ip address 192.168.56.101. The network simulation contains three
switches and three hosts; one host is connected with one switch in Mesh Topology.
The network topology of simulation is shown in Fig. 3.
We are using Mininet, add a custom topology in Custom Directory, and create a
python file called as meshtopology.py, which contains the following algorithm
1. Initialize topology
Topo. init (self)
2. Add hosts and switches
leftHost = self.addHost( ’h2’ )
rightHost = self.addHost( ’h3’ )
leftSwitch = self.addSwitch( ’s2’ )
rightSwitch = self.addSwitch( ’s3’ )
aboveHost = self.addHost( ’h1’ )
aboveSwitch = self.addSwitch( ’s1’ )
3. Add links
self.addLink(leftHost, leftSwitch)
self.addLink(leftSwitch, rightSwitch)
self.addLink(rightSwitch, rightHost)
self.addLink(aboveHost, aboveSwitch)
self.addLink(aboveSwitch, leftSwitch)
self.addLink(aboveSwitch, rightSwitch)
4 Result
5 Conclusion
SDN Layer 2 Switch is introduced in a brief manner in this research paper. SDN has
risen as a way to enhance programmability within the network to fulfill the dynamic
nature of future network functions. SDN keeps on making progress within large
enterprise and cloud service provider for data center networking. SDN offers a wide
SDN Layer 2 Switch Simulation Using Mininet … 327
References