Skip to content

This is my master's thesis project: "QoS implementation in Software Defined Network using Ryu Controller"

Notifications You must be signed in to change notification settings

amirashoori7/sdn_qos

Repository files navigation

QoS Management Solution in Software Defined Networking using Ryu Controller

This is my master's thesis project repository, which turned into a published paper at (IMPCS). IMPCS is a persian journal published by Islamic Azad University of Zanjan

visit: https://impcs.zanjan.iau.ir/article_682091.html?lang=en

Introduction

Enterprise networks are increasingly becoming larger and more dynamic due to vast deployments of virtualization technologies. Consequently, the explosion of new network applications and services has strained the capabilities of traditional networking architecture in terms of scalability, agility, and efficient traffic management. SDN (Software Defined Networking) is a novel approach to build networks in which control logic is decoupled from data forwarding in order to enable programmability and ease of configuration across the entire network. The centralized control in SDN provides a global view of the entire network resources and their performance which enables the innovation of new service models. This paper demonstrates the implementation of SDN in a sample data center network topology using Mininet and the RYU controller, followed by employing policy-based network management and a differentiated service mechanism for guaranteeing the QoS for different classes of traffic. The proposed framework is a foundation to develop an enterprise-level network control and management product.

The approach of this paper is an implementation of a software-based architecture in the topology of a data center. It manages and guarantees the quality of service, using network policy-oriented management and service quality methods. The presented framework is an expandable infrastructure to solve the challenge of dynamic and agile management in the network of data centers and virtualization and cloud processing service providers.

RYU architecture

alt_text

Test Case 1 -Perflow QoS

alt_text

Test Case 2 -Diffserv QoS

alt_text

Further work: developing flow manager UI

alt_text

(back to top)

Getting started

create python virtual environment

pip install virtualenv
virtualenv --python=python3 envname
cd envname
source bin/activate

install mininet

git clone git://github.com/mininet/mininet
mininet/util/install.sh -a

install Ryu and its requirements

pip install eventlet msgpack-python netaddr oslo.config routes six webob
apt install libxml2-dev libxslt1-dev libffi-dev
git clone https://github.com/faucetsdn/ryu.git
cd ryu/
pip3 install .

Also in order to implement qos you need to copy qos_rest_router.py and qos_simple_switch_13.py from ryu_qos_apps/ to ryu/ryu/app directory

install iperf3

apt -y install iperf3

install D-ITG

wget http://www.grid.unina.it/software/ITG/codice/D-ITG-2.8.1-r1023-src.zip
cd D-ITG-2.8.1-r1023/src/
make

License

Open Source Software.

Contact

Amir Ashoori - a.ashoori7@gmail.com

Project Link: https://github.com/your_username/repo_name

(back to top)