Skip to main content
U.S. flag

An official website of the United States government

Official websites use .gov
A .gov website belongs to an official government organization in the United States.

Secure .gov websites use HTTPS
A lock ( ) or https:// means you’ve safely connected to the .gov website. Share sensitive information only on official, secure websites.

Analyzing Properties and Behavior of Service Discovery Protocols Using an Architecture-Based Approach



Christopher E. Dabrowski, Kevin L. Mills


Current trends suggest that future software components will need to discover and adapt to dynamic changes in available software services and network connections. This implies that future systems may appear as collections of components that combine and recombine dynamically in reaction to changing conditions. Such environments demand new analysis approaches and tools for software design, implementation, and testing. Our work considers how one might rigorously assess the robustness of distributed software systems in response to dynamic change, such as process, node, and link failures. More particularly we seek techniques that can be applied early in the development process to test the behavior and resilience of dynamic distributed systems, and to compare and contrast various approaches to design such systems. As a challenging application we investigate service discovery protocols. We adopt an architecture-based approach that entails the following general steps: (1) construct an architectural model of each discovery protocol, (2) identify and specify relevant consistency conditions that each model should satisfy, (3) define appropriate metrics for comparing the behavior of each model, (4) construct interesting scenarios to exercise the models and to probe for violations of consistency conditions, and (5) compare the results from executing similar scenarios against each model. We elaborate our approach, using Jini as a specific example, and show how Jini can be analyzed using Rapide, an Architecture Description Language (ADL). Our analyses take two forms: property analysis and event analysis. Both depend upon Rapide's ability to execute a specification and to generate events. We use property analysis to investigate robustness to dynamic change, while we use event analysis to discern underlying causes of observed behavior and performance. We argue that static, natural-language specifications largely miss collective behavior arising when various components interact together in a distributed system. We show that a single architectural model can be used to understand both logical and performance properties of a distributed system design. We evaluate how well Rapide supported our modeling and analyses. We also recommend improvements in ADLs to help test and analyze designs for distributed systems.
Proceedings of Working Conference on Complex and Dynamic Systems Architecture


architecture description languages, discovery protocols, fault-tolerant networks


Dabrowski, C. and Mills, K. (2001), Analyzing Properties and Behavior of Service Discovery Protocols Using an Architecture-Based Approach, Proceedings of Working Conference on Complex and Dynamic Systems Architecture, [online], (Accessed May 23, 2024)


If you have any questions about this publication or are having problems accessing it, please contact

Created December 1, 2001, Updated February 19, 2017