-
Paquet socket bsd
Bonsoir, c'est encore moi.
J'aimerai comprendre pourquoi avec Qt lorsqu'ont envoi des données ont crée des paquets du style [size][content]
Alors que sur la plupart des codes client/serveur que j'ai pu voir en c ne l'utilise pas, les données sont envoyé sans vérifier la taille..
Es-ce une protection supplémentaire pour éviter de perdre des données ?
Merci d'avance.
-
Hmm.
Quand on crée un datagramme, on spécifie toujours la taille. L'appel système POSIX « send() » par exemple, en dehors de toute bibliothèque tierce comme Qt, l'exige. Par contre, il est possible que d'une part, ce soit une connexion de type flux qui soit ouverte (formellement du TCP/IP), auquel cas c'est un flot d'octets en continu qui est transmis, comme vers un fichier ou un tube et que, d'autre part, il soit utilisé des fonctions où la détection de la taille est implicite, gérant des chaînes de caractères (détection d'un zéro final) ou des objets (taille liée au type de l'objet proprement dit et donc implicitement connue).