6/SSTP - Service State Protocol






Service State Protocol




Pavel Císař <pcisar@users.sourceforge.net>

Service State Protocol (SSTP) is designed for unified creation, processing, and exchange of Service state information within Firebird Butler system.


Copyright (c) 2018 The Firebird Butler Project.

This Specification is distributed under Creative Commons Attribution-ShareAlike 4.0 International license.

You should have received a copy of the CC BY-SA 4.0 along with this document; if not, see https://creativecommons.org/licenses/by-sa/4.0/

Change Process

This Specification is a free and open standard and is governed by the Consensus-Oriented Specification System (COSS) (see “2/COSS - Consensus-Oriented Specification System”).


This specification is still incomplete (work in progress), hence the COSS change process is not yet fully applicable. All ideas and change proposals SHOULD be presented and discussed in Firebird Butler forum.


The key words “MUST”, “MUST NOT”, “REQUIRED”, “SHALL”, “SHALL NOT”, “SHOULD”, “SHOULD NOT”, “RECOMMENDED”, “MAY”, and “OPTIONAL” in this document are to be interpreted as described in RFC2119.

1. Goals

The purpose of this specification is to define unified data format, and formal rules for exchanging state information between Butler Service and its Client. Its goals are:

  1. Define unified, flexible and extensible data format for Service and Connection state information, suitable for diagnostic and control purposes.

  2. Define serialization format for such state information suitable for transmission in 4/FBSP Data Frames.

  3. Define the method of publishing such state information through ZeroMQ PUB sockets.

  4. Define a base API for transmitting such state information between the Firebird Butler Service and the Client.

  5. Define a base API for changing the Service and Connection state by the Client.

2. Implementation


Specification body.