Skip to content

Instantly share code, notes, and snippets.

@edecoux
Created September 7, 2022 02:36
Show Gist options
  • Select an option

  • Save edecoux/12ba340e5c4ecf5e01fcd11b6493a1e5 to your computer and use it in GitHub Desktop.

Select an option

Save edecoux/12ba340e5c4ecf5e01fcd11b6493a1e5 to your computer and use it in GitHub Desktop.
SDN Overview.md

SDN Overview

Chapter 1: Introduction https://share.summari.com/introhtml?utm_source=Chrome

Software-Defined Networking (SDN) is an Approach to How We Implement Networks, Which Matters Because it Impacts the Pace of Innovation.

SDN does not directly address any of the technical challenges of routing, congestion control, traffic engineering, security, mobility, reliability, or real-time communication, but it does open new opportunities to create and deploy innovative solutions to these and similar problems.

Market Landscape

  • SDN was in part conceived as a way to transform the marketplace, inspired by the transformation that the computing industry went through in previous decades.
  • The computing industry was historically structured as a vertical market.
  • The introduction of microprocessors and open source OS’s helped transform that vertical market into a horizontal marketplace, with open interfaces spurring innovation at every level.

Technical Landscape

  • SDN is an approach rather than a point solution, so it is helpful to define the design principles at the core of that approach
  • There is more than one possible end-state of SDN
  • Each network operator is free to pick different design points and build out their network accordingly

Disaggregating the Control and Data Planes

  • The seminal idea behind SDN is that networks have distinct control and data planes, and the separation of these two planes should be codified in an open interface
  • In the most basic terms, the control plane determines how the network should behave, while the data plane is responsible for implementing that behavior on individual packets
  • SDN implies the need for a well-defined forwarding abstraction
  • A flow rule is a Match-Action pair: Any packet that Matches the first part of the rule should have the associated Action applied to it

Control Plane: Centralized Vs Distributed

  • Centralized: Fully independent of the data plane and logically centralized
  • Network Operating System (NOS): Provides a set of high-level abstractions that make it easier to implement network control functionality
  • Fail to deliver the new networking abstractions envisioned by SDN's pioneers
  • Mixed: Some control functionality running on-switch and some running off-switch

Data Plane: Programmable Vs. Fixed-Function

  • Switch’s main processing loop receives a packet from an input port, does a lookup of the destination address in the FIB, and puts the packet on the output port or port group indicated by the matched table entry.
  • Low-end switches use a hardware-based forwarding pipeline, whereas high-performance switches employ a software-based one. The former are referred to as fixed-function pipelines and the latter as programmable pipelines.

SDN: A Definition

  • The original definition of SDN was: A network in which the control plane is physically separate from the forwarding plane, and a single control plane controls several forwarding devices.
  • Since that original definition, SDN has been interpreted by different stakeholders to mean less and more
  • Another way to frame SDN is to think of it as having two phases: Phase 1, network operators took ownership of the control planes and Phase 2, they are taking control of how packets are processed in the data plane.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment