Information Technology Reference
In-Depth Information
.
.
. . .
. . .
.
. . .
Transmission
. . .
. . .
. . .
. . .
. . .
Retrieval
Scheduling delay
(2 service rounds)
Request arrives just after
a disk round is started.
Figure 10.2 Scheduling disk retrieval and network transmission at server
client periodically sends a request to a server to retrieve video data. In this model, the data flow
is driven by the client. In the server-push model, the server schedules the periodic retrieval and
transmission of video data once a video session has started.
The server-push model is common among studies on single-server VoD systems [1-5]. This
model allows one to design periodic schedulers [5] to optimize disk and network utilization. In
the next section, we present an extension of this service model for use in parallel video servers.
10.2.3 Scheduling Algorithm
The parallel server architecture employs a concurrent-push algorithm to schedule disk retrievals
and network transmissions at the servers. The principle behind the concurrent-push algorithm
is to let all servers continuously transmit data to a client concurrently. We assume that the
average video rate is homogenous for all clients, and is denoted by R V . Since there are a total
of N S servers, each server only needs to transmit at a reduced rate of R V / N S to maintain an
aggregate data rate of R V .
Figure 10.2 depicts the scheduling algorithm for disk retrievals and network transmissions at
each server in the system. For each video session, one block of Q bytes video data is retrieved
into a disk buffer in each disk service round. To reduce seek overhead, requests within a
service round can be served using the SCAN or the C-SCAN disk-arm scheduling algorithms
(cf. Chapter 3). The retrieved video block is then passed to a network buffer for transmission
in the next round. Therefore, if the disk service round is shorter than one transmission round, a
video block will always be ready for transmission. We analyze the performance of the system
under this scheduling algorithm in the next section.
10.3 Analysis of the Concurrent-Push Algorithm
In general, the internal clock of each autonomous server in the system is not precisely synchro-
nized. Therefore, the scheduling algorithm must take this server asynchrony into account and
compensate accordingly. We define clock jitter as the difference between the internal real-time
clocks of two servers. Many algorithms for controlling clock jitter between distributed com-
puters have been studied [6, 7] and hence will not be pursued further here. We simply assume
Search WWH ::




Custom Search