Book Image

Software Defined Networking with OpenFlow

By : Siamak Azodolmolky
Book Image

Software Defined Networking with OpenFlow

By: Siamak Azodolmolky

Overview of this book

<p>OpenFlow is an open interface for remotely controlling tables in network switches, routers, and access points. It is considered a turning point in Software Defined Networking (SDN), data center networking and virtualization as, more secure and efficient data centers are being built using OpenFlow. It defines a protocol that lets a controller use a common set of instructions to add, modify, or delete entries in a switch's forwarding table.</p> <p>Starting with an introduction to SDN and OpenFlow, you will learn about the role of each building block, moving onto demonstrations of how SDN/OpenFlow can be used to provide new services and features, which will change the way that networking works and the innovative business impacts. By the end of this practical guide, you will have an insight into the Software Defined Networking and OpenFlow fundamentals.</p> <p>Packed with detail, this book will walk you through the essentials; you will learn about the OpenFlow protocol, switches, and controllers. Following on from this, you will be taken through a number of practical, hands-on examples on how to use a network emulation platform called OpenFlow laboratory. You will learn how to develop your innovative network application using the OpenFlow controller’s API quickly, and test your network application without commissioning any OpenFlow hardware equipment. You will also be introduced to the concept of Software Defined Networking and the details of OpenFlow’s protocol, along with the building blocks of an OpenFlow networking deployment. This book will teach you how to setup your OpenFlow/SDN laboratory using state-of-the-art technology and open source offerings.</p>
Table of Contents (15 chapters)

SDN controllers


The decoupled control and data plane architecture of software-defined networking (SDN), as depicted in the following figure, and in particular OpenFlow can be compared with an operating system and computer hardware. The OpenFlow controller (similar to the operating system) provides a programmatic interface to the OpenFlow switches (similar to the computer hardware). Using this programmatic interface, network applications, referred to as Net Apps, can be written to perform control and management tasks and offer new functionalities. The control plane in SDN and OpenFlow in particular is logically centralized and Net Apps are written as if the network is a single system.

With a reactive control model, the OpenFlow switches must consult an OpenFlow controller each time a decision must be made, such as when a new packet flow reaches an OpenFlow switch (that is, Packet_in event). In the case of flow-based control granularity, there will be a small performance delay as the first...