Governed Content Distribution on DHT Based Networks
Walter Allasia, Francesco Gallo Marco Milanesio, Rossano Schifanella EURIX Group Dipartimento di Informatica Torino UniversitadiTorino` {allasia, gallo}@eurixgroup.com {milane, schifane}@di.unito.it
Abstract—Peer-to-Peer (P2P) systems are widely used for sha- Our aim is therefore to present a totally distributed system ring digital items without structured metadata and in absence of capable of indexing digital rights metadata, structured in a any kind of digital rights management applied to the distributed complex way on a flat identifier space, thus enhancing the contents. In this paper we propose the implementation of a prototype application that makes use of a structured P2P system expressiveness of the key-based query mechanism on the enabling the indexing of complex metadata, used to express DHTs. To the best of our knowledge, this is the first attempt digital rights. In this way the media contents are exchanged and to index the structure of rights metadata on a structured P2P played according to the expressed grants. The creation and the network, where media contents can be exchanged and shared consumption of the shared contents can be performed through according to the expressed grants. any MPEG-21 REL compliant software and the application allows indexing and search for both governed and ungoverned In Section II we introduce the state-of-the-art of the MPEG- contents. The information about the license can be included in 7 and MPEG-21 standards and of the DHTs, then Section III the queries and the P2P network can be used to share governed describes the system, while in Section IV more details of our contents (both free and with fee) in a legitimate way. In particular implementation are pointed out. Section V presents a possible the proposed approach represents a suitable solution for indexing usage of the application and finally, while in Section VI and querying rights complex structures on DHT based networks. conclusions and on going activities are presented.
I. INTRODUCTION II. RELATED WORKS Nowadays, providers and broadcasters are facing the prob- The proposed application makes use of MPEG-7 and lem of managing a huge number of digital items on the MPEG-21 for metadata representation and Distributed Hash Web, coming from heterogeneous archives (e.g., 8mm, tapes, Tables for network topology. In the following we provide a films, digital contents). Each content can be associated with brief description of the used standards and we present the a specific license, so it is necessary to manage the expressed reference software we adopted to implement our system. rights to avoid violating (for example) copyright laws. A solution has been set up with the introduction of the A. MPEG-7 and MPEG-21 MPEG-7 [1] and MPEG-21 [2] standards, which associate MPEG-7 standard [1], formally named Multimedia Content each content with a set of metadata describing the content itself Description Interface, provides a rich set of standardized tools and the related license. In this paper we present the implemen- to describe multimedia contents. It mainly focuses on the tation of a software solution for managing metadata expressing description of the digital items, without considering how and digital rights on a structured overlay network, allowing users where this information is used. MPEG-7 standard has been to perform complex queries on (un)governed contents. Since included in several metadata languages such as ODRL (from the underlying network is a Distributed Hash Table [3], the W3C) and has also been coupled with other important TV proposed application can easily handle the growth in system ontologies (e.g., TVAnytime [5]). Concerning digital rights, size and is suitable for dealing with multimedia contents MPEG-7 provides a standard XML schema and the meta- distributed on an Internet environment. data to define conditions for accessing the content (including With respect to the commonly used P2P systems, where dig- links to a registry with intellectual property rights data and ital items are shared without structured metadata and without price) and additional information about the content (copyright controls, the proposed application makes use of a structured pointers, usage history, broadcast schedule). An MPEG-7 P2P system to index complex metadata and to exchange digital Query Format has recently reached the Final Committee Draft, contents in a controlled environment. In our prototype im- in October 2007 MPEG meeting. Moreover several query plementation, the creation and the consumption of the digital frameworks based on MPEG-7 are still under investigation [6]. media is performed with the Chillout [4] reference software, MPEG-21 [2] differs from MPEG-7 because its aim is which has been extended in the implemented application in the definition of a normative open framework to be used order to fulfill the content government. Moreover, our system by all the players in the delivery and consumption chain. is unbound from a specific MPEG-21 compliant solution. This open framework will provide content creators, producers, distributors and service providers with equal opportunities in B. Distributed Hash Tables the MPEG-21 enabled open market . The goal of MPEG-21 is the definition of a standard technology needed to support users Distributed Hash Tables (DHT) [3] are a class of decen- to exchange, access, consume, trade and otherwise manipulate tralized distributed systems that partition the ownership of a digital items in an efficient, transparent and interoperable way. set of keys among participating nodes. They efficiently route In particular part 5 of MPEG-21 defines a Rights Expression messages to the unique owner of any given key. The nodes in Language (REL) to be used in the description of customized a DHT based system are organized in a well-defined topology rights applied to any digital item, since it is seen as a machine- (e.g., a ring topology in Pastry [12]). Each node is analogous readable language that can declare rights and permissions to an array slot in a hash table. DHTs are conceived to scale to using the terms as defined in the Rights Data Dictionary (also large numbers of nodes and to handle continual node arrivals standardized by MPEG-21). Rights metadata are expressed and failures. by means of MPEG-21 REL [7], which describes the license A DHT provides functions (primitives) to build a mapping associated to a specific resource, as along with several avai- between the resources (e.g., files and nodes) and the keys,
Fig. 2. System overview
In the following, the insertion and the query mechanisms In order to allow more complex queries, we inserted on the are explained in detail. In the proposed scenario, a digital DHT several mappings for each resource. First, we inserted the resource r is associated to a wide range of metadata, spanning issuer, the grant and the principal (as well as typical MPEG-7 from MPEG-7 multimedia content description to MPEG-21 tags, e.g., title and author). Furthermore, we inserted all the possible combinations of the three rights metadata mentioned source implementation of the Pastry DHT [12] for our base above. We combined the previously calculated identifiers and layer, responsible for the routing infrastructure. However, we combined them to achieve the following mappings: built our system exploiting the separation level between the FreePastry implementation and the applications, for having the < (id ,id ),id > ; < (id ,id ),id > i g r g p r possibility of using other DHTs. This level exports to upper modules the insertion of new mappings and the retrieval of < (idi,idg,idp),idr > the key’s root functionalities. In order to communicate with where for example (idi,idg) is a new identifier, computed the DHT module (see Section III), we extended the Freepas- through the hashing of the chaining of idi and idg. try Continuations for non-blocking asincronous insertion and Rights metadata are indexed on the structured overlay querying operations (for more details on Continuations see for network, allowing users to search governed resources looking example [22]). The ChilloutContinuation, shown in Figure 3, for specific issuers, grants or principals (see Figure 1). A is responsible for receiving results from the DHT and forward- user querying the DHT for a resource can start looking for a ing them to the upper layers. We used a CollectorParameter specific issuer and the returned result set is made up of all the pattern in order to collect results from the Continuations. The resources inserted by that issuer (if any). Our scheme allows main reason is that the Continuation works asynchronously more specific queries, simply combining previous identifiers because it has to take into account the network latency and and computing the new complex ones. As already mentioned, topology reconfiguration due to the join and leave of the peers. in our opinion three tags (combined together) for the rights According to Section III, the Transport module is not associated to the resource could be enough: several identifiers put directly on top of the DHT, but it communicates with point to the same resource, therefore a user can search for “all the DHT in order to get the information about the two (or the digital items issued by someone”, or “all the media with more, e.g., for multisource download) endpoints of the direct a grant of copy”, beyond looking for titles and authors. Since connection established for downloading the DCF. This module I the identifiers in Mr are built from MPEG-7 and MPEG-21 is composed by a component responsible for transferring the tags, it’s easy to combine them in order to build those complex resources (multimedia files) and an other one responsible for identifiers. What a user has to do is simply compute the basic the related metadata, actually a Java object wrapping the DCF. keys (from the simple strings/tags, e.g., the title or the issuer) or use a combination of those tags. Once obtained a pointer to the requested resource, the user can download directly the content through the Transport layer and use it as provided in the associated license.
IV. PROTOTYPE IMPLEMENTATION The involved actors interact with the system according to the general schema shown in Figure 2: in the proposed application, based on Chillout, the actors are the CCD (Content Creation Device), the SAV (Stationary Audio-Visual Device, i.e. the player) and the CPD (Content Provider Device). According to Chillout reference implementation, we make use of the DCI and DCF formats for managing contents, as already mentioned in Section III: we can image the DCF file as a container of the DCI and the resources as well, and the DCI file as made up of the descriptions of the contents (MPEG-7 Fig. 3. High level component diagram of the presented application elements) and the related licenses (MPEG-21 REL elements). All the metadata are stored inside the DCF. We use appropri- Finally, the Application module exports a set of high level ate DCF parsers/writers for reading and storing metadata and functionalities and has an explicit dependency to the Chill- this can be considered as a crucial element in our architecture, outCore package [4]. Through this module it is possible to since we are indexing a meaningful subset of the metadata join/leave the system and to insert/retrieve the DCFs. It makes available in the DCF and indexing the DCF as well. The user use of a DCI and DCF wrapper, extended from the Chillout will be able to search for the subset and at the same time the implementation, in order to parse the digital content files, whole DCF can be accessed in a completely distributed way, exctracting the metadata to be indexed. by means of a DCFMetadataService protocol, implemented The insertion of a content proceeds as follows: the Chillout for building the mapping between the subset of indexed keys, CCD is responsible for creating the DCI and the DCF. Once inserted in a structured way, and the DCF it refers to. the DCF (or simply the DCI) is created, it can be shared Following the description in Section III the implementation on the structured P2P network. We have implemented a DCF is made up of three modules: the DHT, the Transport and the wrapper and, according to the rules introduced in Section III, Application (see Figure 3). We used FreePastry [22], an open we create the indexes of the content (i.e., all the mappings) and store them into the DHT. On the other hand (the retrieval), the songs are published using a CreativeCommons license, so that lookup operation on the DHT could be done by simple key- the intellectual property of her songs can be acknowledged, words or structured bundle of MPEG-21 REL tags, resulting, although the songs are made freely available for everyone and at low level, in the index of the Content whose DCF (DCI) (b) the most valuable songs are available only under payment is fulfilling the request. The Application module contacts then and a more restrictive license could also be applied. the publishing sources asking for more information on the In order to exploit the solution proposed in this paper, the content. The DCFMetadataService component communicates composer should proceed in the following way: each song on a separate channel, by means of a specific protocol which in the compilation is associated to a single resource (e.g. is able to exchange the wrapper of the DCF. In this way we an mp3 file). The musician can choose which songs will be provide to the user all the available metadata related to the freely available and which ones will require to be paid by searched keywords and grants. The results of the query are the consumers. Therefore she can apply a different license to collected by means of the CollectorResults, which generates a each resource: a CreativeCommons like license is applied to separate thread looking for the asynchronous return messages the free songs, just to guarantee the intellectual property (and provided by the Continuations. eventually apply other restrictions) and a custom license (based The user can select the specific content from the result list on MPEG-21 REL) is associated to the songs with a fee (this and the Application module will contact the specific owner license could contain temporal or geographical limitations, source (the pair
In this paper we presented a complete decentralized system able to index the data structures expressed by MPEG-7 and MPEG-21 metadata, allowing users to do complex queries to the system. The overall architecture is based on a structured P2P network, where media content can be exchanged and shared according to the relative license. We have limited the dependencies for the application components to a common layer in the FreePastry API (i.e., the separation level), in order to use different DHT implementations in the future. We are currently evaluating the overall performance of our system, with particular emphasis on the state of the node Fig. 4. The P2P menu list and the number of inserted keys. It is worthwhile noticing that we do not need to consider the routing efficiency of the Suppose a musician wants to promote her compilation and DHT in use, since we want to be completely disjoint from decides to distribute her new songs using a P2P network a specific implementation, delegating the DHT to a simple in two different ways: (a) for promotional purposes a few routing infrastructure. Fig. 5. Class Diagram of the DHT Layer
VII. ACKNOWLEDGEMENTS . [12] A. Rowstron and P. Druschel, “Pastry: Scalable, Decentralized Object This work was partially supported by the SAPIR project Location and Routing for Large-scale Peer-to-Peer Systems,” in Proceed- [23], funded by the European Commission under IST FP6 ings of the IFIP/ACM International Conference on Distributed Systems (Sixth Framework Programme, Contract no. 45128), and by Platforms (Middleware), Heidelberg, Germany, 2001, pp. 329–350. [13] A. I. T. Rowstron and P. Druschel, “Storage Management and Caching in the Ministero Italiano per l’UniversitaelaRicerca(MIUR)` PAST, a Large-scale, Persistent Peer-to-Peer Storage Utility,” in SOSP within the framework of the “PROFILES” project [24](PRIN). ’01: Proceedings of the 18th ACM Symposium on Operating Systems Principles, Banff, Alberta, Canada, USA, 2001, pp. 188–201. REFERENCES [14] S. Ratnasamy, M. Handley, R. Karp, and S. Shenker, “Application- Level Multicast Using Content-Addressable Networks,” in NGC ’01: [1] “MPEG-7 - ISO/IEC 15938 - Information Technology Multime- Proceedings of the 3rd International Workshop on Networked Group dia Content Description Interfaces,” http://www.chiariglione.org/mpeg/ Communication, London, UK, 2001, pp. 14–29. standards/mpeg-7/mpeg-7.htm, last visited on Mar 15th 2008. [15] M. Castro, P. Druschel, A.-M. Kermarrec, A. Nandi, A. Rowstron, [2] “MPEG-21 - ISO/IEC 21000 - Information Technology Multime- and A. Singh, “Splitstream: High-bandwidth Content Distribution in dia Framework,” http://www.chiariglione.org/mpeg/standards/mpeg-21/ a Cooperative Environment,” in IPTPS ’03: Proceedings of the 2nd mpeg-21.htm, last visited on Mar 15th 2008. International Workshop on Peer-to-Peer Systems, Berkeley, CA, USA, [3] K. Wehrle, S. Gotz,¨ and S. Rieche, “Distributed Hash Tables,” in Peer-to- 2003, pp. 298–313. Peer Systems and Applications, ser. Lecture Notes in Computer Science, [16] Z. Zhang, S. Shi, and J. Zhu, “Somo: Self-Organized Metadata Overlay R. Steinmetz and K. Wehrle, Eds., vol. 3485. Springer, 2005, pp. 79–93. for Resource Management in P2P DHT,” in IPTPS ’03: Proceedings of [4] Chillout, “The Reference Software for DMP Interoperable DRM Plat- the 2nd International Workshop on Peer-to-Peer Systems, Berkeley, CA, form,” http://chillout.dmpf.org, last visited on Mar 15th 2008. USA, 2003, pp. 170–182. [5] F. G. Kazasis, N. Moumoutzis, N. Pappas, A. Karanastasi, and [17] R. Bhagwan, G. Varghese, and G. Voelker, “Cone: Augmenting DHTs S. Christodoulakis, “Designing Ubiquitous Personalized TV-Anytime to Support Distributed Resource Discovery,” University of California, Services,” in CAiSE ’03: Proceedings of the 15th Conference on San Diego, CA, USA, Tech. Rep. No. CS2003-0755, July 2003. Advanced Information Systems Engineering, Klagenfurt/Velden, Austria. [18] P. Maymounkov and D. Mazieres, “Kademlia: A Peer-to-Peer Informa- CEUR-WS.org, 2003, pp. 136–149. tion System Based on the XOR Metric,” in IPTPS ’02: Proceedings of [6] R. Tous and J. Delgado, “L7, An MPEG-7 Query Framework,” in 1st International Workshop on Peer-to-Peer Systems, Cambridge, MA, AXMEDIS ’07: Proceedings of the 3rd International Conference on USA, 2002, pp. 53–65. Automated Production of Cross Media Content for Multi-Channel Distri- [19] M. Harren, J. M. Hellerstein, R. Huebsch, B. T. Loo, S. Shenker, and bution, Barcelona, Spain. IEEE Computer Society, 2007, pp. 256–263. I. Stoica, “Complex Queries in DHT-based Peer-to-Peer Networks,” in [7] MPEG, “MPEG-21 REL - ISO/IEC 21000-5 - Information Tech- IPTPS ’02: Proceedings of 1st International Workshop on Peer-to-Peer nology Multimedia Framework,” http://www.chiariglione.org/mpeg/ Systems, Cambridge, MA, USA, 2002, pp. 242–249. technologies/mp21-rel/index.htm, last visited on Mar 15th 2008. [20] P. Felber, E. Biersack, G. L. Erice, K. Ross, and U. G. Keller, “Data [8] W. Allasia, F. Gallo, F. Chiariglione, and F. Falchi, “An Innovative Indexing and Querying in DHT Peer-to-Peer Networks,” in ICDCS ’04: Approach for Indexing and Searching Digital Rights,” in AXMEDIS Proceedings of the 24th IEEE International Conference On Distributed ’07: Proceedings of the 3rd International Conference on Automated Computing Systems, Tokyo, Japan. IEEE Computer Society, 2004, pp. Production of Cross Media Content for Multi-Channel Distribution, 200–208. Barcelona, Spain. IEEE Computer Society, 2007, pp. 147–154. [21] M. Milanesio, G. Ruffo, and R. Schifanella, “A Totally Distributed [9] DMP, http://www.dmpf.org, last visited on Mar 15th 2008. Iterative Scheme for Web Services Addressing and Discovery,” in PDCS [10] “MPEG-A - ISO/IEC 23000-5 - Information Technology Multime- ’07: Proceedings of the 19th IASTED International Conference on dia Application Format, Part 5,” http://www.chiariglione.org/mpeg/ Parallel and Distributed Computing Systems, Cambridge, MA, USA. standards/mpeg-a/mpeg-a.htm, last visited on Mar 15 2008. ACTA Press, 2007, pp. 85–90. [11] DMP, “Approved Document No. 3 - Technical Specification: Interoper- [22] FreePastry, http://freepastry.rice.edu, last visited on Mar 15th 2008. able DRM Platform, Version 3.0 - 1003/GA15,” http://www.dmpf.org/ [23] SAPIR, http://www.sapir.eu, last visited on Mar 15th 2008. open/dmp1003.zip, last visited on Mar 15 2008 [24] PROFILES, http://dit.unitn.it/profiles, last visited on Mar 15th 2008.