In 2001 an IBM manifesto called for computers that could regulate their own vital functions - just as the human body does. Nearly a decade on, are we any closer to autonomic computing? E&T finds out.
The human body has given computer scientists a lot of pointers toward the way that computers can be managed, and physiologists’ discoveries about the workings of the body continue to inform the way systems are made more reliable and efficient. The discipline that seeks to learn most from our bodies’ ‘operating systems’ is autonomic computing - a concept that marries human physiology to computer technology in such a way that even the most complex IT infrastructures are fully managable.
The impetus behind autonomic computing is that a computer network is liable to act in much the same way as the autonomic nervous system in the human body. This is the part of the human physiology that deals with involuntary human actions such as heartbeat, digestion, breathing, and urination, for instance. The human body requires no direct conscious interaction from the brain to handle these functions - they operate of their own accord. Wouldn’t it be useful to configure computers to manage themselves in a similar way?
The autonomic computing concept originated in a 2001 manifesto from IBM. The thinking was simple. With the growing complexity of computing systems, why not let the computers sort out things for themselves, just as the human nervous system makes automatic responses? As the manifesto itself points out: “The information technology boom can only explode for so long before it collapses on itself in a jumble of wires, buttons, and knobs. IBM knows that increased processor power, storage capacity and network connectivity must be answerable to some kind of systemic authority if we expect to take advantage of its potential. The human body’s self-regulating nervous system presents an excellent model for creating the next generation of computing.”
For its time, this was a far-reaching vision, and, despite its travails, IBM retains the capability to come up with highly influential propositions. However, many knowledgeable computing professionals could be forgiven for never having heard of autonomic computing in the nine years since. So how has the legacy delivered on the initial 2001 vision?
In some respects, it looks like the concept is still in the theoretical phase. The phrase ‘autonomic computing’ has not penetrated the IT lexicon in the same way as developments like Cloud Computing, service-oriented architecture (SOA), and virtualisation - although it does have a bearing on the latter, as we shall see.
However, Steve Furber, ICL professor of computer engineering in the School of Computer Science at the University of Manchester, insists that aspects of the technology have become intrinsic to the technology that now surrounds us.
“The Internet is a prime example of this,” says Furber. “It copes with disruption, and it re-routes traffic automatically. While this is not quite autonomic computing in the strictest sense, it does demonstrate how the concept is not as alien as it might seem.” Furber is working on a project (see box on p50) that aims to replicate aspects of the human brain functioning within computer networks.
While ‘autonomic computing’ may not have achieved the ubiquity of other new buzzwords, IBM itself has gone on to employ many autonomic techniques in its own enterprise products. According to Omer Rana, professor of performance engineering at Cardiff University, IBM’s thinking was to be welcomed. “That was really a vision to support these ideas in large-scale systems. No one single person can understand the complexity of such systems.”
And, while Rana accepts that the use of the phrase is beneficial to IBM for coining it, he thinks that it has been a helpful description: “It’s a reasonable term,” he allows. “We can all associate with autonomic nervous system.”
According to IBM’s vice president of autonomic computing Matt Ellis, meanwhile, the company’s VP of autonomic computing, this is not because the concept has disappeared from view, but because so much of the thinking has now appeared in IBM’s products.
“We’re now working at bringing in many of the concepts of autonomic computing to IBM products,” Ellis says. “We’ve embedded and integrated management, and are working closely with the IBM Smart Business team to bring forward ideas on how to implement dynamic infrastructure. This is one of the closest examples of the way that automotive computing has entered the mainstream. [The] client sets up the Smart Business cube and management of that cube is all automated.”
Ellis believes there is a psychological element to this, and this represents one area where computing functions differ from those of the human body. The human autonomic nervous system works precisely because the human body knows of no other way of operating; that is not the case with computer systems. There is a human manager who has to allow the networks to manage themselves, and there’s a huge level of trust there. As Ellis points out, the idea of automated updates does take some getting used to, although most managers are quite happy with the concept.
A crucial element of autonomic computing is not that it’s been designed to eliminate human contact though - it’s to handle concepts that are too complex for human managers to deal with - or, at least, deal with efficiently. Ellis says that this is what has happened with the autonomic computing elements of the DB2 relational database management system. One of the first products to use the technology was DB2 with its self-tuning memory manager back in 2002 - not long after the original manifesto. This enabled the database to respond to changes in workloads by adjusting memory and buffer pools to improve performance. Other areas where autonomic computing has been incorporated into IBM’s portfolio include predictive analytics. IBM showed its keen interest in this area when it bought data mining solutions company SPSS in 2009.
Ellis says that the IBM has introduced predictive analytics to the IBM Tivoli range to help deal with one of the biggest challenges now facing IT management - that of virtualisation. “The challenge is looking at the workload of virtual machines, and whether performance can be maintained. This is something that is easier with physical machines but in virtualisation there is a variety of different factors - issues such as congestion, resource memory, I/O, and storage to deal with,” he says.
This is where the elements of autonomic computing come into play; incorporated into the predictive analytics within Tivoli, where they play a part in capacity planning. How autonomic computing works in these virtualised environments is by delivering a capability that identifies trends within the system so that a failure can be identified before it causes an overall system dropout - factors such as a poorly-performing server and a memory failure can have an impact on performance.
Other software products are also using elements of autonomic computing. Omer Rana says that they are making their presence felt in the data centres - an area where self-management has begun to describe a technological requirement, particularly in areas like power management - a field that HP has developed further.
Autonomic computing concepts have perhaps been applied most conspicuously in virtualised data centres. Rana points out a way in which the autonomic theory can work. “Consider a hypothetical data centre that serves a number of companies,” he says. “One of these companies needs to use seven servers, while another organisation uses three servers - the former pays £5 an hour per server, while the latter pays £7 an hour. Now suppose a third organisation wants to use this data centre, and is prepared to pay £100 an hour; am I able to manipulate the capacity to allow this third organisation?”
On the face of it, this appears to be a simple dilemma to resolve; any service provider tasked with maximising revenue will be happy to accept customers paying over the odds.
The problem facing data centre providers is that it will be tied to particular service-level agreements (SLAs) and the penalties it faces for non-delivery of services could negate the extra revenue it makes. But Rana says that this is the sort of calculation autonomic computing was designed to do.
“It all depends what the SLAs say - autonomics will help me answer the problem, and will work out whether migrating the new company’s workload would make revenues even if the SLAs are violated. Given that most data centres don’t operate at full capacity, autonomic computing techniques can be used to calculate a multi-priority optimisation problem.”
But, like Ellis, Rana sees a problem with removing humans from the loop entirely - there’s a psychological element involved too. For example, one of the challenges facing data centre managers is the way to incorporate factors such as server density and power consumption; for Rana there are levels of complexity here that would be an ideal fit for autonomic computing.
http://kn.theiet.org/magazine/issues/1002/weblinks.cfm
One of the best examples of the way in which some of the concepts of autonominal design are being used in technology is in the Spinnaker Project being led by Professor Steve Furber. Spinnaker has also been dubbed ‘the Brainbox Project’, because its aim is to replicate thought processes found in the human brain.
Furber’s work is on the processor part, and is aiming for a level of sophistication far beyond what is being achieved by IBM, it’s claimed. “This is a project in collaboration with other universities in which we are trying to model bits of brains as a computational neuroscience test-bench, based on bespoke microchips.
The aim is to model biological neurons.” Furber describes the end result as a scaled-down supercomputer - albeit one with a million processors.
Key to the Spinnaker project, says Furber, is to make systems become much more self-aware - identifying minor problems before they become major issues. While the thinking behind the project is to mirror the human body, there are some crucial differences, he reports: “The big difference is that the hardware does not ‘repair’ itself - I mean at the logical level; I know of no technology that allows circuits physically to repair themselves.”
Furber also accepts that, complex as the project is, there is a big gap between its scope and that of the human brain: “Our models are considerably simpler, biological neurons are extremely complex, everyone is placing their bets on how they work. We think it’s about the network not the biological function but we don’t know more for sure”.
While the Spinnaker Project, is seemingly divorced from much of the reality of most corporate computer networks - Furber admits that it is “blue-sky even by university standards” - it shows the way that researchers are trying to incorporate elements of biology within IT systems.
Elements of neural research have already found their way into the computer systems: “Speech recognition is one technology that has its roots in neural research,” says Furber. The Spinnaker Project has some years to run so it will be a while before its developments are incorporated into commercial products.
Steve Furber: “Hardware does not ‘repair’ itself”.
The functions of autonomic computing control loops can be divided into four broad embedded control loop categories
IBM’s Matt Ellis: “The autonomic nervous system works because the human body knows no other way of operating; that is not the case with computer systems”
Just as the autonomic nervous system controls bodily functions - such as blood pressure, respiration and heart rate - without conscious intervention, the Autonomic Computing Initiative (ACI) aims to provide the foundation for autonomic systems. Human operators do not control the system directly; they define general policies and rules that serve as an input for the self-management process.
The four functional areas are shown below.
A basic concept that shall be applied in Autonomic Systems are closed control loops. This concept stems from Process Control Theory (PCT).
A closed control loop in a self-managing system in essence monitors some resource (software or hardware component), and it autonomously tries to keep its parameters within a desired range as specified.
Bookmark with:
del.icio.us
Digg
Add to Discover
Comments
All comments
You need to be registered with the IET to leave a comment. Please log in or register as a new user.