Let’s head to the late 70s or early 80s. The integrated circuit invented a decade prior has become the driving force behind computers that are smaller, faster, more powerful and more accessible.
You have a pretty standard home computer, as does your roommate. Both your computers have the same amount of processing speed and storage space.
What happens when you install an application that requires twice as much processing power as you have? Is there not enough processing power in your apartment? Of course not! The combined processing power of both your machines is in fact enough to run the new application. The issue is that power is split between disparate machines. Your choices are an expensive upgrade, or tapping into your roommates’ idle system resources by connecting them.
This harkens to the famous problem studied by Amartya Sen, a Nobel Prize-winning agricultural economist. He said fairness (or lack thereof) isn’t due to having sufficient food, but by not having it distributed properly.
Computing has faced this as well; there has never been a shortage of computing power or server storage space. Knowing how, when and where to deliver it has been the point of contention.
If you connect to your roommate’s computer via a cable, you can extrapolate and see that connecting every machine in any given area to every other machine is a challenging problem. Reams of cables have been used to connect machines in an entire building to a central server (and then connecting the servers in one building with the servers in other buildings, and on and on to other cities, counties, states and countries!) Multiply this by the thousands of offices and companies worldwide and the cost of this approach runs into the billions.
Fortunately, technological advancement brought new solutions. Instead of laying yet more cables cables, or expanding an already existing physical network, wireless connectivity allowed faster and more affordable information transmission. This gave us the cloud; a seamless mass of computing power and storage accessible anywhere from a lightweight laptop or phone. Costly upgrades that take up further space and power are delegated to infrastructure that can handle it without downtime or inconvenience for end users. As with fairness, a surplus or dearth of computing power all comes down to distribution.
Physical connections have been replaced with network hubs, and network hubs are now being replaced by the cloud. The next logical step is allowing a computer system to define and book resources users are already doing themselves, but doing it automatically and seamlessly.
That’s software defined networking. Instead of relying on fixed, inflexible and geographically limited physical network topologies, you can define your applications storage, compute and connectivity requirements, and delegate the complex networking work to the cloud.
Software defined networking results in cost-savings by reducing duplication of resources, is faster because you abstract away from the limitations of physical switches and their related protocols, is easy to deliver by virtue of the cloud, and is currently the latest chapter in the exciting story of the advancement of networks and telecommunications systems.