Peer-to-Peer 3D Streaming ACM Multimedia 2007 submission Presenter: Shun-Yun Hu ( 胡舜元 ) Adaptive Computing and Network Lab Dept. of CSIE, National Central University 2007/04/17
2/ Adaptive Computing and Networking Lab, CSIE, NCU Outline Introduction P2P-based 3D Scene Streaming Design of FLoD Prototype Implementation Simulation Evaluation Conclusion
3/ Adaptive Computing and Networking Lab, CSIE, NCU Introduction The problem The scalability of 3D scene streaming All 3D streaming currently adopts client-server Our solution Peer-to-peer (download contents from clients) Clients have shared visibility / contents in a scene
4/ Adaptive Computing and Networking Lab, CSIE, NCU What is 3D streaming? Continuous and real-time delivery of 3D contents over network connections to allow user interactions without a full download. Contents are fragmented, transmitted, reconstructed, then displayed. 4 types: object, scene, visualization, image-based
5/ Adaptive Computing and Networking Lab, CSIE, NCU Object streaming Hoppe 1996 Progressive Meshes
6/ Adaptive Computing and Networking Lab, CSIE, NCU Scene streaming Many objects Remote walk- through Object selections & transmissions Teler &Lischinski 2001
7/ Adaptive Computing and Networking Lab, CSIE, NCU Visualization streaming Large volume Time-varying Dedicated servers Olbrich & Pralle 1999
8/ Adaptive Computing and Networking Lab, CSIE, NCU Image-based streaming Server- rendered Thin clients Less responsive Cohen-Or et. al. 2002
9/ Adaptive Computing and Networking Lab, CSIE, NCU Do we need 3D streaming? MMOGs Next-generation consoles (PS3, XBox360) Earth-scale virtual environment
10/ Adaptive Computing and Networking Lab, CSIE, NCU The BIG question How can 3D streaming be realized for a virtual environment with millions of concurrent users? The obvious problems Large contents size (bandwidth) Visibility calculations(CPU power) Everybody is watching a different movie!
11/ Adaptive Computing and Networking Lab, CSIE, NCU P2P-based 3D Scene Streaming Models & assumptions Many 3D objects(position, orientation) User navigations(AOI visibility) Objects are fragmented (base & refinement pieces) Initially stored at server
12/ Adaptive Computing and Networking Lab, CSIE, NCU Requirements User's perspective Visual quality (fill ratio) Interactivity (base & completion latency) Server's perspective Requests can be redirected (save bandwidth) Visibility calculation is distributed (save CPU)
13/ Adaptive Computing and Networking Lab, CSIE, NCU Challenges Distributed visibility determination Global knowledge should not be needed Scene partition & distribution required Peer and piece selection Availability, peer capacities, network conditions Roughly sequential transfer
14/ Adaptive Computing and Networking Lab, CSIE, NCU Conceptual framework Partition(for scene) Fragmentation(progressive mesh & texture) Prefetching(behavior-based) Prioritization(visibility determination) Selection(peer & piece selection)
15/ Adaptive Computing and Networking Lab, CSIE, NCU 3D streaming processes (client)
16/ Adaptive Computing and Networking Lab, CSIE, NCU Design of FLoD Users have shared visibility (contents from peers) Assume P2P-VE overlay Basic design Each object has ID & location point Scene description records orientation & scale World is partitioned into cells
17/ Adaptive Computing and Networking Lab, CSIE, NCU
18/ Adaptive Computing and Networking Lab, CSIE, NCU Interface between FLoD & App
19/ Adaptive Computing and Networking Lab, CSIE, NCU Procedures Login Obtain scene descriptions (cell list) Obtain objects (request list) Request for piece (peer & piece selection) Move Logout
20/ Adaptive Computing and Networking Lab, CSIE, NCU Policies Content discovery(query-based) Peer selection(random) Piece selection(sequential) Server request condition (nearest, within dist) Concurrent transmission(limit to 4) Caching(5 x AOI)
21/ Adaptive Computing and Networking Lab, CSIE, NCU Prototype Implementation
22/ Adaptive Computing and Networking Lab, CSIE, NCU Partition Cell-based construction Use an actual game scene 100x game scene (514KB -> 51.8MB)
23/ Adaptive Computing and Networking Lab, CSIE, NCU Fragmentation
24/ Adaptive Computing and Networking Lab, CSIE, NCU Prioritization Visual importance
25/ Adaptive Computing and Networking Lab, CSIE, NCU Piece request list
26/ Adaptive Computing and Networking Lab, CSIE, NCU Selection Query Random request Ask server if none of the peers responded
27/ Adaptive Computing and Networking Lab, CSIE, NCU LAN Experiment 8 people, 10 Mbps LAN 40 min. 34 traces
28/ Adaptive Computing and Networking Lab, CSIE, NCU Simulation Evaluation Simulation methods Choose VON as the P2P-NVE overlay 1000 x 1000 world, 100x100 cell Randomly generated objects (500 total, 5 / cell) 15 kb (3kb base piece, 1.2 refinements) Bandwidth limitation: Server:10 Mbps / 10 Mbps Clients: 1 Mbps / 512 Kbps 100ms/step, 3000 steps
29/ Adaptive Computing and Networking Lab, CSIE, NCU Simulation Results Scalability Bandwidth use(kb / sec) clients & server Streaming Quality Fill ratio(%) Base latency(sec) Peer hit ratio (%)
30/ Adaptive Computing and Networking Lab, CSIE, NCU Server upload time-series (400 nodes)
31/ Adaptive Computing and Networking Lab, CSIE, NCU Server upload
32/ Adaptive Computing and Networking Lab, CSIE, NCU Client upload/download
33/ Adaptive Computing and Networking Lab, CSIE, NCU Fill ratio
34/ Adaptive Computing and Networking Lab, CSIE, NCU Base latency
35/ Adaptive Computing and Networking Lab, CSIE, NCU Hit ratio
36/ Adaptive Computing and Networking Lab, CSIE, NCU Effects of node density
37/ Adaptive Computing and Networking Lab, CSIE, NCU Effects of data density
38/ Adaptive Computing and Networking Lab, CSIE, NCU Discussions Distributed visibility determination Pre-partitioning to cells Obtainment of scene descriptions Peer & piece selection Multiple data sources via AOI neighbors Fault-tolerant to node failures
39/ Adaptive Computing and Networking Lab, CSIE, NCU Conclusion Peer-to-peer is a promising way for 3D streaming Neighbor discovery from P2P-NVE helps Distributed visibility determination Peer & piece selection An important area to both graphics and networking
40/ Adaptive Computing and Networking Lab, CSIE, NCU Future Work Data retrieval from non-AOI nodes Piece dependency considerations Prefetching & caching