the client should have freedom to change the contents of data. I suggest the following minimum packet content rule. Layout: |w[0]|w[1]|...|w[n-2]|w[n-1]| Content: w[0]: sequence number w[1]...w[n-2]: sender-defined w[n-1]: checksum of w[0]...w[n-2]