Using Control Theory to Achieve Service Level Objectives In Performance Management

A widely used approach to achieving service level objectives for a software system (e.g., an email server) is to add a controller that manipulates the target system's tuning parameters. We describe a methodology for designing such controllers for software systems that builds on classical control theory. The classical approach proceeds in two steps: system identification and controller design. In system identification, we construct mathematical models of the target system. Traditionally, this has been based on a first-principles approach, using detailed knowledge of the target system. Such models can be complex and difficult to build, validate, use, and maintain. In our methodology, a statistical (ARMA) model is fit to historical measurements of the target being controlled. These models are easier to obtain and use and allow us to apply control-theoretic design techniques to a larger class of systems. When applied to a Lotus Notes groupware server, we obtain model-fits with R2 no lower than 75% and as high as 98%. In controller design, an analysis of the models leads to a controller that will achieve the service level objectives. We report on an analysis of a closed-loop system using an integral control law with Lotus Notes as the target. The objective is to maintain a reference queue length. Using root-locus analysis from control theory, we are able to predict the occurrence (or absence) of controller-induced oscillations in the system's response. Such oscillations are undesirable since they increase variability, thereby resulting in a failure to meet the service level objective. We implement this controller for a real Lotus Notes system, and observe a remarkable correspondence between the behavior of the real system and the predictions of the analysis. This indicates that the control theoretic analysis is sufficient to select controller parameters that meet the desired goals, and the need for simulations is reduced.

[1]  Raj Jain,et al.  Analysis of the Increase and Decrease Algorithms for Congestion Avoidance in Computer Networks , 1989, Comput. Networks.

[2]  Srinivasan Keshav A control-theoretic approach to flow control , 1991, SIGCOMM 1991.

[3]  Edwin J. Kay,et al.  Adaptive operating system control using neural networks , 1993 .

[4]  Semyon M. Meerkov,et al.  Feedback control of congestion in packet switching networks: the case of a single congested node , 1993, TNET.

[5]  Michèle Basseville,et al.  Detection of Abrupt Changes: Theory and Applications. , 1995 .

[6]  Mario Gerla,et al.  ATM rate based congestion control using a Smith predictor: an EPRCA implementation , 1996, Proceedings of IEEE INFOCOM '96. Conference on Computer Communications.

[7]  Donna N. Dillenberger,et al.  Adaptive Algorithms for Managing a Distributed Data Processing Workload , 1997, IBM Syst. J..

[8]  Calton Pu,et al.  SWiFT: a feedback control and dynamic reconfiguration toolkit , 1998 .

[9]  Guerney D. H. Hunt,et al.  Network Dispatcher: A Connection Router for Scalable Internet Services , 1998, Comput. Networks.

[10]  Saverio Mascolo Classical control theory for congestion avoidance in high-speed Internet , 1999, Proceedings of the 38th IEEE Conference on Decision and Control (Cat. No.99CH36304).

[11]  Klara Nahrstedt,et al.  A control-based middleware framework for quality-of-service adaptations , 1999, IEEE J. Sel. Areas Commun..

[12]  Calton Pu,et al.  A feedback-driven proportion allocator for real-rate scheduling , 1999, OSDI '99.

[13]  Calton Pu,et al.  Application of Control Theory to Modeling and Analysis of Computer Systems , 2000 .

[14]  Daniel M. Dias,et al.  High-Performance Web Site Design Techniques , 2000, IEEE Internet Comput..

[15]  Joseph L. Hellerstein,et al.  Using Control Theory to Achieve Service Level Objectives In Performance Management , 2001, 2001 IEEE/IFIP International Symposium on Integrated Network Management Proceedings. Integrated Network Management VII. Integrated Management Strategies for the New Millennium (Cat. No.01EX470).

[16]  P. N. Paraskevopoulos,et al.  Modern Control Engineering , 2001 .

[17]  Tarek F. Abdelzaher,et al.  Differentiated caching services; a control-theoretical approach , 2001, Proceedings 21st International Conference on Distributed Computing Systems.