Robert B.: C Sockets und Fragmentierung

Beitrag lesen

Moin encoder,

Ich möchte Daten in C (Linux) über Sockets senden und bin am Überlegen wie ich die Daten "verpacke" damit der Empfänger weiß wann er aus den vielen eingehenden Paketen eine komplette Nachricht zusammengesetzt hat.

Rein prinzipiell kannst du mit read auch eine große Datenmenge auf einmal von einem Socket lesen.

Gibt es dafür nichts fertiges? Jeder der mit Sockets hantiert braucht das doch früher oder später.

Ich habe sowas schon mehrmals selbst gemacht in verschiedenen Sprachen. Größe vorweg schicken, der Empfänger sammelt dann Daten auf bis alles komplett ist. Aber irgendwann fragt man sich eben ob das wirklich jeder immer wieder und wieder alles selbst macht? Eigentlich ist das doch so grundlegend dass es fast schon eine Standard C Bibliothek geben könnte, ich find nur nichts.

Es gibt dafür fertige Protokolle 😉 Ansonsten klingt deine Problembeschreibung nach dem Senden von Archiven über Sockets, also z.B. ar oder tar, meinetwegen auch ZIP.

Viele Grüße
Robert