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

OpenFlow laboratory with Mininet


Mininet is a software tool that allows an entire OpenFlow network to be emulated on a single computer. Mininet uses lightweight process-based virtualization (Linux network namespaces and Linux container architecture) to run many hosts and switches (for instance, 4096) on a single OS kernel. It can create kernel or user-space OpenFlow switches, controllers to control the switches, and hosts to communicate over the emulated network.

Mininet connects switches and hosts using virtual ethernet (veth) pairs. It considerably simplifies the initial development, debugging, testing, and deployment process. New network applications can be first developed and tested on an emulation of the anticipated deployment network. It can then be moved to the actual operational infrastructure. Mininet currently depends on the Linux kernel; future deployments may support process-based virtualization on other OS. By default, Mininet supports OpenFlow v1.0.

However, it may be modified...