Seminar 3: Scalability
by
Zhexin Yang
Zhuomin Liu
Zhao Wang
Multi-User Virtual environments
– People interact in shared 3D VE• Interact with each other
– Co-located– geographically remote location
• Interact with information
– Simulate the experience of immersion in VE• Workstations connected by wide-area network• Run interactive 3D graphics interface program• Render images from user’s simulated viewport
Multi-User Visual Simulation
– 3D graphics scenes comprise the geometry and appearance of many objects
– Can be downloaded in advance– The scenegraph may be replicated at each
user’s computer– Incremental changes are sent across the
network
Challenges
– Maintaining consistent state among a large number of workstations distributed over a wide-area network.
– Network technologies have limitations and different characteristics
• Bandwidth, delay, reliability, etc.
– Balancing throughout limitations of computers and networks
– Systems designed to run over a set of heterogeneous computers and networks, each with very different dynamic, throughput and reliability
Goals of Collaborative Virtual Environments
– Sharing the use of the information is the primary goal
– Maximise responsiveness and scalability while minimising latency
– Maximise the fidelity of sharing where it is needed by reducing it where it is not
Scalability
– Our aim is to characterize the design of systems that can scale to very large numbers of simultaneous users
– The ability to expand a computing solution to support large numbers of users without impact performance
– For a given set of network characteristics, the design may have dramatic impact on the system’s scalability and message distribution performance
Scalability
– Scaling• Allows the amount of information in the environment,
including the number of users, to increase, without reducing the fidelity of experience to any one user
• Controlled in terms of extent, granularity and detail
– Network Topology• Peer-to-Peer Topologies• Hierarchical Topologies
Scaling
– Extent• Subdivide the environment and population according
to interest• Subdivision should be natural and appear
transparent• Balance resources usage across the areas of
interest• Different application genres are suited to distinct
definitions of interest and methods of subdivision
Scaling
– Approaches to subdivision• Multiple worlds• Static spatial subdivision• Locales
Scaling
– Approaches to subdivision• Dynamic space subdivision• Aura• Regions
Scaling
– Granularity• In the real world people are able to reason at
different levels of granularity• This approach of aggregation may be adopted in
CVEs to further increase the scalability• Aggregation reduces not only the rendering but also
the amount of information needed by some observing processes
Scaling
– Granularity• aggregation can increase the scalability of a
receiving process • Aggregation can decrease the scalability of the
sender and the use of the network when many receivers require distinct levels of aggregation for the same object
Scaling
– Detail• Scalability can be further increased by managing the
detail at which individual objects are replicated• Heuristic of interest such as distance or the
relationship between the role of the observer and the use of the observed may be applied
• Balancing the detail of communicated behaviour with the interest of remote users is important
• A hybrid approach might send the highest detail required by any to all and allow receivers to filter further
Spatial Interaction in Virtual Environments
MASSIVE
What is MASSIVE?
– Model, Architecture and System for Spatial Interaction in Virtual Environments
– a distributed virtual reality system
– bring together a number of users in a single virtual place
Definition of Spatial model of interaction
Two Major Components • facilitating scalability based on the concept of aura
• controlling spatial interaction the control of interaction or communication between two objects once they become aware of each other through aura collision
facilitating scalability
• Aura: the extent to which interaction with other objects is possible
- it is the subspace the interaction can occur
• Interaction between two objects becomes
enabled only when their auras together indicate
the possibility of interaction
So….
The use of aura facilitates scaling to many users by
limiting the number of object interactions that must
be handled.
controlling spatial interaction
• Awareness
object quantifies the subjective importance or relevance of the other object in a given medium
i.e. the volume of an audio channel between two users
• Combines
– observed object’s nimbus
– observer’s focus
One-way focus, nimbus and awarenessbetween two objects
Concepts:
-Focus: the observer’s
allocation of attention
-Nimbus: the observed
object’s manifestation or
observability
An example for spatial model of intereaction
So….
- under the spatial model, communication between objects is enabled when their auras collide
- communication is managed according to mutual levels of awareness
- there are three manipulated ways • Implicitly through spatial actions • Explicitly by choosing from among different
shapes and sizes• Via adapter objects
How Massive implement the spatial model of interaction?
The architecture of Massive• a communications architecture based on typed peer-peer connections• a spatial interface trading mechanism to dynamically broker interfaces following aura collisions• dynamic interaction between client programs supporting different media
Aura and Spatial Trading
• conditions of interaction between objects in the
virtual world
- compatible interfaces
- objects must become sufficiently proximate as
determined by their auras • spatial trading can satisfy both conditions
-trader
Spatial Trading
Spatial trading involving peer objects and an aura manager
Aura manger is the master trader
So
With this kind of architecture, MASSIVE can satisfy the following requirements:
- Scale supporting as many simultaneous users as possible - Heterogeneity supporting interaction between users whose equipment has different capabilities and who employ radically different styles of user interface
An example of MASSIVE
An virtual conference
Room
-Five users
-A conference table
as a adapter
Different kinds of interface
Graphic user’s interface
Different kinds of interface
Text user’s interface• display all currently known
objects along with mutual
awareness levels in the right
hand column
Summary
• a multi-user distributed V.R. system• a spatial model of interaction, spatial trading
based on aura collisions• medium-independent peer connections
implementing focus, nimbus and awareness• users can interact over combinations of graphics,
audio and text interfaces
RINGRING A client-Server System for Multi-User Virtual Environments
RING
Supports interaction between large numbers of users in virtual environments with dense occlusion
Takes advantage of the fact that state changes must be propagated only to hosts containing entities that can possibly perceive the change
Systems usingpoint-to-point connections
A
B C D
B
A C D
C
A B D
D
A B C
Systems using broadcast messages
Broadcast Network
A
B C D
B
A C D
C
A B D
D
A B C
Systems using broadcast messages
the key idea of RING
cell
Prior to simulation, the shared virtual environment is partitioned into a spatial subdivision of cells
The boundaries of cells are comprised of the static, axis-aligned polygons of the virtual environment
entity
RING represents a virtual environment as a set of independent entities.
Each entity has a geometric description and a behavior. Every entity is managed by exactly one client workstation.
static: buildings
autonomous: robots dynamic controlled: vehicles
Peer-to-Peer RING System
Peer-to-Peer RING System
hierarchical topology client
Execute the programs necessary to generate behavior for their entities
Maintain surrogates
for some entities
managed by
other clients
Manage communication between clients Process messages before propagating Send auxiliary messages Replace some set of messages
Shift burden away from the client workstations
and into servers
hierarchical topology server
System design
Staticconnection-oriented,
unicast network
scale finitelyscale finitely
Regionalconnectionless,
unicast network
scale infinitelyscale infinitely
Advantages of the RING
Requirements of the client workstations are not dependent on the number of entities in the entire distributed simulation.
High-level management of the virtual environment may be performed by servers without the involvement of every client.
Disadvantage of the RING
Extra latency is introduced when messages are routed through servers.
Multiplayer Computer Games
• Multiplayer networked games can be played over LAN or the Internet. These games use the client/sever topology. The game is run on the server and all the users need to log on to the server to play the game. Low latency is very important. Users with high speed networks will have advantages in playing the game.
Quake
Multiplayer Computer Games
• Virtual Casino– Online gambling room– Slow connection can
cause heavy losses
• Online Role-playing Games
Discussion
Will cyberspace as described by William Gibson or Neal Stephenson ever be built?