Download presentation
Presentation is loading. Please wait.
Published byJeffrey Fowler Modified over 8 years ago
1
1 Scalable Peer-to-Peer Virtual Environments Shun-Yun Hu ( 胡舜元 ) (syhu@csie.ncu.edu.tw) CSIE, National Central University, Taiwan 2008/05/26
2
2
4
4
6
Massively Multiplayer Online Games MMOGs are growing quickly Multi-billion dollar industry 10 million subscribers for World of Warcraft 600,000 concurrent users, but 3,000 per world Can we scale to millions in the same world?
7
Imagine you start with a globe
8
Zoom in…
9
To Mannheim…
10
and to Universitat Mannheim
11
Right now it’s flat…
12
But in the near future…
13
Virtual Environments (VEs): A shared space
14
14 Model for virtual worlds Many nodes on a 2D plane Message exchange with those within Area of Interest (AOI) How does each node receive the relevant messages? Area of Interest
15
15 A simple solution (point-to-point) But…too many irrelevant messages N * (N-1) connections ≈ O(N 2 ) Not scalable! Source: [Funkhouser95]
16
16 A better solution (client-server) Message filtering at server to reduce traffic N connections = O(N) server is bottleneck Source: [Funkhouser95]
17
17 Current solution (server-cluster) Still limited by servers. Expensive to deploy & maintain. Source: [Funkhouser95]
18
The Problem Client-server: resources limited by provisioning Resource limit [Funkhouser95]
19
The Solution Peer-to-Peer: resources grow with demand Resource limit [Keller & Simon 2003]
20
Voronoi-based Overlay Network (VON)
21
Design Goals Observation: for VEs, the contents are messages from AOI neighbors Content discovery is a neighbor discovery problem Specific goals: Scalable Limit per-node message traffic Responsive Direct connection with AOI neighbors
22
22 If you talk with your AOI Neighbors directly… But how to discover new neighbors?
23
23 Voronoi Diagram 2D Plane partitioned into regions by sites, each region contains all the points closest to its site Can be used to find k-nearest neighbor easily Neighbors Site Region
24
24 Design Concepts Identify enclosing and boundary neighbors Enclosing neighbors are minimally maintained Mutual collaboration in neighbor discovery boundary neighbor (B.N.)L. Blue unknown neighborL. Green normal AOI neighborGreen E.N. & B.N.Pink enclosing neighbor (E.N.)Yellow selfWhite Area of Interest (AOI)Circle Use Voronoi to solve the neighbor discovery problem
25
25 Procedure (MOVE) 1)Positions sent to all neighbors, mark messages to B.N. B.N. checks for overlaps between mover’s AOI and its E.N. 2)Connect to new nodes upon notification by B.N. Disconnect any non-overlapped neighbors Boundary neighbors New neighbors Non-overlapped neighbors
26
Dynamic AOI Crowding within AOI can overload a particular node It’s better if AOI-radius can be adjusted in real time
27
27 Demonstration Simulation demo Random movements (100 nodes, 1200x700 world) Local vs. global view Dynamic AOI adjustment
28
Simulations C++ implementation of VON (open source VAST library) World size: 1200 x 1200 (AOI: 100) Trials from 200 – 2000 nodes Connection limit: 20 3000 time-steps (~ 300 simulated seconds, assuming 10 updates/seconds) Behavior model Random movement:random waypoint Constant velocity: 5 units/step Movement duration: random (until destination is reached)
29
Scalability: Avg. Transmission / sec
30
Scalability: Max. Transmission / sec
31
Extension: VoroCast Pack reduction via forwarding Headers reduction Data compression & aggregation
32
Voronoi State Management (VSM)
33
33 Voronoi State Management VON deals with positions only, but states stored in spatial objects (with x, y) are important too. Let game states be managed by all clients Each client has two roles: peers & arbitrators i.e. Voronoi partitioning Three problems: O(n 2 ) connections at hotspots Some cells have large sizes Constant ownership transfer
34
34 VSM: solution ideas Connection overload→ Aggregators clustering Large cell-size → Virtual peers incremental transfer Constant transfers→ Explicit ownership transfer
35
35 VSM: Consistency control Managing arbitrator receives and processes events Events are forwarded if necessary Updates sent to affected arbitrators, then peers
36
36 VSM: Consistency control Managing arbitrator receives and processes events Events are forwarded if necessary Updates sent to affected arbitrators, then peers
37
37 VSM: Consistency control Managing arbitrator receives and processes events Events are forwarded if necessary Updates sent to affected arbitrators, then peers
38
38 VSM: Consistency control Managing arbitrator receives and processes events Events are forwarded if necessary Updates sent to affected arbitrators, (then peers)
39
39 VSM: Load balancing Traditional: high-capacity nodes first, then adjust VSM: low-capacity nodes first, then cluster Overload: ask for aggregator, submit control Underload: disintegrate, release control
40
Peer-to-Peer 3D Streaming
41
41 Background MMOGs today need DVD installations Too slow and unpractical for: Larger and more dynamic worlds (TBs data) More numerous worlds (Web 3D) Content streaming is needed 80% - 90% content is 3D (e.g., 3D streaming)
42
42 3D streaming Object streaming [Hoppe 1996] base refinements Scene streaming [Teler & Lischinski 2001] multiple objects object selection & prioritization
43
43 3D streaming vs. media streaming Video / audio media streaming is very matured User access patterns are different for 3D content Highly interactive Latency-sensitive Behaviour-dependent Non-sequential Analogy Constant & frequent switching of multiple channels
44
Challenges for P2P 3D streaming Appropriate peer grouping Matching interests / needs Matching capabilities Dynamic group management Interest groups are dynamic(non-sequential) Real-time constraints(latency-sensitive) Minimal server involvement Visibility determination (object selection) Request prioritization (piece selection)
45
45 Observation Limited & predictable area of interest (AOI) Overlapped visibility = shared content
46
46 overlapped visibility = shared content
47
47 Download content from AOI neighbors star: selftriangles: neighbors circle: AOIrectangles: objects
48
48 Neighbor discovery via VON Boundary neighbors New neighbors Non-overlapped neighbors [Hu et al. 06] Voronoi diagrams identify boundary neighbors for neighbor discovery
49
49 Prototype experiment Progressive models in a scene (by NTU) Peer-to-peer AOI neighbor requests(by NCU) Found matching client upload / download
50
50 Simulation setup Environment 1000x1000 world, 100ms / step, 3000 steps client: 1 Mbps / 256 Kbps, server: 10 Mbps (both) Objects Random object placement (500 objects) Object size based on prototype User behavior Random & clustering movement (1.5 * ln(n) hotspots)
51
51 Server bandwidth usage
52
52 Client bandwidth usage
53
Impacts of P2P VEs… No server as bottleneck scalable Commodity hardware affordable 2D web 3D web Earth-scale virtual worlds (millions/billions of people)
54
Unresolved issues Overlay management Topology-aware, capacity-matching superpeers Flexible publication / subscription Direct vs. forwarding deliveries State management Load balancing (high user density) Persistency Security Client-assisted services (e.g., P2P 3D streaming) Source nodes discovery Visualization vs. networking priority matching LOD considerations
55
Meshing physical & virtual topologies Client 2 Client 1
56
A generic pub/sub scenario pub sub
57
Other issues Common API Shared simulator / platform Interoperability
58
58 Q&A VON: A Scalable Peer-to-Peer Network for Virtual Environments IEEE Network, vol. 20, no. 4, Jul./Aug. 2006 FLoD: A Framework for Peer-to-Peer 3D Streaming IEEE INFOCOM, Apr. 2008 Thank you! http://vast.sourceforge.net http://ascend.sourceforge.net
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.