Network Virtualization vs. SDN


Scott Lowe was a guest on the latest episode of VMware Community Podcast and was discussing Network Virtualization.  It was “a can’t” miss episode of the Community Podcast.  Scott Lowe is probably one of the most technically diverse and deep cross discipline experts that I’ve read.  He has deep experience with both Networking and Server Virtualization.  He was a guest on the podcast to discuss Network Virtualization.  I posed the question in the live chat on the difference between SDN and what VMware is defining as “Network Virtualization.”  I’ll get to his response on my question in a second.

The host John Troyer brought up the argument that most networking professional bring up when discussing “Network Virtualization.”  The claim is that virtualization already exists in network technologies.  You have VXLAN, VLAN’s and network overlays.  Scott did a great job of explaining that while these technologies virtualize transport of the network they don’t actually change the operation model of networking.

As he explained when you examine the benefits of server virtualization the main benefit outside of consolidation is the change in operations.  Done right, server virtualization can allow you to completely change the way you deliver and manage your compute and storage to an extent.  I like to say virtualization is like the DVR.  You can record, pause and rewind your server operations since they are abstracted from the physical hardware.

Network virtualization is similar to server virtualization as it lets you abstract the operations of your network from the physical access layer.  Configurations can be recorded, copied, paused and rewind.  They way you provision and manage your network is completely changed by network virtualization.

How is this different from Software Defined Networking or SDN?  I think VMware (who Scott works for) would like you to consider SDN as just the abstraction of the control plane from the physical plane.  So in theory you could have SDN run inside of a virtual network controlling that control plan of the virtualized network.  I believe the industry outside of VMware is defining SDN in a broader sense.  When you think of the other Software Defined data center components such as storage its all about abstracting the management and presentation of these services from the hardware.

So, the difference between SDN and Network Virtualization depending on who you are asking.  A VMware network guys would tell you SDN is about abstracting the control plane while Network Virtualization is about abstracting the entire management layer of the network including SDN.  While some others would tell you that Network Virtualization is just another way of saying SDN.

He did make a statement that makes me wonder about the future of Virtualized Networks vs. SDN.  My vision of SDN would be that the application is aware of the underlying SDN based network.  The application can make a call to the control plane to give requirements for a connection and the SDN controller will make the appropriate pathing and connectivity decisions.  Scott mentioned the similarity of applications deployed on vSphere with application deployed on a VMware Virtualized Network.  The application and server would treat it just like any other network it has physical connectivity.

I’m looking forward into learning the nuance differences between the two definitions and operation.

Either way I highly encourage you to listen to the podcast.  Well worth the hour.

 

Published by Keith Townsend

Now I'm @CTOAdvisor

15 thoughts on “Network Virtualization vs. SDN

  1. A switch actually has 3 planes: data plane (thus forwarding, including openflow), control plane (protocols, network virtualization: overlays, openflow, can include SDN) and management plane (from manual configuration all the way up to SDN).

    But SDN (virtualization ?) isn’t just about switches, you also see load-balancer, vpn, firewall as a service. There is Network Functions Virtualization as well.

    As mentioned in the podcast it is about the operational model.

    I actually don’t agree about complexity. When you look at server virtualization, you see that a lot of the same machines. When one dies, you just use an other similar machine.

    Network virtualization has the potential to make the hardware “simpler” as well. That is less different types of hardware to manage. Maybe even less protocols to run at the hardware layer.

    That is what the abstraction from the hardware has done for servers, some of it will apply to networking too.

    Just think about Network Functions Virtualization, do you want a lot of different boxes for different tasks in your network ? Route the packets to the other side of the network where some appliance is and back again ? No.

    Just run it on the same hypervisor or virtualized at a nearby server or implement firewalling and security groups at the hypervisor/virtual switch. So consolidation is also gonna happen.

    Personally I think some routing (one or two hops at the most for redundancy, fast failover) should be handled at that level too..

    Have you looked at the Intel architecture (NIC, CPU, PCI-bus) lately ? You can specify a CPU which should be dedicated for networking and for most networking tasks, which is just routing/quick inspection of packets, it can handle it.

    It can handle more packets than the 10Gbit connector on the NIC can provide. And with low latency as well. You’ll have to point the NIC at that dedicated CPU mind you. Do you know the price of a single CPU and NIC ? Come on people, this is a trend, this is going to happen if people see it or not. 🙂

    The traffic it be routing is also generated on that same box.

    Do we still need specialized servers or network devices for high performance, sure.

    But how many workloads on your network demand it ? I have a feeling it is very few.

    If you look at servers, what do people run on baremetal because of performance reasons and possibly with specialized storage ? Databases is good example.

    But does this apply to all databases ? Nope, many are virtualized now. Is it 10% of the database workloads that are virtualized worldwide right now ? Or is it 60% ? I don’t know. But it’s shifting all the time. In favor of virtualized.

    Lighter loads (of which there are many) can run virtualized on generic boxes, this applies to servers but will also apply to networking.

    It might also apply to storage. I think it does, just look at projects/products like Ceph.

    1. Have you looked at AWS CloudFormation ? It is the template engine for autoscaling, but it could be so much more. You can specify networks and policy.

      That is where it is probably going, if you ask me.

      The application developer specifies the type of resources his applications needs and how much resources it needs at a giving workload.

      The cloud and application can provide metrics and the cloud will spin up more resources as needed.

      People would want to provision networks, load balancers, vpn, firewall/security policy in the same template.

      Does the application developer decide all this policy himself ? Only if he’s paying for it on the public cloud.

      Is it a private cloud ? Then probably not, but the application developer will provide a template which might be used as is, or it might not. Maybe someone else will only add security policy information to it.

      Or maybe it’s all going to be about DevOps and people are actually gonna work together to create the template. What a concept. 😉

      1. Great link Lennie. He did a great job of giving an overview of SDN and the use of Overlays. I wonder if what Scott Lowe is hinting at for Virtualized Network is closer to what they do for x86 virtualization than what Overlays do for SDN. I’m really still new to a lot of these concepts and the video helped.

      2. I see this as a real race between the hardware vendors and the software vendors.

        If new switches with enough capabilities of what people need don’t get deployed fast enough, the users will deploy a software solution (overlays) instead. When that has happend. The genie might be out of the bottle and might not go back in for a long time.

        What I think is cool about the solution from Midokura is they have basically ‘integrated’ the router, firewall, switch and maybe other functions like loadbalancing on the same host running the hypervisor.

        I don’t think anyone else has done that yet. I think they might be up to 2 years ahead of the competition ( if the others see it to, they might be able to build it in less than that time, but I’m not sure they see it yet 😉 ).

        I also agree with him on the use of overlays this makes the underlay network much simpler. Basically, no management to do and no scaling issues of the control plane.

        You can however create scaling issues at the data plane (certain links full where other links still have bandwidth), but their solution tries to the the maximum possible by keeping the traffic local.

        Traffic shaping might also be harder with tunneling.

        I think there is a lot of improvement possible on tunneling protocols themselfs though, better loadbalancing, congestion control and proper multipath.

        I’ve been trying to convince some people the industry should do something like that, but they don’t seem to be ready for that. It’s probably to early or maybe I’m just wrong. 🙂

      3. If you want a different view of SDN:

        That YouTube channel has a lot of other videos as well from last years summit and the videos from this years summit are also coming online.

      4. This was a pretty good video. It was similar to the presentation given by the guy from Stanford in an earlier post I had on SDN. I liked that he expanded on the three different types of abstraction. I’m wondering if what he has in mind for Network Virtualization is what VMware has in mind. Somehow I don’t think they are the same things.

      5. I always wonder how these kinds of videos are understood/interpreted by people who might not have a few years of programming experience.

    2. A lot of the networking guys I talk to don’t seem to agree that SDN is needed. They believe the current system works and has proved itself to be scalable so why make fundamental changes.

      1. What I’ve been working on is to get multipath layer 2 networking for the ‘underlay’ network. Everyone seems to have their own requirements when you start to scale.

      2. If you read what I commented on the Scott Lowe’s blogpost that points to your blog then I think the API is the important bit.

        If your network does not need network virtualization or some other application, then maybe you don’t need SDN (an API).

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: