In MUSDAC, the environment is viewed as a dynamic composition of independent networks in which services use different protocols for discovering and accessing services.

MUSDAC relies on specific plugins to interact with existing middleware, manages the efficient dissemination of the service information between the different networks, and enables clients to access all the networked services in them.

In a nutshell, an instance of the MUSDAC is started in each independent network. Each instance of MUSDAC is composed of: (i) The MUSDAC Manager that provides service discovery and access to clients within the network; (ii) Service Discovery and Access (SDA) Plugins and Transformers that interact with specific discovery domains to collect service information and perform service access; and (iii) MUSDAC Bridges that assist MUSDAC Managers in providing service discovery and service access in the pervasive environment. In MUSDAC, services are described using the MUSDAC Description format, which is a generic and modular service description format able to record any information available in an SD-specific service definition. SDA Plugins and Transformers generate MUSDAC Descriptions based on the SD-specific service descriptions they receive.

The MUSDAC prototype is implemented in Java (J2SE 1.4.2 and 1.5) and includes support for 5 different service discovery protocols, and remote access for SOAP-based services based on WSAMI. The different SDA Plugins enable experimenting with both repository-based (ARIADNE, OSGi) and broadcast-based (SLP, UPnP) protocols.


Supporting Grant

  • IST UBISEC -- Ubiquitous Networks with Secure Provision of Services, Access and Content Delivery

Related Research Project


The MUSDAC middleware is an open-source software freely distributed under the terms of the GNU Lesser Public License (LGPL. The MUSDAC middleware is also referred to as the MSDA middleware.

  • Latest stable release (including the prototype and the related documentation): version 1 (16M)
  • MSDA User Guide (PDF)