Sigcomm'95 Workshop on Middleware: Presentation Slides
Sigcomm'95 Workshop on Middleware
Session 5: Services for Remote Collaboration
Hans-Peter Dommel ( peter@cse.ucsc.edu), UCSC
Presentation Slides
What does middleware for remote collaboration entail?
Clarification
- Services to orchestrate communication and cooperation across network links
with heterogeneous media in stable and failure modes
Issues
- Distributed Systems Issues: Replication, Availability, Reliability
- Session control/membership management
- Floor control/concurrency control
- Access control
- Replication/consistency control
- Security (authentication, authorization, encryption)
- Media Synchronization
Goals
- Approximation of face-to-face meeting quality (acceptance)
- Fine-grained sharing (media compatibility)
- Collaboration-awareness plus transparency
- Session resilience and adaptation to varying site and network conditions
Should scaling issues be offloaded to the user?
Issues
- Applications and groupware are purpose-specific and scale-dependent
- Sessions needs to allow for recursive partitioning and hierarchical
subgrouping
- Problem reflects core issue of middleware: what does application vs.
site vs. network take on? (complexity vs. efficiency)
- Large-scale sessions can cause cognitive overload
- Groupware is primarily "userware", i.e. users need to be informed about state
- Scales vary strongly with time, esp. in future "mobile collaboration"
Goals
- Make all system scaling issues transparent that do not affect the users'
work
- But session scale must be visible for users as feedback
on collaboration dynamics and service delays
- Reduce information overload in large sessions via "smart" GUI
- Make protocols adaptable and learning about network behavior
Are reliability and scalability incompatible goals?
- Analogy: how reliable is the (large-scaled) Internet?
- Reliability in terms of distributed systems: the expected time of
continuous accessibility of some data
- Scalability can be defined in terms of geographic distance or
number of participants or variety of collaboration tools in use...
- Basic tradeoff: reliability vs. complexity
- Complexity increases with scale, and so does resiliency cost
- Large networks are heterogeneous and unreliability
has many origins
- Scalability presupposes a certain degree of reliability
- Conclusion: this is primarily a matter of computational and
implementational cost
What does "real-time" mean for collaborative services?
- Groupware is interactive and employs time-critical data streams
(video, audio)
- Tradeoff: Losslessness and lossiness vs. (non)real-time delivery
- Real-time is a different issue for wide-area collaboration,
heterogeneous media, and dynamic membership
- Schedulability constraints are different from non-interactive scheduling
- Keeping control protocols simple and fast allows for minimization
of control message overhead
- Quality-of-Service for groupware must include notion of real-time service