Skip to content

Reliable Sliding Window

Yannik Marchand edited this page Jan 28, 2024 · 1 revision

The reliable sliding window ensures that all packets arrive and in the correct order. Large messages are fragmented. The reliable sliding window is used by the following protocols:

When a reliable sliding window is used, messages are wrapped as follows:

Up to 5.12:

Offset Size Description
0x0 2 Flags
0x2 2 Payload size
0x4 4 Padding
0x8 4 Sequence id
0xC 4 Acknowledgement id
0x10 8 Extra acknowledgements
0x18 Payload

5.14:

Offset Size Description
0x0 2 Flags
0x2 2 Payload size
0x4 2 Sequence id
0x6 8 Unknown
0xE 8 Unknown
0x16 Payload

5.17 - 5.19:

Offset Size Description
0x0 1 Flags
0x1 1 Stream id
0x2 2 Payload size
0x4 2 Sequence id
0x6 2 Lowest sequence id pending ack
0x8 1 Number of multicast constant ids (N)
0x9 8*N Multicast constant ids
Payload

5.31:

Offset Size Description
0x0 1 Flags
0x1 1 Stream id
0x2 2 Payload size
0x4 2 Sequence id
0x6 2 Unknown
0x8 1 Unknown
0x9 4*N Unknown
Payload

Flags

Flag Description
1 Has payload
2 First fragment
4 Last fragment
8 Is initialize
16 Is compressed
32 Reset
64 Reset ack
Clone this wiki locally