12/12/2013 Introduction • Technical aspects of distributed interactive systems – Requirements redundant for all CSCW applications • Network architecture Groupware and Collaborative Interaction • Data distribution • Concurrency management Distributed Interactive Systems • Etc. • Collaborative virtual environment is a good example Technical aspects – Strong requirements • Users are interacting in real-time • Immersion requires fast multi-sensorial feedbacks M2R Interaction - Université Paris-Sud - Année 2013-2014 – Lots of solutions have been proposed to overcome the Cédric Fleury (cedric.fleury@lri.fr) technical issues Technical aspects of distributed interactive systems - M2R Interaction - Cédric Fleury 2 Collaborative Virtual Environments Collaborative Virtual Environments (CVE) • Enable users to work or have fun together • Users – Share the same virtual objects • 2 kinds of collaboration in virtual environment (VE) • 3D objects (with shape, texture, color, position, etc.) – Co-located collaboration • 3D widgets (3D objects which can be used for interaction) – Remote collaboration • Annotations • Aspects of collaboration • Interaction tools (virtual ray of the others, etc.) – Awareness – Need to interact together in real-time – Communications – Collaborative interaction Technical aspects of distributed interactive systems - M2R Interaction - Cédric Fleury 3 Technical aspects of distributed interactive systems - M2R Interaction - Cédric Fleury 4 Remote Collaboration Collaboration requirements • For efficient collaboration, users need to: Distributed virtual environment – Have the same state of the virtual environment (virtual objects) at the same time ⇒ Consistency of the VE – Modify the virtual objects in real-time ⇒ Responsiveness of the system (interactivity) Technical aspects of distributed interactive systems - M2R Interaction - Cédric Fleury 5 Technical aspects of distributed interactive systems - M2R Interaction - Cédric Fleury 6 1
12/12/2013 Consistency Responsiveness [Delaney et al., 2006] [Delaney et al., 2006] • Responsiveness of the system • Distributed virtual environment = Time required to respond to users’ actions = Distributed database of virtual objects with users modifying it in real-time (latency during users’ interaction, jitter) • Manage the consistency • Due to the time required to: = Ensure that the database is the same for all users – Process and send users’ actions – Transmit actions on the network (if mandatory) • Inconsistencies due to: – Give a feedback to the users – Concurrent modifications • Between 40ms and 300ms, under 100ms is good – Delay to transmit modification on the network Technical aspects of distributed interactive systems - M2R Interaction - Cédric Fleury 7 Technical aspects of distributed interactive systems - M2R Interaction - Cédric Fleury 8 Distributed Virtual Environments Outline • Network Architecture • Find a good trade-off between consistency and responsiveness (task, application, etc.) • Data Distribution • Technical requirements • Communication Protocols – Connect remote computers – Distribute data • Consistency Management Mechanisms – Share information – Manage concurrent accesses to the data • Communication Reduction Mechanisms • Each technical choice must consider consistency and responsiveness • Software architecture Technical aspects of distributed interactive systems - M2R Interaction - Cédric Fleury 9 Technical aspects of distributed interactive systems - M2R Interaction - Cédric Fleury 10 Outline Network Architecture • Network Architecture • Transmission Methods • Data Distribution – Unicast • Communication Protocols • Consistency Management Mechanisms • Communication Reduction Mechanisms • Software architecture Technical aspects of distributed interactive systems - M2R Interaction - Cédric Fleury 11 Technical aspects of distributed interactive systems - M2R Interaction - Cédric Fleury 12 2
1 2 / 1 2 / 2 0 1 3 Network Architecture Network Architecture • Transmission Methods • Transmission Methods – Unicast – Unicast – Broadcast – Broadcast – Multicast Technical aspects of distributed interactive systems - M2R Interaction - Cédric Fleury 13 Technical aspects of distributed interactive systems - M2R Interaction - Cédric Fleury 14 Network Architecture Network Architecture • Peer-to-peer architecture • Client/server architecture [Reality Build for Two 90, MR Toolkit 93, SIMNET 93, NPSNET 94] [Vistel 95, RING 95, BrickNet 95, ShareX3D 08] – All communications pass through the server – Fast communications between pairs of nodes • latency during interactions • Closely coupled interactions between a few users – All nodes can be contacted quickly – Difficulties to contact all nodes at the same time • Consistency and synchronization are easy to ensure • Consistency and synchronization are hard to ensure – A “bottleneck” can occur on the server • Many messages are transmitted over the network Technical aspects of distributed interactive systems - M2R Interaction - Cédric Fleury 15 Technical aspects of distributed interactive systems - M2R Interaction - Cédric Fleury 16 Network Architecture Network Architecture • Hybrid architecture • Hybrid architecture – Servers connected with peer-to-peer connections – Temporary peer-to-peer connections [Anthes et al., 04] [SPLINE 97] • Are established according to users’ locations in the VE • Avoids the “bottleneck” on a single server • Increase CVE consistency between nearby users • Connects nodes with specific requirements • Increases system latency Technical aspects of distributed interactive systems - M2R Interaction - Cédric Fleury 17 Technical aspects of distributed interactive systems - M2R Interaction - Cédric Fleury 18 3
12/12/2013 Outline Data Distribution • A virtual object • Network Architecture – A set of parameters (data) • Data Distribution • Identifier • Attributes (position, orientation, etc.) • User access rights • Communication Protocols • Geometry, and eventually textures • Consistency Management Mechanisms – A behavior • Only reactive (responding to user actions) • Communication Reduction Mechanisms • Continuous (evolving in the time) ⇒ Which computers store its data ? • Software architecture ⇒ Which computers execute its behavior ? Technical aspects of distributed interactive systems - M2R Interaction - Cédric Fleury 19 Technical aspects of distributed interactive systems - M2R Interaction - Cédric Fleury 20 Data Distribution Data Distribution • Centralized [Vistel 95] • Centralized [Vistel 95] – Data is stored on the server – Data is stored on the server – Behaviors are executed – Behaviors are executed on the server on the server – Modification requests are processed on the server Technical aspects of distributed interactive systems - M2R Interaction - Cédric Fleury 7 Technical aspects of distributed interactive systems - M2R Interaction - Cédric Fleury 7 Data Distribution Data Distribution • Centralized [Vistel 95] • Replicated [SIMNET 93, MR Toolkit 93] – Advantages – Data is replicated on each node • Ensures a global consistency – Synchronization between • Avoids data replication nodes can be achieved • Avoids behaviors processing on the clients – Behaviors are executed on each node – Drawbacks • Introduces latency during interactions • Transmits many messages over the network Technical aspects of distributed interactive systems - M2R Interaction - Cédric Fleury 8 Technical aspects of distributed interactive systems - M2R Interaction - Cédric Fleury 9 4
Recommend
More recommend