next up previous
Next: CONCLUSIONS Up: A Framework for Creating Previous: THE PROPOSED LANGUAGE EXTENSIONS

   
THE PROPOSED RUNTIME ENVIRONMENT

The aim in the design of the proposed environment is to supply the streams with enough data to ensure that the playback processes do not starve. We consider a new periodic task-oriented model that employs a periodic-based service discipline which provides the required service rate to a continuous media application independent of traffic characteristics of other applications. We view every different multimedia stream si as a periodic task $\tau_i$ with period Ti. At the media server level, the periodic task $\tau_i$ requires in each period the retrieval of a number of media blocks from disk and transmits them to the client for presentation. Ci is the deterministic disk access time that task $\tau_i$requires in every period to retrieve data for the stream. The period Ti and the computational requirements Ci of every task are determined by the desired QoS of the stream that the task represents (i.e. the temporal and spatial resolutions of the continuous media) as well as system resources (processor speed, disk access time).

We assume also that a circular buffer of size 2* $Buffer\_size_i$ is reserved in the buffer cache of both the server and the client site for every stream of the application. If we can supply these buffers with enough data then we can ensure that the presentation of each stream will have sufficient data to display the corresponding stream continuously. In order to achieve this goal, the next procedure is followed. We define the display rate ( $display\_rate_i$) for each stream si as the rate at which data are consumed from the buffer of the client for presentation purposes. The value of this atribute can be calculated for the video streams using the equation:

display_ratei = spatial_resolutioni(pixels/frame) * color_resolutioni(bits/pixel) *
temporal_resolutioni(frames/sec)

and for audio streams using the equation:

display_ratei=sample_sizei(bits/sample)* sample_ratei(samples/sec).

Then, we require the following equalities to hold:

 \begin{displaymath}C_i * disk\_transfer\_rate = Buffer\_size_i
\end{displaymath} (1)


 \begin{displaymath}display\_rate_i * T_i = Buffer\_size_i
\end{displaymath} (2)


 \begin{displaymath}T_i * Bandwidth_i \geq Buffer\_size_i
\end{displaymath} (3)

Using the above two equations  1 and  2 we can compute the period Ti and the data retrieval duration Ci of the tasks, provided that the expected quality of presentation, the buffer size allocated for every task and the data transfer rate of the disk are known.

In the proposed model, a scheduling strategy should be supported at the media server to provide predictable service to a set of multimedia streams, and this strategy consists the most important part of the runtime environment. Several algorithms are suitable to schedule this set of tasks under these assuptions; the most relevant ones are Earliest Deadline First (EDF) and Rate Monotonic Scheduling (RMS) [2] algorithms. The RMS theory provides the following simple inequality that serves as a sufficient condition to ensure that all tasks will compute their work by the end of their periods:

\begin{displaymath}\frac{C_1}{T_1}+\ldots+\frac{C_n}{T_n} \leq U(n) = n(2^{\frac{1}{n}}-1)
\end{displaymath} (4)

where Ci and Ti represent the computational requirements and the period of each task $\tau_i$ respectively. The Rate Monotonic Scheduling algorithm has been considered the most suitable and it is supported by the proposed runtime environment for the scheduling of the multimedia streams; ensures the performance expectations for the application and provides predictability. In the case that one stream cannot be scheduled or a request cannot be granted by the proposed strategy then the user can either negotiate with the storage manager for a reduced quality of presentation or wait for the server to become available from other applications.


next up previous
Next: CONCLUSIONS Up: A Framework for Creating Previous: THE PROPOSED LANGUAGE EXTENSIONS
Costas Mourlas
1999-12-02