Die sockets machen da nichts falsch. Du wirst dich von dem Gedanken trennen müssen das Dinge die du nacheinander (gestückelt) sendest auch nacheinander ankommen. Letzendlich ist das ganze nur eine Datenleitung in die du Daten reinschreibst und diese kommen dann auf der anderen Seite an. Wenn du schnell genug mehrere Daten hintereinander in die Leitung stopfst wird entsprechend der Packetgröße von
TCP/
IP der maximale zusammenhängende Puffer gesendet.
Genau so ist es auch umgekehrt. Wenn du ein großes Datenpacket sendest was größer der
TCP/
IP Packetgröße ist, wird dieses in einzelnen (kleinen) Stücken nacheinander ankommen.