DocMaboul a écrit :
Bonjour,
à votre place, je transmettrais les données en binaire.
Pour le protocole, je ferais quelque chose comme ce qui suit.
un header pour chaque message avec les champs suivants:
- IDMSG, identifiant unique de message
- TYPE, type de message
- HEADER_LENGTH, longueur des données du header (en cas de changement de protocole)
- DATA_LENGTH, longueur des données hors header
Après, selon le type de chaque message, un format particulier, toujours en binaire. Par exemple, pour envoyer "<connexion><joueur ip=0.0.0.0 port=1600></connexion>"
Un entier sur quatre octets pour l'ip
Un entier sur deux octets pour le port
C'est pas très compliqué à écrire, c'est maintenable et performant.
|