Networking

Each instance (or server) of covid-ht can network with others to share data and improve their classification service.

Under this context, instances are called Nodes.

Networking is done through the REST API. Every service that implements it accordingly can network with the instance.

Each node has an unique identifier, the CHTUID (Covid-HT Unique IDentifier) - a case-sensitive 5 characters alphanumeric string that will identify the instance in network - set in the CHTUID setting.

Node creation and configuration is done with the admin interface (/admin/base/networknode).

Configuration

Besides a unique name, each Node has:

  • an internal user (User) and unit (Unit) associated with it for the incoming data from sharing if enabled, and

  • an external user (Remote User) with an authentication token (Remote User Token) for sending data to the node if sharing is enabled.

The internal user should have an Authentication Token (generated in the admin interface - /admin/authtoken/tokenproxy/) which should be provided to the node in order to be able to send data.

Data Sharing

If enabled, Data created within the local node will be sent to the external node based on the mode selected:

On Update

Will send the Data each time a record get created or updated

On Finished

Will send the Data only when it is marked as “Finished”

Each node will propagate that Data through its network also, this is where the CHTUID becomes strictly neccesary to identify where the Data was created - Data from a node’s unit may not be created by the node but propagated by it.

Classification Service

If Network Voting is enabled and is enabled for the node, each classification request recieved by the instance will generate another request to the node in order to obtain its vote.

Nodes are also External Classifiers, the same configuration applies.

Other Considerations

Agreggation of statistical estimators (classifiers) make assumptions on the data and the estimators being aggregated. Those assumptions may not hold in the case, so in general, the “votes” may be regarded as “opinions”.