evaluating collaborative infrastructure for cscw apps grid/web services

20
Evaluating Collaborative Infrastructure for CSCW Apps Grid/Web Services COMP 790, Fall 2006 Collaborative Systems

Upload: beck

Post on 18-Jan-2016

24 views

Category:

Documents


0 download

DESCRIPTION

Evaluating Collaborative Infrastructure for CSCW Apps Grid/Web Services. COMP 790, Fall 2006 Collaborative Systems. References. CoFrame: A framework for CSCW Applications based on Grid and Web Services - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Evaluating Collaborative Infrastructure for CSCW Apps Grid/Web Services

Evaluating Collaborative Infrastructure for CSCW Apps

Grid/Web Services

COMP 790, Fall 2006

Collaborative Systems

Page 2: Evaluating Collaborative Infrastructure for CSCW Apps Grid/Web Services

References• CoFrame: A framework for CSCW Applications based on Grid and

Web Services– Jinlei Jiang et al, Proceedings of IEEE International Conference on Web

Services (ICWS 2005)• Developing Collaborative Editing Applications using Web Services

– Muhammad Younas, Rahat Iqbal, Coventry University, Coventry, UK• Improving Network Efficiency in Real-Time Groupware with General

Message Compression– Carl Gutwin et al CSCW 2006

• A Collaborative Infrastructure for Aerospace Design– http://ic.arc.nasa.gov/people/filman/text/darwin/ace.pdf

• A Collaborative Infrastructure for IM applications– http://www.imlogic.com/

• A Collaborative Infrastructure for Scalable and Robust News Delivery– http://doi.ieeecomputersociety.org/10.1109/ICDCSW.2002.1030843

Page 3: Evaluating Collaborative Infrastructure for CSCW Apps Grid/Web Services

Collaborative Infrastructure

• CSCW Applications and Infrastructure– Are they the same ?

• What is a CSCW Application:– N-user software– Example: Chat Tool

Page 4: Evaluating Collaborative Infrastructure for CSCW Apps Grid/Web Services

CSCW Infrastructure• Higher Level of abstraction that provides application

developers a framework to build CSCW applications.• Example:

– We have already used one: – “Sync”: A Java based framework for

developing collaborative applications

Page 5: Evaluating Collaborative Infrastructure for CSCW Apps Grid/Web Services

Evaluating CriteriaCriteria Systems Sync CoFrame WS

Flexibility (Automation)

- Awareness Support

- Directory Service

- Communication

Programming Model (Environment)

Programming Cost (Transparency)

Consistency

- Merging

Fault Tolerance

Resource Optimization

- Message Compression

- Resource Replication Policy

Page 6: Evaluating Collaborative Infrastructure for CSCW Apps Grid/Web Services

Features Supported / Flexibility• NewsWire collaborative content delivery system

– Deals with real-time delivery of news items– Reduces Compute/Network load

• DARWIN– Collab Infrastructure for AeroSpace Design

• Issues such as: wind tunnel testing data– Focus:

• Storing/Indexing data• Manage visualizations for stored/derived data

• IMLogic– IM Application development infrastructure

• Drawbacks– Specific to one application.– Deal with some core issues but not all

• Alternatives: – Sync (Framework for Collaborative Applications)– Web Services and Grid Computing

Page 7: Evaluating Collaborative Infrastructure for CSCW Apps Grid/Web Services

Features supported – Grid/Web• Provide Core Services and additional

services

– Core Services:• Communication

– Cooperative Message Bus (CMB)– RMI (Sync Equivalent)– SOAP (Simple Object Access Protocol)

– Additional Services:• Process Management Service• Awareness Support Service• Interaction-Aided Service

– Directory Service» UDDI (Universal, Description,

Discovery and Integration)» Central Registry (similar to UDDI)» RMI registry (Sync)

– Persistence Visual Cooperation space facility

• Easier to add new functionality as it gets added as another service in the framework

Page 8: Evaluating Collaborative Infrastructure for CSCW Apps Grid/Web Services

Programming Model (Environment)

• Grid Computing– Use existing infrastructure to manage data,

resources and to collaborate to solve a large scale problem.

– Use multiple computer (resources) to build a Virtual computer architecture

– Open unlike Sync (closed)

Page 9: Evaluating Collaborative Infrastructure for CSCW Apps Grid/Web Services

Programming Model (Environment)

• Scalability– Firewalls

• Description of Services: – CoFrame: WSDL (Web

Services Description Language)

– Sync: Java• Coding Language

– CoFrame– Sync

• Globus Toolkit 3– OpenSource– Industry Standard

Criteria Systems Sync CoFrame

WS

Lang to describe Service

Java WSDL

Coding Language Java Any

Scalable No Yes

Page 10: Evaluating Collaborative Infrastructure for CSCW Apps Grid/Web Services

Programming Cost (Transparency)– Developers need to only concern themselves with

services being offered and not how the services are implemented.

– CoFrame Architecture:• Grid layer separates Application layer from Resource layer• Younas/Iqbal doesn’t provide such an abstraction. • Sync (Integrated RMI)

Page 11: Evaluating Collaborative Infrastructure for CSCW Apps Grid/Web Services

Consistency of Data

– Younis/Iqbal propose a transaction based model similar to ACID concepts

– ACID (Atomic, Consistent, Isolated, Durable)

– SACReD– CoFrame doesn’t mention

Consistency of data but the SACReD approach can be implemented in the CMB part of the framework

Criteria Systems Sync CoFrame

WS

Merging Support Yes NDE

Page 12: Evaluating Collaborative Infrastructure for CSCW Apps Grid/Web Services

Fault Tolerance

• Central server easier to secure (one point of failure)– Grid Architecture (Distributed) – CoFrame provides for:

• Single Sign On Service

Criteria Systems Sync CoFrame

WS

Architecture Centralized Decentralized

Page 13: Evaluating Collaborative Infrastructure for CSCW Apps Grid/Web Services

Resource Optimization

• Bottleneck : Network Bandwidth and Latency – Effects:

• Deterioration of user experience

– Example:• Video Chat with video frame updating every two seconds

• How to Fix this: • Improve resources

– Better network layout

• Optimize current resources– Message Compression– Resource Replication Policy

Page 14: Evaluating Collaborative Infrastructure for CSCW Apps Grid/Web Services

Resource Optimization: “Message Compression”

• Why Needed ?– Collaborative applications share a lot of data.– Inter-collaborative application messages– Example:

• Dragging a window across screen– Updates need to be sent consistently to all connected clients

– Use of XML– Message must include:

• Sender id, message id, application id, timestamp, message type, fieldnames and data values corresponding to each field

• Send messages less frequently ?• Encoding before sending, decoding on receiving

– Gutwin proposes a mix of Ziv-lempel algorithm, Huffman Coding and building a dictionary of sequences with short lookup codes.

Page 15: Evaluating Collaborative Infrastructure for CSCW Apps Grid/Web Services

Message Compression

• Sources of Inefficiency in Groupware messages– Repetition Within a single message

– Repetition between messages

– Inefficient Coding• Encoding of numbers.• Field widths for numeric data types.

Page 16: Evaluating Collaborative Infrastructure for CSCW Apps Grid/Web Services

Message Compression - Algorithm

• Within-Message Issues:– Use standard zlib algorithm

• Helpful when sending large messages

• Between-messages Compression– Treat one message as template– Compare subsequent against that template, to

determine repeated sequences– Replace repeated sequences by codes in a

dictionary– Create new templates if messages not similar

Page 17: Evaluating Collaborative Infrastructure for CSCW Apps Grid/Web Services

Resource Replication

• Replication of resource– Backup of Data– More optimized – can serve from best source

• Centralization of resource– Easier to implement

• Grids are distributed in nature– Replication model proposed by CoFrame

Page 18: Evaluating Collaborative Infrastructure for CSCW Apps Grid/Web Services

Resource Replication

• Resources stored independent of working nodes

• Provider publishes to one server– Broadcast message using CMB to store

metadata

Page 19: Evaluating Collaborative Infrastructure for CSCW Apps Grid/Web Services

Heterogeneous Systems

• CSCW Application built for different resources– Example: Two collaborators (A & B) connected using

two different devices– A has good Network (Cable/DSL) while B is on a

relatively poor network (Dialup)– Both on a Video Chat or using a 3D graphics

application

• Compression of data• Lower bit-rate

Page 20: Evaluating Collaborative Infrastructure for CSCW Apps Grid/Web Services

ConclusionCriteria Systems Sync CoFrame WS

Flexibility (Automation) - - -

- Awareness Support N Y N

- Directory Service RMI C.REG. UDDI

- Communication RMI/SOAP SOAP SOAP

Programming Model (Environment) Central Dist. Dist.

Programming Cost (Transparency) Y Y Y

Consistency - - -

- Merging Y ? ?

Architecture (Centralized/Decentralized) - - -

Resource Optimization - - -

- Message Compression N N N

- Resource Replication Policy NR Y Y