This layer provides the main functions that are expected
to be available for each object and that allow for their management
in the IoT scenario. A basic set of services encompasses:
object dynamic discovery, status monitoring, and
service configuration. At this layer, some middleware proposals
include an expanded set of functionalities related to
the QoS management and lock management, as well as
some semantic functions (e.g., police and context management)
[32]. This layer might enable the remote deployment
of new services during run-time, in order to satisfy
application needs. A service repository is built at this layer
so as to know which is the catalogue of services that are
associated to each object in the network. The upper layer
can then compose complex services by joining services
provided at this layer.