340 likes | 452 Views
Organizing and Sharing Distributed Web Objects with Menagerie. Roxana Geambasu, Cherie Cheung, Alex Moshchuk, Steve Gribble, Hank Levy University of Washington. The transition onto the Web. Desktop. Web Services. Desktop advantages.
E N D
Organizing and Sharing Distributed Web Objects withMenagerie Roxana Geambasu, Cherie Cheung, Alex Moshchuk, Steve Gribble, Hank Levy University of Washington
The transition onto the Web Desktop Web Services
Desktop advantages The user’s data istightlyintegrated within a single FS Italy App App Users can: • Organize their files into folders • Process files using applications • Protectively share files with other users of the system / Work Trips France File system The FS provides functions to support these tasks photos spreadsheets videos … …
The Web lacks these advantages Italy Web Desktop Data is integrated Data is scattered / Work Trips France File system
Italy Italy Challenge 1: Organizing personal data Web Desktop How to organize? / Work Trips Italy France Lots of tools for organization: File managers, PIM systems
Italy Challenge 2: Processing data Web Desktop tar grep Archival service Indexing service Access via FS How to access? / Italy Work Trips France
Challenge 3: Sharing data protectively Italy Web Desktop Third-party service How to share? Share & protect via FS Protect / Italy Work Trips France
Overview • Three challenges: • Organizing web objects into heterogeneous folders • Processing heterogeneous folders • Protectedsharing of heterogeneous folders • Example application • Menagerie • Evaluation • Related work • Conclusions
The Menagerie Web Object Manager / Trips Work France Italy
The Menagerie Web Object Manager – Sharing Share Sharing is deep
Overview • Three challenges: • Organizing web objects into heterogeneous folders • Processing heterogeneous folders • Protectedsharing of heterogeneous folders • Example application • Menagerie • Evaluation • Related work • Conclusions
Menagerie • Framework for building applications for personal Web-data management and sharing • Provides a set of unified infrastructure functions • On the desktop, the FS provided these functions Menagerie functions: • Common object naming • Common access to object content • Common fine-grained protection • These functions are motivated by the challenges identified in motivation
Menagerie architecture • The Menagerie Service Interface (MSI) • Similar to OpenSocial, but for personal data organization • The Menagerie File System (MFS) Application service e.g., the Menagerie Web object manager FS calls MFS MSI MSI MSI MSI MSI MSI Other service
The Menagerie prototype Application service MFS Proxy MSI MSI MSI MSI Proxy Proxy MSI MSI MSI MSI Proxy MSI MSI Proxy
The Menagerie Service Interface (MSI) • Common service API Contains operations for: • Common object naming • Common access to object content • Common fine-grained protection
Italy 1. Common object naming • Supports creation of heterogeneous folders
Supports creation of heterogeneous folders Each service exports a hierarchical namespace of each user’s objects MSI has operations for navigating and altering the namespace: ls(), mkdir() 1. Common object naming Ann’s data Charlie’s data Ann’s data Bob’s data Labels Albums Threads Photos E-mails
Archival service Indexing service How to access? Italy 2. Common access to object content • Supports processing of objects and collections
2. Common access to object content Supports processing of objects and collections Opaque object content operations read(), write() Embedded rendering Each service provides a summary HTML tag for each object Email(HTML snippet) Youtube(<object> tag) Flickr(<img> thumbnail)
Third-party service How to share? Italy 3. Common fine-grained protection • Supports protected sharing of heterogeneous folders
3. Common fine-grained protection Supports protected sharing of heterogeneous folders To facilitate fine-grained sharing we use capabilities A Menagerie capability is an unforgeable token Bundles together a globally unique object name & a set of access rights Provides the holder with authority to execute the specified actions on the named object Sharing using capabilities is just like emailing URLs
3. Common fine-grained protection • Menagerie capabilities give services a choice: • Allow direct access to web objects based on capabilities • Require authentication in addition to the capability to provide access • Authentication allows services totrack and control access to their objects • MSI protection functions: create_capa(), revoke_capa()
Overview • Three challenges: • Organizing web objects into heterogeneous folders • Processing heterogeneous folders • Protectedsharing of heterogeneous folders • Example application • Menagerie • Evaluation • Related work • Conclusions
Overview • Three challenges: • Organizing web objects into heterogeneous folders • Processing heterogeneous folders • Protectedsharing of heterogeneous folders • Example application • Menagerie • Evaluation • Related work • Conclusions
Related work • Common web service interfaces • OpenSocial to support social networking apps [Google07] Menagerie is more general and it is designed for personal data object management and sharing apps • Web-data aggregation and clipping applications • iGoogle, SecondBrain, Yahoo! Pipes, Backpack Menagerie can serve as infrastructure for such applications Most do not support fine-grained sharing • World Wide Web Without Walls (W5) [HotNets07] Menagerie has similar vision, but adds concrete API and implementation • Using OS abstractions to address Web problems • WebDAV[EuropeanConf99], Web file systems [TOCS98]
Conclusions • The shift from the desktop to the Web raises problems: • data organization • data processing • protected sharing • A small set of common operations enable powerful, generic applications on Web objects and folders • naming • content access • protection • Menagerie brings these functions onto the Web
Facilitate applications by having services adhere to common API Adherence to OpenSocial gives us hope that Menagerie will be adopted Similar concepts: uniform naming, uniform protection Menagerie vs. OpenSocial: Similarities
Menagerie vs. OpenSocial: Differences • Deal with different kinds of data: • Menagerie works with many types of personal data objects: photos, videos, word documents, spreadsheets, etc. • OpenSocial designed for social networking data: friends, their activities • Designed for different types of applications: • Menagerie: web-object management andfine-grained sharing • OpenSocial: social networking apps and more coarse-grained sharing • Different protection mechanisms: • OpenSocial: ACL-based sharing among friends • Menagerie: Capability-based protection that facilitates fine-grained sharing