Resource discovery

[This page gives an overview of the Fairhair draft specification dated March 2017. While the draft reflects Fairhair’s direction and scope at the timing of writing, the content is subject to change.]

More details about Fairhair's draft specifications can be found in the acompanying White Paper

Resource Discovery specification

Fairhair Resource Discovery is used to discover resources according their semantic attributes/metadata in commissioning and run-time scenarios of Fairhair deployments.

The main requirements addressed are:

  • seamless scalability from small (e.g. 10 devices) to large (1000+ devices) of networks
  • support for different lifecycle phases
  • limiting the effects of compromised devices (security)
  • support of sleepy devices

Fairhair Resource Discovery is based on IETF CoAP discovery using Link Format (RFC 6690) resource descriptions. Fairhair supports both distributed discovery – usually via multicast queries to the “/.well-known/core” resource of devices – as well as unicast queries and registrations to a central resource directory (draft-ietf-core-resource-directory). Both complementary discovery modes support identical queries, i.e. distributed discovery also supports multiple query arguments.

The Discovery specification defines the mechanisms for discovery while the main part of the semantics (resource descriptions) is left to the ecosystems. Future additions will be in the specification of the security solution for discovery (currently, the draft specification contains a collection of requirements) and potentially a mechanism for discovery of groups.