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. 1

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, 1999 to June 30, 2000

1.2. Content

Project summary

The motivation of this research came from the fact that software flexibility is an important issue during the development fo high performance and real-time applications, reliable systems, distributed systems, and in exploratory computing. Software systems are required 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 that allow dynamic changes in environments that alter rapidly.

The expected results are:

  • A framework to maintain explicitly representations of interactions between system elements and components of the application.

  • Infrastructure that aids in the recognizing the need of reconfiguration and of how to allow the needed changes 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.

  • Object oriented framework to structure adaptive and reliable systems.

1.4. Main results

We summarize below the main results in the first 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 total of 31 journal and conference papers have been produced.

Participation in conferences

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

Some main results

In the area of Mobile Computing, the following working paper has been produced: "Adaptabilidade em Ambientes de Computação Móvel", by Francisco Jose da Silva e Silva, Working paper DT-SIDAM-8-99.2. Mr. Francisco da Silva e Silva is a Ph.D. student advised by Prof. Markus Endler. This paper describes the main results of this area already obtained.

Another important result in Mobile Computing is a preliminary overview document entitled "Project SIDAM: Overview and Preliminary Results", by Markus Endler, Dilma M. da Silva, Francisco Silva e Silva, Ricardo C. A. da Rocha, and Marcos A. de Moura. Working paper DT-SIDAM-0-00.1. The paper has been published in the 2nd Workshop of wireless communication (WCSF), DCC/ICEx/UFMG, in May 2000.

The proposed research in this project involves the extension of the use of components to represent dependences explicitly and provide a base to dynamic adaptation. This investigation has been very successful, since the group of researchers from UIUC developed a framework (ComponentConfigurators), implemented by using the CORBA technology and tested to evaluate the potential of its use in fault tolerance. These results have been extended by the Brazilian partners so as to include also explicit references to alternatives of components. This extension was implemented by using the RMI technology.

With respect to the support of automatic recognition of the necessity of configuration, mechanisms to automate the substitution of components in the presence of failures have been devised. At this moment the research goal is to generalize this support, to include more generic aspects of component substitution.

The partial results fo this project are being applied in a prototype that implements a highly distributed application. Initial results indicate that the structure of the configurations of components that is very useful in parallel/distributed domain decomposition.

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 already obtained until now indicate a strong immediate applicability of the frameworks already implemented in development of distributed systems where faulty components are 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.

Human resources formation

One participant on the American side, Fábio Kon, finished his Ph.D. program at the University of Illinois. A plan is under way for a post-doctorate program with the Brazilian team at USP.

Interaction with the American partners

In the first year there were two visits of Brazilian partners to the research group of University of Illinois: Prof. Dilma Menezes da Silva (from January 11 to February 17, 2000) and Mr. Paulo Astério de Castro Guerra (from April 29 to May 22, 2000), graduate student working on his Ph.D. The visit of Mr. Castro de Guerra was very useful to get feedback and discussion on his thesis project. In addition to the University of Illinois he also had a short but fruitful visit to Carnegie Mellon University and the Software Engineering Institute (SEI) in Pittsburgh.

Interaction in Brazil (inter and intra-institutional)

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.

We note that this workshop did not incur cost from the project. The one-day meeting did not require hotel expenses. Participants from USP traveled to UNICAMP by car and the Illinois participant (Fábio Kon) was in Brazil at that period.

1.5. Team

  • Siang Wun Song (coordinator)
  • Cecília Mary Fischer Rubira
  • Dilma Menezes da Silva
  • 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: Alexandre Oliva
    Conference: Fifth USENIX Conference on Object-Oriented Technologies and Systems (COOTS), San Diego, California, USA, May, 3-5, 1999.

  • Name of participant: Dilma Menezes da Silva
    Conference: Simpósio Brasileiro de Redes de Computadores e Terceiro Workshop em Sistemas de Tempo Real. Salvador, 20 a 23 de mario de 1999.

  • Name of participant: Dilma Menezes da Silva
    Conference: Congresso da Sociedade Brasileira de Computação, Rio de Janeiro, 19 a 23 de julho de 1999.

  • Name of participant: Dilma Menezes da Silva
    Conference: OOPSLA'99 - Conference on Object Oriented Programming, Systems and Languages, Denver (Estados Unidods), 1 a 5 de novembro de 1999.

  • Name of participant: Dilma Menezes da Silva
    Conference: Workshop in Real Time Linux, Viena (Áustria), 13 a 15 de dezembro de 1999.

  • Names of participants: Luiz E. Buzato e Islene C. Garcia
    Conference: 19th IEEE International Conference on Distributed Computing Systems, Austin, EUA, May 31-June, 9, 1999.

  • Names of participants: Luiz E. Buzato e Islene C. Garcia
    Conference: VIII Simpósio de Computação Tolerante a Falhas, Campinas, SP, Brasil, June, 7-9, 1999.

  • Name of participant: Markus Endler.
    Conference: 2nd Brazilian Workshop on Wireless Communication (WCSF), Belo Horizonte, May 24, 2000.

  • Name of participant: Markus Endler.
    Conference: Simpósio Brasileiro de Redes de Computadores (SBRC-2000), Belo Horizonte, May 23-26, 2000.

  • Name of participant: Markus Endler.
    Conference: Workshop DialM/Mobicom 99, ACM, Seattle, August 16-21, 1999.

  • Name of participant: Markus Endler.
    Conference: 1st Brazilian Workshop on Wireless Communication (1o. Workshop de Comunicação sem Fio - WCSF) , UFMG/PRONEX, Belo Horizonte, July 1999.

  • Name of participant: Siang Wun Song.
    Conference: IFIP International Conference on Software: Theory and Practice, Beijing, China, August 21 - 25, 2000.

  • Name of participant: Siang Wun Song.
    Conference: International Conference on Parallel and Distributed Processing Techniques and Applications, Las Vegas, June 26 - 29, 2000.

  • Name of participant: Siang Wun Song.
    Conference: CIMPA International School of Parallel Computing. Natal, RN, 1999.

  • Name of participant: Siang Wun Song.
    Conference: XI SBAC-PAD Simpósio Brasileiro de Arquitetrua de Computadores e Processamento de Alto Desempenho, Natal, RN, 1999.

Publications by team members

First year

(Listed in reverse chronological order)

  • Ferreira, A., Goldman vel Lejbman, A. and Song, S. W. Broadcasting in bus interconnected networks. Journal of Interconnection Networks, to appear.
  • Mongelli, H. and Song, S. W. Parallel Range Minima on Coarse Grained Multicomputers. International Journal of Foundations of Computer Science. To appear.
  • Cáceres, E., Dehne, F., Ferreira, A., Flocchini, P., Rieping, I., Roncato, A., Santoro, N. and Song, S. W. Efficient Parallel Graph Algorithms For Coarse Grained Multicomputers and BSP. Algorithmica. Accepted, under revision.
  • 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. To appear.
  • Cáceres, E., Chan, A., Dehne, F. and Song, S. W. Coarse Grained Parallel Graph Planarity Testing. Proceedings 2000 International Conference on Parallel and Distributed Processing Techniques and Applications, Las Vegas, June 26 - 29, 2000. To appear.
  • Garcia, A. and Rubira, C. M. F. An Exception Handling Software Architecture for Developing Robust Software. In Proceedings of the Exception Handling in Object-Oriented Systems Workshop, ECOOP'2.000 (14th European Conference on Object-Oriented Programming), Sophia Antipolis and Cannes, France, June 12-16, 2000.
  • Rocha, R. A. and Endler, M. Um Simulador de Protocolos Distribuídos para Computação Móvel, 2nd Brazilian Workshop on Wireless Communication (2o. Workshop de Comunicação sem Fio- WCSF), SBC, Belo Horizonte, May 2000.
  • Endler, M., Silva, D. M., Silva e Silva, F., Rocha, R. A., Moura, M. A. Project SIDAM: Overview and Preliminary Results, 2nd Brazilian Workshop on Wireless Communication (2o. Workshop de Comunicação sem Fio - WCSF), Belo Horizonte, May 2000.
  • Moura, M. A. and Endler, M. Juggler: A Configuration Management Service for CORBA Object Groups. Proc. Simpósio Brasileiro de Redes de Computadores (SBRC 2000), Belo Horizonte, May 2000.
  • Endler, M., Silva, D. M., Okuda, K. RDP: A Result Delivery Protocol for Mobile Computing, Proc. of the Int. Workshop on Wireless Networks and Mobile Computing (WNMC) at the 20th Int. Conference on Distributed Computing Systems (ICDCS), IEEE, Taiwan, R.O.C., April 2000.
  • Endler, M., Silva, D. M., Okuda, K. A Reliable Connectionless Protocol for Mobile Clients, Communication Networks and Distributed Systems Modeling and Simulation Conference (CNDS'00), San Diego, 149-154, Society for Computer Simulation International (SCS), January 2000.
  • Saukas, E. L. G. and Song, S. W. A Note on Parallel Selection on Coarse Grained Multicomputers. Algorithmica 24: 371-380 (1999).
  • Vieira, Jorge E. and Silva, Dilma M. The SMART Scheduling for Linux. Proc. of the Workshop in Real Time Linux. Vienna, Austria, December 1999.
  • Braga, A. M., Rubira, C. M. F. and Dahab, R. Tropyc: A Pattern Language for Cryptographic Object-Oriented Software. In the book Pattern Languages of Program Design 4, Neil Harrison, Brian Foot and Hans Rohnert (Eds.), Software Patterns Series, December 1999, chapter 16, pp. 337-371, Addison-Wesley Longman, ISBN 0-201-43304-4.
  • Garcia, I. C. and Buzato, L. E., Checkpointing using Local Knowledge about Recovery Lines, Technical Report No. IC-99-22, Instituto de Computação, UNICAMP, Campinas, SP, em novembro de 1999, with 16 pages.
  • Garcia, A., Beder, D. M. and Rubira, C. M. F. An Exception Handling Mechanism for Developing Dependable Object-Oriented Software based on a Meta-level Approach. In Proceedings of the 10th IEEE International Symposium on Software Reliability Engineering, Boca Raton, Florida, USA, November 1-4, 1999, pp. 52-61.
  • Endler, M. An Atomic Multicast Protocol for Mobile Computing. Proc. of the 3rd International Workshop on Discrete Algorithms and Methods for Mobile Computing and Communication/MobiCom'99, Seattle, ACM SIGMOBILE, 56-63, August 1999.
  • Garcia, I. C. and Buzato, L. E. Monitorização e Recuperação por Retrocesso utilizando Visões Progressivas de Computações Distribuídas, Anais do VIII Simpósio de Computação Tolerante a Falhas, Campinas, SP, Brasil, pp. 147-151, julho, 1999.
  • Endler, M. A Protocol for Atomic Multicast among Mobile Hosts, 1st Brazilian Workshop on Wireless Communication (1o. Workshop de Comunicação sem Fio - WCSF) , UFMG/PRONEX, Belo Horizonte, pp. 99-109, July 1999.
  • Silva, Dilma Menezes. Introdução à Programação Concorrente para a Internet. JAI - Jornada de Atualização em Informática. pp. 209-262, Julho 1999.
  • Beder, D. M. and Rubira, C. M. F. Uma abordagem Reflexiva baseada em Padrões de Projeto para o Desenvolvimento de Aplicações Distribuídas Confiáveis. Nos Anais do VIII Simpósio Brasileiro de Computação Tolerante a Falhas (SCTF'99), Campinas, SP, 7-9 de julho de 1999, pp. 152-166.
  • Garcia, A. F. and Rubira, C. M. F. Um Mecanismo Orientado a Objetos para Tratamento de Exceções em Software Concorrente Tolerante a Falhas. Nos Anais do VIII Simpósio Brasileiro de Computação Tolerante a Falhas (SCTF'99), Campinas, SP, 7-9 de julho de 1999, pp. 167-181.
  • Garcia, I. C. and Buzato, L. E. Progressive Construction of Consistent Global Checkpoints, Proc. of the 19th IEEE International Conference on Distributed Computing Systems (ICDCS), Austin, Texas, USA, pp. 55-62, may 31-June 5, 1999.
  • Kulesza, Uira and Silva, Dilma M. Reengineering of the JAWS Web Server Design Using Aspect Oriented Programming. Proceedings of the Workshop of Aspects and Dimension of Concerns (part of ECOOP). Junho, 2000.
  • Oliva, A. and Buzato, L. E. The Design and Implementation of Guaraná, Proceedings of the Fifth USENIX Conference on Object-Oriented Technologies and Systems (COOTS), San Diego, California, USA, pp. 203-216, 3-5 May, 1999
  • Euler, Jorge, Noronha, Maria do Carmo e Silva, Dilma M. Estudo de Caso: Desempenho do Sistema Operacional Linux para Aplicações Multimídia em Tempo Real. Proc. II Workshop de Tempo Real - Simpósio Brasileiro de Redes de Computadores. Maio, 1999, pp. 88-95.
  • Mongelli, H. and Song, S. W. A Range Minima Parallel Algorithm for Coarse Grained Multicomputers. IPPS99/Irregular - Sixth International Workshop on Solving Irregularly Structured Problems in Parallel. San Juan, Puerto Rico, April 12 - 16, 1999. in LNCS, Vol. 1586, pp. 1075 -1084, José Rolim et al. (eds), Springer-Verlag.
  • Vieira, G. and Buzato, L. E., Determinação de Estados Globais Consistentes em Sistemas Distribuídos, Technical Report No. IC-99-09, Instituto de Computação, UNICAMP, Campinas, SP, em março de 1999, with 20 pages.
  • Tsai, Jya-Jang and Silva, Dilma M. Aggregated Cells in a Java-Based Distributed ATM Simulator. Proc. of the SCS International Conference On Web-Based Modelling and Simulation. Jan. 1999.
  • Vieira, Jorge Euler, Noronha, Maria do Carmo, e Silva, Dilma Menezes. Estudo de Caso: Desempenho Deficiente do Sistema Operacional LINUX para Carga Mista de Aplicações. Relatório Técnico RT-MAC-9904, IME-USP, 1999.
  • Silva, D., Gubitoso, M. D. and Endler, M. Sistemas de Informação Distribuídos para Agentes Móveis. SEMISH'98, Belo Horizonte, August 1998.

1.6. Conclusion

Analysis of obtained results with respect to initial proposal

The partial results indicate that the incorporation of mechanisms of dynamic adaptation really increases the system flexibility. The investigation carried out to this moment presents reasonable cost (performance degradation), compatible to the technologies of more popular distributed objects. The initial proposal emphasizes the use of computational reflection in deriving more general mechanisms for automatic configuration. The results already obtained only explore computational reflection timidly.

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.

Facilities/Difficulties encountered

An important facility is the prior experience of all the resarch team with development aspects of development of distributed and adaptable systems.

One inherent difficulty of a project as this is the integration of the software artifacts, since there is not necessarily homogeneity in the environments and technologies employed. It is our short-term objective to concentrate on the integration of ours 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:01 EST 2002
song at ime.usp.br