In a recent paper published last week in Computer World, Johna Till Johnson (president and senior founding partner at Nemertes Research) talked about "getting a handle on chaos and complexity" applied to networking. Johna points out that "complexity translates directly to increased operation costs and decreased reliability" and raised an interesting question "is being complicated the same as being complex?"
Wikipedia proposes a simple answer: Complex is the opposite of independent, while complicated is the opposite of simple.
Transposed to networking, we can see that:
- IP networking is "complicated" (myriad connecting stovepipes). The simple text page that you currently read has probably crossed 100+ active devices (switches, routers, repeaters, modems, etc.) from the Typepad blog server to your desktop, each of them transforming locally the information envelop to pass it to the next hop in a reasonably efficient (and effective) way. But there are finally very few interactions between all of these components (to make each hop as independent as possible was actually the great idea that made IP networking so successful).
- Application delivery is "complex" (effective integrated solutions). Above the pure transport of information between servers and clients, many interactions affect the user experience. There is a fundamental reason for this: in most cases the user is a human being (and when it is not the case, there are – still – humans behind the machine behind the machine). And we care about "time" (life is short) and "quality" (we feed ourselves with harmony and satisfaction). We want information quickly, in a format (frames, sounds, images) that matches our rising level of expectations. This creates constraints that networks built of independent routers and switches are not prepared to handle.
Transport is about controlling space (which route will this information use?) while application delivery is about controlling time (when will this information be delivered?). And time is one of the key components of the interactions that are the essence of complex systems.
This is why classical network management solution, thinking at box level, are so efficient to manage complicated transport infrastructure (inventory, configuration, supervision, etc.) and so ineffective in guaranteeing proper delivery of applications. You can breakdown a puzzle representing a cat into small parts and make it simpler. Please remember your tries with beetles when you were 5 years old and don't do that to the house cat!
This is why I believe that WAN Governance and its top-down path is the right global approach for effective application delivery: far from carving up the cat, let's take globally care of it.