ASCEND TECHNICAL REPORT: ASCEND-TR-002-2006A 1 A Case for Peer-to-Peer 3D Streaming Shun-Yun Hu, Shao-Chen Chang, Wei-Lun Sung, and Jehn-Ruey Jiang Abstract— Interactive 3D contents on the Internet have yet become popular due to their large data volume and the limited network bandwidth. Progressive content transmission, or 3D streaming, thus is necessary for real-time content interactions and manipulations. However, the heavy data and processing requirements of 3D streaming challenge the scalability of current client-server-based delivery methods. We propose the use of peer- to-peer (P2P) networks to make 3D streaming more scalable and affordable, so that interactive 3D contents may see wider adoptions. We also describe a conceptual model and a design framework, called FLoD, for P2P-based 3D streaming that supports multi- user networked virtual environments (NVEs) such as Massively Multiplayer Online Games (MMOGs). FLoD allows clients to obtain relevant 3D data from other clients while minimizing server resource usage. Evaluation of FLoD through simulations shows that P2P-based 3D streaming can be fundamentally more scalable than existing client-server approaches. Index Terms— 3D streaming, peer-to-peer (P2P), networked virtual environment (NVE), scalability, overlay networks, visibil- ity determination I. I NTRODUCTION 3D STREAMING refers to the continuous and real-time delivery of 3D contents (such as meshes, textures, animations, and scene graphs) over network connections to allow user interactions without a full download. Similar to audio or video media streaming [1], 3D contents need to be fragmented into pieces on a server, before they can be trans- mitted, reconstructed, and displayed at the client side. Unlike media streaming, as each user often has a different visibility or interest area, the transmission sequence in 3D streaming varies from user to user and may require individualized visibility calculations [2] (i.e. akin to everyone watches a video with unique editings). There are mainly four types of 3D streaming: object stream- ing, scene streaming, visualization streaming, and image-based streaming. In this paper we will focus on 3D scene streaming for a potentially large networked virtual environment (NVE) [3] with many 3D objects, where users can navigate and pos- sibly communicate with one another in real-time. Existing 3D streaming all adopts the client-server architecture as the main delivery model. While this may be fine for a few users, the data and processing-intensive nature of 3D streaming demands prohibitively vast amount of server-side bandwidth and CPU A preliminary version of this paper appeared in the Proc. of the 11th Intl. Conf. on 3D Web Technology (Web3D 2006) under the title: ”A Case for 3D Streaming on Peer-to-Peer Networks”. This work was supported by NSC of Taiwan, R.O.C. under grant no. NSC 95-2221-E-008-048-MY3. The authors are with the Department of Computer Science and Information Engineering, National Central University, Taiwan, R.O.C. (e-mail: syhu@yahoo.com; cavour@acnlab.csie.ncu.edu.tw; kergy@acnlab.csie.ncu.edu.tw; jrjiang@csie.ncu.edu.tw. Mailing address: 300 Jhongda Rd., Jhongli City, Taoyuan County 320, Taiwan (R.O.C.) Phone: +886-3-4227151#35312 Fax: +886-3-4222681) resources when serving a large audience. 3D applications with a large volume of contents (e.g. video games) thus usually require the contents be obtained through pre-installations via CDs or full downloads. However, current application trends point to a need for real-time 3D streaming on possibly a massive scale: Google Earth is an application that has provided real- time viewing of detailed satellite images of the globe to over a million Internet users. Extending the image-based Earth into a fully 3D one may only be a matter of time, as indicated by initiatives such as X3D Earth [4]. However, pre-installing a full 3D Earth for all users is unpractical. Massively Multiplayer Online Games (MMOGs) [5] are Internet games where up to hundreds of thousands of users interact simultaneously in massive 3D worlds. The most popular titles often have millions of global users. MMOGs’ growth and popularity, and their extensions to areas beyond entertainment, may promote a need for content delivery easier than the current CD installations. Scalable and efficient 3D streaming thus may be an impor- tant enabler for diverse forms of new Internet applications. We propose the use of peer-to-peer (P2P) networks to improve the scalability and affordability of 3D scene streaming, based on the observation that users navigating through a 3D scene may own similar contents due to overlapped visibility. Users thus might obtain relevant contents from one another. Although there has been significant work for P2P-based media streaming in recent years, it is not directly applicable to 3D streaming as the nature of 3D contents differs from other media types. Novel understandings to the fundamental problems involved and the design of new streaming techniques thus are necessary. The contributions of this paper are two-fold. First, we formulate a conceptual model for realizing real-time 3D scene streaming on P2P networks by identifying the basic 3D streaming issues as the fragmentation of objects and the prioritization of transmission order. Additional issues of scene partition and peer and piece selection are introduced when 3D streaming is adapted to P2P networks. Second, we present the design and evaluation of FLoD (Flowing Level-of-Details),a scalable P2P framework that supports 3D scene streaming for applications such as X3D Earth or MMOGs. By identifying and separating the graphics and the networking aspects of the system, FLoD allows researchers from both communities to tackle and improve each aspect independently. The rest of the paper is organized as follows. Section II provides background on the major themes of this paper. In Section III, we present our model for P2P-based 3D scene streaming. We describe the design of FLoD in Section IV, and its evaluation in Section V. The paper concludes with a summary and descriptions of future work in Section VI.