SLIDE 1 Avatar Mobility in
黃瑋璨 新加坡國立大學
1
SLIDE 2 Wei Tsang Ooi Mehul Motani Huiguang Liang Ian Tay Ming Feng Neo National University of Singapore
2
SLIDE 3 “My life is so great that I literally wanted a second one!”
The Office
3
SLIDE 4 256x256 m regions.
4
SLIDE 5
avatar mobility: who is where, when
5
SLIDE 6
why do we care?
6
SLIDE 7
research in systems support for NVE
7
SLIDE 8 8
SLIDE 9 How to partition a world into regions and assign regions to servers considering
- communication cost
- hand-over rate
- balancing server load
:
9
SLIDE 10 10
SLIDE 11 How to predict avatar movement (end therefore what a user will see next)?
11
SLIDE 12 12
SLIDE 13 AoI-based scheme
13
SLIDE 14 How many connections? How stable are the connections?
14
SLIDE 15 supernode-based scheme
15
SLIDE 16 How to pick supernodes? How stable are the supernodes?
16
SLIDE 17
how to simulate avatar mobility?
17
SLIDE 18
random walk random waypoint clustered movement :
18
SLIDE 19
small-scale implementation
19
SLIDE 20
no large-scale NVE available until recently
20
SLIDE 21 482,594
residents logged in between 2-9 June 2008
21
SLIDE 22 secondlife.com/whatis/economy-graphs.php
22
SLIDE 23
- collect mobility traces of
avatars in Second Life
- what it means w.r.t. systems
design for NVEs?
23
SLIDE 24
collecting traces
24
SLIDE 25
how do avatars move inside a distributed virtual environment?
25
SLIDE 26
how are avatars distributed within a region?
26
SLIDE 27
how long do they stay at a location?
27
SLIDE 28
do they move in groups?
28
SLIDE 29
etc.
29
SLIDE 30 FPS MMORPG NVE
30
SLIDE 31 Linden, can we get access to the server traces?
No.
31
SLIDE 32
- Wrote our own client
- Parses packets using libsecondlife
- Insert bots into regions
- Log positions of avatars every 10s
32
SLIDE 33
difficulties
33
SLIDE 34
running out of memory
34
SLIDE 35
anti-bots policy
35
SLIDE 37
inter-region tracking
37
SLIDE 38
- Wrote our own client
- Parses packets using libsecondlife
- Insert bots into regions
- Log positions of avatars every 10s
38
SLIDE 39
who is where, when (doing what)
39
SLIDE 40 40
SLIDE 45
Mobility Patterns
45
SLIDE 46 Freebies: number of visits to a cell
46
SLIDE 47 Freebies: average pause time in a cell
47
SLIDE 48 Freebies: average speed in a cell
48
SLIDE 49 Isis: number of visits to a cell
49
SLIDE 50
caching/prefetching based on popularity of locations?
50
SLIDE 51 Isis: average pause time in a cell
51
SLIDE 52
pick supernodes from sticky location?
52
SLIDE 53 Isis: average speed in a cell
53
SLIDE 54
mobility model: random walk + pathway ?
54
SLIDE 55
churn rate
55
SLIDE 56 56
SLIDE 57 57
SLIDE 58 Reasonably high churn (up to 6/min)
58
SLIDE 59 1 min 10 min 1 hr 2 hr
Highly skewed. Some stay for hours.
59
SLIDE 60
cannot pick supernodes uniformly
60
SLIDE 61
clustering of avatars
61
SLIDE 62
meeting: encounter between two avatars (within each other AoI)
62
SLIDE 63 Meet many different avatars.
63
SLIDE 64 1 min 10 min 1 hr 2 hr
Most meetings are short.
64
SLIDE 65 Meeting size is large.
65
SLIDE 66
high overhead in maintaining AoI neighbors
66
SLIDE 67 meeting stability: avg meeting size
num of avatars met
67
SLIDE 68 Wide range of stability
68
SLIDE 70
little temporal variations
can use historical information to predict future
70
SLIDE 71
rotate 18% of the time
Second Life’s prefetching is wasteful
71
SLIDE 72
25-35% revisits the same region in a day
region-based caching?
72
SLIDE 73
proxy-based texture caching
73
SLIDE 74
why textures?
74
SLIDE 79 403 TB
in Isis in a day
79
SLIDE 80 SL servers texture proxy clients
80
SLIDE 81
what caching algorithm to used?
81
SLIDE 82
2Q
82
SLIDE 84 FIFO LRU cache miss
84
SLIDE 85 FIFO LRU cache hit
85
SLIDE 86 FIFO LRU cache hit
86
SLIDE 87 FIFO LRU scan resistant
87
SLIDE 88 88
SLIDE 89
3Q
89
SLIDE 90 FIFO LRU Victim Buffer
90
SLIDE 91 FIFO LRU cache hit Victim Buffer
(sorted by popularity)
91
SLIDE 92
how to define popularity of texture?
92
SLIDE 93 Freebies: number of visits to a cell
93
SLIDE 94
little temporal variations
can use historical information to predict future
94
SLIDE 95
popularity of texture = popularity of cell
95
SLIDE 96 2Q 3Q OPT Ross 50 MB 0.58 0.62 0.70 Ross 25 MB 0.28 0.36 0.47 Freebies 50 MB 0.48 0.50 0.68 Freebies 25 MB 0.21 0.33 0.50
Per-byte Hit Rate
96
SLIDE 97
conclusion
97
SLIDE 98
understanding real avatar mobility is crucial to design good NVEs
98
SLIDE 99 謝謝 歡迎發問及指教
99
99