J'avais lu un article ( http://www.bookofhook.com/Article/GameDevelopment/MultiplayerProgramming.html ) sur la programmation de jeux en réseaux. J'avais trouvé amusant de voir que la plupart des notions utilisées dans les jeux en réseau avec une architecture distribuée (pas de serveur central) sont les mêmes que celles de l'algorithmique distribuée. (il y a des slides de cours sur http://sardes.inrialpes.fr/people/krakowia/Enseignement/DEA/SR/ - le site a l'air down, mais il est dans le cache google)
Dans ton cas, un protocole fermé ne t'assure en rien que personne ne pourra tricher : il suffit de reverse-engineerer le proto pour pouvoir le faire. Donc tu es obligé, au niveau du serveur (s'il y en a un) ou de l'ensemble des pairs (si n'y a pas de serveur) de vérifier que les données par un client sont valides.
Dans le cas d'un réseau pair à pair, ça peut se faire avec des algos d'élection ou de consensus. Mais en général, ca fonctionne plutot en assurant une redondance des calculs (calculer la même chose sur plusieurs noeuds, et comparer les résultats). Certains réseaux à la BOINC/Seti et cie utilisent un système de notation de noeud : plus tu envoies des résultats justes, plus il te fait confiance, et moins il revérifie.
# Il suffit de valider les données recues
Posté par Lucas . En réponse au journal Faille de l'open-source ?. Évalué à 1.
Dans ton cas, un protocole fermé ne t'assure en rien que personne ne pourra tricher : il suffit de reverse-engineerer le proto pour pouvoir le faire. Donc tu es obligé, au niveau du serveur (s'il y en a un) ou de l'ensemble des pairs (si n'y a pas de serveur) de vérifier que les données par un client sont valides.
Dans le cas d'un réseau pair à pair, ça peut se faire avec des algos d'élection ou de consensus. Mais en général, ca fonctionne plutot en assurant une redondance des calculs (calculer la même chose sur plusieurs noeuds, et comparer les résultats). Certains réseaux à la BOINC/Seti et cie utilisent un système de notation de noeud : plus tu envoies des résultats justes, plus il te fait confiance, et moins il revérifie.