-
Notifications
You must be signed in to change notification settings - Fork 4
Message Framing
Joshua Scott edited this page Oct 2, 2018
·
6 revisions
KingsIsle Networking Protocol (KINP) uses a hybrid delimited/length-prefixed approach to message framing. Each message is prefixed with a 2-byte sequence, "0xF00D", in little-endian byte order. We've decided to name this the "Start Signal", as it indicates the beginning of a message, however, it can also be referred to as the "Food Header". After receiving the start signal, the length of the incoming message is sent as an unsigned 2-byte integer in little-endian byte order, followed by the message payload.
| Name | Type | Description |
|---|---|---|
| startSignal | uint16_t | Always 0xF00D. Indicates the start of a message. |
| length | uint16_t | The length of the message payload. |
| payload | uint8_t[length] | The message payload. |
Note: This same structure is used regardless of the underlying transport protocol (TCP/UDP).
- Introduction
- Data Markup Language (DML)
- Property Class System
- Work in Progress
- KingsIsle Networking Protocol (KINP)
- Sessions
- Message Framing
- Message Structure
- Control Messages
- DML Messages