ACCORDS

  

Automatic Configuration and Monitoring of
Component-Based Distributed Systems

* Home
* Participants
* Accords Workshop
* Publications
* First report
* Second report
* Original Project
(in Postscript)


Department of
Computer Science
USP logo


Institute of
Computing
UNICAMP logo


Department of
Computer Science
U. Illinois logo
      
                Este relatório em português Este relatório em português

CNPq/NSF - ACCORDS Project - Report No. 2

1.1 Identification

Project Acronym: ACCORDS

Project title: Automatic Configuration and Monitoring of Component-Based Distributed Systems

Project Homepage: http://www.ime.usp.br/~song/accords

Main area: Computer Science

Coordinator in Brazil: Siang Wun Song

Institution: Universidade de São Paulo

Period of project: July 1, 1999 to June 30, 2002

Period of report: July 1, 2000 to August 30, 2001

1.2. Content

Project summary

The motivation for this research came from the fact that software flexibility is a major issue in the development of high performance and real-time applications, reliable systems, distributed systems, and in exploratory computing. Software systems have to deal with an increasing rate of change in technology and user requirements. Moreover, it is imperative that the scientific community and the industry develop techniques to support seamless integration of highly heterogeneous environments. Component technology has appeared as a solution for these problems. However, there is still little support for managing the interactions between the components. Existing component architectures also lack a good understanding of the nature and magnitude of the interactions between components and a notion of individual performance of components in a component-based system. This research project seeks to modify the way computer systems support component-based software to accommodate dynamic changes in rapidly evolving environments. By maintaining an explicit representation of the interactions between system and application components, the infrastructure can recognize the need for reconfiguration. In addition, it can know how to carry out this reconfiguration without compromising system stability, performance, and reliability.

Keywords

Meta-object protocol, distributed programming, checkpointing, consistent global states, monitoring and reconfiguration, aspect-oriented programming, dynamic programming, dynamic adaptation policies, mobile computing, adaptive software.

1.3. Introduction

The objective of this project is to find new forms to support software development based on components, considering that future computing environments will be distributed and highly dynamic.

The expected results are:

  • A framework to represent explicitly and manage the interactions among system and application components.

  • An infrastructure for recognizing the need for reconfiguration and carrying out the reconfiguration steps without compromising performance and stability.

  • Evaluate the impact of the use of ``reflective ORBS'' in the tasks of monitoring and reconfiguration.

  • Support for intra and inter-component dynamic configuration and evaluation of its use in the task of domain decomposition for parallel and distributed systems.

  • An object-oriented framework to structure adaptive and reliable systems.

1.4. Main results

We summarize below the main results in the second year of the project. More detailed information can be found in this report.

Publication of the participants

As shown by the complete list that follows, a large number of journal and conference papers has been produced.

Participation in conferences

Project members participated in international and national conferences. A complete list is shown in this report.

Research results

In the field of Adaptivity, our research led to the design of a middleware architecture to support the development of adaptive distributed applications. This architecture was described in a technical report produced by Francisco Jose da Silva e Silva, doctoral student, during his visit to our American partner: "Modeling Dynamic Adaptation of Distributed Systems" Francisco José da Silva e Silva, Markus Endler, Fábio Kon, Roy H. Campbell, M. Dennis Mikunas. University of Illinois at Urbana-Champaign. Report UIUCDCS-R-2000-2196, December,2000. More recently, Francisco described the applications of this architecture to Mobile Computing in a paper published at the Third Brazilian Workshop on Wireless Communication, Recife, August 2001. The architecture is already partially implemented in a Java/CORBA environment and it will be completed around July/2002.

With regard to inter-component dependence management, the research is advanced. Our American partners developed an object-oriented framework to manage dependencies in component systems and carried out experiments with different implementations of this framework for CORBA, Java, and C++. These results were enhanced by the work of the Brazilian researchers, who extended the framework to manage alternatives for each component. This extension was implemented using Java RMI technology and it was applied to a complex distributed application: a Distributed Traffic Information System for Mobile Computing developed at the IME-USP. This work is described in the paper "Adaptive Directory Services for Highly Dynamic Environments" to appear at the ACM/IFIP Middleware'2001 Conference as a Work in Progress paper in November. Two new masters students (Ricardo Koji Ushizaki e Marcelo Vinagreiro) are currently working on extension of the Traffic Information System to interface with distributed databases and to increase the facilities for dynamic reconfiguration.

Knowledge acquired:

Through interaction between researchers, it was possible to disseminate knowledge among project participants, with respect to the following problems:

  • experience in the use of reflection to deal with exceptions;
  • inter-relationship between dynamic adaptation and system reliability;
  • techniques for configuration with message interposition through reflection;
  • configuration on the middleware level;
  • gains from dynamic configuration for fault tolerance.

Applicability

The results we obtained indicate a strong applicability of the framework for the development of distributed systems where faulty components can be dynamically substituted by alternatives that offer the same service.

Generation of products and processes

Library and prototypes that explore dynamic configuration are under development, in advanced stage. Source code is available at the web at the participants' pages.

Human resources formation

One participant on the American side, Fabio Kon, finished his Ph.D. program at the University of Illinois. He was then hired for a faculty position at the Department of Computer Science, Institute of Mathematics and Statistics, USP.

Interaction with the American partners

During the second year of the project, the Ph.D. student (advisor Professor Markus Endler) Francisco José da Silva e Silva visited the University of Illinois partner at Urbana-Chamgagne for one month, during August 2000. The activities included the presentation to the American partners of the modeling working being carried out in Brazil. He also participated in courses and seminars in areas related to the project.

Professor Luiz Eduardo Buzato visited the Systems Reseach Group of the University of Illinois during April 2001. He presented and discussed the recent results on efficient protocols for the computation of progressive visions and the application of these protocols to the 2K system of the University of Illinois and the Guraná/MOLDS system of the Institute of Computing of Unicamp.

Interaction in Brazil (inter and intra-institutional)

The interaction in Brazil happened in an informal way with many visits between the two Brazilian Universities. Besides a number of seminars, a Workshop ACCORDS was held on January 5, 2000, in the Institute of Computing of UNICAMP. Participated in this meeting members from USP and UNICAMP and one member from U. Illinois. The workshop program can be found in http://choices.cs.uiuc.edu/2k/Events/ACCORDSWorkshop2000.html and include several talks and progress reports followed by discussion.

1.5. Team

  • Siang Wun Song (coordinator)
  • Cecília Mary Fischer Rubira
  • Dilma Menezes da Silva
  • Fabio Kon
  • Hernán Astudillo
  • Luiz Eduardo Buzato
  • Markus Endler

    Graduate students:

  • Alessandro FabrÌcio Garcia
  • Alexandre Oliva
  • Delano Medeiros Beder
  • Francisco J. da Silva e Silva
  • Gerson Mizuta Weiss
  • Gisele Rodrigues Ferreira
  • Gustavo M. D. Vieira
  • Islene Calciolari Garcia
  • Jorge Euler Vieira
  • Marco Aurélio de Moura
  • Paulo Astério de Castro Guerra
  • Uirá Kulesza

Participation in conferences

    • Name of Participant: Siang Wun Song
      Conference: Proceedings 13th International Conference on Parallel and Distributed Computing and Systems. Anaheim, California, USA, August 21 - 24, 2001.
    • Name of Participant: Markus Endler
      Conference: 3rd. IEEE International Conference in Mobile and Wireless Communication Networks (MWCN2001), Recife, Agosto 2001.
    • Name of Participant: Markus Endler
      Conference: 3o. Workshop de Comunicacao sem Fio e Computacao Movel (WCSF2001), Recife, Agosto 2001.
    • Name of Participant: Fabio Kon
      Conference: XXI Congresso da Sociedade Brasileira da Computação, VIII Simpósio de Computação Musical, Fortaleza, julho de 2001.
    • Name of Participant: Siang Wun Song
      Conference: XXI Congresso da Sociedade Brasileira da Computação, Jornada de Atualização em Informática, Fortaleza, julho de 2001.
    • Name of Participant: Siang Wun Song
      Conference: The 2001 International Conference on Computational Science, San Francisco, May 28-30, 2001.
    • Name of Participant: Fabio Kon
      Conference: ACM OOPSLA Conference, Minneapolis, EUA, outubro de 2000.
    • Nome da Participante: Fabio Kon
      Conference: 9th IEEE International Symposium on High Performance Distributed Computing, Pittsburgh, EUA, agosto de 2000.
    • Name of Participant: Siang Wun Song
      Conference: IFIP World Computer Congress 2000 - International Conference on Software: Theory and Practice. Beijing, China, August 21 - 25, 2000.

Publications by team members

Second year

(Listed in reverse chronological order)

  • Dehne, F., Ferreira, A., Cáceres, E., Song, S. W., and Roncato, A. Efficient Parallel Graph Algorithms For Coarse Grained Multicomputers and BSP. Algorithmica. To appear.
  • A. Garcia, C. M. F. Rubira, A. Romanovsky & J. Xu. A Comparative Study of Exception Handling Mechanisms for Building Dependable Object-Oriented Software. Journal of Systems and Software, Elsevier, North-Holland, April 2002, ISSN 0164-1212. To appear.
  • A. Garcia, D. Beder & C. M. F. Rubira. A Unified Meta-Level Software Architecture for Sequential and Concurrent Exception Handling. Computer Journal, Vol. 44, Issue 4, Oxford University Press, September 2001, ISSN 0010-4620. To appear.
  • A. Garcia & C. M. F. Rubira. An Architectural-based Reflective Approach to Incorporating Exception Handling into Dependable Software. chapter 4, p. 189-206, In the book Advances in Exception Handling Techniques. 289 p. Editors: A. Romanovsky, C. Dony, J. L. Knudsen, A. Tripathi. Springer-Verlag, LNCS-2022, April 2001. (ISSN 0302-9743. ISBN 3-540-41952-7).
  • Song, S. W. Editorial: Design of Efficient and Scalable Parallel Algorithms. Parallel and Distributed Computing Practices, Vol. 3, 2001. To appear.
  • Song, S. W. Parallel Graph Algorithms for Coarse-Grained Multicomputers. Models for Parallel and Distributed Computation: Theory, Algorithmic Techniques and Applications. Applied Optimization Book Series. Kluwer. To appear.
  • Dilma Menezes da Silva and Fabio Kon, Adaptive Directory Services for Highly Dynamic Environments. ACM/IFIP Middleware'2001 WIP Heidelberg, Germany, November, 2001.
  • G. R. M. Ferreira, C. M. F. Rubira & R. de Lemos. Explicit Representation of Exception Handling in the Development of Dependable Component-Based Systems. In Proceedings of the 6th IEEE International Symposium on High Assurance Systems Engineering (HASE'01), October 24-26 , 2001, Boca Raton, Florida, USA, IEEE Computer Society Press.
  • Mongelli, H. and Song, S. W. Efficient Two-Dimensional Parallel Pattern Matching with Scaling. Proceedings 13th International Conference on Parallel and Distributed Computing and Systems. August 21 - 24, 2001, pp. 360-364.
  • Rocha, R. C. A. and Endler, M. MobiCS: An environment for prototyping and simulating distributed protocols for mobile networks , Proc. 3rd. IEEE International Conference in Mobile and Wireless Communication Networks (MWCN2001), Recife, 44-51, Brazil, August 2001.
  • Nagamuta, V. e Endler. M. Simulando um Protocolo para Notificação Confiável baseado em Proxies Móveis. Proc. of the 3rd. Brazilian Workshop on Wireless Communication and Mobile Computing (WCSF2001), 18-26, Recife, Agosto 2001.
  • Silva, F. S. e Endler, M. Desenvolvendo Software Adaptável para Computacao Movel. Proc. of the 3rd. Brazilian Workshop on Wireless Communication and Mobile Computing (WCSF2001), 93-101, Recife, Agosto 2001.
  • Ribeiro, M. F. e Endler, M. Um protocolo indireto para Multicast Atomico em Computacao Móvel. Proc. of the 3rd. Brazilian Workshop on Wireless Communication and Mobile Computing (WCSF2001), 84-91, Recife, Agosto 2001.
  • Manuel Román and Fabio Kon and Roy Campbell. Reflective Middleware: From Your Desk to Your Hand. IEEE Distributed Systems Online, Vol. 2, No. 5, July, 2001.
  • Cáceres, E. N. and Mongelli, H. and Song, S.W. Algoritmos Paralelos usando CGM/PVM: Uma Introdução, texto preparado para o XXI Congresso da Sociedade Brasileira da Computação, Jornada de Atualização em Informática, Fortaleza, julho de 2001, pp. 219-278.
  • Mongelli, H. and Song, S.W. Parallel String Matching with Scaling. Proc. 2001 International Conference on Parallel and Distributed Processing Techniques and Applications, Vol. 2, June 25-28, 2001, pp. 605-609.
  • Cáceres, E.N. and Song, S. W. and Szwarcfiter, J. L. A Parallel Unrestricted Depth Search Algorithm. Proc. 2001 International Conference on Parallel and Distributed Processing Techniques and Applications, Vol. 1, June 25-28, 2001, pp. 521-526.
  • D. M. Beder, B. Randell, A. Romanovsky, & C. M. F. Rubira. On Applying Coordinated Atomic Actions and Dependable Software Architectures for Developing Complex Systems. In Proceedings of the 4th IEEE International Symposium on Object-Oriented Real-Time Distributed Computing (ISORC'2001), Magdeburg, Germany, May 2-4, 2001, pp. 103-112, IEEE Computer Society Press.
  • Caceres, E.N., Song, S. W. and Szwarcfiter, J. L. A Coarse-Grained Parallel Algorithm for Maximal Cliques in Circle Graphs. The 2001 International Conference on Computational Science. Lecture Notes in Computer Science, Vol. 2074, V. Alexandrov, J. Dongarra, K. Tan (eds), Springer-Verlag. San Francisco, May 28-30, 2001, pp. 638-647.
  • Nagamuta, V. e Endler, M. Coordinating Mobile Agents through the Broadcast Channel, Anais do Simposio Brasileiro de Redes de Computadores (SBRC-2001), CD-ROM, Florianopolis, May 2001.
  • Islene C. Garcia, Gustavo M. D. Vieira e Luiz E. Buzato. RDT-Partner: An Efficient Checkpointing Protocol that Enforces Rollback-Dependency Trackability, Anais do Simposio Brasileiro de Redes de Computadores (SBRC-2001), CD-ROM, Florianopolis, May 2001.
  • Islene Calciolari Garcia e Luiz Eduardo Buzato. On the Minimal Characterization of Rollback-Dependency Trackability Property, Proceedings of the 21th IEEE Int. Conf. on Distributed Computing Systems, Phoenix, Arizona, EUA, April, 2001.

  • Gustavo Maciel Dias Veira, Islene Calciolari Garcia e Luiz Eduardo Buzato. Systematic Analysis of Index-Based Checkpointing Algorithms using Simulation, IX Simpósio de Computação Tolerante a Falhas, Florianópolis, Santa Catarina, March 2001.

  • Mongelli, H. and Song, S. W. Parallel Pattern Matching with Scaling. Parallel Processing Letters. Vol. 11, pp. 125-138, March 2001.
  • Fabio Kon, Tomonori Yamane, Christopher Hess, Roy Campbell and M. Dennis Mickunas. Dynamic Resource Management and Automatic Configuration of Distributed Component Systems. Proceedings of the 6th USENIX Conference on Object-Oriented Technologies and Systems (COOTS'2001), San Antonio, Texas, February, 2001.
  • Fabio Kon, Roy H. Campbell and Klara Nahrstedt. Using Dynamic Configuration to Manage a Scalable Multimedia Distribution System. Computer Communications Journal (Special Issue on QoS-Sensitive Distributed Systems and Applications), Vol. 24, Elsevier Science Publisher, January, 2001, pp. 105-123.
  • Francisco José da Silva e Silva, Markus Endler, Fabio Kon, Roy H. Campbell, and M. Dennis Mikunas. Modeling Dynamic Adaptation of Distributed Systems. University of Illinois at Urbana-Champaign. Report UIUCDCS-R-2000-2196, December, 2000.
  • A. Garcia, D. M. Beder & C. M. F. Rubira. An Exception Handling Software Architecture for Developing Fault-Tolerant Software. In Proceedings of the 5th IEEE International Symposium on High Assurance Systems Engineering (HASE'00), November 15-17, 2000, Albuquerque, New Mexico, USA, pp. 311-320, IEEE Computer Society Press.
  • Fabio Kon, Jalal Al-Muhtadi, Roy H. Campbell and M. Dennis Mickunas. My Dream of Jini. OOPSLA'2000 Workshop on the Jini Pattern Language, Minneapolis, October, 2000.
  • Fabio Kon, Christopher Hess, Manuel Roman, Roy H. Campbell and M. Dennis Mickunas. A Flexible, Interoperable Framework for Active Spaces. OOPSLA'2000 Workshop on Pervasive Computing, Minneapolis, October, 2000.
  • Dilma M. Silva, Fabio Kon and Roy Campbell. Dynamic Configuration of a Directory Service Using the ComponentConfigurator Framework. Proceedings of the Project SIDAM Workshop, Sao Paulo, September, 2000.
  • Okuda, K. and Song, S. W. Revisiting Hamiltonian Decomposition of the Hypercube. SBCCI2000 - XIII Symposium on Integrated Circuits and System Design. Manaus, Brazil, September 18-24, 2000, pp. 55-60.
  • Saukas, E. L. G. and Song, S. W. Parallel Programming Techniques for Distributed Memory Computers. IFIP World Computer Congress 2000 - International Conference on Software: Theory and Practice. Beijing, China, August 21 - 25, 2000, pp. 760-763.
  • Islene Calciolari Garcia e Luiz Eduardo Buzato. Using Common Knowledge to Improve Fixed-Dependency-After-Send, Workshop de Testes e Tolerância a Falhas, Curitiba, July, 2000.

  • Ferreira, A., Goldman, A. and Song, S. W. Broadcasting in bus interconnected networks. Journal of Interconnection Networks, Vol. 1, No. 2, June 2000, pp. 73-94.
  • Mongelli, H. and Song, S. W. Parallel Range Minima on Coarse Grained Multicomputers. International Journal of Foundations of Computer Science. Vol. 10, No. 4, December 1999, pp. 375 - 389.

1.6. Conclusion

Analysis of results with respect to the initial proposal

The partial results indicate that the incorporation of mechanisms for dynamic adaptation increases system flexibility significantly. The investigation carried out to this moment presents reasonable cost (performance degradation), compatible to the technologies of popular distributed objects systems. The initial proposal emphasizes the use of computational reflection in deriving more generic mechanisms for automatic configuration. Our work with computational reflection focused on fault-tolerance and on the construction of dynamically configurable middleware systems. The work carried out by the doctoral student Francisco Silva and his advisors, Markus Endler and Fabio Kon, will demonstrate an integrated architecture for adaptive systems based on reflection principles.

Relevant contribution

The development of dynamically configurable components is essential to the construction of systems that execute in environments as Internet of large corporative networks, with the expected performance and reliability.

Difficulties encountered

The prior experience of all the research team with complementary aspects of the development of distributed and adaptable systems made the work very productive.

An inherent problem of such a project was the difficulty in integrating the software artifacts developed by various programmers in different research groups. Unfortunately, we were not able to standardize the environments and technologies employed. It is our short-term objective to concentrate on the integration of our results and implementations.

1.7. Bibliographical references

  • Brent Agnew, Christine Hofmeister, and James Purtilo. ``Planning for change: A reconfiguration language for distributed systems'' Proc. of the Second International Workshop in Configurable Distributed Systems, pages 15--22. IEEE Computer Society Press, May 1994.
  • L.E. Buzato, C.M.F. Rubira, and M.L.B. Lisboa. A reflective object-oriented architecture for developing fault-tolerant software. Journal of Brazilian Computer Society, 4(2):39--48, november 1997.
  • Roy~Campbell et al. ``2K: A component-based network-centric operating system for the next millennium'' http://choices.cs.uiuc.edu/2k/, 1998.
  • Michael J. Fischer, Nancy D. Griffeth, and Nancy A. Lynch. `` Global States of a Distributed System'' IEEE Transactions on Software Engineering, SE-8(3):198--202, may 1982.
  • P. G. S. Florissi and Y. Yemini. `` Management of application quality of service'' Proc. of the 5th IEEE International Workshop on Distributed Systems: Operations and Management, 1994.
  • M. Jones. `` Interposition agents: Transparently interposing user code at the system interface'' Operating System Review, 27(5):69--79, December 1993. Proc. 14th ACM Symp. on Operating Systems Principles.
  • L.L.Ferreira and C.M.F.Rubira. `` Reflective design patterns to implement fault tolerance'' Proc. OOPSLA'98 Workshop on Reflective programming in C++ and Java, pages 39--48, Vancouver,Canada, October 1998. IEEE Computer Society.
  • N.H. Minsky. ``Governing Distributed Systems: from Protocols to Laws'', In B.D. Shriver, editor, Proc. of the 24th Hawaii International Conference on System Sciences, pages 418--427. IEEE Computer Society Press, January 1991.
  • Alexandre Oliva and Luiz Eduardo Buzato. `` Composition of meta-objects in Guaran·'' Workshop on Reflective Programming in C++ and Java, OOPSLA'98, Vancouver, Canada, October 1998.
  • Beth Schroeder, "On-line monitoring: A tutorial", IEEE Computer, Vol. 29, No. 6, pg 72-78, 1995.
  • Fabio Ko n and Roy H. Campbell, ``Dependence Management in Component-Based Distributed Systems'', IEEE Concurrency, Vol.8, No. 1, pg 26-36


Valid CSS! Valid XHTML 1.0! Last modified: Mon Aug 26 18:31:20 EST 2002
song at ime.usp.br