Book Image

Software-Defined Networking (SDN) with OpenStack

By : Sreenivas Voruganti, Sriram Subramanian
Book Image

Software-Defined Networking (SDN) with OpenStack

By: Sreenivas Voruganti, Sriram Subramanian

Overview of this book

Networking is one the pillars of OpenStack and OpenStack Networking are designed to support programmability and Software-Defined Networks. OpenStack Networking has been evolving from simple APIs and functionality in Quantum to more complex capabilities in Neutron. Armed with the basic knowledge, this book will help the readers to explore popular SDN technologies, namely, OpenDaylight (ODL), OpenContrail, Open Network Operating System (ONOS) and Open Virtual Network (OVN). The first couple of chapters will provide an overview of OpenStack Networking and SDN in general. Thereafter a set of chapters are devoted to OpenDaylight (ODL), OpenContrail and their integration with OpenStack Networking. The book then introduces you to Open Network Operating System (ONOS) which is fast becoming a carrier grade SDN platform. We will conclude the book with overview of upcoming SDN projects within OpenStack namely OVN and Dragonflow. By the end of the book, the readers will be familiar with SDN technologies and know how they can be leveraged in an OpenStack based cloud.
Table of Contents (16 chapters)
Software-Defined Networking (SDN) with OpenStack
Credits
About the Authors
About the Reviewer
www.PacktPub.com
Preface

Understanding OpenFlow


The OpenFlow protocol is a key enabler in driving SDN solutions. OpenFlow is a standard protocol between data and control for remotely controlling the flow table of a switch or router:

Figure 9: OpenFlow block diagram.

OpenFlow enables SDN controllers to define the flow of network packets across the network of devices supporting the OpenFlow protocol. OpenFlow defines a generalized flow table with a very flexible and generalized flow abstraction, Open control API, which enables remote control of layers1-7.

OpenFlow defines APIs for defining traffic flow and a framework for describing the flow state; hence, it can be viewed as the following.

OpenFlow as an API

OpenFlow is an outline semantic for defining flow characteristics of traffic and actions to take on the packets matching the defined characteristics.

OpenFlow as a control plane

OpenFlow provides a framework to define flow information and RPCs for a central SDN controller to program the flow state information. The...