Is SDN a buzzword or is it a protocol, standard, or recommendation?

What differentiates SDN from VMware NSX, for example?


I am assuming you are talking about Software Defined Networking. Currently state of the art networks make forwarding decisions within your networking infrastructure. Example - bridge tables are built dynamically from source MAC packets - routing decisions are made off of route tables built from dynamic routing protocol (eigrp/ospf/etc.). In SDN the network infrastructure is simply viewed as a control plane and takes forwarding direction from a central controller (an application running on a server somewhere). So each networking device layer2/layer3 would query the controller for forwarding decisions.

This is a decent article on the subject: SDN

The Wikipedia page goes into a more in-depth discussion of the history and motives: Wikipedia

  • 1
    I think the network infrastructure would be considered the data plane. The article you reference is a good overview. – Ron Trunk Jun 18 '15 at 17:43
  • 1
    So, SDN is just a buzzword then as Ricky Beam indicated here? – Ronnie Royston Jun 18 '15 at 18:02
  • 2
    I think it's more accurate to say that SDN removes most of the control plane intelligence from the network nodes and consolidates it in the controller. Instead of the distributed protocols that routers and switches use today determining how forwarding is handled, the updates come from a single controller. – Mark Rogaski Jun 18 '15 at 18:25
  • 1
    Perhaps a single "logical controller" might be more accurate. Every SDN vendor addresses the single point of failure issue. – Ron Trunk Jun 18 '15 at 21:07
  • 2
    @Todd one could argue that any switch with a distributed FIB is effectively a little SDN (in the generic sense) when it is standalone. – Mark Rogaski Jun 19 '15 at 21:45

I think SDN has lost it's meaning a bit (i.e. it can mean several different things now) because a lot of vendors have entered this market with several solutions that implement "SDN" in different ways.

I've blogged about SDN and it's origins here: http://filipv.net/2014/03/17/on-sdn-nfv-and-openflow/

Since you specifically mention VMware NSX in your question and how it contrasts with SDN, I'd say the main difference is that SDN typically also "programs state" in the data plane of the network, by using OpenFlow for example, and also configures physical network devices by using OVSDB for example. Whereas VMware NSX is a network virtualisation solution that does not configure or program forwarding state in physical devices but threats the physical network purely as an underlay to carry the overlay network which it does "program".

Note: in the next version of NSX-v, there will be OVSDB support so the lines will become more blurry. NSX-MH (the old Nicira NVP product) already had OVSDB support.

  • Your answer is not bad at all. Appreciate it. – Ronnie Royston Jul 23 '16 at 2:03

Separating a network's control logic from the underlying physical routers and switches that forward traffic allows network operators to write high-level control programs that specify the behavior of an entire network, in contrast to conventional networks, whereby network operators must codify functionality in terms of low-level device configuration.

Logically centralized network control makes it possible for operators to specify more complex tasks that involve integrating many disjoint network functions (e.g., security, resource control, prioritization) into a single control framework, allowing network operators to create more sophisticated policies, and making network configurations easier to configure, manage, troubleshoot, and debug

Simply put, Software-defined networking (SDN) is an approach to networking in which control is decoupled from the physical infrastructure

Arxiv: Software-Defined Networking: A Comprehensive Survey

It is separating the network's control logic from the underlying routers and switches, promoting (logical) centralization of network control, and introducing the ability to program the network

Wikipedia: Software-defined networking (SDN) is an approach to computer networking that allows network administrators to manage network services through abstraction of lower-level functionality. This is done by decoupling the system that makes decisions about where traffic is sent (the control plane) from the underlying systems that forward traffic to the selected destination (the data plane). The inventors and vendors of these systems claim that this simplifies networking.


SDN, software defined networking

SDN, software defined networking, is defined by the Open Networking Foundation (ONF) as

The physical separation of the network control plane from the forwarding plane, and where a control plane controls several devices. [...and...] the OpenFlow® protocol is a foundational element for building SDN solutions.

Where Open SDN favors OpenFlow®, commercial networking incumbents market their own flavors of SDN fashioned programmable network systems, e.g. Cisco ACI™ and VMware NSX® (the Software-Defined Data Center, SDDC). Cisco's Meraki cloud managed devices utilize, but make no mention of, an underlying SDN architecture. Lastly, the Term SDN was first mentioned in an MIT Academic Article on OpenFlow Greene, K. 2009. TR10: software-defined networking.

SDN and Cloud Computing

Whereas SDN is an architecture for a programmable network; OpenStack, Eucalyptus, vCloud Air™, and Apache CloudStack™ are architectures for programmable clouds (i.e. network, memory, i/o, and storage). Programmable cloud compute systems may or may not use SDN. For example, OpenStack's Neutron element

can be viewed as orthogonal to SDN since it can integrate with traditional networks with existing protocols [What is OpenStack Networking?].

The Benefit

Automated distributed smart ports. Today, you link to a wired or wireless LAN which may include networking control features such as routing, firewall, optimizing, VLAN's etc. With SDN, these control features are available at the NIC/vNIC and are programmable via the SDN controller.

The Driver

SDN architectures are being adopted and driven by the deployment of private clouds such as OpenStack, Eucalyptus, vCloud Air™, and Apache CloudStack™.

OpenStack's Neutron project, providing networking as a service between interface devices (e.g., vNICs), recognizes SDN as a possible networking solution for OpenStack Clouds [OpenDaylight: An Open Source SDN for Your OpenStack Cloud].

Eucalyptus Virtual Private Cloud (VPC) support is implemented with a Software-Defined Networking (SDN) technology [Understanding VPC and MidoNet].

  • Meraki is SDN?? – cpt_fink Jun 19 '15 at 3:48
  • 1
    I don't often agree with @RonRoyston, but in this case I do. If you think of SDN as a technique, rather than a product, then yes Meraki and Cisco CUWN are examples. So is MPLS-TE, for that matter. – Ron Trunk Jun 19 '15 at 14:05
  • 3
    Meraki has the management plane abstracted to the "cloud", the local equipment (switches specifically) still handles all of the forwarding table creation and updates as well as the traffic. CUWN(/Meraki Wireless) and MPLS-TE are the initial baby-step towards SDN, MPLS SR would be a better example of SDN with MPLS. – cpt_fink Jun 22 '15 at 2:34
  • 1
    Would be nice to know what kind of ownership... owned as in copyrights, or owned as in when your boss says they want you to own this issue. Because my boss never means he wants me to take our server rack home with me. – Smithers Jun 23 '15 at 20:16
  • 2
    Meraki is NOT SDN. "Cloud Managed" is not an SDN/OF control plane. It's merely an internet based interface (hosted website) to configure your gear (which you have to pay for every year.) The equipment will continue to do it's job without access to that Cloud Service; you just won't be able to change or troubleshoot anything. – Ricky Jun 3 '16 at 21:14

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.