Discovery protocol Salutation - universAAL/middleware GitHub Wiki

Salutation architecture summary

The Salutation Architecture defines an entity called the Salutation Manager (SLM) that works as a service broker for applications, services and devices called Networked Entities.

The SLM allows Networked Entities to discover and utilize the capabilities of other Networked Entities.

A networked entity can be a service provider, hereafter Service, or a service user, hereafter Client. While the Service registers its capability with the SLM, the Client discovers the Services and requests to use them through the SLM. It could happen that a networked entity behaves as both Service and Client.

The SLM communicates with the other SLMs to perform its role of service broker. A specific communication protocol is used to perform the comunication among them.

Service broker tasks

The SLM provides four basic tasks:

  1. Service Registry
    The Salutation Manager contains a Registry to hold the information about the services. The minimum requirement for the Registry is to store information about the services connected to the SLM. Optionally, the SLM Registry may store information about the services that are registered in other SLMs. All requests by other equipments for Salutation resources would be directed toward other Salutation Managers which would respond accordingly.
  2. Service Discovery
    The SLM can discover other remote SLMs and determine the services registered there. Service Discovery is performed by comparing the required services type(s), as specified by the local Salutation Manager, with the Service type(s) available on a remote Salutation Manager. Through manipulation of the specification of required Service type(s), the Salutation Manager can determine (i) the characteristics of all the services registered at a remote SLM, (ii) the characteristics of a specific service registered at a remote SLM, and finally, (iii) the presence of a service on a remote SLM matching a specific set of characteristics.
  3. Service Availability
  4. Service Session Management
⚠️ **GitHub.com Fallback** ⚠️