Cholla: A Framework for Composing and Coordinating Adaptations in Networked Systems

  • Authors:
  • Patrick G. Bridges;Matti A. Hiltunen;Richard D. Schlichting

  • Affiliations:
  • University of New Mexico, Albuquerque;AT&T Labs - Research, Florham Park;AT&T Labs - Research, Florham Park

  • Venue:
  • IEEE Transactions on Computers
  • Year:
  • 2009

Quantified Score

Hi-index 14.98

Visualization

Abstract

The ability of networked system software to adapt in a controlled manner to changes in the environment and requirements is crucial, but difficult to realize in complex systems with multiple interacting software layers/components. Typically, many components in a networked system implement adaptive behaviors and encapsulate their own adaptation logic (policies), making the whole system's adaptive behavior hard to analyze, coordinate, and test. This paper describes Cholla, a software architecture that separates the policy decisions of how and when adaptive components in networked systems react to their environment into separate centralized controllers that are constructed from composable rule sets. Centralizing policy decisions into controllers in Cholla facilitates the analysis, coordination, and testing of these policies, while the composable nature of these controllers allows them to be customized to changing user, application, and hardware demands. In addition to describing the architecture of Cholla, this paper also presents a Linux-based prototype implementation of this architecture that controls and coordinates adaptation policy decisions inside network protocols and multimedia applications. An experimental evaluation of this prototype demonstrates that Cholla's controller architecture enables component-based construction and customization of adaptation policies in networked systems, and that these policies can effectively control and coordinate adaptation.