public int Serialize(byte[] buffer, int offset)
{
byte header = (byte)((byte)Type << 4);
header |= (byte)(this.Nack ? 0x02 : 0x00);
header |= (byte)(this.Server ? 0x01 : 0x00);
buffer.WriteUInt8(offset++, header);
buffer.WriteUInt8(offset++, InvokeId);
buffer.WriteUInt8(offset++, SequenceNumber);
buffer.WriteUInt8(offset++, ActualWindowSize);
return offset;
}