Appendix 4.A Limits and Defaults

The values a Peios service manager uses. A manager MAY use different ones; where a value is configurable, it MUST be discoverable to an administrator through the same surface that sets it.

4.A.1 Control channel #

BoundValueConfigurableDefined in
Socket path/run/services/peinit/control.sockNo§4.4
Concurrent connections32Yes§4.4
Request size65536 bytes, excluding the terminating newlineYes§4.4
Idle timeout30 secondsYes§4.4
Listen backlog32No§4.4

4.A.2 Operations #

BoundValueDefined in
Terminal record retention60 seconds§4.14
Operation lifetimeThe target service's own start or stop timeout§4.11

4.A.3 Notification channel #

BoundValueDefined in
Maximum datagram65536 bytes§4.16
Descriptors per datagram64§4.16
First returned descriptor3§4.20
Descriptor store maximumPer service; 0 disables§4.20
Timeout extension cap4 × the phase's base timeout§4.19

4.A.4 Composing the two channels #

A STATUS value a service sends on the notification channel is returned as status_text on the control channel. The notification datagram bound is 65536 bytes and the control response is not bounded by the request limit, so a status string that fits in a datagram is always returnable.

The bounds are stated at their values here rather than left to each implementation because a producer has no other way to learn them. Lowering either without telling anyone breaks every service that was sizing to the old one, and the failure — a truncated datagram, or a connection closed mid-request — does not name its cause.

Edit this page