Aug/099
The Network’s Role in Cloud Computing

It's all happy up in the cloud, right?
For networking companies cloud computing could be the biggest boon or the biggest bane, or as is sometimes quoted - the road to (shareholder) hell is paved with good intentions.
Network companies have been relatively and somewhat strangely quiet about cloud computing. Sure we've seen some partnerships, some demonstrations, and a lot of rhetoric- but there really hasn't been a lot of action. There certainly has not been purposeful, planned, development. One of the reasons may be the school of thought that the network is an inherent beneficiary of cloud computing - certainly anything that spits more bits out and drives larger pipes is a win for networking, right? The darker side is that at scale cloud computing represents a fundamental shift in the balance of purchasing power and a massive consolidation of computing, and thus purchasing capability into a smaller number of larger companies.
We've already heard about search companies building their own servers and even rumors of them building their own networking equipment. When you have that much domain expertise consolidated and there is that degree of specificity about the features and capabilities required saving capex while lowering the power consumption reducing your overall operating costs against one of your biggest expense line-items is worth it to large enough providers. Plus many of these providers know exactly what features they do and do not need - and there is variability between providers based on their respective philosophies about redundancy, fault tolerance, accounting, traffic engineering, etc. Is this model for everyone? Certainly not. But for those with enough chutzpah, mass and the technical wherewithal, it seems to be working.
Now fast forward seven to ten years. (like when Bill Gates once famously proselytized a vision based on unlimited bandwidth and limitless computing power - what would you do?) Imagine 50% of the world's compute capacity is owned by five companies. The purchasing power would be immense, the value to a vendor of winning the deal is a make/break proposition to many start-ups and even mid-caps. The ability to squeeze margin out of the vendors and define the exact requirements for what needed to be built, unparalleled. High margins? Doubtful.
Where would the network be? Let's see, certainly my 'glass half full' self sees that there would be a large WAN opportunity and Internet core upgrades required to support the increase in mobile workloads and mix of elastic and real-time network traffic. Ideally there would be a way of consistently signaling a particular packet's requirement for real-time, lossless, or an elastic traffic profile across multiple network providers with some guarantee they adhere to the marking. Although with net-neutrality I doubt this will ever happen in any end-to-end consistent manner and the owners of the end-stations and clouds will over-provision capacity and use clever over-the-top mechanisms to solve this issue further reducing the carrier's value.
The main change for the network will be static and physical definitions of service bound to location shifting to much more dynamic addressing
and embracing workload mobility. The network needs to be able to move workloads to run on the server and in the location that can service that workloads performance and processing requirement in the most effective and efficient way possible. This will enable and drive demand for follow-the-sun, follow-the-kilowatt, and follow-the-tax-code portability and mobility requirements. This is not just moving a workload around the data center, this could be moving it from one continent to another, and not a one-time move, but a dynamic and elastic environment where resources are constantly being re-balanced to achieve operational efficiencies, meet customer SLAs, scale to add new customers or divest customers quickly, and ensure security/segmentation where appropriate.
As I have said before today's networks are not ready for this. The static addressing model is broken, the routing protocols are not designed for the scale or the change-rate, and the need for abstraction and management is different than any networking vendor has embraced yet.
Let's assume that the technical hurdles get solved, that really smart people who solved the addressing problems for mobile phone systems, local number portability, and global roaming can use some of the same principles and solve the issues around globalization of IP addressing, /32 host route mobility, and really large scale routing tables. Let's focus on what makes a networking system "cloud-ready" that is a bit more complicated than even these rather sizable network and routing architecture challenges- Religion. Politics. Business. Control.
Here's the big 'gap' in everyone's story. Right now each vendor views their own system at the core of this cloud. It's all about the network, server, VM, SAN, etc depending whom you are talking to. Everyone wants to take their castle and put it on a cloud, without giving the keys to above-said-castle to anyone else. This means a strong desire in every major player to keep business as usual and extend the current value proposition and operational models to the cloud as best possible, see what sticks, adjust, go from there.
I believe, depending how 'evolved' the segment is, this could be a major failure if the core capabilities of the technology are not designed around the principles needed in cloud environments: elasticity, self-provisioning, open APIs, programmability, trust, control, interoperability, etc.
Where are networking vendors failing and flailing? Largely around the management and configuration interfaces to their systems -- The CLI is dead to the new world order. Take every feature in a network operating system and write down the ones you use. Put them on individual note-cards on a desk and then put the ones that are machine-readable, software controlled/instantiated, centrally provisioned, and globally scalable in a box we call 'Cloud Ready' and put everything else in the 'Old World' box. If the Cloud Ready box is pretty empty, that vendor will be left with one thing to differentiate - PRICE.
Everything in the networking world is instantiated by a CLI. Every cloud operator I know wants a machine readable interface, they want their devices to plug into a common management framework, they want a single point of administration and control. For some this is home-grown, for some this will be VMware's vSphere, for others it may be another offering. This 'Cloud OS' does job macro-scheduling, enforces work flows, and provides elastic scaling and depends on machine readable interfaces into switches, routers, firewalls, servers, storage, and so on. It also will depend on consistency between managed devices - i.e. if stuff doesn't work identically between products the outliers are not likely to be adopted.
Many vendors are reticent to give their 'keys' to someone else's Cloud OS - i.e. if it can't be their own, they don't want to open the system up, to the operator this means now having to install multiple management systems when what they really want is one that can work with multiple vendors. The message I heard one cloud operator tell me was, "Be Open or Die."
Make the shift to building planned systems architectures, and intelligently using networking protocols to provide a consistent abstraction to a cloud OS, there is a chance to win big. Miss it, build fragmented systems with no management abstraction or not tie into the right eco-system of partners and risk rapid commoditization as the core value of your product can actually never be expressed to a customer/operator in a way they could use it. Unused features is simply higher cost with no incremental value.
Additional comments powered by BackType
August 14th, 2009
Doug,
Lots of stuff to think about.
1. End to end QoS has been seen many false starts (ATM, RSVP/IntServ) – it will be interesting to see if this will be any different now, especially when multiple network providers are involved.
2. Recognition that business as usual is not going to cut it is the first step. My box, my management system and how pretty my GUI looks, etc. is not a strategy for the long term. I am optimistic that vendors will address this – especially by recognizing that they cannot do it all (unless you are the biggest network equipment vendor). Partnerships/acquisitions might be one approach.
3. Agree that CLIs are not very interesting to a cloud provider who is looking for a greater degree of abstraction. It will still be a preferred power user configuration on a per box basis but how often you will need that is a debatable point.
Minor issue – there is a typo in the following text – should be “…know exactly…” instead of “…now exactly”
August 14th, 2009
good catch, thank you! Those moment’s where spell-check fails… (and a hasty 20m of typing on a regional jet shows…)
August 14th, 2009
Douglas, great read!
Product management at equipment vendors should start revisiting the talent they have in their EMS team(s) to see if they are ready to shoulder the responsibility of driving the feature development process. As providers gradually expect real integration APIs, that’s where the burden will end up. Next step of course is to have open and well defined interfaces for direct device touch. NETCONF (http://bit.ly/kx19H) and YANG (http://bit.ly/4gTlNr) are good proposals but the political implications are vast.
August 14th, 2009
Words of wisdom for us in the network config (read AND write) choir: http://bit.ly/7KmYJ “The CLI is dead to the new world order” indeed!
This comment was originally posted on Twitter
August 15th, 2009
So, If the CLI is dead, how come you still have to rely so heavily upon it for all but the most basic of config tasks? – It’s a rhetorical question.
The GUI’s from the incumbants can get you through the basic setup – but the real power toys to tune and optimize still lie in the CLI.
The heart of the issue is that the admin GUIs are being written by a new geneartion of “developers” who have never used a CLI; they drag and drop widgets, toss in a couple of radio buttons and a pulldown and it’s all good. If the GUI was so good, how come it has a pulldown to ssh or telnet into the CLI?
Cloud products will need to be configured, managed, upgraded, monitored and backed up with a toolset that will allow access to the full set of product features yet provides intuitive (dare I say simple) output that a machine or a human can interpret.
Wouldn’t it be cool if the incumbants could clean the slate and design a product where the hardware, core O/S and management software all worked together in harmony?
I guess that would take away the opportunities for all those third-party developers; who would need their products if the incumbants built it in to the product?
August 16th, 2009
What a load of tosh.
The Network is already Cloud-Ready, its the management systems that are not up to the job. Today’s networks are a marvel of loosely coupled design and implementation. The Cloud needs tightly coupled capability and that means management software, which doesn’t exist, and hasn’t been delivered successfully for the last twenty yeats.
And if the CLI is dead why did Microsoft (of all people!) introduce Powershell.
My response to this – http://etherealmind.com/2009/08/15/networking-cloud-ready-software-needed/
August 16th, 2009
I disagree Greg, unless you consider CLIs part of the management system (which it is). Networking protocols rock, they self-organize for purposes of connectivity and reachability. But no one ever implemented the same for segmentation, security, service level assurance, performance monitoring, etc.
There was a chicken-egg problem I have been fighting for the last ten years – management platforms, for networking, are woefully behind, because of the networking systems interfaces They don’t expose many of the advanced, and very necessary, capabilities of a network. Why? Because exposing them is damn near impossible through a non machine readable interface, with no MIB support, no programmatic write capabilities, no ack/nack function for whether the command took, no programmatic roll-back capability, etc. The networking products have done very little/nothing to make it easy for management platforms to expose their value. For some companies I would argue this is almost by design, for many others they could just never get around to it.
Omar Sultan recently brought up a good quote from Henry Ford, to the effect of- “if I asked the people what they wanted tehy would have said a faster horse.” When I said the CLI was dead for cloud providers most everyone argued back either a) how the CLI was still useful for troubleshooting (I completely agree, btw). or b) How GUIs never replaced the 1:1 functionality of the CLI.
I never said GUI… I never said CLI was gone for troubleshooting….
I did say we needed a programmatic, versioned, machine-readable, extensible, easy to develop to, API that allows machine to machine communication and instantiation of network policy. Doesn’t have to be a GUI- could be XML/SOAP/XMPP based though….
dg
August 24th, 2009
What about Juniper / XML?
August 24th, 2009
I must profess I am not as familiar there, can you comment on the extent of the XML capabilities on the product line?