Ambientes Virtuales Multiusuario Diego Terront [email protected].

29
Ambientes Virtuales Multiusuario Diego Terront [email protected]

Transcript of Ambientes Virtuales Multiusuario Diego Terront [email protected].

Page 1: Ambientes Virtuales Multiusuario Diego Terront d-terron@uniandes.edu.co.

Ambientes Virtuales Multiusuario

Diego [email protected]

Page 2: Ambientes Virtuales Multiusuario Diego Terront d-terron@uniandes.edu.co.

Ambientes Virtuales Multiusuario

Agenda

Definición

Algoritmo de perros y conejos

Aplicacio

Page 3: Ambientes Virtuales Multiusuario Diego Terront d-terron@uniandes.edu.co.

Ambientes Virtuales Multiusuario

Definición

• Sistema colaborativo de sistemas de RV en red.

• Capacidad de interacción entre usuarios en tiempo real.

• Usuarios comparten información y manipulan objetos en el ambiente compartido

• Usan gráficos en 3d y se apoyan en las técnicas de RV para generar inmersión

Page 4: Ambientes Virtuales Multiusuario Diego Terront d-terron@uniandes.edu.co.

Ambientes Virtuales Multiusuario

Estándares

 

• Rendering y GráficosTienen poco o nada que ver con aspectos de comunicaciones

• Communications MiddlewareEnfocados en la conectividad de usuarios para compartir mundos

Dedicados a networking, actualización de estados del mundo y compartición de objetos.

• Living Worlds• Open Community• High Level Architecture (HLA)

Page 5: Ambientes Virtuales Multiusuario Diego Terront d-terron@uniandes.edu.co.

Ambientes Virtuales Multiusuario

Estándares

 

• Communications Middleware

Living Worlds

Interfaz comun para VRML 2.0 que soporta interacción basica en escenas virtuales multi-usuario.

Permite conocer que alguien llegó, salió, envia mensaje o cambia algo en escena.

No esta totalmente involucrado en los aspectos de comunicaciones.

Page 6: Ambientes Virtuales Multiusuario Diego Terront d-terron@uniandes.edu.co.

Ambientes Virtuales Multiusuario

Estándares

 

Communications Middleware

Open Community

Del Mitsubishi Electric Research Lab.

Librería con servicios detallados y esenciales para aplicaciones cooperativas multiusuario.

Utliza un protocolo híbrido que permite manejar varios modos de transporte de los datos e informacion para VR.

Soporta multicast, streaming audio, compartición de información deobjetos, manejos de conexión entre procesos y de actualización de objetos

Page 7: Ambientes Virtuales Multiusuario Diego Terront d-terron@uniandes.edu.co.

Ambientes Virtuales Multiusuario

Estándares

 

• Communications Middleware

High Level Architecture (HLA)

Del U.S. Defense Modeling and Simulation Office

Framework genérico que permita incorporar cualquier objeto virtual a la simulación

Define una serie de servicios estándares e interfaces para ser usados por todos los participantes.

Page 8: Ambientes Virtuales Multiusuario Diego Terront d-terron@uniandes.edu.co.

Ambientes Virtuales Multiusuario

Aspectos de Red

 

• Ancho de Banda

• Distribución de la Red

• Latencia

• Confiabilidad

Page 9: Ambientes Virtuales Multiusuario Diego Terront d-terron@uniandes.edu.co.

Ambientes Virtuales Multiusuario

Ancho de Banda

 

• Influenciado por lo que se tiene en recursos frente a lo que se necesita desarrollar.

• LAN/WAN hacia BroadbandRedes Caseras, Cable Modems, ADSL. GigaBit Ethernet, Wireless

• Número de participantes/Nodos

• Distribución (Multicast vs Broadcast)

• Tecnicas de Dead-Reckoning

Page 10: Ambientes Virtuales Multiusuario Diego Terront d-terron@uniandes.edu.co.

Ambientes Virtuales Multiusuario

Distribución de Red

 

• Punto a Punto: Visor CAD compartido

• Broadcast y multicast: Red Mbone. Aplicaciones como RealAudio.

• Cliente-ServidorJava, Web, VRML

• Mezclados HLA, Open Community

Page 11: Ambientes Virtuales Multiusuario Diego Terront d-terron@uniandes.edu.co.

Ambientes Virtuales Multiusuario

Latencia y Desincronización

 

• El lado oscuro de los ambientes virtuales en red

• Se pierde sincronización

• Influenciado por :

DistanciaProtocolo de Red (TCP, UDP, PPP, ATM)CompresiónCongestión de Enrutamiento: TCP (retrazo variable)Software de por medio (OS)Dispositivos I/O (serialización)Secuenciamiento de paquetes

Page 12: Ambientes Virtuales Multiusuario Diego Terront d-terron@uniandes.edu.co.

Ambientes Virtuales Multiusuario

Latencia y Desincronización 

Ajustes

• Dead Reckoning con smoothing (DIS)

• Medición de la latencia con RTCP o PING

• Sincronización y buffering con RTP

• Garantias de Calidad de Servicio (QoS)

• Protocolo apropiado

• Mejor esquema de compresión

Page 13: Ambientes Virtuales Multiusuario Diego Terront d-terron@uniandes.edu.co.

Ambientes Virtuales Multiusuario

Latencia y Desincronización

 

Ajustes de la Industria de Juegos

Especializar la red

Crear arenas localizadas

Esperar que el Internet mejore

Page 14: Ambientes Virtuales Multiusuario Diego Terront d-terron@uniandes.edu.co.

Ambientes Virtuales Multiusuario

Confiabilidad

 

• Necesita garantizarse que algunos datos serán recibidos

• Algunos datos son menos críticosVectores de movimientoPaquetes de voz

• TécnicasReplicación (redundancia)Garantias variablesCalidad de Servicio (QoS)

Page 15: Ambientes Virtuales Multiusuario Diego Terront d-terron@uniandes.edu.co.

Ambientes Virtuales Multiusuario

Dead Reckoning

• Desarrollado como parte del protocolo DIS (Distributed Interactive Simulation).

• Desarrollado por los militares navales para aplicaciones de simulación de batalla.

• Trata de resolver los problemas de compatibilidad, ancho de banda y latencia

Page 16: Ambientes Virtuales Multiusuario Diego Terront d-terron@uniandes.edu.co.

Ambientes Virtuales Multiusuario

Dead Reckoning

• No se envia solo la ubicación de una entidad. Además envía el instante de tiempo y el vector de velocidad.

• Cada host extrapola la ubicación de la entidad sin actualizaciones adicionales

• Actúa para orientación y para localización

• Puede combinarse con algoritmos predictivos para mayor eficacia

• Apoyo en protocolos no orientados a conexión (UDP)

• No es infalible ante movimientos impredecibles

Page 17: Ambientes Virtuales Multiusuario Diego Terront d-terron@uniandes.edu.co.

Ambientes Virtuales Multiusuario

Dead Reckoning

Ejemplo

Page 18: Ambientes Virtuales Multiusuario Diego Terront d-terron@uniandes.edu.co.

Ambientes Virtuales Multiusuario

Multicasting• Aún con DR el problema con redes broadcast permanece

• Solución usar multicasting

• Tiene características de Broadcasting y de P2P

• Cada host puede pertenecer a un número de grupos multicast

• Cada grupo posee su propia dirección IP de internet

• Un mensaje al grupo llega a todos sus miembros

• Desafortunadamente no es universal.

• MBone producto de asociación de máquinas con capacidad multicast

Page 19: Ambientes Virtuales Multiusuario Diego Terront d-terron@uniandes.edu.co.

Ambientes Virtuales Multiusuario

Multicasting

• Solución para mundos en celdas

• Manejo de Areas de Interés

• Cada celda equivale a un grupo y trata solo los hosts asignados a ella

• El acceso de un host a un grupo equivale a salir de una celda y pasar a esta nueva

Page 20: Ambientes Virtuales Multiusuario Diego Terront d-terron@uniandes.edu.co.

Ambientes Virtuales Multiusuario

Consideraciones

• No se puede asumir siempre que cada host tiene inicialmente la base de datos del mundo.

• Se debe esperar identificar a cada entidad de la simulación y poder acceder a su información

• Contar con mecanismos de indentificación de host y de sus entidades. (IP=host, id=entidad)

• Manejo del tiempo consistente. NTP (Network Time Protocol)

Page 21: Ambientes Virtuales Multiusuario Diego Terront d-terron@uniandes.edu.co.

Ambientes Virtuales Multiusuario

Arquitecturas 

Point to Point

Principios en unicasting.No son escalablesMensajes enviados con complejidad O(n^2)

Broadcasting y multicasting

Como DIS apoyado en técnicas de DREscalabilidad intermediaMensajes complejidad O(n)Multicast particiona el espacio en áreas

Page 22: Ambientes Virtuales Multiusuario Diego Terront d-terron@uniandes.edu.co.

Ambientes Virtuales Multiusuario

Arquitecturas

 

Cliente Servidor

Versátil para manejo de estado de muchos usuarios.

Reduce considerablemente consumo de ancho de banda

Puede incorporar mecanismos de filtro que reduzcan aún mas las actualizaciones dirigidas a los clientes.

Múltiples Servidores

Para el caso de divisiones espaciales, un servidor dedicado a cada espacio.

Page 23: Ambientes Virtuales Multiusuario Diego Terront d-terron@uniandes.edu.co.

Ambientes Virtuales Multiusuario

Arquitecturas 

Arquitectura FIRETEAM (juego)

Page 24: Ambientes Virtuales Multiusuario Diego Terront d-terron@uniandes.edu.co.

Ambientes Virtuales Multiusuario

Aplicaciones

Simulación Militar

Page 25: Ambientes Virtuales Multiusuario Diego Terront d-terron@uniandes.edu.co.

Ambientes Virtuales Multiusuario

AplicacionesJuegos

FPS : Doom, QuakeEstrategy: AOESimulation: GP3, MSFlight SimulatorConsolas de juegos: PS2, X-Box

Page 26: Ambientes Virtuales Multiusuario Diego Terront d-terron@uniandes.edu.co.

Ambientes Virtuales Multiusuario

Conferencia Virtual

Aplicaciones

Page 27: Ambientes Virtuales Multiusuario Diego Terront d-terron@uniandes.edu.co.

Ambientes Virtuales Multiusuario

 Tele Medicina

Aplicaciones

Page 28: Ambientes Virtuales Multiusuario Diego Terront d-terron@uniandes.edu.co.

Ambientes Virtuales Multiusuario

 

EducaciónEntrenamientoAprendizaje

Aplicaciones

Page 29: Ambientes Virtuales Multiusuario Diego Terront d-terron@uniandes.edu.co.

Ambientes Virtuales Multiusuario

Retos