ACCESS CONTROL FOR MPEG VIDEO APPLICATIONS USING NEURAL NETWORK AND SIMULATED ANNEALING

We present a dynamic model for access control mechanism used in computer communication network applied to MPEG video transmission over Internet. This model is different from those developed in the previous works related to this topic. In our model, token buckets supported by data buffers are used to shape incoming traffic and one multiplexor, serving all the token pools, multiplexes all the conforming traffic. The model is governed by a system of discrete nonlinear difference equations. We use neural network as the feedback controller which receives at its input (measurable) available information and provides at its output the optimal control. The simulated annealing algorithm is used to optimize the system performance by adjusting the weights. For illustration, we present numerical results which show that the system performance of MPEG video server can be improved by using neural network and simulated annealing approach.


Introduction
Currently, more and more multimedia applications such as video are transmitted or delivered on the Internet in order to provide quality of service (QoS) guarantees to real-time applications.The Internet Engineering Task Force (IETF) has proposed integrated service (Intserv) and differentiated service (DiffServ).In particular, token bucket (TB) as a traffic controller has been incorporated in the design of the network architecture.
In this paper, we focus our efforts on the study of the TB as a traffic shaper.A TB is associated with a traffic source in order to regulate the rate at which the source may send its traffic into the network.The terminology of TB as a shaper is that tokens are generated into the bucket at a rate determined by the volume of incoming traffic and the state of the network.When the bucket is full of tokens, newly arriving tokens are rejected.If, upon a packet arrival, enough tokens are available, the token content of the bucket is decreased according to the packet size; the packet is then classified as belonging to the conforming traffic and sent into the network.On the other hand, if there are not enough tokens in the bucket, the packet is buffered in the data buffer (DF) and waits for a fresh supply of tokens in the bucket.When the buffer is full, the arriving packet can not be accepted by the buffer and so is discarded.
TB mechanism has been employed to characterize the traffic generated by MPEG video in [4,6,8].In [4], Alam et al. study the effects of a traffic shaper at the video source on the transmission characteristics of MPEG video streams while providing delay and bandwidth guarantees.In [6], Lombaedo et al. have applied the TB model to evaluate the probability of marking nonconforming data packets for the transmission of MPEG video on the Internet.The authors of [8] developed an algorithm to evaluate the TB parameters which characterize the video stream.
In this paper, we develop a dynamic model for MPEG video transmission over network using TB access control mechanism.The system includes buffers and a shared multiplexor controlled by a neural network.
Our model differs from most of the previous studies in two major points.First, we focus on the modelling of the TB algorithm as a shaper rather than a policer as in [1,2,3].Second, we propose the use of neural network and simulated annealing (SA) technique to control token generation rate in order to optimize the system performance.
The paper is organized as follows.In Section 2, a dynamic system model is presented.The system model consists of a number of TBs (one for each source) with DFs and one multiplexor shared by all the TBs.System state is defined in detail.In Section 3, we define an appropriate objective function and propose a control strategy by employing the neural network.We use SA algorithm to optimize system performance.In Section 4, we present numerical results which show improved performance gained by use of our proposed control.A brief conclusion is presented in Section 5.

Traffic model and system model
In this paper, we present a dynamic model based on the basic philosophy of IP networks.Before describing the system model, we define the following symbols which are used throughout the paper: (1) for x, y ∈ R, we define (2) for x, y ∈ R n , let x = (x 1 ,...,x n ) and y = (y 1 ,..., y n ).We define

System model.
We consider that the system involves n traffic sources, which are video servers, and that each source is assigned to a TB with a DF that regulates the traffic rate.All the traffic sources share one and the same multiplexor having finite buffer size Q and one outgoing link having capacity C. The system model is shown in Figure 2.1.
Let T denote the physical size (capacity) of TBs and T the DF (smoother) size.The source V (t k ) denotes the number of packets entering the DF during the time interval I k ≡ [t k ,t t+1 ) and G(t k ) denotes the conforming packets, which are allowed to enter into the multiplexor by the TBs, after TB shaping during the same period.Let u(t k ) denote the number of tokens generated during the frame interval I k .In case of multiple clients and servers, these quantities should be considered as vectors.In this case, the system state is defined by the contents of the TBs, the token buffers, and the multiplexor.We denote this by the (2n + 1)-dimensional vector (ρ, ρ, q). (2.4) Here, for n TBs, the state is described by an n-dimensional vector-valued function ρ = (ρ 1 ,ρ 2 ,...,ρ n ) ; for n DFs, we have n-dimensional vector ρ = ( ρ 1 , ρ 2 ,..., ρ n ) .The scalar (one-dimensional vector) q denotes the state of the multiplexor.First, we determine the temporal evolution of the state (number of tokens in token pool) of the TB as follows: This expression is based on simple material balance.The state of each TB at time t k+1 is determined by its previous state, the number of tokens accepted during the frame interval [t k ,t k+1 ), and the number of tokens consumed during the same period [t k ,t k+1 ).The consumption equals the conformed traffic G(t k ).
Similarly, the state of the DFs, denoting the number of packets in each DF, is described by Here the number of packets at the current stage is determined by its previous state, the number of packets accepted during the frame interval, and the number of packets conformed by TB.
In these equations, G represents the conforming traffic, that is, the traffic matching with the available tokens in the TBs.This is given by G(t k ) as This expression simply states that the conforming traffic is given by the minimum of the available number of tokens in the token pool and the available number of packets in the DF.In other words, the TB can serve traffic which matches the available tokens.This traffic is called the conforming traffic.Now we consider the multiplexor.The dynamics of the multiplexor queue is given by the following equation: The first term on the right-hand side of expression (2.8) describes the leftover traffic in the queue at time t k+1 after the traffic has been injected into the network.The second term represents all the conforming traffic accepted by the multiplexor during the same period of time.In summary, the complete system model is given by the vector difference equation (2.5), (2.6), and the scalar difference equation (2.8).

N. U. Ahmed and H. Yan 295
Now, we discuss packet losses at the DF and multiplexor.Some packets may be dropped at the DF because of the limitation of the DF size and the token generation rate.Therefore, the losses at the DF at time t k are given by (2.9) When the available (data) buffer space exceeds the incoming traffic, there will be no packet losses at the DF.Otherwise, in general, some losses would occur.From (2.8), it is clear that if the multiplexor (of size Q) does not have enough space to store all the conformed traffic, the excess is discarded.The traffic losses in the multiplexor at time t k , denoted by L(t k ), are then given by ]} represents conforming traffic accepted by the multiplexor.If the available buffer space is large enough to accept all the conforming traffic, no multiplexor losses would occur.Otherwise, some part of the conforming traffic must be dropped.

Neural network/simulated annealing algorithm for performance optimization
We have seen above several losses that may occur in the network.In our system, losses may occur at DF and also at the multiplexor.Further, there are delays in DF and the multiplexor due to time spent in the queue before being served.Considering all these factors, we can define the following objective function: The first term of the objective functional describes the weighted packet losses at the multiplexor; the second term represents the weighted losses at the DFs; the third term gives the weighted cost associated with service delay at the DF; and the last term is the weighted cost associated with queuing delay at the multiplexor.These last two terms are approximate measures of service delay.Relative weights to various losses are denoted by the parameters α(t k ), β i (t k ), γ(t k ), λ(t k ), i = 1,2,...,n, which are nonnegative functions of time and can be assigned by network designers to reflect different concerns and scenarios as necessary.
To find the optimal control for the dynamic system (equations (2.5), (2.6), (2.8)) with the objective functional (3.1), we may use dynamic programming (DP) or genetic algorithm (GA) as proposed in a recent paper [1].This gives rise to the Bellman equation of DP.Note that because of the presence of logical functions in the dynamic equations, the associated Hamilton-Jacobi-Bellman (HJB) equation will have discontinuous coefficients.This is a much more difficult problem to solve (see [1]).Here we propose a sufficiently efficient but simple control strategy by using the neural network and SA algorithm [5,7].We use SA to find the optimal weights that minimize the cost function.

Neural network as controller.
In principle, one can use Bellman's DP equations to find optimal feedback controls.Often it involves difficult nonlinear partial differential equations in multidimensional spaces which have to be solved offline to determine the control law.Clearly, this is computationally intensive.If one is satisfied with suboptimal strategies, this can be avoided by using simple neural network with inputs being the available information and outputs being the controls.Once this is integrated with the system, the only variables that have to be chosen optimally are the weights of the neural network.This can be done relatively easily using SA.In this paper, we have used the following neural network structure with p denoting the input vector and u the output vector representing the control.The parameters shown in Figure 3.1 are the weights which can be adjusted for optimization as discussed later.All these can be compactly described by the following parameterized nonlinear transformation: where u r = N r (W, p), r = 1,2,...,n, and the input-state vector p = (V ,ρ, ρ, q).If this control law is inserted in the state equations (2.5), (2.6), (2.8), the corresponding cost functional (see expression (3.1)) may be written as a function of the weight vector W: where now the state obviously depends on the choice of W. Thus the original optimal control problem has been transformed into a parameter optimization problem.More For this purpose, one can use DP and GA as in [1].But because of the curse of dimensionality presented by DP, computational time is extremely large.To avoid the computational complexity of DP, we have chosen to accept suboptimal policies which can be determined by use of SA algorithm in a reasonable computing time.In other words, we find the lowest possible cost achievable in a finite number of iterations and declare the corresponding weights as being optimum.

Numerical results
For numerical simulation, we consider the simple scenario: one MPEG server emits IP packets with the flow controlled by one TB transmitting conformed outputs into the multiplexor.

Specification of traffic trace.
The traces used in our experiments correspond to the traffic statistics of one MPEG-4 sequence.Here, we choose 12-second MPEG-4 trace of "Simpson" as our traffic (http://trace.eas.asu.edu).Each group of pictures (GoP) contains 12 frames with a frame rate of 25 frames/second.The GoP pattern can be characterized as IBBPBBPBBPBB.I-frame stands for "intraframe" which is the most basic type of frames used in video compression.P-frame, "predictive frame," is more complicated than I-frames.P-frames are built from a previous I-or P-frame.B-frame stands for "bidirectional frame."The basis of B-frames is the logical extension of the idea of P-frames.Whereas P-frames are built from the previous frame, B-frames are built from two frames, typically, one or both are P-frames.B-frames are completely independent of each other.The video traffic statistics which is used in our experiment is given in Table 4.1.Since the maximum frame size is 15234, a video frame is segmented into a number of packets equal to or less than 27.The trace is shown in Figure 4.1.

Parameters used in simulation experiment.
In this paper, we assume UDP/IP protocol suite.Therefore, each frame is packetized by UDP/IP protocol into more IP packets with a dimension of 576 bytes or less.We further assume that one token takes one packet.We consider the tradeoff between two actual losses (packet losses at the DF and the multiplexor) and the cost associated with waiting time in the DF and multiplexor buffer.The weights assigned to these losses are arbitrary and depend on the QoS desired.The service provider and the network management are free to choose these weights according to specified QoS.For our numerical experiments, we choose α(t k ) = 10, β i (t k ) = 5, γ(t k ) = 0.05, and λ(t k ) = 0.05, for all i and all t k .State initialization is set as ρ(t 0 ) = 0, ρ(t 0 ) = 0, and q(t 0 ) = 0.The system configurations are specified as follows:  (i) T = 15000 bytes; the TB has been set to allow maximum frame size to pass through; (ii) C = 1.0 Mbps, 1.49 Mbps, and 2.0 Mbps; (iii) T = 30000 bytes; the DF size has been set for twice the maximum frame size; (iv) Q = 17000 bytes; the multiplexor has been set large enough to be able to accommodate the maximum frame; (v) τ = 40 milliseconds; this represents the frame interval (frames are generated at a rate of 25 frames per second).
For our experiment, we choose the structure of a neural network as follows: As to the parameters for SA, we use geometric decrement method, which sets the next temperature t n as a positive multiple of the current temperature t c , that is, t n = φt c , with 0 < φ < 1.In this experiment, we take φ = 0.6.

Simulation results and analysis.
Here we present numerical simulation results by studying the following cases.
(    In the case of C = 1.49Mbps (see Figure 4.3), we observe that the (total) cost corresponding to Case 2 is very close to that of Case 4. This is because the token generating rate in Case 2 is the same as the traffic mean rate and the outgoing link capacity.When the traffic mean rate is equal to the token generating rate, the DF losses are small.Since in this case, the input rate of the multiplexor equals the outgoing link capacity, no losses occur in the multiplexor either.Hence the performance of the mean rate control and the optimal control are close.

Performance analysis.
In this section, we present the temporal performance of the feedback system (based on optimized neural network) by comparing the data flow in the TB and the DF.
Comparison of incoming traffic with conformed traffic.Figure 4.4 presents, for different link capacities (C = 1.0, 1.49 Mbps), the traces of the incoming traffic along with the conformed traffic resulting from a control strategy based on optimized neural network.It is natural that the conformed traffic depends on the outgoing link capacity.In the case of C = 1.0 Mbps, which is less than the mean incoming traffic rate, the feedback control tries to follow the incoming traffic but, because of shortage of bandwidth, fails to satisfy the demand.In the case of C = 1.49Mbps (equal to the mean traffic rate), when the traffic rate is much higher than the mean rate during some time periods, the network saturates and serves at its maximum capacity.Therefore, during these busy periods, the conformed traffic is maintained at the saturation level.For C = 2 Mbps, Figure 4.5 shows the conformed traffic trace.In this case, the capacity C = 2 is greater than the mean traffic rate and, as a result, the conformed traffic trace, shown in the incoming traffic (Figure 4.4).This is because the service rate is large enough to serve the incoming traffic with less losses.
Comparison of incoming traffic with accepted traffic.Figure 4.6 shows the traces of incoming traffic along with the traffic accepted by the DF which is based on the link capacity (equal to the mean traffic rate).Again we observe that during some time periods (see Figure 4.6, 145-250), when the incoming traffic rate is greater than the link capacity (equivalent to the mean traffic rate), the network experiences congestion and during these periods, the network serves at its maximum capacity (7450 bytes within one frame interval).As a result, the DF drops packets the rate exceeds this level.Comparison of available tokens with packets in DF.Figures 4.7,4.8,and 4.9 give us the traces of available tokens in the TB and available packets in the DF based on optimal control strategy corresponding to different link capacities.In the case of C = 1.49Mbps (see Figure 4.7), we notice that when the traffic rate is greater than the mean rate, the DF is full ( T = 30K), and during the same period, the available tokens do not exceed the number of packets the network can serve.For C = 2 Mbps (Figure 4.8) and C = 3.047 Mbps (Figure 4.9), the available tokens in the token pool are larger than the available packets in the DF.In these cases, losses are significantly reduced as expected.

Conclusion
In this paper, we have constructed a dynamic system model based on token bucket algorithm with supporting buffers and multiplexors.We have proposed a feedback control strategy using neural network.We define an objective functional reflecting all the system losses including queuing delays.Using simulated annealing algorithm, we minimize the cost (objective) functional giving the optimal control law (neural network with optimum weights).The numerical results indicate that a neural-network-based control law properly optimized can produce improved system performance.
Available tokens in TB versus available packets in DF (C = 1.49Mbps).