“Cloud isn’t a technology. It’s a force of nature.”
Part 3 – The Power of Steam
I’ve previously advanced the notion that the IT industry has reached and is in the act of collectively crossing a synchronization barrier – a point where many independent threads converge to one point, and only at that point can they all move forward together with new-found synergy. The diagram below shows these six trajectories leading us toward “Real IT Transformation.” Taking each of the vectors in turn, I last dealt with the fundamental theme of composition in both hardware and software systems, and how it is disrupting the current status quo of monolithic development and operational patterns in both of these domains. Advancing clockwise, we now consider the cloud and software defined networking.
If there is one recurring element in all six threads, its flexibility – the ability to reshape something over and over without breaking it, and to bring a thing to bear in often unforeseen ways on problems both old and new. It is a word that can be approximated by others such as agility, rapidity, elasticity, adaptability… the now quite-familiar litany of characteristics we attribute to the cloud computing model.
Flexibility is a survival trait of successful business. The inflexible perish because they fail to adapt, to keep up, to bend and not break, and their IT systems are at once the most vulnerable as well as the most potentially empowering. It is obvious why the promise of cloud computing has propelled the concept far beyond fad, or the latest hype curve. Cloud isn’t a technology, it is a force of nature, just like Darwinian evolution. For IT practitioners wishing to avoid the endangered species list, it is a philosophy with proven potential to transform not just the way we compute and do business, but the way we fundamentally think about information technology from every aspect: provider, developer, distributor, consultant, and the end-user. No one is shielded from the effects of the inevitable transformation, which some will see as a mass extinction of outdated roles and responsibilities. (And lot’s of people with scary steely eyeballs who want to be worshiped as gods. Wait. Wrong storyline…)
Although this theme of flexibility is exhibited by each of the six threads, and “cloud” naturally bears the standard for it, there is something specific to the way cloud expresses this dynamism that justifies it being counted among the six vectors of change: software defined networking (SDN). I refer to this in a very general sense, as well as in the more defined marketing and technical definition recently promulgated, which I refer to as “true SDN” in the figure below.
For cloud computing, the invention of the Domain Name System was where SDN began. (DNS… SDN… coincidence? Of course, but we need a little gravitas in the piece at this point, contrived though it may be.) IP addresses were initially hard to move, and DNS allowed us to move logical targets by mapping them to different IP addresses over time. The idea came fully into its own with Dynamic DNS, where servers could change IP addresses at higher frequencies without clients seeing stale resolution data as with normal DNS zone transfers and root-server updates. Load balancers and modern routing protocols further improved the agility of the IP substrate to stay synchronized with the increasingly volatile DNS mappings.
With DNS operating at the macro-network level, SDN took another step at the micro-layer with the birth of virtual local networking, born out of x86 virtualization (hypervisors). By virtualizing the network switch and, eventually, the IP router itself, redefinition of a seemingly “physical” network that would previously require moving wires from port to port, could be done purely through software control. More recent moves to encapsulate network functions in to virtual machines – Network Functions Virtualization (NFV) – continue to evolve the concept in a way that even more aptly complements end-to-end virtualization of network communication, which would be…
…the capstone – true-SDN or “SDN proper.” It bridges the micro and macro layers (the data planes) with a software-driven control plane that configures them to work together in concert. Standards such as OpenFlow, and the ETSI NFV MANO, place the emphasis on getting data from point A to point B, with the details of routing and configuration at both local and wider-area-network layers being left to automation to solve. When married with cloud computing’s notion of applications running not just “anywhere” but potentially “everywhere” the need for this kind of abstraction is clear. Not only is there the cloud “backend” that could be in one data center today and another the next, but the millions of end-point mobile devices that are guaranteed to move between tethering points many times a day, often traversing global distances in a matter of hours. Users of these devices have expectations that their experience and connectivity will be unchanged whether they are in Austin or Barcelona within the same 24 hour period. Without true SDN, these problems are extremely difficult if not impossible to solve at global scale.
It’s easy to blow off “cloud” as just the latest buzzword. Believe me, I’ve had my fill of “cloudwashing,” too. But don’t be fooled into thinking that cloud is insubstantial. Remember: hot water vapor was powerful enough to industrialize entire nations. Cloud computing combined with the heat of SDN have no less significance in the revolutionary changes happening right now to IT.