IMPROVING RESPONSIVENESS BY LOCALITY IN DISTRIBUTED VIRTUAL ENVIRONMENTS - PowerPoint PPT Presentation

1 / 22
About This Presentation
Title:

IMPROVING RESPONSIVENESS BY LOCALITY IN DISTRIBUTED VIRTUAL ENVIRONMENTS

Description:

Luca Genovali, Laura Ricci, Fabrizio Baiardi. Lucca Institute for Advanced Studies ... it may be overestimated because of latency jitter ... – PowerPoint PPT presentation

Number of Views:43
Avg rating:3.0/5.0
Slides: 23
Provided by: diUn
Category:

less

Transcript and Presenter's Notes

Title: IMPROVING RESPONSIVENESS BY LOCALITY IN DISTRIBUTED VIRTUAL ENVIRONMENTS


1
IMPROVING RESPONSIVENESSBY LOCALITY IN
DISTRIBUTED VIRTUAL ENVIRONMENTS
  • Luca Genovali, Laura Ricci, Fabrizio Baiardi
  • Lucca Institute for Advanced Studies
  • Department of Computer Science
  • University of Pisa, Italy
  • ECMS 2007-Prague 4-6th June 2007

2
PRESENTATION OUTLINE
  • DVE an overview
  • Consistency Models, Perceptive Consistency
  • Local Lag
  • Our proposal the MultiLags approach
  • Experimental results

3
DISTRIBUTED VIRTUAL ENVIRONMENTS
  • Distributed Virtual Environments (DVE) A
    Virtual Environment including a set of Avatars
  • Interacting within a virtual world.
  • Hosted by geographically distributed computers.
  • Usually controlled by the users
  • Instances of DVE are
  • Large scale combat simulations.
  • Massively Multiplayer Online Games (MMOG).
  • Distributed simulations of complex physical
    models
  • based upon domain decomposition approach.

4
DVE RELATED ISSUES
  • Issues related to the definition of a large-scale
    DVE
  • Consistency
  • Scalability
  • Performance/Responsiveness
  • Persistency
  • Reliability
  • Security

5
CONSISTENCY MODELS
  • Causality
  • Concurrency
  • Simultaneity
  • Instantaneity

6
PERCEPTIVE CONSISTENCY
  • Perceptive Consistency a wall-clock time based
    model integrating
  • Simultaneity if two actions occurs
    simultaneously, then all the hosts perceive them
    at the same instant of time.
  • Each host perceives at t ? any action occurring
    at time t
  • It requires clocks synchronization but it
    guarantees a total order of events (a tiebreaker
    may be introduced to order simultaneous events)
  • ? Response Time (typical values 100- 400
    millisec) These values guarantee that humans
    cannot perceive the delay ?, because of their
    perceptive limits

7
THE LOCAL LAG TECHNIQUE
  • Local lag a technque to implement perceptive
    consistency
  • Basic idea rendering of events is delayed by
    any host of an interval of
  • time ?, (local lag) in order
  • to hide the delay due to network latencies in the
    notification of events to other hosts.
  • to guarantee event simultaneity
  • Problems to be solved
  • Instantaneusness is maintained provided that ?
    is kept small
  • If ? is statically defined
  • it may be overestimated because of latency
    jitter
  • Overestimation of ? decreases the responsiveness
    of the application and favours cheating.

8
THE LOCAL LAG TECHNIQUE IMPLEMENTATION
  • Each event e is associated with a timestamp T t
    ?, where
  • t is the wall clock time corresponding to the
    generation of e
  • ? is the value of the local lag
  • An event e
  • on the local host is stored and rendered at T
  • on the remote hosts
  • if e is received on time e is rendered at T
  • if e is received after T e is discarded

9
OUR PROPOSAL THE MULTILAGS APPROACH
  • Multilags extends the local lag approach by
  • Dynamic definition of the value of ?
  • Multiple values for ? are associated to different
    groups of interacting hosts
  • Dynamic definition of ?
  • ? is dinamically updated according to network
    conditions. It is increased if the network is
    congestioned, it is decreased if the latency is
    low
  • Multiple values of ?
  • DVE locality each DVE entity interacts with a
    subset other entities of the DVE only
  • Groups of interacting entities may exploit
    different values of ? .

10
DVE LOCALITY AREA OF INTEREST
  • Area of Interest (AOI) of a DVE entity e it
    includes entities which may interact with e
  • Mobile Area of Interest
  • Area surronding the avatars position.
  • Dynamically updated as the avatar moves.
  • Static AOI
  • Tightly bounded to a particular portion of
    virtual environment, not to a particular avatar
  • May be dinamically modified
  • Area of Interest generally exploited to define
    scalable DVEs overlay topologies

11
STATIC AOI THE MULTILAGS APPROACH
  • Static AOI
  • a distinct value of ?i for each static region ri
  • ?i
  • is exploited by any entity in ri
  • depends upon the state of network connections
    among the players belonging ri.
  • Each entity updates ?i when it moves to a new
    region
  • ?i Caching
  • ?i Prefetching

12
DYNAMIC AOI THE MULTILAGS APPROACH
  • Dynamic AOI detecting groups of mutually
    interacting entities
  • Definition
  • belongs to relation
  • A belongs to B ?
  • A belongs to the AOI of B.
  • A group S of interacting entitities is a set of
    entities such that belongs to on S is equal to
    its transitive and symmetric closure.
  • Complex dynamic tests to verify this condition
    in a distributed environment.

S
13
OUR PROPOSAL
  • Our solution exploits static AOIs
  • A multicast group for each region
  • The value of ? is updated according to the
    interactions among the entities in a region
  • ? is updated
  • periodically, while the entity stays in a region
  • anytime the entity moves to a new region

14
MULTILAGS IMPLEMENTATION
  • The value of ? is dynamically computed by each
    host according to its Local Network View (LNV)
  • Local Network View information collected by H
    on the network status. It depends upon
  • the number of late messages with respect to their
    timestamps
  • the number of lost messages
  • Each host may
  • perceive different LNV
  • compute a distinct values of ?
  • but.... all the interacting entities must exploit
    the same value of ? to guarantee simultaneousness
    and correct event ordering

15
MULTILAGS IMPLEMENTATION
  • A set of interacting hosts executes a protocol to
    reach a distributed consensus on a common value
    of ?
  • Each host
  • updates its LNV at each message reception
  • broadcasts its LNV to all the interacting
    entities. Heartbeat messages may be exploited
  • update local lag periodically combines its LNV
    with those received from the interacting hosts in
    order to refine the value of the local lag

16
MULTILAGS IMPLEMENTATION
Sending operations
  • Each event sent by an entity E is associated with
  • the local lag
  • the LNV of E
  • When an host P receives a messages
  • Computes the delay/...of the message with respect
    to its timestamp
  • Updates P LNV

Receiving operations
17
MULTILAGS IMPLEMENTATION
  • A fully distributed consensus may introduce
    inconsistencies because distinct hosts may
  • perceive different values of LNV due to packet
    loss
  • execute the procedure at different instants of
    time
  • Definition of a coordinator
  • computes the new value of the local lag and send
    this value to all the interacting hosts
  • coordination selection based upon the IP
    address
  • SPMD-like code

18
LOCAL LAG DYNAMIC UPDATE
19
EXPERIMENTAL RESULTS
  • Testing Environment 16 hosts, connected by a
    local network.
  • The DVE is partitioned into four rectangular
    regions
  • Wide area network conditions simulation network
    delays generated according to an exponential
    distribution.
  • A distinct average latency has been associated to
    each region.
  • The values associated with the regions 03 are,
    respectively, 80,120,160,200 ms.
  • Update Local Lag is executed every 5 seconds. The
    response time is incr\decr by 10 msec. The
    initial value of the response time is 100 msec.

20
EXPERIMENTAL RESULTS AVERAGE DRIFT
2
0
1
3
21
EXPERIMENTAL RESULTS NUMBER OF ERRORS
0
2
1
3
22
DEADLINE BASED CONSISTENCY MODELS
  • ?- Sequential/Causal Consistency
  • Introduces the notion of physical time
  • Simultaneity is not captured.
  • Reading in Time A Read operation R on a
  • object X executed at time T(R) occurs in time if
    it returns the value written by operation W at
    time T(W) and no intermediate writes occur in the
    system in the interval of time T(W), T(R)-?,
    where ? is a parameter characterizing the
    model.
  • An implementation of the models requires physical
    clocks synchronization (ex via NTP)
Write a Comment
User Comments (0)
About PowerShow.com