Protocol Overview

Our protocol is a multi-layered protocol.

As bottom most layer we have the Framing Layer. This does the most basic feature negotiation, compression/encryption, and allows splitting the stream into separate message frames.

On top of that rests the Message Layer. It handles handshaking, core setup, login, and afterwards provides the ability to request objects, initialize them, and run sync/rpc calls on them.

For our serialization, we describe the basic most functionality in Serialization, and for the different layers on top, in Handshake Messages and SignalProxy Messages.

Features for the Message Layer level feature negotiation are specified in Features.

The sync calls, the sync object serialization, and rpc calls are specified in SignalProxy Objects and SignalProxy RPC Calls.

Our business logic is based solely on these sync, init, and rpc calls. It will be described at a later time.

Last update: 2022-02-23