SDN is DNS for Packet Switching
#SDN Seriously, stop laughing and think about it for a minute...
One of the major challenges facing organizations as they grapple with increasing traffic, users, devices, and applications is managing the connective tissue that enables the users, devices, and applications to communicate. This was already a growing problem when virtualization and then cloud computing appeared on the scene to wreak even more havoc with the notion of applications being provisioned from large, data center spanning pools of resources. The up and down, on and off again paradigm of cloud computing exacerbated the problem and increased its applicability down the stack to impact even small networks with incredibly high rates of change in the layer 2 and 3 network.
Enter SDN, which when viewed from the fifty-thousand foot level appears to be an abstraction of DNS designed for the network.
Why yes I did take my medication this morning, why do you ask?
Basically, the problem distills down to "I need to send information to this IP address. Where should I send it?" Which, if you think about it, isn't all that different from DNS, which basically says, "I need to send information to this host. Where should I send it?"
Because that's what the problem is, under the hood. A service or application may have moved or might be located in a different physical segment of the network. A given switch doesn't have the visibility to know the IP address it's trying to send data to has moved. In the SDN switch model, the controller does have that visibility - just like a root DNS service - and can provide a definitive answer to the question "Where shall I send this?".
And yes, I've oversimplified what's involved in SDN (or maybe I haven't) but from a purely fifty-thousand foot abstract view, they perform the same service for a network. SDN is DNS for packet switching.
I know there are some folks whose heads are now exploding because under the hood it's far more complicated than that, but when you get down to trying to explain what SDN is to people who don't live and breathe networking (and at some point you're going to have to explain to people who aren't fluent in layer 3 networking let alone layer 2) this should do the trick. When you're trying to justify to business guys why SDN is worth investing some time and money in, you're going to have to explain it in terms that will make the value proposition (resiliency, agility) obvious. After all, DNS makes the Internets work, doesn't it?
The resiliency of DNS? It's in SDN. The distributed nature? It's in SDN. The centralized authority model of DNS? It's in SDN. The cache and carry nature of DNS? It's in SDN.
Yes, there are still technical issues that need resolving (scale being key at this point). But in general, the benefits of DNS (which handles more database queries in a day than any other system on the planet) when abstracted and applied to a much smaller - yet increasingly similar in volatility - network are pretty much the same.
Now one has to wonder whether the same security weaknesses associated with DNS also propagate to SDN.....