Proto¶
The protocol between server and workers: one WebSocket at /proto with binary frames from the Proto derive. Sessions pass through version agreement, handshake, authorization, capabilities, then the job loop.
flowchart LR
conn[Connection] --> cap[Capabilities and Assignment]
cap --> jobs[Jobs]
jobs --> transfer[Transfer]
conn --> fed[Federation]
-
Handshake, authorization, server restarts, server stop and cache sessions.
-
Worker capabilities, job offers and pull-based assignment.
-
Flake and build jobs, progress reports, failure kinds and aborts.
-
NAR uploads and downloads, logs, download progress and credentials.
-
Every message on
/protowith its fields and lane. -
gradient-proxy: a pool of workers joined to a server as one worker.
Related¶
- Scheduler: the logic choosing a worker's next job
- Add a Remote Worker: the setup side