Client node

Client node is a SONM component that provides a uniform API to access SONM core functions for external software (GUI, CLI).

Client node has functions for Customer and Supplier, that are provided by Client node API. And Client node takes part in automatic processes, where Customer and Supplier does not participate.

Functions for Customer

Manage orders

Customers can place and cancel BID orders on SONM market. He can also list and filter current orders on Market.

For BID orders placed by Customer Client node automatically searches matching orders on Market. If matching order found, the deal is created.

Manage deals

Client node creates deal automatically for placed BID orders. Client node also allows creating Deal based on selected ASK order.

Client node enables Deal monitoring and managing Deal Change Requests.

Run and control tasks

Task consists of two parts: description and image. Description is sent through UI (CLI or Wallet) - Client node - Worker node. Image can be pushed by Customer to Docker registry or it can be pushed directly to the Worker via push method.

Client node provides functions:

  • start task
  • gets task list and task status from Worker
  • get task logs
  • stop task
  • push task image
  • pull task image (results)

After task stop the resulting image may be received from Worker.

Functions for Supplier

Supplier's Client node interacts with Workers using Worker Management API. Interaction is over open channels, encrypted with TLS. Functions:

  • Confirm master/slave binding. Function initiates by Supplier in GUI/CLI.
  • Monitor Workers, get information about configuration. Function initiates by Supplier in GUI/CLI.

Create ASK plans on Workers to publish ASK orders. Function initiates by Supplier in GUI/CLI and is used by Optimus. ASK plans are automatically published on the Market as ASK orders, when underlying Worker resources are free. Worker automatically scans Market for orders matching hos ASK orders and initiates deal creation for found candidates.