manual diseño infraestructura MMO.pdf

39
Manual para el diseño de infraestructuras MMO Autor: Miguel Ángel García del Moral Tutor: Juan Peralta Donate Universidad Carlos III de Madrid Escuela Politécnica Superior Ingeniería Técnica en Informática de Gestión

Transcript of manual diseño infraestructura MMO.pdf

Page 1: manual diseño infraestructura MMO.pdf

Manual para el diseño de infraestructuras MMO

Autor: Miguel Ángel García del MoralTutor: Juan Peralta Donate

Universidad Carlos III de Madrid

Escuela Politécnica Superior

Ingeniería Técnica en Informática de Gestión

Page 2: manual diseño infraestructura MMO.pdf

ÍNDICE

• Introducción• Objetivos• Problemática MMO• Tipos de juego• Concurrencia• Almacenamiento de datos• Arquitecturas de red• Protocolo de transporte• Transmisión de datos• Prueba de concepto• Gestión del proyecto• Conclusión• Líneas futuras

Manual para el diseño de infraestructuras MMO 2/39

Page 3: manual diseño infraestructura MMO.pdf

INTRODUCCIÓN

• El mercado del videojuego

• Evolución del videojuego

• Oportunidades de desarrollo amateur

• Componente social multijugador

Manual para el diseño de infraestructuras MMO 3/39

Page 4: manual diseño infraestructura MMO.pdf

OBJETIVOS

• Estudio de los problemas de un MMO

• Evaluación y selección de la alternativa más adecuada para un juego MMO concreto

• Desarrollo de prueba de concepto

Manual para el diseño de infraestructuras MMO 4/39

Page 5: manual diseño infraestructura MMO.pdf

PROBLEMÁTICA MMO

• Adecuación a la naturaleza del juego

• Concurrencia

• Arquitectura de red

• Protocolo de comunicaciones

• Orquestación en la comunicación

Manual para el diseño de infraestructuras MMO 5/39

Page 6: manual diseño infraestructura MMO.pdf

TIPOS DE JUEGO

• Desarrollo rápidoo Shooter

o Conducción

• Desarrollo pausadoo Estrategia

o RPG

o Social

Manual para el diseño de infraestructuras MMO 6/39

Page 7: manual diseño infraestructura MMO.pdf

ALMACENAMIENTO DE DATOS

• Ficheroso Ventajas: Velocidad L/E en ficheros de pequeño tamaño,

independencia de libreríaso Desventajas: Modificación de campos costosa, complejidad

en la restauración de datos combinados

• Bases de datoso Ventajas: Facilidad en operaciones de modificación,

recuperación de datos combinadoso Desventajas: Dependencia con un SGBD, seguridad de BD,

necesidad de conversión de datos, corrupción del fichero que contiene la BD

Manual para el diseño de infraestructuras MMO 7/39

Page 8: manual diseño infraestructura MMO.pdf

ALMACENAMIENTO DE DATOS Implementación

• Ficheroso DBJugadores.dat

o passwd.dat

Manual para el diseño de infraestructuras MMO 8/39

Usuario1:NombrePj-Grafico-CoordX-CoordY#NombrePj-Grafico-CoordX-CoordY#Usuario2:NombrePj-Grafico-CoordX-CoordY#NombrePj-Grafico-CoordX-CoordY#…

Usuario1:ClaveUsuario2:Clave…

Page 9: manual diseño infraestructura MMO.pdf

CONCURRENCIA

• Sockets bloqueantes y un único hilo de ejecución

Manual para el diseño de infraestructuras MMO 9/39

Page 10: manual diseño infraestructura MMO.pdf

CONCURRENCIA

• Sockets no bloqueante y un único hilo de ejecución

Manual para el diseño de infraestructuras MMO 10/39

Page 11: manual diseño infraestructura MMO.pdf

CONCURRENCIAImplementación

• Sockets bloqueantes y múltiples hilos de ejecución

Manual para el diseño de infraestructuras MMO 11/39

Page 12: manual diseño infraestructura MMO.pdf

ARQUITECTURAS DE RED

• Par a par (P2P)o Mejora la eficiencia cuantos más nodos

o Asimetría en ancho de banda de los nodos

o Seguridad en la transmisión de los datos

o Localización de nodos en la red

Manual para el diseño de infraestructuras MMO 12/39

o Napstero Audiogalaxy

o Ares Galaxyo Gnutella

o BitTorrento eDonkey

Page 13: manual diseño infraestructura MMO.pdf

ARQUITECTURAS DE RED

• Clústero Alto rendimiento, disponibilidad y eficiencia

o Detección y recuperación ante errores

o Baja eficiencia en aplicación transaccionales

Manual para el diseño de infraestructuras MMO 13/39

Page 14: manual diseño infraestructura MMO.pdf

ARQUITECTURAS DE RED

• Cliente – Servidoro Adecuación al problema mediante número de capas

o Independencia en escalabilidad

o Congestión en el tráfico de datos

o Necesidad de hardware específico

Manual para el diseño de infraestructuras MMO 14/39

2 capas 3 capas

Page 15: manual diseño infraestructura MMO.pdf

ARQUITECTURAS DE REDImplementación

• Arquitectura Cliente-Servidor 2 capaso Servidores Servidor de conexión

Servidor de login

Servidor de juego

o Cliente

Manual para el diseño de infraestructuras MMO 15/39

Page 16: manual diseño infraestructura MMO.pdf

ARQUITECTURAS DE REDImplementación

• Servidor de conexióno Tareas Registro de conexión/desconexión de servidores

Descubrimiento de red a clientes

Control de actividad de servidores

o Implementación Un único hilo de ejecución

Socket con cola de 10 clientes

Manual para el diseño de infraestructuras MMO 16/39

Page 17: manual diseño infraestructura MMO.pdf

ARQUITECTURAS DE REDImplementación

• Servidor de logino Tareas Autenticación de jugadores Gestión de personajes de jugadores Sincronización de datos de jugadores con el servidor de

juego

o Implementación Hilo de ejecución común de atención a servidores, socket

con cola de 10 clientes Hilo de ejecución bajo demanda dedicado a cliente

Manual para el diseño de infraestructuras MMO 17/39

Page 18: manual diseño infraestructura MMO.pdf

ARQUITECTURAS DE REDImplementación

• Servidor de juegoo Tareas Punto de comunicación entre jugadores

Comprobación de paquetes de datos transmitidos

o Implementación Hilo de ejecución común de atención a servidores,

socket con cola de 10 clientes

Hilo de ejecución bajo demanda dedicado al cliente

Manual para el diseño de infraestructuras MMO 18/39

Page 19: manual diseño infraestructura MMO.pdf

ARQUITECTURAS DE REDImplementación

• Clienteo Tareas Envío y recepción del estado del juego

Representación gráfica de los datos recibidos

Cálculo de lógica del juego

o Implementación Tres hilos de ejecución: Envío de datos a servidores,

recepción de datos de servidor de juego, cálculo de lógica

Dos sockets para comunicación

Manual para el diseño de infraestructuras MMO 19/39

Page 20: manual diseño infraestructura MMO.pdf

PROTOCOLO DE TRANSPORTE

• TCPo Servicio confiable de entrega de datoso Control de flujoo Orden en la transmisióno Incrementa la transmisión de datos

• UDPo Envío de datos rápido y sencilloo Pérdida de paqueteso Reordenación en la recepción de paquetes grandes

• Híbrido TCP/UDPo Pérdida de eficiencia

Manual para el diseño de infraestructuras MMO 20/39

Page 21: manual diseño infraestructura MMO.pdf

PROTOCOLO DE TRANSPORTEImplementación

• Protocolo TCPoMinimizar el envío de paquetes cliente

o Reducción de envío de paquetes servidor

o Latencia y ajuste de coordenadas

Manual para el diseño de infraestructuras MMO 21/39

Page 22: manual diseño infraestructura MMO.pdf

TRANSMISIÓN DE DATOS

• Orquestación en el envío de paqueteso Protocolo de comunicación

o Imposiciones de infraestructura

o Frecuencia de envío

• Seguridad en la información comunicadao Integridad de los datos transmitidos

o Cifrado de datos

Manual para el diseño de infraestructuras MMO 22/39

Page 23: manual diseño infraestructura MMO.pdf

• Paquetes de datoso Estructura

o Tipos de elementos Cadena de caracteres: codificación ASCII Enteros: codificados a razón 1B=2n + bit de signo

TRANSMISIÓN DE DATOS

Tamaño mapa Mapa Elemento 1 Elemento 2 . . .

Elemento = Tamaño elemento

Contenido elemento

Manual para el diseño de infraestructuras MMO 23/39

Page 24: manual diseño infraestructura MMO.pdf

TRANSMISIÓN DE DATOS

• Alta en el servidor de conexióno Servidor de login

o Servidor de juego

Manual para el diseño de infraestructuras MMO 24/39

Page 25: manual diseño infraestructura MMO.pdf

TRANSMISIÓN DE DATOS

• Alta en el servidor de conexióno Cliente

Manual para el diseño de infraestructuras MMO 25/39

Page 26: manual diseño infraestructura MMO.pdf

TRANSMISIÓN DE DATOS

• Funciones del servidor de logino Conexión y autenticación del cliente

Manual para el diseño de infraestructuras MMO 26/39

Page 27: manual diseño infraestructura MMO.pdf

TRANSMISIÓN DE DATOS

• Funciones del servidor de logino Selección de personajes

Manual para el diseño de infraestructuras MMO 27/39

Page 28: manual diseño infraestructura MMO.pdf

TRANSMISIÓN DE DATOS

• Funciones del servidor de juegoo Conexión en sentido cliente -> servidor

Manual para el diseño de infraestructuras MMO 28/39

Page 29: manual diseño infraestructura MMO.pdf

TRANSMISIÓN DE DATOS

• Funciones del servidor de juegoo Conexión en sentido servidor -> cliente

Manual para el diseño de infraestructuras MMO 29/39

Page 30: manual diseño infraestructura MMO.pdf

TRANSMISIÓN DE DATOS

• Funciones del servidor de juegoo Diálogo entre cliente y servidor

Manual para el diseño de infraestructuras MMO 30/39

1 ID_SPJ, MOVIMIENTO, X, Y

SPJ

Cliente

1

1… …

Page 31: manual diseño infraestructura MMO.pdf

TRANSMISIÓN DE DATOS

• Baja en el servidor de conexióno Servidor de login

o Servidor de juego

Manual para el diseño de infraestructuras MMO 31/39

Page 32: manual diseño infraestructura MMO.pdf

Prueba de concepto

• Anti-héroeoMMO de tipo social

o 2D

oMicrosoft XNA 3.5

Manual para el diseño de infraestructuras MMO 32/39

Page 33: manual diseño infraestructura MMO.pdf

GESTIÓN DEL PROYECTO

• Diagrama Gantto Estimado

o Real

Manual para el diseño de infraestructuras MMO 33/39

Page 34: manual diseño infraestructura MMO.pdf

GESTIÓN DEL PROYECTO

• Presupuesto

Manual para el diseño de infraestructuras MMO 34/39

Page 35: manual diseño infraestructura MMO.pdf

GESTIÓN DEL PROYECTO

• Presupuesto

Manual para el diseño de infraestructuras MMO 35/39

Page 36: manual diseño infraestructura MMO.pdf

GESTIÓN DEL PROYECTO

• Comercialización de un desarrollo MMOo Cuota mensual

oMicro-transacciones

o DLC

o Publicidad

Manual para el diseño de infraestructuras MMO 36/39

Page 37: manual diseño infraestructura MMO.pdf

CONCLUSIONES

• No existe una solución genérica MMO

• Selección de plataforma de desarrollo

• Plantilla multidisciplinaria

• Interés por el desarrollo de videojuegos

Manual para el diseño de infraestructuras MMO 37/39

Page 38: manual diseño infraestructura MMO.pdf

LÍNEAS FUTURAS

• Bases de datos• Diseño de contenido• Composición de sonido• Optimización de recursos• Ajuste de coordenadas por latencia• Reforzar la jugabilidad

o Sistema de lista de amigoso Interacción entre usuarios

Manual para el diseño de infraestructuras MMO 38/39

Page 39: manual diseño infraestructura MMO.pdf

PREGUNTAS

Manual para el diseño de infraestructuras MMO 39/39