Overview of distributed multimedia collaboration
description
Transcript of Overview of distributed multimedia collaboration
OVERVIEW OF DISTRIBUTED MULTIMEDIA COLLABORATION
Tao Huang
01-09-2008
OUTLINE
Distributed Systems Multimedia Collaboration HCI design in Collaboration Architecture Design of Collaboration Systems
2
DISTRIBUTED SYSTEMS – DEFINITION Definition
A collection of (probably heterogeneous) automata whose distribution is transparent to the user so that the system appears as one local machine.
Automata coordinate their activities through a distribution middleware
Classification DFS: Distributed File System DOS: Distributed Operation System
Pros & Cons Transparent to network Resource sharing Fault tolerant Based on flawed assumptions
3
DISTRIBUTED SYSTEMS – HISTORY
1970-1985 IBM PC, RFC 791(IP), Ethernet, ARPANET
1985-1995 Sun NFS, RFC 1510(Kerberos V5), GPRS
1995-Current Internet/World Wide Web Gigabit Ethernet, Fiber optics P2P, Napster Soap, Web Services, Grids
4
DISTRIBUTED SYSTEMS – ARCHITECTURES
Typical architectures Client Server:
Smart client fetch and display data from server 3-tier:
Move client intelligence to middle tier N-tier:
Forward requests to other enterprise services Clustered:
Tasks are subdivided and processed on integrated machines,
results will be put together
5
DISTRIBUTED SYSTEMS – ARCHITECTURES II
Typical architectures Parallel Computing
Simultaneous use of multiple compute resources to solve a computational problem
Distributed Objects RM-ODP & CORBA
Peer-to-Peer SOA(Service Oriented Architecture)
Web services Grid services Web 2.0
6
DISTRIBUTED SYSTEMS – STANDARDS & TECHNOLOGIES
Related standards RM-ODP (ISO/ITU-T) OMG CORBA Open Group’s DCE W3C Web Service Architecture (WS-*)
Related platforms Microsoft .Net Framework Java VM ADAPTIVE Communication Environment (ACE)
Related techniques Java RMI SOAP 7
DISTRIBUTED SYSTEMS – MIDDLEWARE Richard E. Schantz et al.
“Middleware for Distributed Systems”
8
DISTRIBUTED SYSTEMS – MIDDLEWARE CLASSIFICATION
Host infrastructure middleware Encapsulates and enhances native OS
communication and concurrency mechanisms Distribution middleware
Defines higher-level distributed programming models
Common middleware services Augment distribution middleware by defining
higher-level domain-independent services Domain-specific middleware services
Tailored to the requirements of particular domains, such as telecom, e-commerce, health care, process automation, or aerospace
9
DISTRIBUTED systems – SOME RESEARCH CHALLENGES
From “Report of the NSF Workshop on Research Challenges in Distributed Computer Systems”(2005) Security
Making networks secure, Confidence in the environment Simplifying Management
Simplify management of technology across the various domains
Continuous operation/Fault tolerant Avoiding correlated failures, Living with failure. Failure
detection, Self configuration, Software upgrades, Better tools, Availability versus Consistency
Real time QoS Response time, jitter, throughput, availability, survivability,
recovery, time after attack/failure, call drop rate, access failure rate, packet delay, packet drop rate
10
Distributed Systems Multimedia Collaboration HCI design in Collaboration Architecture Design of Collaboration Systems
11
MULTIMEDIA COLLABORATION – DEFINITION Multimedia
Handling a variety of representation media in an integrated manner
It has both continuous and discrete media types Collaboration
Structured, recursive process where two or more people work together toward a common goal
Shared generic tools: Text chat, White boards, Audio/Video conferencing
Shared applications: Web pages, PowerPoint Some Typical Multimedia Collaborations
Audio/Video Conferencing E-Learning Online Social Communities
12
MULTIMEDIA COLLABORATION – EXAMPLE SYSTEMS Sync Collaboration
• Access Grid & Virtual Room Video conferencing System(VRVS)
• Admire from BUAA• Polycom• Skype• Gtalk• WebEx• GlobalMMCS from IUB
Async Collaboration• E-Learning
• Sakai Project (e.g. IU Oncourse), Blackboard
• Online Social Communities• FaceBook, MySpace & Second Life
13
MULTIMEDIA COLLABORATION – SOME CHALLENGES OF SYNC MULTIMEDIA
Supporting streaming multimedia Programming model support System support
Quality of service support QoS classification
Timeliness dimensions Volume dimensions Reliability dimensions
Static & dynamic QoS management Real time synchronization support
intra- & inter-media synchronization Multiparty communications 14
MULTIMEDIA COLLABORATION – SYSTEM I PARTICIPATED IN Global-MMCS
A service-oriented collaboration system, which integrates various services including videoconference, instant messaging and streaming
Web services based conference control framework
Based on XGSP (XML based General Session Protocol)
Integrates heterogeneous systems into one collaboration system
15
MULTIMEDIA COLLABORATION – MY CURRENT WORK
CGL Annotation System
16
MULTIMEDIA COLLABORATION – MY CURRENT WORK
17
Distributed Systems Multimedia Collaboration HCI design in Collaboration Architecture Design of Collaboration Systems
18
HCI DESIGN IN COLLABORATION – DEFINITION
Interaction Design(ID) “Designing interactive products to support the way
people communicate and interact in their everyday and working lives”
The center of ID is to achieve good user experience Human Computer Interaction(HCI), a subset
of ID Being “concerned with the design, evaluation, and
implementation of interactive computing systems…”(ACM SIGCHI, 1992, p.6)
People involved in ID Designers/Developers Users/Stakeholders
19
HCI DESIGN IN COLLABORATION – DESIGN PROCEDURE
The procedure of ID Identify needs and establish requirements for user
experience Develop alternate designs Building interactive versions of the designs Evaluation
Evaluation of ID Usability goals
Effectiveness, Efficiency, Safety, Utility, Learnability, Memorability
User experience goals Design principles
Visibility, Feedback, Constraints, Consistency, Affordance
20
HCI DESIGN IN COLLABORATION – IMPORTANT DESIGN ISSUES
Design in Collaboration Conversation Support
Communicating in physically different locations Communicating in co-located settings Computer mediated communication
Coordination Support Verbal/Non verbal communication Shared external representations
Awareness Support Overhearing and monitoring
Personalization Support GUI customization Status setup 21
Distributed Systems Multimedia Collaboration HCI design in Collaboration Architecture Design of Collaboration
Systems
22
ARCHITECTURE DESIGN OF COLLABORATION SYSTEMS – TOPOLOGY OF EXISTING SYSTEMS
Centralized architecture AG, VRVS and Admire: MBONE based, capable of
supporting other collaboration systems such as H.323
Windows Netmeeting and Polycom: highly relies on MCU
Windows Live, iChat AV and AOL IM Decentralized architecture
Skype, P2P overlay Hierarchical Hybrid
23
ARCHITECTURE DESIGN OF COLLABORATION SYSTEMS – TOPOLOGY CHARACTERISTICS
Centralized architecture Pro: Simple to monitor, control and secure Con: Difficult or expensive to scale for heavy load
Decentralized architecture Pro: Easy to scale the system to support heavy
load, fault-tolerant Con: Insecure and hard to keep coherent
Hierarchical Pro: Scalability, partially fault-tolerant Con: Root corruption may cause failure, difficult to
keep coherent
24
Questions ?
25
26
WHY DISTRIBUTED SYSTEMS?
Every application is part of your business model must make them work together!
Shipping/ Receiving
Inventory
Engineering
Manufacturing
Accounting
Payables/ Receivables
Sales
27
WHY DISTRIBUTED SYSTEMS?
Application Integration and Distributed Processing are the same thing Constructing information-sharing distributed systems from diverse
sources: heterogeneous networked physically disparate multi-vendor
27
28
WHY DISTRIBUTED SYSTEM? Application Requirements
Functional Non-Functional
Non-functional requirements drive distribution of a system Scalability Concurrency Openness Heterogeneity Resource sharing Fault-tolerance …
ADVANTAGES AND DISADVANTAGES OF DISTRIBUTED SYSTEMS
Advantages Sharability Expandability Local autonomy Improved performance Improved reliability and availability Potential cost reductions
Disadvantages Network reliance Complexities Security Multiple point of failure 29
Ahm
et F
atih
Musta
coglu
30
WEB SERVICES
Allows applications to communicate with each other in a platform- and programming language-independent manner
Operations in a Web Service Architecture: Publish, Find and Bind
Based upon the interactions between three roles: service provider, service registry and service requestor
Web Services interact by exchanging messages in SOAP format
De facto specifications: SOAP WSDL UDDI
SOAP Stands for Simple Object Access Protocol Based on XML
Simple and extensible An envelope which includes
Header Body
A communication protocol Provide communication between applications
A format for sending messages Platform independent Language independent
31
COBLITZ I P2P style but based on existing http CDN Divide large files into large chunks instead of small
blocks An agent splits the large file request into requests of
multiple chunks, and it is responsible of merging fetched chunks
Proxy caches chunks for later client requests
32
COBLITZ II
Coping With Scale Unilateral, Asynchronous Peering
Make peering a unilateral, asynchronous decision Peer Set Selection
Use minimum application-level ping times when determining suitable peers
Apply hysteresis to the peer set
Request Routing Highest Random Weight
33
DESIGN PRINCIPLES – VISIBILITY & CONSTRAINTS (OLD MRAS)
DESIGN PRINCIPLES – VISIBILITY & CONSTRAINTS (NEW MRAS)