Software Defined Networks
eBook - ePub

Software Defined Networks

A Comprehensive Approach

Paul Goransson, Chuck Black, Timothy Culver

Condividi libro
  1. 436 pagine
  2. English
  3. ePUB (disponibile sull'app)
  4. Disponibile su iOS e Android
eBook - ePub

Software Defined Networks

A Comprehensive Approach

Paul Goransson, Chuck Black, Timothy Culver

Dettagli del libro
Anteprima del libro
Indice dei contenuti
Citazioni

Informazioni sul libro

Software Defined Networks: A Comprehensive Approach, Second Edition provides in-depth coverage of the technologies collectively known as Software Defined Networking (SDN). The book shows how to explain to business decision-makers the benefits and risks in shifting parts of a network to the SDN model, when to integrate SDN technologies in a network, and how to develop or acquire SDN applications.

In addition, the book emphasizes the parts of the technology that encourage opening up the network, providing treatment for alternative approaches to SDN that expand the definition of SDN as networking vendors adopt traits of SDN to their existing solutions.

Since the first edition was published, the SDN market has matured, and is being gradually integrated and morphed into something more compatible with mainstream networking vendors. This book reflects these changes, with coverage of the OpenDaylight controller and its support for multiple southbound protocols, the Inclusion of NETCONF in discussions on controllers and devices, expanded coverage of NFV, and updated coverage of the latest approved version (1.5.1) of the OpenFlow specification.

  • Contains expanded coverage of controllers
  • Includes a new chapter on NETCONF and SDN
  • Presents expanded coverage of SDN in optical networks
  • Provides support materials for use in computer networking courses

Domande frequenti

Come faccio ad annullare l'abbonamento?
È semplicissimo: basta accedere alla sezione Account nelle Impostazioni e cliccare su "Annulla abbonamento". Dopo la cancellazione, l'abbonamento rimarrà attivo per il periodo rimanente già pagato. Per maggiori informazioni, clicca qui
È possibile scaricare libri? Se sì, come?
Al momento è possibile scaricare tramite l'app tutti i nostri libri ePub mobile-friendly. Anche la maggior parte dei nostri PDF è scaricabile e stiamo lavorando per rendere disponibile quanto prima il download di tutti gli altri file. Per maggiori informazioni, clicca qui
Che differenza c'è tra i piani?
Entrambi i piani ti danno accesso illimitato alla libreria e a tutte le funzionalità di Perlego. Le uniche differenze sono il prezzo e il periodo di abbonamento: con il piano annuale risparmierai circa il 30% rispetto a 12 rate con quello mensile.
Cos'è Perlego?
Perlego è un servizio di abbonamento a testi accademici, che ti permette di accedere a un'intera libreria online a un prezzo inferiore rispetto a quello che pagheresti per acquistare un singolo libro al mese. Con oltre 1 milione di testi suddivisi in più di 1.000 categorie, troverai sicuramente ciò che fa per te! Per maggiori informazioni, clicca qui.
Perlego supporta la sintesi vocale?
Cerca l'icona Sintesi vocale nel prossimo libro che leggerai per verificare se è possibile riprodurre l'audio. Questo strumento permette di leggere il testo a voce alta, evidenziandolo man mano che la lettura procede. Puoi aumentare o diminuire la velocità della sintesi vocale, oppure sospendere la riproduzione. Per maggiori informazioni, clicca qui.
Software Defined Networks è disponibile online in formato PDF/ePub?
Sì, puoi accedere a Software Defined Networks di Paul Goransson, Chuck Black, Timothy Culver in formato PDF e/o ePub, così come ad altri libri molto apprezzati nelle sezioni relative a Technology & Engineering e Mobile & Wireless Communications. Scopri oltre 1 milione di libri disponibili nel nostro catalogo.

Informazioni

Anno
2016
ISBN
9780128045794
Chapter 1

Introduction

Abstract

Chapter 1 provides background on the fundamental concepts underlying current state-of-the-art Internet switches. This chapter includes historical background on the evolution of computer networking. The roles of the data plane, control plane, and management plane are defined and discussed and we provide a brief review of the architecture of the traditional data switch. This and other historical background is used to explain how the modern computer network has evolved into a complex beast that is challenging to manage and which struggles to scale to the requirements of some of today’s environments. General characteristics of the modern data center are discussed. We explain how the distributed control plane that has been at the core of the Internet architecture from its inception struggles to scale to meet the demands of the modern data center. We present Software Defined Networks (SDN) as a new approach to computer networking which attempts to address these weaknesses of the current paradigm. We explain that SDN’s highly scalable and centralized network control architecture is better suited to the extremely large networks prevalent in today’s mega-scale data centers.

Keywords

SDN; Data plane; Distributed control plane; Policy-based routing; Flow; Data center; Open source; Routing protocols
It is not often that an author of a technology text gets to read about his subject matter in a major story in a current issue of a leading news magazine. The tempest surrounding Software Defined Networking (SDN) is indeed intense enough to make mainstream news [1]. The modern computer network has evolved into a complex beast that is challenging to manage and which struggles to scale to the requirements of some of today’s environments. SDN represents a new approach to computer networking that attempts to address these weaknesses of the current paradigm. SDN is a fundamentally novel way to program the switches utilized in modern data networks. SDN’s move to a highly scalable and centralized network control architecture is better suited to the extremely large networks prevalent in today’s mega-scale data centers. Rather than trying to crowbar application-specific forwarding into legacy architectures ill-suited to the task, SDN is designed from the outset to perform fine-grained traffic forwarding decisions. Interest in SDN goes far beyond the research and engineering communities intrigued by this new Internet switching technology. Another of the early drivers of SDN was to facilitate experimentation with and the development of novel protocols and applications designed to address problems related to an Internet bogged down by the weight of three decades of incremental technological fixes—a problem sometimes called Internet Ossification. If SDN’s technological promise is realized, this will represent nothing short of a tectonic shift in the networking industry, as long-term industry incumbents may be unseated and costs to consumers may plummet. Along with this anticipation, though, surely comes a degree of overhype, and it is important that we understand not only the potentials of this new networking model, but also its limitations. In this work we will endeavor to provide a technical explanation of how SDN works, an overview of those networking applications for which it is well-suited and those for which it is not, a tutorial on building custom applications on top of this technology, and a discussion of the many ramifications it has on the networking business itself.
This introductory chapter provides background on the fundamental concepts underlying current state-of-the-art Internet switches, where data plane, control plane and management plane will be defined and discussed. These concepts are key to understanding how SDN implements these core functions in a substantially different manner than the traditional switch architecture. We will also present how forwarding decisions are made in current implementations and the limited flexibility this offers network administrators to tune the network to varying conditions. At a high level, we provide examples of how more flexible forwarding decisions could greatly enhance the business versatility of existing switches. We illustrate how breaking the control plane out of the switch itself into a separate, open-platform controller can provide this greater flexibility. We conclude by drawing parallels between how the Linux operating system has enjoyed rapid growth by leveraging the open source development community and how the same efficiencies can be applied to the control plane on Internet switches.
We next look at some basic packet switching terminology that will be used throughout the text, and following that we provide a brief history of the field of packet switching and its evolution.

1.1 Basic Packet Switching Terminology

This section defines much of the basic packet switching terminology used throughout the book. Our convention is to italicize a new term on its first use. For more specialized concepts that are not defined in this section, they will be defined on their first use. Many packet switching terms and phrases have several and varied meanings to different groups. Throughout the book we try to use the most-accepted definition for terms and phrases. Acronyms are also defined and emphasized on their first use, and the appendix on acronyms provides an alphabetized list of all of the acronyms used in this work. An advanced reader may decide to skip over this section. Others may want to skim this material, and later look back to refer to specific concepts.
This terminology is an important frame of reference as we explain how SDN differs from traditional packet switching. To some degree, though, SDN does away with some of these historic concepts or changes their meaning in a fundamental way. Throughout this book, we encourage the reader to look back at these definitions and consider when the term’s meaning is unchanged in SDN, when SDN requires a nuanced definition, and when a discussion of SDN requires entirely new vocabulary.
A Wide Area Network (WAN) is a network that covers a broad geographical area, usually larger than a single metropolitan area.
A Local Area Network (LAN) is a network that covers a limited geographical area, usually not more than a few thousand square meters in area.
A Metropolitan Area Network (MAN) is a network that fills the gap between LANs and WANs. This term came into use because LANs and WANs were originally distinguished not only by their geographical areas of coverage, but also by the transmission technologies and speeds that they used. With the advent of technologies resembling LANs in terms of speed and access control, but with the capability of serving a large portion of a city, the term MAN came into use to distinguish these networks as a new entity distinct from large LANs and small WANs.
A Wireless Local Area Network (WLAN) is a LAN in which the transmission medium is air. The typical maximum distance between any two devices in a wireless network is on the order of 50 m. While it is possible to use transmission media other than air for wireless communication, we will not consider these in our use of this term in this work.
The Physical Layer is the lowest layer of the seven layer Open Systems Interconnection (OSI) model of computer networking [2]. It consists of the basic hardware transmission technology to move bits of data on a network.
The Data Link Layer is the second lowest layer of the OSI model. This is the layer that provides the capability to transfer data from one device to another on a single network segment. For clarity, here we equate a LAN network segment with a collision domain. A strict definition of LAN network segment is an electrical or optical connection between network devices. For our definition of data link layer we will consider multiple segments linked by repeaters as a single LAN segment. Examples of network segments are a single LAN, such as an Ethernet, or a point-to-point communications link between adjacent nodes in a WAN. The link layer includes: (1) mechanisms to detect sequencing errors or bit-errors that may occur during transmission, (2) some mechanism of flow control between the sender and receiver across that network segment, and (3) a multiplexing ability that allows multiple network protocols to use the same communications medium. These three functions are considered to be part of the logical link control (LLC) component of the data link layer. The remaining functions of the data link layer are part of the Media Access Control (MAC) component, described separately below.
The MAC layer is the part of the data link layer that controls when a shared medium may be accessed and provides addressing in the case that multiple receivers will receive the data yet only one should process it. For our purposes in this book, we will not distinguish between data link layer and MAC layer.
The Network Layer provides the functions and processes that allow data to be transmitted from sender to receiver across multiple intermediate networks. To transit each intermediate network involves the data link layer processes described above. The network layer is responsible for stitching together those discrete processes such that the data correctly makes its way from the sender to the intended receiver.
Layer one is the same as the physical layer defined above.
Layer two is the same as the data link layer defined above. We will also use the term L2 synonymously with layer two.
Layer three is the same as the network layer defined above. L3 will be used interchangeably with layer three in this work.
A port is a connection to a single communications medium, including the set of data link layer and physical layer mechanisms necessary to correctly transmit and receive data over that link. This link may be of any feasible media type. We will use the term interface interchangeably with port throughout this text. Since this book will also deal with virtual switches, the definition of port will be extended to include virtual interfaces, which are the endpoints of tunnels.
A frame is the unit of data transferred over a layer two network.
A packet is the unit of data transferred over a layer three network. Sometimes this term is used more generally to refer to the units of data transferred over either a layer two network (frames) as well, without distinguishing between layers two and three. When the distinction is important, a packet is always the payload of a frame.
A MAC address is a unique value that globally identifies a piece of networking equipment. While these addresses are globally unique, they serve as layer two addresses, identifying a device on a layer two network topology.
An IP Address is a nominally unique value assigned to each host in a computer network that uses the Internet Protocol for layer three addressing.
An IPv4 Address is an IP address that is a 32-bit integer value conforming to the rules of Internet Protocol Version 4. This 32-bit integer is frequently represented in dotted notation, with each of the 4 bytes comprising the address represented by a decimal number from 0 to 255, separated by periods (e.g., 192.168.1.2).
An IPv6 Address is an IP address that is a 128-bit integer conforming to the rules of Internet Protocol Version 6, introducing a much larger address space than IPv4.
A switch is a device that receives information on one of its ports and transmits that information out one or more of its other ports, directing this information to a specified destination.
A circuit switch is a switch where contextual information specifying where to forward the data belonging to a circuit (i.e., connection) is maintained in the switch for a prescribed duration, which may span lapses of time when no data belonging to that connection is being processed. This context is established either by configuration or by some call set-up or connection set-up proc...

Indice dei contenuti