Distributed Systems: Concepts and Design
We aim to provide sufficient knowledge about the characteristics of distributed multimedia applications and their system support requirements to enable students to evaluate existing applications and design new ones.
Readers will learn the significance of timely delivery of multimedia data and the impact of network and processing resources on ts achievement and they will become aware of the work done and in progress on resource allocation, management and scheduling for general-purpose distributed multimedia systems.
New concepts to be conveyed include: multimedia streams and flows; the time-based (isochronous) nature of multimedia data streams and the requirement for timely delivery; quality of service negotiation, flow specifications, admission control and resource contracts.
There is a strong distinction between the needs of non-interactive or slightly-interactive multimedia applications (such as those currently found on the Web - web broadcasts and music downloads) and more interactive applications such as video conferencing. The former can achieve reasonable quality of service by the introduction of client-side buffers These result in high end-to-end latencies but reduce jitter to acceptable levels. High latencies ar not acceptable in interactive applications and they cannot, in general, be supported with today's networks and operating systems.
A general quality of service solution for multi-user interactive applications will require the concurrent allocation and management of resources in all of the relevant computers and network links.
An understanding of resource scheduling is necessary for a full understanding of this chapter, but real-time scheduling is not generally taught in operating system courses and is likely to be unfamiliar to most students. Section 15.4 provides a brief overview; more detail can be found in operating systems texts such as Stallings [1998b].
The students should be asked to undertake experiments with streaming multimedia applications, including some interactive ones (NetMeeting, CUSeeMe, etc.). An evaluation could involve observation of the effectiveness of communication (loss of sound, delayed video, etc.).
An animation or step-by-step illustrations of best-efforts resource scheduling algorithm, such as a round-robin scheduler, compared with deadline scheduler would be helpful and could be assigned as a laboratory project.
Another interesting project would be an animated illustration of the operation of the Tiger video file system.