540 likes | 558 Views
This research paper discusses the development of a scalable peer-to-peer network for virtual environments using a Voronoi-based overlay network. The paper examines the scalability problem in networked virtual environments and proposes a solution using a peer-to-peer architecture. It also presents a simulation of the proposed network and evaluates its performance. The paper concludes with potential applications for physical simulation in virtual environments.
E N D
VON:A Scalable Peer-to-Peer Networkfor Virtual Environments Shun-Yun Hu (胡舜元) (syhu@yahoo.com) CSIE, National Central University, Taiwan 2007/02/15
Outline • Introduction • Voronoi-based Overlay Network (VON) • Evaluation • Application for physical simulation • Conclusion
What isNetworked Virtual Environment? • Virtual Reality + Internet • 3D worlds with people, agents, objects, terrain • Military simulations (’80) Massively Multiplayer Online Games (mid-‘90) • Trends: larger scale, more realistic simulation
The Scalability Problem • Many nodes on a 2D plane ( > 1,000) • Message exchange with those within Area of Interest (AOI) • How does each node receive the relevant messages? Area of Interest
A simple solution (point-to-point) But…too much irrelevant message N * (N-1) connections ≈ O(N2) Not scalable! Source: [Funkhouser95]
A better solution (client-server) Message filtering at serverto reduce traffic N connections = O(N) server is bottleneck Source: [Funkhouser95]
Current solution(server-cluster) Still limited by servers. Expensive to deploy & maintain. Source: [Funkhouser95]
Scalability Analysis • Scalability constrains • Computing resource (CPU) • Network resource (Bandwidth) Non-scalable system vs. Scalable system Resource limit x: number of entities y: resource consumption at the limiting system component
What Next? • Strategies • Increase resource More servers • Decrease consumption Message filtering • Architectures Scale • Point-to-point (LAN) tens 10^1 • Client-server hundreds 10^2 • Server-cluster thousands 10^3 • ? millions 10^6 … Peer-to-Peer
What is Peer-to-Peer (P2P)? [Stoica et al. 2003] • Distributed systems without any centralized control or hierarchical organization • Runs software with equivalent functionality • Examples • File-sharing: Napster, Gnutella, Kazza, eDonkey • Distributed Search: Chord, CAN, Tapestry, Pastry • VoIP: Skype
Peer-to-Peer Overlay A P2P overlay network source: [Keller & Simon 2003]
Promise & Challenge of P2P • Promises • Growing resource, decentralized Scalable • Commodity hardware Affordable • Challenges • Topology maintenance dynamic join/leave • Efficient content retrieval no global knowledge
Outline • Introduction • Voronoi-based Overlay Network (VON) • Evaluation • Application for physical simulation • Conclusion
Design Goals • Observation: • for virtual environment applications, the contents we want are messages from AOI neighbors • Content discovery is a neighbor discovery problem • Solve the Neighbor Discovery Problem in a fully-distributed, message-efficient manner. • Specific goals: • Scalable Limit per-node message traffic • Responsive Direct connection with AOI neighbors
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 Region Site
Design Concepts Use Voronoi to solve the neighbor discovery problem • Identify enclosing and boundary neighbors • Each node constructs a Voronoi of its neighbors • Enclosing neighbors are minimally maintained • Mutual collaboration in neighbor discovery
Procedure (JOIN) 1)Joining node sends coordinates to any existing node Join request is forwarded to acceptor 2)Acceptorsends back its own neighbor list joining node connects with other nodes on the list Joining node Acceptor’s region
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 neighbor Non-overlapped neighbors Boundary neighbors New neighbors
Procedure (LEAVE) 1) Simply disconnect 2) Others then update their Voronoi new B.N. is discovered via existing B.N. Leaving node (also a B.N.) New boundary neighbor
Dynamic AOI Crowdingwithin AOI can overload a particular node It’s better if AOI-radius can be adjusted in real time
Adjustment Conditions • AOI-radius decrease • Number of connections > connection limit • AOI-radius increase • Maximum connections not exceeded • Current AOI-radius < preferred AOI-radius • Mutual awareness rule • Do not disconnect a neighbor who sees me
Demonstration Simulation demo • Random movements (100 nodes, 1200x700 world) • Local vs. global view • Dynamic AOI adjustment
Outline • Introduction • Voronoi-based Overlay Network (VON) • Evaluation • Application for physical simulation • Conclusion
Simulation Method • 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 destination • Constant velocity: 5 units/step • Movement duration: random (until destination is reached)
Analysis of Design Scalability • Bounded resource consumptiondynamic AOI Consistency (Topology) • Topology is fully connected enclosing neighbors Reliability • Self-organizing distributed neighbor discovery Responsiveness • Lowest latency direct connection, no relay
Outline • Introduction • Voronoi-based Overlay Network (VON) • Simulation results • Application for physical simulation • Conclusion
A look at simulations • Important tools in scientific research • Larger scale and higher resolution are constantly sought • However, computational resource can be limited • An Untapped Potential • 300 Million PCs on the Internet (2000 est.) • Up to 80% to 90% of CPU is wasted • Large supply of computing resource, growing rapidly
Examples • SETI@Home(UC Berkeley – space radio analysis) • 5.3 M world-wide participants • 2.2 M years of single-processor CPU • 54 teraflop machine (top 3 in 2005: 70.72, 51.87, 35.86) • Folding@Home(Stanford – protein’s 3D structure) • 30,000 volunteers • 1 M days of single-processor CPU • Published 23 papers in: Science, Nature, Nature Structural Biology, PNAS, JMB, etc.
The Grand Question • Can we build the ultimate simulator for large-scale simulation utilizing millions of computers world-wide? • Potential applications: • Nuclear reaction • Star clusters • Atomic-scale modeling in material science • Weather, earthquakes • Biology (protein, ecosystem, brain, ...)
Current Limitations • Current methodology • Centralized server + many clients • Client requests “work unit” to process • Communication is minimized • Clients do not communicate • Issues: • Only suitable for “embarrassingly parallel” simulations • Sophisticated server-side algorithm and management required • An alternative: peer-to-peer (P2P) computing [Hori et al. 2001]
A Simulation Scenario • How can we utilize P2P for simulation-purpose? Answer: depends on what you want to simulate • We observe that many simulations… • are spatially-oriented (i.e. based on coordinate systems) • run in discrete time-steps • exhibit localized interaction (i.e. short-range interaction) • example: molecular dynamics (MD) simulation • Protein folding?
Outline • Introduction • Voronoi-based Overlay Network (VON) • Simulation results • Application for physical simulation • Conclusion
Summary • NVE scalability is achievable with P2P architecture and is a neighbor discovery problem • A promising solution: Voronoi-based P2P Overlay • Leverage knowledge of each peer to maintain topology • Properties • Scalable: fully-distributed, dynamic AOI • Efficient: low irrelevant messages, zero relay • Simple: simple protocol and procedure
Potential Applications • Online games Position updates in current MMOGs, Voice-chats • Military Enable large-scale, affordable military training simulation • 3D Web Provide multi-user interactivity to static 3D world • Scientific simulations Distribute spatial simulation requiring frequent synchronization
Acknowledgements • Dr. Jui-Fa Chen (陳瑞發老師) • Tsu-Han Chen (鄭子涵) • Members of the Alpha Lab, TKU CS • Dr. Chin-Kun Hu (胡進錕老師) • Guan-Ming Liao (廖冠名) • LSCP, Institute of Physics, Academia Sinica • Joaquin Keller (France Tele. R&D, Solipsis) • Jon Watte (there.com) • Kuan-Ta Chen (陳寬達, NTU)
Q&A VON: A Scalable Peer-to-Peer Network for Virtual Environments IEEE Network, vol. 20, no. 4, Jul./Aug. 2006 Thank you! syhu@yahoo.com http://vast.sourceforget.net (http://vast.sf.net)
Issues for Creating NVE • Consistency (events/states) • Responsiveness multiplayer • Security • Scalability • Persistency massively multiplayer • Reliability (Fault-tolerance)
Issues for Creating P2P NVE • Consistency (events/states) • Responsiveness multiplayer • Security • Scalability • Persistency massively multiplayer • Reliability (Fault-tolerance) • Consistency (topology) P2P NVE
Server-cluster issues • Insufficient total resource Hardware provisioning over-provision! • High user density (crowding) User limits limits scale & realism! • Excessive inter-server communications Less load balancing difficult balance!
Related Work (1):DHT-based: SimMUD [Knutsson et al. 2004] (UPenn) • Pastry + Scribe • Regions • Coordinators (super-nodes) • Fixed-size region • Relay overhead
Related Work (2):Neighbor-list Exchange [Kawahara et al. 2004] (Univ. of Tokyo) • Fully-distributed • Nearest-neighbors • List exchange • High transmission • Overlay partition
Related Work (3): Mutual Notification: Solipsis [Keller & Simon 2003] (France Telecomm R&D) • Links with AOI neighbor • Mutual cooperation • Inside convex hull • Potentially slow discovery • Inconsistent topology
Consistency Metrics • Topology Consistency [Kawahara, 2004] observed AOI neighbors actual AOI neighbors • Drift Distance [Diot, 1999] Distance between observed position and actual position (average over all nodes)