networked virtual environments n.
Skip this Video
Loading SlideShow in 5 Seconds..
Networked Virtual Environments PowerPoint Presentation
Download Presentation
Networked Virtual Environments

Networked Virtual Environments

137 Views Download Presentation
Download Presentation

Networked Virtual Environments

- - - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript

  1. Networked Virtual Environments Helmuth Trefftz Eafit University - Medellín, Colombia

  2. Introduction • Why are you here?

  3. Associate Professor at Eafit University, Medellín, Colombia. Director of Virtual Reality lab at Eafit. Involved in NVEs since 1996. Ph.D. in Computer Engineering in 2001 (Rutgers University, NJ). Ph.D. thesis: Heterogeneity in Virtual Environments. Helmuth Trefftz

  4. Agenda • Introduction (15´) • History (10´) • Networking Concepts (25) • Architectures (20´) • Shared State (45´) • Scalability and Performance (45´) • Research Topics (30´) • Toy application (30´) • Summary and Conclusions (10´)

  5. Why Networked Virtual Environments? 1. Technology is here: Powerful commodity 3D graphics accelerators on every PC. Internet is almost everywhere (wired or wire-less). 2. Need for applications is here: Multiplayer games Military combat training Design teams across continents … Introduction

  6. Introduction • What is a Networked Virtual Environment? • “A Networked Virtual Environment is a software system in which multiple users interact with each other in real-time, even though those users may be located around the world” [Singhal/Zyda 1999]

  7. “Collaborative Virtual Environments (CVEs) are online digital places and spaces where we can be in touch, play together and work together, even when we are, geographically speaking, worlds apart… In CVEs we can share the experience of worlds beyond the physical” [Churchill/Snowdon/Munro 2001] Introduction

  8. Key elements: A shared sense of space (common virtual space) A shared sense of presence (avatars) A shared sense of time (real-time) A way to communicate (text, voice,…) A way to interact (among users and with the virtual world) TELEPRESENCE Introduction

  9. Key components Graphic engines and displays Control devices (keyboard…trackers) Processing Systems Data Network Introduction

  10. Introduction Common Virtual World

  11. Network Bandwidth/Latency Heterogeneity Distributed Interaction (real-time) Resource Management - Scalability Current challenges

  12. SIMNET (Simulator networking)[Miller/Thorpe95] Distributed military environment developed for DARPA between 1983 and 1990. Aimed at: Building high-quality, low cost simulators How to network the simulators together. Created 11 sites with 50 - 100 simulator each. History - Military

  13. History - SIMNET

  14. SIMNET Architecture Object-event architecture Autonomous nodes (each entity is responsible for informing its state to others) Dead Reckoning Average messages: Slow moving vehicles: 1mess/sec. Fast moving vehicles: 3mess/sec. History - Military

  15. SIMNET Modules Network Interface Other-vehicle state table Controls Own-vehicle dynamics Sound generation History - Military

  16. SIMNET Multicast groups: each exercise is assigned a multicast address. Multiple exercises can co-exist Scalability Exercise in March 1990: 850 objects 5 sites Network: T-1 History - Military

  17. DIS (Distributed Interactive Simulation) [IEEE93] Started in 1989 as an effort to document the comm. protocol of SIMNET. Became an IEEE Standard 1278. Definition of 27 PDUs (Protocol Data Unit). Examples: Entity State: position, orientation, velocity changes. Fire Detonation Collision Each 5 seconds: a “heart-beat” state PDU. History - Military

  18. DIS - Traffic: 96% Entity State PDUs Rest: Fire Detonation Collision Others… History - Military

  19. DIS - Scalability Designed for 300-500 users History - Military

  20. DIS - Fully distributed and Heterogeneous Each machine that can read/write DIS PDUS and manages the state, can participate. Heterogeneity can pose problems. Slow machines can fall behind processing messages from fast machines. Inconsistencies! History - Military

  21. SGI Flight Flight simulator demo program used from 1984 to 1992. Created in 1983. Networked version shown in SIGGRAPH 1984. History - Games

  22. History - SGI Flight Download source code from:

  23. Doom [idSoftware] Released in December 1993. Initial version: no dead-reckoning, messages at frame-rate. 10s of millions of downloads. Source code was available. History - Games

  24. History - Doom

  25. NPSNET [NPSNET] “The longest continuing academic research effort in networked virtual environments” [Singhal/Zyda 1999] Focus on software technology for implementing large-scale virtual environments (LSVE). History - Academia

  26. History - Academia Courtesy of Naval Postgraduate School.

  27. NPSNET Contracted initially to handle SIMNET terrain. Afterwards, improvements on protocols: Protocol for Lans only Bridges for Lans and Wans Implementation of IP Multicast for Wans vrtp proposal. History - Academia

  28. DIVE (Distributed Interactive Virtual Environment) [Hagsand96] [DIVE] Built at the Swedish institute of Computer Science. World Database: Distributed Fully Replicated New objects can be added/modified in a RELIABLE fashion. Distributed lock mechanism. History

  29. History - DIVE

  30. History - DIVE

  31. History - DIVE

  32. Videos History - DIVE

  33. DIVE Because of the reliable multicast implementation they use, DIVE does not scale well beyond 32 participants. DIVE 3 uses a basic communications library based on IP multicast and Scalable Reliable Multicast (SRM). History

  34. MR - TPP Minimal Reality Toolkit Peer Package [Shaw/Green93] MR-TTP is based on UDP (unreliable). Lost packages are ignored. Instead of heartbeat: sends packages at the rate of the input device. Topology: Complete Graph Connection. Number of users: 4 or less. History

  35. History • MASSIVE-1 [MASSIVE][Greenhalgh/Benford95] • Developed at Nottinham University’s CRG (Computer Research Group), led by Steve Bendford and Chris Greenhalgh.

  36. MASSIVE-1 Multi-user distributed V.R. system Runs on Sun and SGI platforms Textual, graphical and audio client programs Interaction controlled by aura, focus and nimbus Connection oriented networking Scalability: “MASSIVE usually works with up to about 10 users ” (from Massive-1 home page). History

  37. Video History - MASSIVE

  38. MASSIVE 2 and 3 Scalability and Distribution based on Locales Current networking via TCP client-server style (to be combined with multicast) The agent that creates an environment acts as distribution server for that environment Persistency Management of audio links. History

  39. Summary A number of successful Networked VEs has been created: Military Gaming Research Differ greatly: What can the users do. Technological decisions. History

  40. Latency Amount of time to transfer a bit of data from one point to another. Latency has a direct impact on interaction inside the virtual world. The designer cannot really reduce latency. It is possible to hide it or reduce its impact. Networking Concepts

  41. Latency - causes: Physical limitations: speed of electromagnetic waves in the transmission material (aprox. 8.25 msec per time zone). Delays introduced by the endpoint computers. Delays introduced by the network itself (routers). Networking Concepts

  42. Bandwidth Rate at which the network can deliver data to the destination host. Examples: Modem: 56Kbits per second. Ethernet: 10 or 100 Mbits per second. Fiber-optic: 10 Gbps or more. Networking Concepts

  43. Reliability How much data is lost by the network and how that loss is handled. Causes: Routers discard some of the messages (up to 50% in some cases). Data gets lost in the communication media. Networking Concepts

  44. Reliability - How to handle data that is lost? Detect/Correct: Error-correcting codes. Detect: ACKS, NACKS. Networking Concepts

  45. TCP: Point-to-point connection to an application running in another machine. Data Checksum for integrity. Flow-control: to avoid flooding of messages, including acknowledgements. Keeps strict ordering and consistency of packages. Is this necessary in NVEs? Networking Concepts

  46. UDP: Lightweight protocol. Differences with TCP: Connectionless transmission. Information about the state of the connection is not kept. Best-effort delivery. No guarantee of delivery or order of messages. Each packet is auto-contained. Networking Concepts

  47. UPD Advantages: No overhead for connection oriented semantics. Packages can be transmitted/received immediately, no need for queues. It is possible to send information to groups of users (multicasting). Networking Concepts

  48. Unicast One computer sends information to only another one computer. Networking Concepts

  49. Broadcast One computer sends information to every computer in a subnet. Networking Concepts

  50. Multicast Only computers listening to a specific multicast group receive the message. Networking Concepts