Today, I told my son about a great discussion I had last night on Twitter and that there were people from different time zones involved. When he then asked me what it was about I told him it was too technical, but when he insisted I had to explain to him the concept of SDN. For me this was a good thing, because it forced me to rethink the definition of SDN and translate it into something a kid could understand.
But first I had to explain to him the concept of networking; no I have never tried that before. He is playing a lot of Minecraft and sometimes he is playing that online on a server. So I abused this by explaining the client - server concept and the boxes in between that are connecting the two. Of course there is not one path of boxes so the traffic between client and server can take different routes. In the old days, today, these boxes had all to be configured by hand and are configured to figure out by themselves what to do with traffic coming in.
In the SDN world all these boxes are connecting to a single controller application and are configured from this single application. There is no need anymore to configure/program ever single box. The controller application is kind of the Google Maps of the network. Whereas at first every box had to find out from it’s neighbours how the traffic had to flow, now Google Maps knows of all the sources and destinations and all the routes in between. When one box knows of something that Google Maps doesn’t know yet it updates the Map.
This is kind of where my explanation ended, but the good thing was that he understood it very well and could also see the benefits of such a way of working. The funny thing was that I explained about Google Maps, just because he knows it, but I started myself this week to use Wazer. A social mapping system, acquired by Google by the way. The thing is that all the Wazer apps driving around update the centralized map almost automatically. Of course some checking is being done by humans. To make the analogy to SDN complete. When another Wazer updates the map or puts a roadblock on the map, my application gets instantly updated and my route is changed.
Funny how explaining things to kids clears things up. My explanation did not include overlay networks by the way. I’ll leave that for another time.