Software Defined Networking (SDN): Anatomy of OpenFlow Volume I
By Doug Marschke, Jeff Doyle and Pete Moyer
()
About this ebook
Doug Marschke
Doug Marschke is an engineering graduate from the University of Michigan currently a principal partner at Proteus Networks. He is JNCIE-ER #3, JNCIE-M #41 and JNCIS-FW, JNCIA certified. He is a writer of various Juniper certification exams and co-writer of the JNCIE Enterprise Exam. He has also authored the JUNOS Enterprise Routing book, and coming in 2009, JUNOS Enterprise Switching. Doug currently spends his time working with both service providers and enterprises to optimize their IP networks for better performance, cost and reliability. He has spent the last 6 month working on a next generation government satellite network. He also flies around the world and back sharing his knowledge in a variety of training classes and seminars with topics ranging from troubleshooting, design and certification preparation. If Doug is not on the road, you can find him at his bar in San Francisco, Taco Shop at Underdogs, discussing a wide variety of topics. He has also recently started a new company Funny How Films, producing independent films such as Amsterdam Heavy and Mad Cow.
Related to Software Defined Networking (SDN)
Related ebooks
CCENT ICND1 Study Guide: Exam 100-105 Rating: 0 out of 5 stars0 ratingsHow Software Defined Networking (SDN) Is Going To Change Your World Forever: The Revolution In Network Design And How It Affects You Rating: 0 out of 5 stars0 ratingsCisco Networks: Engineers' Handbook of Routing, Switching, and Security with IOS, NX-OS, and ASA Rating: 0 out of 5 stars0 ratingsSix Minute Guide to IPv6 Rating: 5 out of 5 stars5/5Zabbix Network Monitoring Essentials Rating: 0 out of 5 stars0 ratingsCCNA Security A Complete Guide - 2021 Edition Rating: 0 out of 5 stars0 ratingsThe Fast-Track Guide to VXLAN BGP EVPN Fabrics: Implement Today’s Multi-Tenant Software-Defined Networks Rating: 0 out of 5 stars0 ratingsVersatile Routing and Services with BGP: Understanding and Implementing BGP in SR-OS Rating: 0 out of 5 stars0 ratingsIntroduction to Python Network Automation: The First Journey Rating: 0 out of 5 stars0 ratingsCCIE Security A Complete Guide - 2021 Edition Rating: 0 out of 5 stars0 ratingsThe Complete One-Week Preparation for the Cisco Ccent/Ccna Icnd1 Exam 640-822: Second Edition (March 2011) Rating: 5 out of 5 stars5/5IP Routing Protocols All-in-one: OSPF EIGRP IS-IS BGP Hands-on Labs Rating: 0 out of 5 stars0 ratingsCitrix XenApp Performance Essentials Rating: 0 out of 5 stars0 ratingsUltimate Cisco Collaboration Infrastructure for Enterprise Solutions Rating: 0 out of 5 stars0 ratingsSDN A Complete Guide - 2021 Edition Rating: 0 out of 5 stars0 ratingsCCNA Data Center - Introducing Cisco Data Center Networking Study Guide: Exam 640-911 Rating: 4 out of 5 stars4/5Building Service Provider Networks Rating: 0 out of 5 stars0 ratingsLearning AirWatch Rating: 5 out of 5 stars5/5CCNA A Complete Guide - 2020 Edition Rating: 0 out of 5 stars0 ratingsConfessions of a Network Engineer Practitioner Rating: 4 out of 5 stars4/5Cisco Certified Internetwork Expert Complete Self-Assessment Guide Rating: 0 out of 5 stars0 ratingsAlcatel-Lucent Service Routing Architect (SRA) Self-Study Guide: Preparing for the BGP, VPRN and Multicast Exams Rating: 0 out of 5 stars0 ratingsCisco ACI Cookbook Rating: 3 out of 5 stars3/5vSphere High Performance Cookbook - Second Edition Rating: 0 out of 5 stars0 ratingsCCNA ICND2 Study Guide: Exam 200-105 Rating: 0 out of 5 stars0 ratingsImplementing Cisco UCS Solutions - Second Edition Rating: 0 out of 5 stars0 ratingsCCIE Security The Ultimate Step-By-Step Guide Rating: 0 out of 5 stars0 ratingsBuilding VMware Software-Defined Data Centers Rating: 0 out of 5 stars0 ratingsTroubleshooting Campus Networks: Practical Analysis of Cisco and LAN Protocols Rating: 4 out of 5 stars4/5An Introduction to SDN Intent Based Networking Rating: 5 out of 5 stars5/5
Computers For You
The Invisible Rainbow: A History of Electricity and Life Rating: 5 out of 5 stars5/5CompTIA Security+ Get Certified Get Ahead: SY0-701 Study Guide Rating: 5 out of 5 stars5/5SQL QuickStart Guide: The Simplified Beginner's Guide to Managing, Analyzing, and Manipulating Data With SQL Rating: 4 out of 5 stars4/5Mastering ChatGPT: 21 Prompts Templates for Effortless Writing Rating: 4 out of 5 stars4/5Standard Deviations: Flawed Assumptions, Tortured Data, and Other Ways to Lie with Statistics Rating: 4 out of 5 stars4/5How to Create Cpn Numbers the Right way: A Step by Step Guide to Creating cpn Numbers Legally Rating: 4 out of 5 stars4/5Procreate for Beginners: Introduction to Procreate for Drawing and Illustrating on the iPad Rating: 5 out of 5 stars5/5Elon Musk Rating: 4 out of 5 stars4/5The Innovators: How a Group of Hackers, Geniuses, and Geeks Created the Digital Revolution Rating: 4 out of 5 stars4/5Alan Turing: The Enigma: The Book That Inspired the Film The Imitation Game - Updated Edition Rating: 4 out of 5 stars4/5An Ultimate Guide to Kali Linux for Beginners Rating: 3 out of 5 stars3/5The Hacker Crackdown: Law and Disorder on the Electronic Frontier Rating: 4 out of 5 stars4/5Deep Search: How to Explore the Internet More Effectively Rating: 5 out of 5 stars5/5CompTIA IT Fundamentals (ITF+) Study Guide: Exam FC0-U61 Rating: 0 out of 5 stars0 ratingsThe ChatGPT Millionaire Handbook: Make Money Online With the Power of AI Technology Rating: 4 out of 5 stars4/5Tor and the Dark Art of Anonymity Rating: 5 out of 5 stars5/5Slenderman: Online Obsession, Mental Illness, and the Violent Crime of Two Midwestern Girls Rating: 4 out of 5 stars4/5101 Awesome Builds: Minecraft® Secrets from the World's Greatest Crafters Rating: 4 out of 5 stars4/5Grokking Algorithms: An illustrated guide for programmers and other curious people Rating: 4 out of 5 stars4/5Everybody Lies: Big Data, New Data, and What the Internet Can Tell Us About Who We Really Are Rating: 4 out of 5 stars4/5Creating Online Courses with ChatGPT | A Step-by-Step Guide with Prompt Templates Rating: 4 out of 5 stars4/5People Skills for Analytical Thinkers Rating: 5 out of 5 stars5/5The Best Hacking Tricks for Beginners Rating: 4 out of 5 stars4/5Discord For Dummies Rating: 0 out of 5 stars0 ratingsI Forced a Bot to Write This Book: A.I. Meets B.S. Rating: 4 out of 5 stars4/5Uncanny Valley: A Memoir Rating: 4 out of 5 stars4/5Excel 101: A Beginner's & Intermediate's Guide for Mastering the Quintessence of Microsoft Excel (2010-2019 & 365) in no time! Rating: 0 out of 5 stars0 ratings
Reviews for Software Defined Networking (SDN)
0 ratings0 reviews
Book preview
Software Defined Networking (SDN) - Doug Marschke
Software Defined Networking (SDN):
Anatomy of OpenFlow
000_a_img37.jpgDoug Marschke, Jeff Doyle and Pete Moyer
Copyright © 2015 Doug Marschke, Jeff Doyle and Pete Moyer.
All rights reserved. No part of this book may be reproduced, stored, or transmitted by any means—whether auditory, graphic, mechanical, or electronic—without written permission of both publisher and author, except in the case of brief excerpts used in critical articles and reviews. Unauthorized reproduction of any part of this work is illegal and is punishable by law.
ISBN: 978-1-4834-2723-2 (sc)
ISBN: 978-1-4834-2724-9 (e)
Because of the dynamic nature of the Internet, any web addresses or links contained in this book may have changed since publication and may no longer be valid. The views expressed in this work are solely those of the author and do not necessarily reflect the views of the publisher, and the publisher hereby disclaims any responsibility for them.
Any people depicted in stock imagery provided by Thinkstock are models, and such images are being used for illustrative purposes only.
Certain stock imagery © Thinkstock.
Lulu Publishing Services rev. date: 3/25/2015
Contents
Preface
1 Introduction
2 SDN Overview
3 OpenFlow Overview
4 OpenFlow in Action
5 SDN + OpenFlow Use Cases
6 SDN - OpenFlow Use Cases
7 Other Things SDN
8 Volume II: A Look Ahead
Endnotes
Preface
Software Defined Networking, just a few short years ago, was mostly speculation. Sure there were academics doing research with it, and there were some hyper-scale networks like Google and Amazon using it. But those places were crawling with programmers and developers. Most people running normal sized networks viewed it with curiosity, but not much else. They certainly didn’t have the resources to build SDN architectures in-house. And many – perhaps even one or more authors of this book – scoffed at the idea that SDN would turn the networking world on its head.
What a difference a few years make. Almost every vendor now has an SDN story. New vendors are popping up everywhere with SDN products. Solutions are being deployed and new use cases are presented regularly. You can find an SDN conference somewhere in the world every few weeks, and it’s a central topic of major industry conferences from Cisco Live and VMWorld to Interop and Cloud Expo. Network engineers are beginning to reassess the skill sets they will need over the next ten years or so.
SDN is quickly proving to be every bit as disruptive as it was predicted to be.
Why Did We Write This Book?
For all the attention SDN is getting, it remains a vague concept for many people. Products are still young, and standards are still being developed. All three of the authors have had the experience of having to define SDN to our customers before being able to discuss it with them.
This book is the first in a planned series on SDN, intended to help you navigate the many protocols and technologies comprising the SDN family of architectures. Future topics will cover Network Function Virtualization, orchestration, and SDN in the WAN.
Why Start with OpenFlow?
More than a few of our friends in the industry, when we’ve said we’re writing a book on OpenFlow, have said, Really? Why OpenFlow? Isn’t it teetering on obsolescence?
Well, no it isn’t. Some vendors have gone other directions with their controller-to-switch protocols. And OpenFlow is evolving from its original mission of only building flow tables in switches to now specifying configurations, security, and policy. But there is still wide interest in and support for the protocol, and the Working Groups establishing OpenFlow standards are among the most well established in the industry. It will be around for a long time.
So OpenFlow, as a proven and open SDN protocol sitting in the middle of all the action between controllers and switches, is an excellent subject for beginning a study of SDN architectures.
Is This Book for You?
You’re reading this preface, so you obviously are curious enough about SDN to have picked up or downloaded the book. It is our opinion that yes, that’s enough to say this book is for you. We’ve organized the book so that you can skim it for an introduction to SDN and a quick overview of how SDN uses OpenFlow as a foundation protocol, or you can use the book for a deep dive into the protocol and its use.
We’ve written the book with data center architects, engineers, troubleshooters, and students in mind. We hope you get as much out of reading it as we got out of writing it.
Schedule of the Book Series
As you know if you are following or involved in SDN, things are changing at an accelerated pace. Innovation cannot be held back! Volume I provides the needed background and baseline of SDN, for which Volume II expands on with NFV and other emerging technologies. Some of the use cases in Volume I might be old news but they provide the proper background and basis for understanding how things are rapidly evolving as SDN moves forward.
Volume II will be published in 2015 and Volume III will be published in late 2015 or early 2016.
Author: Jeff Doyle
Specializing in IP routing protocols, SDN, data center fabrics, MPLS, and IPv6, Jeff Doyle has designed or assisted in the design of large-scale IP service provider networks in 26 countries over 6 continents. He worked with early IPv6 adopters in Japan, China, and South Korea, and now advises service providers, government agencies, military contractors, equipment manufacturers, and large enterprises on best-practice IPv6 deployment.
Jeff is the author of CCIE Professional Development: Routing TCP/IP, Volumes I and II; OSPF and IS-IS: Choosing an IGP for Large-Scale Networks; and is an editor and contributing author of Juniper Networks Routers: The Complete Reference. He also writes blogs for both Network World and for Network Computing. Jeff is one of the founders of the Rocky Mountain IPv6 Task Force and is an IPv6 Forum Fellow.
Author: Doug Marschke
Doug Marschke is an engineering graduate from the University of Michigan and founder of SDN Essentials. He is a writer of various Juniper certification exams and co-writer of the JNCIE Enterprise Exam. He has also authored the JUNOS Enterprise Routing book, and JUNOS Enterprise Switching.
Doug currently spends his time working with both service providers and enterprises to optimize their IP networks for better performance, cost and reliability. He also flies around the word and back sharing his knowledge in a variety of training classes and seminars with topics ranging from troubleshooting, design and certification preparation. In Doug’s free time he is an entrepreneur of sorts as he owns two restaurants in San Francisco, Taco Shop at Underdogs and Tacko. He also has dabbled into the world of film with his production company, Funny How Films.
Author: Pete Moyer
Pete Moyer is an old timer IP/MPLS consulting engineer who has turned his focus toward SDN in recent years. He is currently employed by Brocade and has multi-vendor experience in IP networking; he earned the first awarded JNCIE in the early 2000’s and he earned his CCIE in the late 1990’s. He was previously with Juniper for approximately 10 years. He is a co-author and technical editor of several IP networking books. His current focus is on large-scale data center and service provider networks, including the Research & Education Network (REN) market. He holds a BS, CMIS from the University of Maryland.
Technical Editor:
Chris Jones is an SDN Engineer with SDN Essentials, certified with Juniper as JNCIE-ENT #272, and with Cisco Systems as CCIE #25655 (R&S). He has over a decade of industry experience with both Cisco and Juniper products and solutions, designing and building networks for both small and large enterprises as well as for major service providers. Chris is the author of the Proteus Networks JNCIE-ENT Preparation Workbook, as well as the Juniper Networks Day One book Junos for IOS Engineers.
Graphics Editor:
Gregg Martin currently leads Solutions Arcitecture for Fishnet Security. Gregg has over 18 years of experience in Information Technology, and over 15 years of experience in Enterprise Networking. Prior to joining Fishnet Security, Gregg was with PricewaterhouseCoopers (PwC
) for 10 years and worked as a Network Engineer and Network Architect, responsible for the architecture of all network and security technologies for the entire firm. Gregg’s delivered the built out of numerous data centers and well versed in the design, implementation, and operations of network and security technologies for data centers. In addition, Gregg has conducted audits and reviews of data of several well known industry data centers
Acknowledgements:
Jeff would like to thank his wife Sara for her immense patience and encouragement over many years of writing projects, extended travel, and the general insanity that comes with being in the networking industry. He would also like to thank his two co-authors not only for the things he has learned from them, but for many, many years of friendship. Doug and Pete are two of the best people I know.
Pete would like to thank his fantastic family for their support while he worked long hours and late nights co-authoring this book: Kathy, Jazmin, Kristin and Lorin. And he can’t resist a shout-out to his most lovable mother, Mrs. Moyer (Sakugawa).
Doug would like to thank Pete and Jeff for stepping up and making this book happen despite my best efforts to slow things down. I would also like to thank every person around me, who dealt with my stress level while trying to get this book done, and want to proactively thank them all as we move onto volume 2. Lastly, I would like to thank Trish, Jordan and Ferb for their lasting support as I typed away in my work cave each evening.
1
Introduction
Software Defined Networking (SDN) has been a wildly successful buzzword (or perhaps, buzz acronym?). Every networking vendor has to have a Software Defined Networking story. Rarely does a marketing brief get out the door these days without SDN
somewhere in the text. Judging from the trade journals you might think that little else is happening in the networking world except clouds and SDN.
The term is so popular that it has spawned a litter of similar terms yapping around our ankles. Software Defined Data Center. Software Defined Storage. Software Defined Security. Software Defined Application Delivery. Network Function Virtualization (software defined, of course).
All the industry hype leaves CIOs and CTOs scratching their heads over what SDN really is, and what it means for their business. I know, roughly, that SDN involves the separation of the control plane from the data plane. I know it involves network programmability. I know it abstracts the data plane, but what does that actually mean? Is OpenFlow the same thing as SDN? What’s the difference between SDN and Network Functions Virtualization (NFV)? Can I gracefully integrate SDN into my existing systems, or when they call it a disruptive technology
do they mean I’m the one that can expect the disruptions?
Most important of all, what is the business case for SDN?
Although this book is about OpenFlow, it’s important to first understand SDN and OpenFlow’s role in the SDN architecture. This chapter addresses basic concepts – and answers some basic questions – to set the stage for a proper discussion of OpenFlow.
What is SDN?
Let’s start with two definitions, one very specific and one much more generalized. They represent the two endpoints of the wide range of definitions you’ll encounter in the industry.
Definition 1:
SDN is an L2/L3 architecture in which a centralized controller controls the forwarding behavior of a set of distributed switches.
Definition 2:
SDN is a conceptual framework in which networks are treated as abstractions and are controlled programmatically, with minimal direct touch
of individual network components.
Those two definitions hardly appear to be describing the same thing. But they might be. You’ll frequently hear SDN defined with some version of Definition #1, but that’s just a subset of the much more accurate Definition #2.
We’ll start with the first definition, and see how that leads us to the second definition.
Control Planes and Data Planes
The overall SDN architecture represents an evolutionary continuum that has been happening since the early days of networking. Conceptually, there had long been a functional separation between the management, data, and forwarding planes in switches – particularly Layer 3 switches (routers).
002_a_img37.jpgFigure 1.1: Operational Planes of a Router
At a very simple level, the functional planes are classified as follows:
• The Management plane provides operational access and monitoring. The Command Line Interface (CLI) and such functions as Simple Network Management Protocol (SNMP), syslog, and NetFlow reside here.
• The Data or Forwarding plane consists of the interfaces or ports that receive and transmit Protocol Data Units (PDUs), a switching fabric, and the information necessary to guide the correct switching of PDUs between interfaces. For example, in a router the information is contained in a Forwarding Information Base (FIB) that specifies what interface a packet with a given destination address should be switched to, and the Layer 2 encapsulation information for that outgoing interface. An Ethernet switch has a table that maps MAC addresses to ports.
• The Control plane is responsible for giving the data plane the information it needs to correctly switch (that is, forward) PDUs. A router’s control plane runs some routing protocol such as OSPF, IS-IS, or BGP; arbitrates the information it learns about IP destinations and selects preferred forwarding interfaces; and updates the FIB in the Forwarding plane.
The control plane is considered the intelligence
in the network because it makes all the important decisions about PDU forwarding such as optimal path to a given destination, loop avoidance, flow classification, failure recovery, and traffic engineering. The data plane is concerned only with switching PDUs from incoming ports to destination ports as quickly and efficiently as it can. It makes no real decisions about how or where to switch the PDUs.