^{1}

^{*}

^{1}

^{1}

^{1}

^{1}

In this paper, a double-buffer traffic shaper was investigated to adjust video frame rate inflow into the TCP sender-buffer of a multimedia application source across a slow-speed link. In order to guarantee QoS across a slow-speed link (i.e. < 1 MBPS), the double-buffer traffic shaper was developed. In this paper, the buffer size dynamics of double-buffer was investigated. The arrival and departure of frames were modeled as a stochastic process. The transition matrix for the process was generated and the stationary probability computed. A simulation program was written in Matlab 7.0 to monitor the buffer fullness of the second buffer when a 3600 seconds H.263 encoder trace data was used as test data. In the second buffer, it was discovered that over 90% of the play-time, the buffer occupancy was upper bounded at 300 frames per second and utilization maintained below 30%.

Over the years, there has been an unimaginable growth in the usage of the Internet across the globe. However, the range of applications being deployed across the Internet today is far broader than it was a few years back [

Real-time multimedia application transmission has been an active area of research. [

However, these available frame rate adaptation techniques are not suited for slow speed network environment. It is therefore imperative to develop a new technique that will meet this challenge. Double buffer traffic shaper is thus presented.

As described in our earlier paper, the first step in the transmission of video is compression of the raw video using encoding coder-decoder scheme (CODEC) such as H.263, H.264, etc. at the sender-end [22,23]. The compressed video is passed to the sender-buffer within the application layer, thereafter passed to the TCP senderbuffer wherein they are fragmented into TCP data packets. From within the TCP sender-buffer the fragmented video frames are moved into the network. The video frames are later received into a TCP receiver-buffer wherein they are defragmented and decompressed. The decompressed video frames are then sent into the receiver playout-buffer.

Because of the bursty nature of video frames traffics when released from the sender buffer [

ing network where jobs enter and depart from the network. “M/D/1/K” is interpreted as the arrival rate being markovian [

Formally, a stochastic model is one represented as a stochastic process. A stochastic process is a set of random variables where is the index of set and taken to represent time.

The above stochastic process has the following properties:

1) is a Markov process. This implies that has the Markov or memoryless property: given the value of at some time, the future path for does not depend on the knowledge of the past history for, i.e. for ,

2) is irreducible. This implies that all states in the state space, , can be reached from all other states by following the transitions of the process.

3) is stationary: for any

.

Then the process’s joint distributions are unaffected by the change in the time axis and so,

4) is time homogenous: the behavior of the system does not depend on time when it is observed. In particular, the transition rates between states are independent of the time at which the transition occurs. Thus for all, it follows that

For Markov processes, the simplest way to represent the process is often in terms of its transition rate diagram. In this diagram, each state of the process is represented as a node in a graph. The arcs in the graph represent possible transitions between states of the processes. Since every transition is assumed to be governed by an exponential distribution, the rate of the transition becomes the parameter of the distribution. In this paper, H.263 encoder transmits frame at an uneven rate. The range however is within 0 frames per second and 12 frames per second as shown in

represents when the initial state is 1; it assumes that the first frame released by the encoder is 1.The service rate in

Case 1: When current first queue size, , approaches and above 75% capacity utilization, then current first queue outflow rate, where belongs to the set of positive real numbers.

If then

Case 2: When current first queue size, a(t), operates below 25% capacity utilization, then current first queue outflow rate is halved i.e., such that

Case 3: Otherwise, the flow rate is set at the default.

Assumptions:

Video frames inflow into First queue is Markovian utilizing the H.263 Standard. Second queue size is assumed larger than the First queue i.e..

List of terms:

—number of frames in first queue at time,—number of frames in second queue at time,: rate of Inflow to first queue,: rate of Inflow to second queue,: rate of Inflow to the TCP sender buffer,: time(s) a: size of first queue (number of video frames),: size of Second queue (number of video frames).

Input: uneven arrival of video frames; Output: even departure of video framesInitialization: c_{a}, c_{b}, r_{y}, r_{x}, out: array [1,…,n].

r_{x} ← H.263 trace data.

begin:

c_{a}(i+1) = c_{a}(i) + rx(i);

if (ca(i) > 0.75 × a).

ry(i + 1)= ry(i) × ζ;

else if (ca(i)< 0.25× a).

ry(i + 1)= ry(i) × γ;

else ry(i + 1) = 10;

end if (ca(i + 1) > 0).

ca(i + 1) = ca(i + 1) − ry(i + 1);

end cb(i +1) = cb(i) + ry(i + 1);

if (cb(i + 1) > rz)

out(i) = rz;

cb(i + 1) = cb(i + 1) − rz;

end.

end.

A Markov process with states can be characterized by its. Matrix Q’s entry in the column of the row of the matrix is being the instantaneous transition rate. is the sum of the parameters labeling arcs connecting states and in the transition rate diagram. The diagonal elements are chosen to ensure that the sum of the elements in every row is zero, i.e.

The infinitesimal generator matrix for the transition rate diagram of the M/D/1/K queue of

expressed in Equation (3.4) were obtained from the transitions from one state to another. Therefore,

In solving the matrix Equation, in equation 5, the parameter values were inserted. The whole equation is thereafter transposed. i.e. becomes. This enabled the right hand side to be converted to column vector of zeros rather than the initial row vector.

In other to resolve the problem of redundancy amongst the global balance equation, one of the global balance equations was replaced by the normalization condition. In the transposed matrix, this corresponds to replacing one row (last row) by a row of 1’s and also change the solution vector, which was all zeros to be a column vector with 1 in the last row, and zero everywhere else. This vector is denoted by, and the modified matrix is denoted by. It then becomes

When Equation (7) was solved, the stationary probabilities were obtained as presented in (8). The state based performance measures are those which clearly correspond to the probability that the model is in a state, or a subset of states which satisfy some condition. Therefore, utilization in the proposed model corresponds to those states in which service took place (states) on M/D/1/K Queue. i.e

The analytical utilization of M/D/1/K queue is about 23.08%.

Matlab 7.0 was used in simulating the proposed algorithm. H.263 trace data obtained from Verbose Jurassic standard data set was used as the test data. The data file is a one-hour video session, and it is composed of 25,432 frames. Frame rate arrival into the first buffer was set according to the principle of H.263 encoder. Arrival rate into the second buffer is obtained from the operation of the algorithm introduced at the server of the first queue.

The volume of frames in the buffer is obtained from the accumulation of frames as a result of delay experienced by the frames. As shown in

Again when the proposed scheme was compared with the existing scheme in terms of buffer occupancy, it was observed that the existing scheme outperformed the proposed scheme in most part of the simulation duration as can be seen in

For closer observation of the interesting points and disparities of the buffer fullness of the existing and proposed schemes, the simulation period was divided into six epochs.