Some of code examples here serialize data length as 8 bytes, e.g.
according to the old protocol specification:
Nowadays data length is supposed to be 4 bytes and another 4 bytes are "reserved":
P.S. It also says that
When compression is enabled (0x02 flag) the <RESERVED> bytes contains uncompressed data size, 32 bit number in little-endian format.
...but does not say what <RESERVED> bytes should be when compression is not enabled.
P.P.S. Use of <code> seems inappropriate to list parts of protocol header and looks a bit ugly. A list or a table would look better.