Book Image

Software-Defined Networking with OpenFlow - Second Edition

By : SIAMAK AZODOLMOLKY, Oswald Coker
Book Image

Software-Defined Networking with OpenFlow - Second Edition

By: SIAMAK AZODOLMOLKY, Oswald Coker

Overview of this book

OpenFlow paves the way for an open, centrally programmable structure, thereby accelerating the effectiveness of Software-Defined Networking. Software-Defined Networking with OpenFlow, Second Edition takes you through the product cycle and gives you an in-depth description of the components and options that are available at each stage. The aim of this book is to help you implement OpenFlow concepts and improve Software-Defined Networking on your projects. You will begin by learning about building blocks and OpenFlow messages such as controller-to-switch and symmetric and asynchronous messages. Next, this book will take you through OpenFlow controllers and their existing implementations followed by network application development. Key topics include the basic environment setup, the Neutron and Floodlight OpenFlow controller, XORPlus OF13SoftSwitch, enterprise and affordable switches such as the Zodiac FX and HP2920. By the end of this book, you will be able to implement OpenFlow concepts and improve Software-Defined Networking in your projects.
Table of Contents (17 chapters)
Title Page
Credits
About the Authors
About the Reviewer
www.PacktPub.com
Customer Feedback
Preface
Free Chapter
1
Software-Defined Networks

Net App 5 – simple router using Ryu controller


In the section, we would be simulating a router so that we add and delete routes or address for each switch and verify communication across them.

For this, we shall be using the following topology:

The preceding topology is a linear topology with the host, and we want the MAC to be automatically assigned. In addition to this, the scenario is implemented with the OpenFlow version 1.3 with a remote controller. Also, the rest_router.py file is going to be used for the scenario. This can be found in the ryu/ryu/app/rest_router.py directory.

Creating the topology on Mininet

We will begin this topology with the following command:

sudo mn --topo linear,2 --mac --switch ovsk,protocols=OpenFlow13 --controller remote

IP address configuration on the hosts

Next, we would be editing the IP addresses of the host in accordance with the preceding topology. This can be achieved by deleting the default IP assigned to the host (10.0.0.1):

mininet>h1 ip addr del 10...