IBM research  has used the term 'autonomic computing' as a distributed system where a set of software/network components can regulate and manage themselves in areas of configuration, fault, performance and security to achieve some common user-defined objectives. The word 'autonomic' originates from the autonomic nervous system that acts as the primary conduit of self-regulation and control in human bodies. Four 'self' properties of autonomic computing are defined:
Self-configuration: the entities can automate system configuration following high-level specifications, and can self-organize into desirable structures and/or patterns.
Self-optimization: the entities constantly seek improvement to their performance and efficiency, and are able to adapt to changing environment without direct human input.
Self-healing: the entities can automatically detect, diagnose and recover from faults as the result of internal errors or external inconsistencies.
Self-protection: the entities can automatically defend against malicious attacks or isolate the attacks to prevent system-wide failures.
Although the autonomic computing concept was first proposed for distributed systems and software components, it is equally relevant to self-managing networks, especially with the increasing associations between networks and distributed applications and the extensive use of network management applications. In general, we consider ...