Les jeux persistants massivement Multijoueurs : problèmes techniques Vincent Roudaut MASTER M2 ESTC/CAM
Introduction Nombre de joueur massif : une nouveauté dans le monde du jeu En ligne : les gens veulent des jeux sociaux Univers persistant : virtuel en temps continu ! Un gameplay original Soulève des difficultées inédites
Problématique Cohérence Spatiale Temporelle Disponibilité / performance Db Serveur : scalabilité Sécurité Coté client et serveur Réseau Backbone = internet
Jeux classiques et jeux massivement multijoueurs leurs points communs la cohérence a a gérer mais dans une linéarité un serveur d authentification leurs différences imprévisibilité du nombre de joueurs Persistance du jeu difference d echelle
Architecture centralisée Techniquement plus simple Techniquement plus simple Necessite des technique de repartition de charge Necessite des technique de repartition de charge Existence dune limite dechelle Existence dune limite dechelle Dépendance du serveur Dépendance du serveur
Architecture distribuée Cohérence globale difficile Cohérence globale difficile Théoriquement meilleur scalabilité Théoriquement meilleur scalabilité Problème pour la persistance Problème pour la persistance
Methodes utilisée en C/S Optimisation de la bande passante Optimisation de la bande passante Dead reckoning Dead reckoning Inspiré du militaire Inspiré du militaire Plusieurs formes Plusieurs formes Repartition en localité virtuelle Repartition en localité virtuelle Utilisation de hierarchies dynamiques Utilisation de hierarchies dynamiques Synchronisation Synchronisation Sntp en distribué Sntp en distribué
Architectures robustes en C/S modèle miroir : réplication du jeu modèle miroir : réplication du jeu tolérance aux pannes tolérance aux pannes cher et plus lourd à gérer cher et plus lourd à gérer modèle en grille modèle en grille très bonne tolérance aux pannes, réparti les connections très bonne tolérance aux pannes, réparti les connections temps de latence augmenté temps de latence augmenté modèle hiérarchique modèle hiérarchique allocation dynamique fonction des joueurs allocation dynamique fonction des joueurs les frontières se recoupent les frontières se recoupent mais on a toujours le problème de perte de ressource mais on a toujours le problème de perte de ressource
Méthodes distribuées Pb envois/retour multiples Pb envois/retour multiples Multicast Multicast Isolation des plus proches voisins Isolation des plus proches voisins Pb sécurité Pb sécurité Surveillance anonyme et dynamique des pairs Surveillance anonyme et dynamique des pairs
Le modèle everquestLe modèle everquest C/S C/S isolation géométrque des zones joueurs par serveur isolation géométrque des zones joueurs par serveur un changement de zone induit un changement de serveur, le serveur de login autorise le transfert un changement de zone induit un changement de serveur, le serveur de login autorise le transfert hypothèse = les joueur sont répartis de manière gaussienne hypothèse = les joueur sont répartis de manière gaussienne le limitations ne sont pas naturelles (temps d attente) le limitations ne sont pas naturelles (temps d attente)
Conclusion Le besoin d'évolution du domaine API standards (portabilité et perrenité) prise en compte de divers clients ( téléphone mobiles) Optimiser la bande passante Implication de l'évolution de la puissance des clients
bibliographie