REDAC Network Protocol

Shared Datatypes

The following data types are shared between several messages.

Envelope

Base Message Classes

All messages are based on the pyanabrid.redac.protocol.messages.Message base class. Requests and responses have additional common functionality in the pyanabrid.redac.protocol.messages.Request and pyanabrid.redac.protocol.messages.Response base classes respectively.

Initialization

These messages are mostly used once during the initialization phase of the controller or the client library.

Session Management

To facilitate multi-user support and a minimum form of authentication without additional scheduling software (like SLURM), your controller can be configured to require starting a session and reserving resources before any other command using those resources can be executed.

Entity Configuration

After potentially reserving certain entities for a session, it is usually necessary to configure them for an upcoming run.

Run Management

To start the analog computer with the previously set configuration, a run is started. A hybrid computation may require multiple runs (e.g. to gather statistical data) that are executed during one session.

Internal Messages

Some messages are intended to be used in the internal communication between the hybrid controller and the carrier boards. For testing purposes, you can also generate and send them from the digital control computer.

Other Messages

Miscellaneous messages are documented below.