« SaaS and PS | Main | More on Utility Computing Standards »

21 July 2007

Utility Computing, Competition and Standards

In the reading I've been doing recently regarding virtualization and utility computing, I came across Simon Warley's blog. One of his recent posts caught my eye for a number of reasons.

The first is his taxonomy of the utility computing market. Until reading the piece, I had (lazily) characterized the market as comprised of the SaaS and IaaS (infrastructure as a service) sectors. By adding the FaaS (framework as a service), I believe that he's done us all a favor. However, I'm now tempted to get granular on everyone and introduce another segment. (More on that later.)

The second reason for calling attention to the post is his rationale for the use of open source as the operational means of achieving standards. A part of me agrees, and another sends up flares. Perhaps the use of the term "open source" isn't as crisp as I need it to be in this case. I'd like to think this through a bit in order to find the my point of view.

I have to agree wholeheartedly that the objective is the formation of a competitive utility computer market, with competition based on price, quality and capacity.

Bits or pieces?: Competition, not greed, is good.

Utility computing concerns taking the idea of utility energy provision and applying it to the world of IT, so that companies buy computing resources in much the same way that they buy electricity - charged according to metered usage.

This market is growing, and will continue to grow in three distinct areas :-

SaaS (Software as a Service) : where entire applications are provided on a utility basis.

FaaS (Framework as a Service) : where an application development and deployment environment or framework is provided on a utility basis.

HaaS (Hardware as a Service) : where raw virtual machines are provided on a utility basis.
...

Update: This will teach me not to post too quickly, which I did before reading through the very interesting dialogue between Simon and Bert Armijo of 3Tera. Bert's submitted comments to the original post and in his own blog here.

I understand both positions. I have "done time" in the formal standards organizations. (Remember OSI? X.400? X.500?) I've also spent a good portion of the past five years in the thick of open source and standardization with the creation of Univa Corporation, a company dedicated to delivering HPC infrastructure based on commercial distributions of and enhancements to the open source Globus Toolkit.

I believe that the crux of the gentlemen's disagreement shows up in this metaphor from Simon:

Agreed, virtualisation is a technology which can be used but it is not utility computing.

However, what you have created is not just virtualisation but the equivalent of Jar files for infrastructure at the HaaS level.

There's an argument that in delivering the "Jar files for infrastructure", what's now called for is the equivalent of the Jar manifest, a formal, standard description of the contents and possibly the recipe for lashing together the assembly of VMs and their contents. Through description standards adopted by and understood by the utility providers, customers have that freedom to "emigrate" from one to another. But I'm not convinced that the actual implementations of infrastructure ... the virtualized network infrastructure in particular ... needs to be open source software. In this regard, I tend to side with Bert.

Where I depart from Bert's argument is when he characterizes 3Tera's AppLogic as maintaining "... the existing infrastructure model of load balancers, NAS, firewalls etc ... that lets you define infrastructure for your app exactly as you would have built it before..." Exactly? I don't believe that's quite the case. The designer of a newly defined assemblage of servers and its underlying networks (physical and virtual) can begin "fresh" to create an extensive and impressive configuration in an AppLogic-based virtual data center. But, the vocabulary used is that of a specially defined, constrained set of load balancers, NAS, firewalls etc.

I'd claim that the network on which the virtualized servers and appliances at the SaaS and even at the FaaS layers has not been sufficiently virtualized, not exposed as a sufficiently rich abstraction layer nor even described in a standard manner. There does not yet exist the layer of abstraction and vocabulary by which one could, as Bert claims, "... take their existing images and move them to traditional colo. No lock-in." If there were, I'd be able to use those same descriptions of infrastructure to efficiently move a "legacy" configuration from a corporate data center or a traditional colo to an AppLogic-based utility or another utility service's HaaS/FaaS (such as Amazon's AWS).

Technorati Tags: , ,

Technorati Tags: , , , ,

TrackBack

TrackBack URL for this entry:
http://www.typepad.com/t/trackback/245647/20241754

Listed below are links to weblogs that reference Utility Computing, Competition and Standards:

Comments

Post a comment

This weblog only allows comments from registered users. To comment, please Sign In.