the workstation on the left submits messages of 128, 64, and 32 bytes destined for the workstation on the right. The receiving workstation issues three recv calls with a 256-byte buffer. Each call in succession returns 128, 64, and 32 bytes. The first call to recv does not return all three packets even if all the packets have been received. This logic is known as “preserving message boundaries”
How's preserving message boundaries
implemented under the hood?