A Middleware Approach to Building Content-Centric Applications

Total Page:16

File Type:pdf, Size:1020Kb

A Middleware Approach to Building Content-Centric Applications A Middleware Approach to Building Content-Centric Applications Gareth Tyson B.Sc. (Hons) M.Sc. A Thesis Submitted for the Degree of Doctor of Philosophy Department of Computer Science Lancaster University UK May, 2010 Acknowledgements I would like to thank everybody who has helped me during the compilation of this thesis. First and foremost I would like to thank Andreas Mauthe for his invaluable contributions to my research. I could not have asked for a more insightful and dedicated supervisor, who always found time to help regardless of his own workload. I realise this is a rare characteristic and I consider myself very lucky to have worked with him. In addition, I would also like to thank a number of other people who have made a range of immeasurable contributions to my work over the years: Sebastian Kaune, Yehia El-khatib, Paul Grace, Thomas Plagemann, Gordon Blair, Magnus Skjegstad, Rub´enCuevas Rum´ın,as well as everybody from the CONTENT and INTERSECTION projects. It was a privilege to work with you all. Alongside these people, I would also like to acknowledge David Hutchison, Edmundo Mon- teiro and Michael Luck for making a number of helpful suggestions regarding the final version of this thesis. I would also like to thank everybody at Infolab21 and Lancaster University who made my time here so enjoyable, including Ali, Andi, Andreas, Andy, Colin, Eddie, Frodo, Jamie, Jason, Jayne, Kirsty, Matt, Mu, Rach, Rick, Sean, Sue and Yehia. In particular, I'd like to thank Zo¨efor keeping me sane (and smiling) whilst writing up! Last of all, I'd like to thank my parents for supporting me during every stage of my education and always being there to lend a helping hand. iii Abstract Recent years have seen a huge proliferation in the use of content in distributed ap- plications. This observation has been exploited by researchers to construct a new paradigm called content-centric networking. Within this paradigm, applications interact with the network using a simple content request/reply abstraction. The network is then responsible for routing this request towards the `nearest' provider that can offer the content. This process therefore exploits the observation that applications rarely have a vested interest in where their content is obtained from. However, it currently ignores the fact that many applications similarly have no interest in how their content is obtained, as long as it falls within certain require- ment bounds (e.g. performance, security etc.). Consequently, existing content- centric interfaces offer no support for stipulating such abstract requirements. This thesis therefore proposes an extension of the content-centric abstraction to include the concept of delivery-centricity. A delivery-centric abstraction is one that allows applications to associate (high-level) delivery requirements with con- tent requests. The purpose of this is to offer access to content in a specialised and adaptable way by exploiting an application's ambivalence towards the un- derlying means by which it is acquired. Through this, applications can simply issue abstract requirements that are satisfied by the underlying system. These requirements can range from performance needs to more diverse aspects such as overheads, anonymity, monetary cost and the ethical policies of providers. Using the above principles, this thesis proposes the design of a new system that can offer a delivery-centric abstraction. This process is guided by key design goals, which dictate a solution should be interoperable with existing sources, highly deployable and extensible. Specifically, a middleware approach is taken, which results in the development of the Juno middleware. Juno operates by using configurable protocol plug-ins that can interact with various third party providers to discover and access content. Using these plug-ins, Juno can dynamically (re- )configure itself to deliver content from the sources that are most conducive with the application's requirements. The thesis is evaluated using a number of techniques; first, a detailed study of v real-world delivery protocols is performed to motivate and quantify the benefits of using delivery-centricity. Alongside this, Juno's functional aspects (discovery and delivery) are also evaluated using both simulations and a prototype deployment to understand the performance, overheads and feasibility of using a delivery-centric abstraction. Throughout the thesis, performance is focussed on as the primary delivery requirement. It is shown that utilising a delivery-centric abstraction can dramatically increase the ability to satisfy this requirement, and that Juno's approach fully supports such improvements. It is then concluded that placing delivery-centricity in the middleware-layer is a highly effective approach, and that it can be performed in a feasible manner to ensure that delivery requirements are met. The key contributions of this thesis are therefore, (i) the introduction of a new delivery-centric abstraction, (ii) the design and implementation of a middleware solution to realise this abstraction, and (iii) the development of novel technologies to enable content-centric interoperation with existing (and future) content providers. Declaration I declare that the work presented in this thesis is, to the best of my knowledge and belief, original and my own work. The material has not been submitted, either in whole or in part, for a degree at this, or any other university. The prototype implementation of the proposed system was written entirely by myself, although the OpenCOM component model used to develop it was im- plemented by Paul Grace, who also kindly provided some performance measure- ments. The BitTorrent measurement study detailed in this thesis was performed in conjunction with Sebastian Kaune and Rub´enCuevas Rum´ın. Gareth Tyson. vii Publications During the compilation of this thesis, the following related articles∗ have been published by the author. • Sebastian Kaune, Gareth Tyson, Konstantin Pussep, Andreas Mauthe, Aleksandra Kovacevic and Ralf Steinmetz. The Seeder Promotion Prob- lem: Measurements, Analysis and Solution Space. In Proc. 19th IEEE Intl. Conference on Computer Communication Networks (ICCCN), Zurich, Switzerland (2010). • Sebastian Kaune, Ruben Cuevas Rumin, Gareth Tyson, Andreas Mau- the, Carmen Guerrero and Ralf Steinmetz. Unraveling BitTorrent's File Unavailability: Measurements and Analysis. In Proc. 10th IEEE Intl. Conference on Peer-to-Peer (P2P), Delft, Netherlands (2010). • Gareth Tyson, Paul Grace, Andreas Mauthe, Gordon Blair and Sebastian Kaune. A Reflective Middleware to Support Peer-to-Peer Overlay Adapta- tion. In Proc. 9th Intl. IFIP Conference on Distributed Applications and Interoperable Systems (DAIS), Lisbon, Portugal (2009). • Gareth Tyson, Andreas Mauthe, Sebastian Kaune, Mu Mu and Thomas Plagemann. Corelli: A Dynamic Replication Service for Supporting Latency- Dependent Content in Community Networks. In Proc. 16th ACM/SPIE Multimedia Computing and Networking Conference (MMCN), San Jose, CA (2009). • Gareth Tyson, Paul Grace, Andreas Mauthe and Sebastian Kaune. The Survival of the Fittest: An Evolutionary Approach to Deploying Adap- tive Functionality in Peer-to-Peer Systems. In Proc. ACM/IFIP/USENIX Middleware: Workshop on Adaptive and Reflective Middleware (ARM), Leuven, Belgium (2008). ∗A comprehensive list is available at http://eprints.comp.lancs.ac.uk ix • Gareth Tyson, Andreas Mauthe, Thomas Plagemann and Yehia El-khatib. Juno: Reconfigurable Middleware for Heterogeneous Content Networking. In Proc. 5th Intl. Workshop on Next Generation Networking Middleware (NGNM), Samos Islands, Greece (2008). Contents Contentsi 1 Introduction1 1.1 Overview ................................ 1 1.2 Content-Centric Networking...................... 2 1.2.1 Overview ............................ 2 1.2.2 The Case for Content-Centric Networking.......... 2 1.2.3 Critique of Existing Approaches ............... 3 1.3 Research Goals............................. 6 1.4 Thesis Overview ............................ 6 2 Background and Related Work9 2.1 Introduction............................... 9 2.2 Defining Content-Centricity...................... 9 2.3 Principles of Content Distribution .................. 12 2.3.1 Overview ............................ 12 2.3.2 Content Discovery ....................... 13 2.3.3 Content Delivery........................ 18 2.3.4 Summary............................ 23 2.4 Principles of Networked System Interoperation ........... 24 2.4.1 Overview ............................ 24 2.4.2 Protocol Standardisation and Uptake ............ 25 2.4.3 Protocol Bridging ....................... 26 2.4.4 Interoperability Middleware.................. 29 2.4.5 Summary............................ 30 2.5 Related Work.............................. 31 2.5.1 Overview ............................ 31 2.5.2 Data-Oriented Networking Architecture (DONA) . 32 2.5.3 Assurable Global Networking (AGN)............. 38 2.5.4 Akamai ............................. 44 i ii CONTENTS 2.5.5 Summary............................ 50 2.6 Conclusions............................... 51 3 Analysis and Modelling of Delivery Protocol Dynamics 53 3.1 Introduction............................... 53 3.2 HTTP.................................. 54 3.2.1 Overview of HTTP....................... 54 3.2.2 Methodology .......................... 56 3.2.3 Resources............................ 56 3.2.4 Protocol............................. 59 3.2.5 Modelling............................ 62 3.2.6 Summary...........................
Recommended publications
  • Simulacijski Alati I Njihova Ograničenja Pri Analizi I Unapređenju Rada Mreža Istovrsnih Entiteta
    SVEUČILIŠTE U ZAGREBU FAKULTET ORGANIZACIJE I INFORMATIKE VARAŽDIN Tedo Vrbanec SIMULACIJSKI ALATI I NJIHOVA OGRANIČENJA PRI ANALIZI I UNAPREĐENJU RADA MREŽA ISTOVRSNIH ENTITETA MAGISTARSKI RAD Varaždin, 2010. PODACI O MAGISTARSKOM RADU I. AUTOR Ime i prezime Tedo Vrbanec Datum i mjesto rođenja 7. travanj 1969., Čakovec Naziv fakulteta i datum diplomiranja Fakultet organizacije i informatike, 10. listopad 2001. Sadašnje zaposlenje Učiteljski fakultet Zagreb – Odsjek u Čakovcu II. MAGISTARSKI RAD Simulacijski alati i njihova ograničenja pri analizi i Naslov unapređenju rada mreža istovrsnih entiteta Broj stranica, slika, tablica, priloga, XIV + 181 + XXXVIII stranica, 53 slike, 18 tablica, 3 bibliografskih podataka priloga, 288 bibliografskih podataka Znanstveno područje, smjer i disciplina iz koje Područje: Informacijske znanosti je postignut akademski stupanj Smjer: Informacijski sustavi Mentor Prof. dr. sc. Željko Hutinski Sumentor Prof. dr. sc. Vesna Dušak Fakultet na kojem je rad obranjen Fakultet organizacije i informatike Varaždin Oznaka i redni broj rada III. OCJENA I OBRANA Datum prihvaćanja teme od Znanstveno- 17. lipanj 2008. nastavnog vijeća Datum predaje rada 9. travanj 2010. Datum sjednice ZNV-a na kojoj je prihvaćena 18. svibanj 2010. pozitivna ocjena rada Prof. dr. sc. Neven Vrček, predsjednik Sastav Povjerenstva koje je rad ocijenilo Prof. dr. sc. Željko Hutinski, mentor Prof. dr. sc. Vesna Dušak, sumentor Datum obrane rada 1. lipanj 2010. Prof. dr. sc. Neven Vrček, predsjednik Sastav Povjerenstva pred kojim je rad obranjen Prof. dr. sc. Željko Hutinski, mentor Prof. dr. sc. Vesna Dušak, sumentor Datum promocije SVEUČILIŠTE U ZAGREBU FAKULTET ORGANIZACIJE I INFORMATIKE VARAŽDIN POSLIJEDIPLOMSKI ZNANSTVENI STUDIJ INFORMACIJSKIH ZNANOSTI SMJER STUDIJA: INFORMACIJSKI SUSTAVI Tedo Vrbanec Broj indeksa: P-802/2001 SIMULACIJSKI ALATI I NJIHOVA OGRANIČENJA PRI ANALIZI I UNAPREĐENJU RADA MREŽA ISTOVRSNIH ENTITETA MAGISTARSKI RAD Mentor: Prof.
    [Show full text]
  • U-P2P: a Peer-To-Peer System for Description and Discovery of Resource-Sharing Communities
    View metadata, citation and similar papers at core.ac.uk brought to you by CORE provided by Carleton University's Institutional Repository 1 U-P2P: A Peer-to-peer System for Description and Discovery of Resource-sharing Communities Aloke MUKHERJEE, Babak ESFANDIARI, and Neal ARTHORNE knowledge who do not possess the expertise to design their Abstract-- A simple method is proposed for peer-to-peer own applications. This allows applications to be tailored to description and discovery of resource-sharing communities as smaller real-world communities and enables the sharing of well as the resources themselves. An XML Schema document virtually any object - for example: describes a shared resource. By applying transformations, specified in XSL, the schema is used to generate an application with the ability to publish and search for the defined object. • XML descriptions of chemical molecules for chemists or Meta-data is indexed and searchable allowing complex objects chemistry students to be discovered. We propose to solve the problem of discovery • descriptions of species for scientists studying biodiversity for resource-sharing communities by treating a community as a • descriptions of genes for researchers studying the human shared resource. An XML Schema description of resource- sharing communities is used to generate a P2P system for genome community discovery. • design patterns for computer science students • software components for application developers Index Terms—peer-to-peer, resource description, resource discovery, XML Schema The focus of existing communities can be narrowed by specifying additional attributes - for example: I. INTRODUCTION HIS paper proposes a solution to the problem of resource • MP3 trading sub-communities focused on the work of a T description and discovery in peer-to-peer file-sharing single artist or genre communities.
    [Show full text]
  • Limewire Case Study
    MARYLAND STATE POLICE COMPUTER FORENSICS LABORATORY MDSP-CFL2006 DIGITAL MEDIA ANALYSIS OF GNUTELLA PEER-TO-PEER NETWORKS LIMEWIRE CASE STUDY David B. Heslep Detective Sergeant DO NOT DISSEMINATE WITHOUT THE EXPRESS PERMISSION OF THE AUTHOR Copyright © 2006, David B. Heslep, All Rights Reserved MDSP-CFL 2006 Gnutella Peer-to-Peer Networks: Limewire D/Sgt. David Heslep 2 of 32 6/13/2006 Contents TITLE - Digital Media Analysis – Gnutella Peer-to-Peer Networks: Limewire................................3 Introduction.........................................................................................................................................3 Intended Audience..............................................................................................................................3 Goals and Objectives .........................................................................................................................3 The Gnutella Protocol.........................................................................................................................4 Gnutella Descriptors ...............................................................................................................4 Handshaking .....................................................................................................................................5 Gnutella Handshake ...............................................................................................................5 Ultrapeer Handshaking......................................................................................................................6
    [Show full text]
  • Xxxxxxxxxxx Xxxxxxxxxxxxxxx Xxxxxxxxxxxxxxxxx Xxxxxxxxxxx Xxxxxxxxxxxxxxx Xxxxxxxxxxxxxxxxx
    xxxxxxxxxxx xxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxx xxxxxxxxxxx xxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxx xxx xxxx xxxxx xxx xxxx xxxxx xxx xxxx xxxxx xxx xxxx xxxxx xxx xxxx xxxxx xxx xxxx xxxxx xxx xxxx xxxxx xxx xxxx xxxxx xxx xxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxx xxx xxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxx oxygen edition @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ department of corrections @ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ correction 1: in the nasa directory and tiz page we stated that natas was involved with the nasa directory. actually, he was not. sheepbyte had formatted the file to send it to osp which is why it contained natas in it. billy hoyle assumed natas was involved because it was in the text. a special apology goes out to natas. update 1: we have switched sites. we are now located at tiz.bravehost.com update 2: we have postponed the government robots.txt project until a later issue because our new projects are cooler and require more work. the government robots project will be completed. apology 1: we ripped the urls for the bellsouth mining project from the binrev topic. apparently they are not cool with that and we thought the project was almost done. update 3: there is no hacker news wire in this issue because the main writer is feeling lazy. if you wish to email us letters, articles, reviews, flames, hate mail, death threats, requests to join, or questions please email [email protected] current members: zraith ([email protected]) no pgp key a3kton ([email protected]) -----begin pgp public key block----- version: pgpfreeware 6.5.8 for non-commercial
    [Show full text]
  • Scalable Streaming Multimedia Delivery Using Peer-To-Peer Communication
    Downloaded from orbit.dtu.dk on: Oct 06, 2021 Scalable Streaming Multimedia Delivery using Peer-to-Peer Communication Poderys, Justas Publication date: 2019 Document Version Publisher's PDF, also known as Version of record Link back to DTU Orbit Citation (APA): Poderys, J. (2019). Scalable Streaming Multimedia Delivery using Peer-to-Peer Communication. Technical University of Denmarik. General rights Copyright and moral rights for the publications made accessible in the public portal are retained by the authors and/or other copyright owners and it is a condition of accessing publications that users recognise and abide by the legal requirements associated with these rights. Users may download and print one copy of any publication from the public portal for the purpose of private study or research. You may not further distribute the material or use it for any profit-making activity or commercial gain You may freely distribute the URL identifying the publication in the public portal If you believe that this document breaches copyright please contact us providing details, and we will remove access to the work immediately and investigate your claim. PhD Thesis DRAFT Scalable Streaming Multimedia Delivery using Peer- to-Peer Communication Justas Poderys Supervised by: Jose Soler, PhD, and Prof. Lars Dittmann, PhD Technical University of Denmark Kgs. Lyngby, Denmark 2018 Cover image: c hermione13 / 123RF Stock Photo. Print license acquired. Technical University of Denmark Department Photonics Engineering Ørsteds Plads 343 2800 Kgs. Lyngby DENMARK Tel: (+45) 45 25 63 52 Fax: (+45) 45 93 65 81 Web: fotonik.dtu.dk E-mail: [email protected] Contents Abstract vii Resumé ix Preface xi Acknowledgments xiii List of Publications xv List of Figures xvii List of Tables xxi Glossary xxiii 1 Introduction 1 1.1 Thesis Organization .........................
    [Show full text]
  • Collaborative Futures’
    COLLABORATIVEFUTURES Published : 2011-04-18 License : None Introduction 1. Anonymous 2. How this Book is Written 3. A Brief History of Collaboration 4. This Book Might Be Useless 1 1. ANONYMOUS You do not talk about Anonymous. You do NOT talk about Anonymous. (Wikis are fine though. FEAR US.) Anonymous works as one, because none of us are as cruel as all of us. Anonymous is everyone. Anonymous does it for the lulz. Anonymous cannot be out-numbered, Anonymous out-numbers you. Anonymous is a hydra, constantly moving, constantly changing. Remove one head, and nine replace it. Anonymous reinforces its ranks exponentially at need. Anonymous has neither leaders nor anyone with any higher stature. Anonymous has no identity. Anonymous is Legion. Anonymous does not forgive. Anonymous does not forget. 13 of the 41 entries in the Sekrit Code of Anonymous In this section we’re breaking the first two rules of the Sekrit Code of Anonymous <encyclopediadramatica.com/index.php?title=Anonymous&oldid=1998440936#The_Sekrit_Code>. When others have done this in the past it has brought down the wrath of this shadowy group of anonymous individuals, causing public humiliation, hacked servers, and other florid forms of chaos. Anonymous is a collection of individuals that post anonymously on /b/ <img.4chan.org/b/>, a section of the image board 4chan.org. When you post content on a typical message board, you are often required to enter your name. If you don’t, your entry is attributed to “anonymous”. On /b/ everyone posts as “anonymous”. The collective actions of users identified with the name anonymous aggregates into the collective identity Anonymous.
    [Show full text]
  • Spam Characterization and Detection in Peer-To-Peer
    Spam Characterization and Detection in Peer-to-Peer File-Sharing Systems Dongmei Jia Wai Gen Yee Ophir Frieder Illinois Institute of Technology Illinois Institute of Technology Illinois Institute of Technology 10 W 31st Street 10 W 31st Street 10 W 31st Street Chicago, IL 60616 Chicago, IL 60616 Chicago, IL 60616 1-312-567-5330 1-312-567-5205 1-312-567-5143 [email protected] [email protected] [email protected] ABSTRACT users by their filenames. A spammer can easily rename a file to Spam is highly pervasive in P2P file-sharing systems and is diffi- manipulate how it is retrieved and ranked. For example, the mu- cult to detect automatically before actually downloading a file due sic/movie industry has been injecting large amounts of spam into to the insufficient and biased description of a file returned to a the network by naming them after real songs/movies in the battle client as a query result. To alleviate this problem, we first charac- against the illegal distribution of copyrighted materials [2][3]. terize spam and spammers in the P2P file-sharing environment Spam is harmful to P2P file-sharing systems in several ways. and then describe feature-based techniques for automatically de- First, it degrades user experience. Second, spam may contain tecting spam in P2P query result sets. Experimental results show malware that, when executed, could destroy a computing system. that the proposed techniques successfully decrease the amount of Third, its transfer and discovery waste a significant amount of spam by 9% in the top-200 results and by 92% in the top-20 re- network and computing resources.
    [Show full text]
  • Proceedings of the FREENIX Track: 2003 USENIX Annual Technical Conference
    USENIX Association Proceedings of the FREENIX Track: 2003 USENIX Annual Technical Conference San Antonio, Texas, USA June 9-14, 2003 THE ADVANCED COMPUTING SYSTEMS ASSOCIATION © 2003 by The USENIX Association All Rights Reserved For more information about the USENIX Association: Phone: 1 510 528 8649 FAX: 1 510 548 5738 Email: [email protected] WWW: http://www.usenix.org Rights to individual papers remain with the author or the author's employer. Permission is granted for noncommercial reproduction of the work for educational or research purposes. This copyright notice must be included in the reproduced paper. USENIX acknowledges all trademarks herein. U-P2P: A Peer-to-Peer Framework for Universal Resource Sharing and Discovery Neal Arthorne, Babak Esfandiari, Aloke Mukherjee Department of Systems and Computer Engineering Carleton University Ottawa, Ontario, Canada [email protected] [email protected] [email protected] Abstract of files. Another important problem is the current frac- tured state of peer-to-peer communities. Again, the We present U-P2P, an open source framework for de- lack of metadata about communities makes it difficult veloping, deploying and discovering file-sharing com- to know what there is to look for in the first place. munities. We address the problem of search in peer-to- We propose a peer-to-peer framework called Univer- peer file sharing by allowing the end user to add meta- sal Peer-to-Peer (U-P2P) that simplifies the sharing of data to shared documents. Each file-sharing community custom metadata formats as well as the easy creation, allows the sharing of a particular structured document configuration and discovery of peer-to-peer communi- type.
    [Show full text]