Resource management in distributed continuous media servers

New distributed applications such as distant-learning, digital libraries, and home entertainment require the delivery of continuous media (CM) objects to geographically disbursed clients. It is therefore appropriate to devise and evaluate the utility of a distributed CM server (DCMS) for use in such environments. Recent studies have indeed proposed a dedicated hierarchical DCMS to support these types of applications. Here we extend the pure hierarchical structure to a redundant hierarchical structure termed RedHi. With RedHi each node has two or more parents making it more fault-tolerant and improving its load balancing capability. RedHi considers CM request to involve four stages of processing: (1) object locating, (2) path selection, (3) resource resolution, (4) display initiation. In this study, we present each of these stages and propose techniques that address the challenges of each stage. We also propose a resource reservation policy that enables RedHi to perform the first three stages in parallel, thereby significantly reducing the start-up latency for a CM request. CM servers typically stream CM objects to the clients to minimize the buffer space required at the client site. This objective can now be relaxed due to the availability of inexpensive storage devices at the client side. Therefore, we propose a Super-streaming paradigm that can utilize the client side resources in order to improve the CM server's utilization. To support super-streaming, we propose a technique to enable the CM servers to deliver CM objects at a rate higher than their display bandwidth requirement. We also propose alternative admission control policies to downgrade super-streams in favor of regular streams when the resources are scarce. We demonstrate the superiority of our paradigm over streaming with both analytical and simulation models. Finally, we extend our super-streaming paradigm to be applicable in distributed architectures. We propose a sophisticated resource management policy to support super-streaming in the presence of multiple servers, network links and clients.