Are you old enough to remember the days when operating systems had no file system? Fortunately I never had to deal with storing files on one of those (I was using punch cards), but miraculously you can still find the JCL DLBL/EXTENT documentation online.
On the other hand, you probably remember the days when a SCSI LUN actually referred to a physical disk connected to a computer, not an extensible virtual entity created through point-and-click exercise on a storage array.
You might wonder what the ancient history has to do with virtual networking. Don’t worry we’re getting there in a second ;)
When VMware started creating their first attempt at server virtualization software, they had readily available storage abstractions (file system) and CPU abstraction (including MS-DOS support under Windows, but the ideas were going all the way back to VM operating system on IBM mainframes).
Creating virtual storage and CPU environments was thus a no-brainer, as all the hard problems were already solved. Most server virtualization solutions use the file system recursively (virtual disk = file on a file system) and abstract the CPU by catching and emulating privilege-mode instructions (things got way easier with modern CPUs supporting virtualization in hardware). There was no readily-available networking abstraction, so they chose the simplest possible option: VLANs (after all, it’s simple to insert a 12-bit tag into a packet and pretend it’s no longer your problem).
The “only” problem with using VLANs is that they aren’t the right abstraction. Instead of being like files on a file system, VLANs are more like LUNs on storage arrays – someone has to provision them. You could probably imagine how successful the server virtualization would be if you’d have to ask storage administrators for a new LUN every time you need a virtual disk for a new VM.
So every time I see how the “Software-Defined Data Center [...] provides unprecedented automation, flexibility, and efficiency to transform the way you deliver IT” I can’t help but read “it took us more than a decade to figure out the right abstraction.” Virtual networking is nothing else but another application riding on top of IP (storage and voice people got there years before).
If you’re attending Interop Las Vegas, drop by my Overlay Virtual Networking Explained session (and use DISPEAKER marketing code to get 25% discount on registration fees), or register for the Network Infrastructure for Cloud Computing workshop. If not, don’t worry – there will be an overlay networking webinar in September/October timeframe.