TCP/IP send data and receive data sequence <p>I am using uIP Open Source TCP Stack on my Embedded Microcontroller. I have read many post of TCP/IP which looks similar to this question but still I couldn't get the answer I was looking for. Thus I am asking this.</p> <p>I know send data will be saved in Ethernet Controller(Server) Tx Buffer in sequence. And Receive data will be saved in Ethernet Controller(Client) Rx Buffer in sequence. </p> <p>If I have 100 bytes of message which I send (using PSOCK_SEND method ) all together to client using TCP. I know if I send all together receiver will guarantee receive all together.</p> <p>Now If I send two 50 bytes one by one, it there any possibility that second 50 bytes sent can be received first. And first 50 bytes sent can be received second?</p> <p>My understanding is that this is possible in HTTP Protocol. But in TCP regardless of bytes sent in two steps or one, the receive will receive in the same sequence. So TCP will keep sending first 50 bytes until it will be successful or time out. And only then it will send second 50 bytes.</p>