Creation of a Virtual Overlay Network with Sdn and Vxlan

Creation of a Virtual Overlay Network with Sdn and Vxlan

CREATION OF A VIRTUAL OVERLAY NETWORK WITH SDN AND VXLAN A Degree Thesis Submitted to the Faculty of the Escola Tècnica d'Enginyeria de Telecomunicació de Barcelona Universitat Politècnica de Catalunya by Fernando Lama Ruano In partial fulfilment of the requirements for the degree in Telematics ENGINEERING Advisor: Jose Luis Muñoz Tapia Barcelona, June 2017 Abstract The developed project has consisted in the creation of a virtual overlay VXLAN (Virtual Extensible LAN) between several nodes using SDN (Software Defined Networks) and more specifically the RYU framework. The idea of VXLAN is to connect two physically separated networks using the same IP block. The switches used are OVS (Open vSwitch), in them you can manually implement the VXLAN tunnel and you can also implement the SDN technology in them. But in this project we will use the framework Ryu, it is fully developed in python and with it we will create a controller that will manage and manage all the ovs of the network creating the overlay and managing the flows of each port of each switch. 1 Resum El projecte desenvolupat ha consistit en la creació d'una superposició virtual VXLAN (Virtual Extensible LAN) entre diversos nodes utilitzant SDN (Software Defined Networks) i més concretament el framework RYU. La idea d'VXLAN és connectar dues xarxes separades físicament utilitzant el mateix bloc IP. Els switchs utilitzats són OVS (Open vSwitch), en ells es pot implementar manualment el tunnel VXLAN i també es pot implementar la tecnologia SDN en ells. Però en aquest projecte utilitzarem el framework Ryu, aquesta desenvolupat íntegrament en python i amb el crearem un controlador que administrarà i gestionarà tots els OVS de la xarxa creant la superposició i gestionant els fluxos de cada port de cada switch. 2 Resumen El proyecto desarrollado ha consistido en la creación de una overlay virtual VXLAN ( Virtual Extensible LAN) entre varios nodos utilizando SDN (Software Defined Networks) y más concretamente el framework RYU. La idea de VXLAN es conectar dos redes separadas físicamente utilizando el mismo bloque IP. Los switchs utilizados son OVS ( Open vSwitch ), en ellos se puede implementar manualmente el tunnel VXLAN y también se puede implementar la tecnologia SDN en ellos. Pero en este proyecto utilizaremos el framework Ryu, esta desarrollado integramente en python y con el crearemos un controlador que administrará y gestionará todos los ovs de la red creando la overlay y gestionando los flujos de cada puerto de cada switch. 3 Acknowledgements I would like to express my gratitude to this project advisor, Jose Luis Muñoz Tapia, for having proposed this thesis' topic, as well as for keeping a periodical tracking of the thesis and suggesting ideas to improve it. 4 Revision history and approval record Revision Date Purpose 0 16/06/2017 Document creation 1 20/06/2017 Document revision DOCUMENT DISTRIBUTION LIST Name e-mail Fernando Lama Ruano [email protected] Jose Luis Muñoz Tapia [email protected] Written by: Reviewed and approved by: Fernando Lama Ruano Jose Luis Muñoz Tapia Date 16/06/2017 Date 20/06/2017 Name Fernando Lama Ruano Name Jose Luis Muñoz Tapia Position Project Author Position Project Supervisor 5 Table of contents The table of contents must be detailed. Each chapter and main section in the thesis must be listed in the “Table of Contents” and each must be given a page number for the location of a particular text. Abstract.............................................................................................................................1 Resum...............................................................................................................................2 Resumen...........................................................................................................................3 Acknowledgements............................................................................................................4 Revision history and approval record.................................................................................5 Table of contents................................................................................................................6 1.Introduction.....................................................................................................................8 1.1.Objectives................................................................................................................8 1.2.Requeriments and Specifications.............................................................................9 1.3.Methods and Procedures review..............................................................................9 1.4.Third-party resources...............................................................................................9 1.5.Work Plan.................................................................................................................9 1.6.Deviations from the original plan............................................................................12 2.State of the art of the technology used or applied in this thesis:...................................13 2.1.LXC........................................................................................................................13 2.2.OVS.......................................................................................................................13 2.3.VXLAN...................................................................................................................13 2.4.SDN.......................................................................................................................14 2.5.RYU.......................................................................................................................14 3.Methodology / project development:.............................................................................15 3.1.Getting Started in Ryu............................................................................................15 3.2.Defining the scenario..............................................................................................15 3.3.Configuration file....................................................................................................16 3.4.Implementing Ryu Controller..................................................................................17 3.5.REST API...............................................................................................................17 4.Results..........................................................................................................................18 4.1.Testing....................................................................................................................18 4.2.Testing REST API...................................................................................................19 5.Budget..........................................................................................................................22 6 6.Conclusions and future development:...........................................................................23 Bibliography:....................................................................................................................24 Glossary..........................................................................................................................25 Appendices:.....................................................................................................................26 7 1. Introduction An Introduction that clearly states the rationale of the thesis that includes: a. Statement of purpose (objectives). b. Requirements and specifications. c. Methods and procedures, citing if this work is a continuation of another project or it uses applications, algorithms, software or hardware previously developed by other authors. d. Work plan with tasks, milestones and a Gantt diagram. e. Description of the deviations from the initial plan and incidences that may have occurred. The minimum chapters that this thesis document should have are described below, nevertheless they can have different names and more chapters can be added. In the introductory section an overview of the project is explained, including: Objectives, requirements and specifications, methods and procedures, work plan, deviations from the initial plan and incidences. 1.1. Objectives The purpose of this project has been to learn how to use the Ryu framework in order to create and manage the VXLAN overlay in a specific scenario. The basic objectives have been to understand how all the technologies involved work: VXLAN, SDN, LXC, OVS, RYU. In order to know the possibilities and potential of each one of them. The main objectives have been: - Create a VXLAN tunnel between two OVS with RYU. - Manage the flows of each port with a RYU controller. - Make the two previous goals scalable to create the overlay between more nodes. - Add REST API functionality to the controller. 8 1.2. Requeriments and Specifications The requirements of this project can be separated into two groups: Theoretical requirements: o Knowledge of VXLAN overlay. o Knowledge of SDN. o Knowledge of Ryu APi and python. Practical requirements: o Use of Linux. o LXC virtual containers (virtual machines in the scenarios). o Use of OVS (Open vSwitch) 1.3. Methods and Procedures review The following procedures have been done during the project: Studying how works VXLAN. Studying how works SDN in OVS. Studying Ryu API. Develop

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    115 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us