57
Performance Evaluation for Software Defined Networking (SDN) Based on Adaptive Resource Management Prepared by: Afrah Salman Dawood Supervised by: Assist. Prof. Dr. Mohammed Najim Abdullah

Performance Evaluation for Software Defined Networking (SDN) Based on Adaptive Resource Management

Embed Size (px)

Citation preview

Page 1: Performance Evaluation for Software Defined Networking (SDN) Based on Adaptive Resource Management

Performance Evaluation for Software Defined Networking (SDN) Based on Adaptive Resource

Management

Prepared by: Afrah Salman Dawood

Supervised by: Assist. Prof. Dr. Mohammed Najim Abdullah

Page 2: Performance Evaluation for Software Defined Networking (SDN) Based on Adaptive Resource Management

Project Theory

Page 3: Performance Evaluation for Software Defined Networking (SDN) Based on Adaptive Resource Management

OUTLINE

• What is SDN?

• Definitions of SDN

• Origins and Basics of SDN

• Architecture of SDN

• Advantages and Disadvantages of SDN

• Protocols used for SDN

• Simulators used for SDN

• Controllers Used With SDN

• SDN research areas

Page 4: Performance Evaluation for Software Defined Networking (SDN) Based on Adaptive Resource Management

What is SDN?■ Software Defined Networking (SDN) is a new networking paradigm in which

the forwarding hardware is decoupled from control decisions.

■ It provides the idea of programmable networks and is often referred to as a

“radical new idea in networking”.

■ It simplifies network management and enables innovation through network

programmability by the separation of the data plane and the control plane.

■ SDN has great potential to change the way networks operate, and OpenFlow in

particular has been touted as a “radical new idea in networking”.

Page 5: Performance Evaluation for Software Defined Networking (SDN) Based on Adaptive Resource Management

Definitions of SDN⸙ The most general definition is that the software-defined network is a networking scheme that

separates the control plane form the forwarding plane and this will lead to a simple (packet)forwarding elements.

⸙ The forwarding decisions are flow based instead of destination based, like that in traditional

networks where the packet is forwarded hop-by-hop based on the destination IP address in its

header field. The controller in SDN is responsible for deciding the path that the packet should

follow to attain its destination.

⸙ The external controller (or a network OS with applications) is the brain of the SDN where it is

liable on the control logic. The NOS is a key software element of the SDN network. It controls

the network infrastructure components and network data flows. The OS of the SDN network

determines features like performance, scalability and reliability.

⸙ SDN is a dynamically programmable network through software applications running on the

external controller. The network programmability is made possible through the decoupling

approach.

Page 6: Performance Evaluation for Software Defined Networking (SDN) Based on Adaptive Resource Management
Page 7: Performance Evaluation for Software Defined Networking (SDN) Based on Adaptive Resource Management

In recent years, an attempts to overcome these problems have beenmade through the use of a new paradigm in networkingarchitectures by using the Software-Defined Networking (SDN).

The basic limitation of the traditional IP networks is the

complexity and difficulty of the management and configuration

distributed around almost all devices (i.e. the configuration

manual must be implemented throughout all network devices)

where the designers must identify the structure and the source

code of the software running on switches so it cannot be easily

modified; this phenomenon is known as network (or internet)

ossification.

Page 8: Performance Evaluation for Software Defined Networking (SDN) Based on Adaptive Resource Management
Page 9: Performance Evaluation for Software Defined Networking (SDN) Based on Adaptive Resource Management

History of SDN

• 1980s: Central Network Control which Dates back (at least) to AT&T’s network control point.

• 1990s: Programmability in networks (i.e. active networking)

• 1990s: Network virtualization (e.g switches, XEN, VINI)

• 2004: Research on new management paradigms (e.g SANE, Ethane, RCP)

• 2008: Software-Defined Networking (SDN) (NOX and OpenFlow switch interface)

• 2011: Open Networking Foundation

• Board: Google, Yahoo, Verizon, DT, Microsoft, Facebook, NTT

• Members: Cisco, Juniper, HP, Dell, Broadcom, IBM, etc.

• 2013: Google used SDN for their WAN

• 2015: Open source software became the new norm for network standards.

• 2016 is the year of northbound Interface and application portability.

• SDN and NFV will play a major role in the progress of 5G leading up to its availability beginning in 2017.

Page 10: Performance Evaluation for Software Defined Networking (SDN) Based on Adaptive Resource Management

• Networks are hard to Manage

- Computation and storage have been virtualized

- Creating a more flexible and manageable infrastructure

• Networks are hard to Evolve

- Networks are stuck in the past

- Routing algorithms change very slowly

- Network management extremely primitive

• Networks design is not based on Formal Principles

- Networking courses teach a big bag of protocols

- No formal principles, just general design guidelines.

Page 11: Performance Evaluation for Software Defined Networking (SDN) Based on Adaptive Resource Management
Page 12: Performance Evaluation for Software Defined Networking (SDN) Based on Adaptive Resource Management
Page 13: Performance Evaluation for Software Defined Networking (SDN) Based on Adaptive Resource Management
Page 14: Performance Evaluation for Software Defined Networking (SDN) Based on Adaptive Resource Management
Page 15: Performance Evaluation for Software Defined Networking (SDN) Based on Adaptive Resource Management
Page 16: Performance Evaluation for Software Defined Networking (SDN) Based on Adaptive Resource Management

Advantages of SDN

Page 17: Performance Evaluation for Software Defined Networking (SDN) Based on Adaptive Resource Management

The first packet in a flow will experience a larger latency than those that follow, as

the controller is solicited, determines a path, and installs

the rule

Technology changes

Centralized architecture of

SDN based networks itself is a huge challenge (i.e. scalability)

Other challenges of immature code base, lack of

features, lack of support etc. are

temporary disadvantages

which will go away with time

Drawbacks of SDN

Page 18: Performance Evaluation for Software Defined Networking (SDN) Based on Adaptive Resource Management

• The Open Networking Foundation defines OpenFlow as the firststandard communications interface between the control and forwardinglayers of an SDN architecture.

• OpenFlow is a protocol that allows a server to tell network switcheswhere to send packets. In a conventional network, each switch hasproprietary software that tells it what to do. With OpenFlow, thepacket-moving decisions are centralized, so that the network can beprogrammed independently of the individual switches and data centergear.

Protocols Used for SDN

Page 19: Performance Evaluation for Software Defined Networking (SDN) Based on Adaptive Resource Management

• An OpenFlow switch separates the data path from the control path.The data path portion resides on the switch itself; a separate controllermakes high-level routing decisions. The switch and controllercommunicate by means of the OpenFlow protocol. This methodology,known as software-defined networking (SDN), allows for moreeffective use of network resources than is possible with traditionalnetworks. OpenFlow has gained favor in applications such as VM(virtual machine) mobility, mission-critical networks, and nextgeneration IP-based mobile networks.

• With all of its promise, OpenFlow also poses a slew of challengesfrom scalability to security.

Page 20: Performance Evaluation for Software Defined Networking (SDN) Based on Adaptive Resource Management

BGP is a protocol used for exchanging routing information between gateway hosts in a network of autonomous systems. This protocol is often used between gateway hosts on the Internet and it is also considered a standardized exterior gateway protocol.

NETCONF is an Internet Engineering Task Force (IETF) network management protocol. It provides an administrator or network engineer with a secure way to configure a firewall, switch, router, or other network device.

Extensible Messaging and Presence Protocol (XMPP) is a protocol that's based on Extensible Markup Language. Its intended use is for instant messaging and online presence detection. The protocol functions between or among servers and facilitates near-real-time operation.

Open vSwitch Database Management Protocol (OVSDB) is an OpenFlow configuration protocol that is meant to manage Open vSwitch implementations. Open vSwitch is a virtual switch that enables network automation and the support of standard management interfaces and protocols, such as NetFlow.

MPLS Transport Profile (MPLS-TP) is the transport profile for Multiprotocol Label Switching. It is designed to be used as a network layer technology in transport networks. The protocol extensions to MPLS are being designed by the IETF based on requirements provided by service providers.

Page 21: Performance Evaluation for Software Defined Networking (SDN) Based on Adaptive Resource Management

Simulators used for SDN

⁂ NS3: It supports OpenFlow switches which are restricted to be

simulation only.

⁂MININET: Network emulation software that allows you to launch a

virtual network with switches, hosts and an SDN controller all with a

single command. Mininet supports research, development, learning,

prototyping, testing, debugging, and any other tasks that could benefit

from having a complete experimental network on a laptop or other PC.

Page 22: Performance Evaluation for Software Defined Networking (SDN) Based on Adaptive Resource Management

Challenges with mentioned simulators

• Basically, in NS3 we have an OpenFlow switch model that does not speak the actual switch -

controller protocol, but instead, it talks to a sole object that implements the controller behaviour.

There have been discussions around fixing this so that one may run a controller inside a VM,

connect the VM to an NS3 node using a tap-bridge device, and then run NS3 in emulation mode.

This would allow switching the controller logic from simulation to emulation and then to actual

test.

• In Mininet-based systems, the CPU or data transfer capacity accessible on a remote controller

can't (presently) be exceeded. Non-Linux-compatible OpenFlow switches or applications likewise

can't (at present) be run; in any case, this has not been a noteworthy issue by and by.

Page 23: Performance Evaluation for Software Defined Networking (SDN) Based on Adaptive Resource Management

Controllers Used With SDN

Open Daylight

Ryu Controller

Project Floodlight

Faucet

Open Contrail

Cherry

Vneio/sdnc

The Fast Data Project

Beacon

Open vSwitch

NOX/POX

ONOS

Project Calico

Page 24: Performance Evaluation for Software Defined Networking (SDN) Based on Adaptive Resource Management

Why Do we Choose Floodlight Project and Open vSwitch Controller

The Floodlight Controller can be advantageous for developers, because it offers them the ability to

easily adapt software and develop applications and is written in Java. Included are

Representational State Transfer Application Program Interfaces (REST APIs) that make it easier

to program interface with the product, and the Floodlight website offers coding examples that aid

developers in building the product.

It can work in a variety of environments (i.e. tested with both physical and virtual OpenFlow-

compatible switches); it is compatible with OpenStack, a set of software tools that help build and

manage cloud computing platforms for both public and private clouds.

The OVS Controller is a production-quality open-source implementation of a distributed virtual

multilayer switch. The main purpose of Open vSwitch is to provide a switching stack for

hardware virtualization environments, while supporting multiple protocols and standards used in

computer networks.

Provides features like link aggregation, support for shortest path bridging MAC and LLDP,

bidirectional forwarding detection and spanning tree protocol, and many other features.

Page 25: Performance Evaluation for Software Defined Networking (SDN) Based on Adaptive Resource Management

How Floodlight and OVS Controllers

work in SDN Environments

Page 26: Performance Evaluation for Software Defined Networking (SDN) Based on Adaptive Resource Management

Controller scalabilitymulti-controllerreduce messages sent to

controllerswitch/CPU design

approaches

Network Updates

Programming

Testing/Debugging

Traffic Management/QoSflow schedulingLoad balancingTransport protocol

Monitoring

Security

SDN

arch

itectu

re

SDN

appl

icatio

ns

Page 27: Performance Evaluation for Software Defined Networking (SDN) Based on Adaptive Resource Management
Page 28: Performance Evaluation for Software Defined Networking (SDN) Based on Adaptive Resource Management

Simulator’s installation

• SDN has been implemented using the following tools:

Linux operating system_ Ubuntu 16.04.1 LTS

Oracle VirtualBox version 5.0.24_Ubuntur108355

Mininet emulator v2.2.1

Floodlight Controller v1.2 with OpenFlow v1.4

Java 8 on eclipse neon1

Python v2.7.12

FNSS Toolchain

Networkx v2.0

Pulp v1.6.1

VLC Media Player

Page 29: Performance Evaluation for Software Defined Networking (SDN) Based on Adaptive Resource Management

Topologies implementation

• The default topology is the minimal topology, which includes one OpenFlow kernel switch connected to two hosts, plus the OpenFlow reference controller.

• $sudo mn or $sudo mn --topo=minimal

• Other topologies

Page 30: Performance Evaluation for Software Defined Networking (SDN) Based on Adaptive Resource Management

Topology_1: 2 hosts & 4 OpenFlow links

Page 31: Performance Evaluation for Software Defined Networking (SDN) Based on Adaptive Resource Management
Page 32: Performance Evaluation for Software Defined Networking (SDN) Based on Adaptive Resource Management
Page 33: Performance Evaluation for Software Defined Networking (SDN) Based on Adaptive Resource Management
Page 34: Performance Evaluation for Software Defined Networking (SDN) Based on Adaptive Resource Management
Page 35: Performance Evaluation for Software Defined Networking (SDN) Based on Adaptive Resource Management

Topology 2: 8 switches & 2 hosts

Page 36: Performance Evaluation for Software Defined Networking (SDN) Based on Adaptive Resource Management
Page 37: Performance Evaluation for Software Defined Networking (SDN) Based on Adaptive Resource Management
Page 38: Performance Evaluation for Software Defined Networking (SDN) Based on Adaptive Resource Management
Page 39: Performance Evaluation for Software Defined Networking (SDN) Based on Adaptive Resource Management
Page 40: Performance Evaluation for Software Defined Networking (SDN) Based on Adaptive Resource Management
Page 41: Performance Evaluation for Software Defined Networking (SDN) Based on Adaptive Resource Management

Shortest Path Algorithms

Regular Algorithms

• Dijkstra’s algorithm, which is the default

shortest path algorithm used in floodlight and

OVS controllers.

• Bellman-Ford algorithm

• A* search Algorithm

• Floyd-Warshall algorithm

• Johnson’s algorithm

• Viterbi algorithm

Adaptive Algorithms

• Neural Network

• Genetic Algorithm

• Swarm Algorithm

• Ant Algorithm

• Fuzzy Algorithm

Page 42: Performance Evaluation for Software Defined Networking (SDN) Based on Adaptive Resource Management
Page 43: Performance Evaluation for Software Defined Networking (SDN) Based on Adaptive Resource Management
Page 44: Performance Evaluation for Software Defined Networking (SDN) Based on Adaptive Resource Management
Page 45: Performance Evaluation for Software Defined Networking (SDN) Based on Adaptive Resource Management

compute ordered paths using

genetic flowchart

Page 46: Performance Evaluation for Software Defined Networking (SDN) Based on Adaptive Resource Management

Resource Management Optimization Based on Statistical Approach

Page 47: Performance Evaluation for Software Defined Networking (SDN) Based on Adaptive Resource Management

OVS Controller Experiments

Page 48: Performance Evaluation for Software Defined Networking (SDN) Based on Adaptive Resource Management

Floodlight Controller Experiments

Page 49: Performance Evaluation for Software Defined Networking (SDN) Based on Adaptive Resource Management
Page 50: Performance Evaluation for Software Defined Networking (SDN) Based on Adaptive Resource Management
Page 51: Performance Evaluation for Software Defined Networking (SDN) Based on Adaptive Resource Management
Page 52: Performance Evaluation for Software Defined Networking (SDN) Based on Adaptive Resource Management
Page 53: Performance Evaluation for Software Defined Networking (SDN) Based on Adaptive Resource Management
Page 54: Performance Evaluation for Software Defined Networking (SDN) Based on Adaptive Resource Management

The first published

Paper

Page 55: Performance Evaluation for Software Defined Networking (SDN) Based on Adaptive Resource Management

The second published

Paper

Page 56: Performance Evaluation for Software Defined Networking (SDN) Based on Adaptive Resource Management

The third published

Paper

Page 57: Performance Evaluation for Software Defined Networking (SDN) Based on Adaptive Resource Management

Thanks for Your Attention