Dev:Network Games Related Work

From ARL Wiki
Revision as of 00:06, 13 February 2009 by Mart Haitjema (talk | contribs)
Jump to navigationJump to search

Terminology

  • DIA = Distributed Interactive Applications
  • DIS = Distributed Interactive Simulations
    • Used by the military
  • NVE = Networked Virtual Environment
    • Singhal & Zyda 99 <insert reference>
  • DIM = Distributed Interactive Media
    • Mauve01 <insert reference>
  • NIE = Networked Interactive Environment
    • Capps, McDowell, Zyda 01 <insert reference>
  • DVE = Distributed Virtual Environment
    • Stytz96 <insert reference>
  • CVE = Collaborative Virtual Environment
  • DSE = Distributed Synthetic Environment
  • SVE = Shared Virtual Environment
  • CSCW = Computer Supported Cooperative Work


Consistency is the degree to which users share the same view of the application state. It includes

  • Synchronization: Time of events relative to other events are the same across the DIA
  • Causality: cause/effect ordering is maintained
  • Concurrency: Simultaneous execution of events by different users on same entity

Responsiveness is the time taken for the system to register and respond to a user event. Delaney - Presence 2007

Fidelity is the degree to which the virtual representations are similar to their real-world representations. Delaney - Presence 2007 & IEEE95


Consistency vs Performance

With infinite bandwidth and 0 network latency, a DIA could remain completely consistent and yet be extremely responsive (i.e. change state rapidly). In the presence of network latency, however, the system will require time to reach a new consistent state when a change in state is required. When a state change is requested, the system can either delay its response to reach a consistent state or process the change without guaranteeing complete consistency.
Fidelity is sacrificed either way since fidelity represents how closely the simulation matches its real-world representation. Inconsistencies mean the simulation does not accurately match it's real-world representation. Decreased responsiveness also decreases fidelity since real events occur instantaneously.

To manage this tradeoff, DIAs use Consistency Management Techniques.


Scalability

Scaling a DIA will primarily require more bandwidth from the network. The exact architecture will determine how the bandwidth requirements increase with the number of users. To


Unlike other distributed systems, however, they can trade consistency for responsiveness and fidelity.


DIAs can be broken into 3-different classes:Smed - TCCS 2002

  • Military Simulations
  • NVEs
  • MCGs (Multiplayer Computer Games)


I don't like this categorization. I think it's more appropriate to break it into DIAs that require tight consistency vs those that require high-performance and fidelity.

With 0 latency and infinite bandwidth then a DIA could be as dynamic (fast-paced state changes) as you want but would still be 100% consistent. In reality, we trade some consistency for performance. We also employ techniques to hide effects of latency and minimize bandwidth.
Consistency Maintenance Mechanisms are used to:

  • Hide latency
  • Maintain some level of consistency