Abstract:
With multiple predictors, a method dynamically allocates bandwidth to traffic having a variable data rate in a network. A first amount P-I of bandwidth is allocated in a first state of a state machine. A second amount P-II of bandwidth is allocated in a second state of the state machine, and a third amount of bandwidth P-III is allocated in a a third state of the state machine such that P-II&gt;P-I&gt;P-III. Cost functions are periodically evaluated to transition between the first, second, and third states of the state machine.

Description:
FIELD OF THE INVENTION  
         [0001]    This invention relates generally to resource allocation in communications networks, and more particularly to asynchronous dynamic bandwidth allocation for variable bit rate traffic in ATM networks, and to resource reservation and bandwidth management for variable bit rate traffic in RSVP (Resource ReSerVation Protocol) routers.  
         BACKGROUND OF THE INVENTION  
         [0002]    Asynchronous transfer mode (ATM) networks provide applications with a QoS connection-oriented service that has guaranteed bandwidth for sending data packets or “traffic” over the network. To send the packets, the application requests a virtual circuit (VC) with an initial bandwidth allocation. After the VC has been assigned to the application, an adaptation layer of the network determines how long to keep the VC open for the initial bandwidth assignment. As long as the sending rate of the packets matches the allocated bandwidth, the VC is kept open, see H. Saran, S. Keshav, “An empirical Evaluation of Virtual Circuit Holding Times in IP over ATM Networks,” Proc. of INFOCOM 1994, Y. Afek, M. Cohen, E. Haalman, Y. Mansour, “Dynamic Bandwidth Allocation Policies, ” 0743-166X/96 IEEE, and S. K. Biswas, R. Izmailov, “Design of a fair Bandwidth allocation Policy for VBR Traffic in ATM Networks,” IEEE/ACM Trans. On Networking, V:8, N:2, April 2000. However, if the application sends packets at a higher or lower rate, then there may be a need to adjust or “renegotiate” the allocated bandwidth.  
           [0003]    Bandwidth allocation is a particular problem for streaming content, for example, videos. In videos, frame sizes can vary greatly over both short and long time intervals leading to “burstiness” in the traffic. Scene changes and group of picture (GOP) structures within scenes also impact bandwidth requirements. Any of these conditions can result in either poor utilization or delay. For real-time traffic where delays can not be tolerated, data may be lost.  
           [0004]    A number of bandwidth predictors and renegotiation methods are known in the prior art. Typically, those methods are either static (off-line), or dynamic (on-line or real-time). Off-line systems can determine the exact bandwidth characteristics of stored videos. However, off-line systems typically have a complexity and computational overload that are not suited for real-time applications.  
           [0005]    Dynamic bandwidth allocation requires a good traffic rate predictor and a decision unit that can determine when to change the service rate and required bandwidth for each outgoing stream while at the same time minimizing the number of updates and the allocated bandwidth. Dynamic bandwidth allocation attempts to maximize utilization by minimizing the amount of allocated bandwidth, while at the same time minimizing buffer occupancies (delay). However, even with dynamic bandwidth allocation schemes, it is still difficult to predict the size of future frames. Frequent real-time scalability in spatial and temporal SNR also increases the complexity of the problem. Quality of Service (QoS) for VBR traffic can be achieved with stringent packet and cell loss rates, delay constraints, and high bandwidth channels, but at the expense of low utilization.  
           [0006]    Dynamic bandwidth allocation methods can be split into two groups: synchronous and asynchronous. With synchronous methods, bandwidth allocations are modified periodically, at fixed time intervals. Synchronous bandwidth allocation can suffer from the same problem as off-line methods, because during the fixed time intervals the allocations are static.  
           [0007]    With asynchronous methods, bandwidth allocations are updated as needed. For example, periodic renegotiations periodically measure an average arrival rate within a given time interval to determine a new bandwidth for a next interval, see Casilari et al. “Bandwidth renegotiation scheme for VBR video services,” IEEE Electronics Letters, v:35, n:18, September 1999. Grossglauser et al., in “RCBR:A Simple and Efficient Service for Multiple Time Scale Traffic,” IEEE Trans. on Networking, v:5, n:6, December 1997, assume a constant cost per renegotiation and allocated bandwidth. That method is based on bandwidth estimators, and high and low buffer threshold parameters, and a time constant T.  
           [0008]    Porikli et al., in “Dynamic Bandwidth Allocation with Optimal Number of Renegotiations in ATM Networks,” Proc. of ICCCN&#39;01, pp. 290-295, 2001, attempt to determine an optimum number of renegotiations, see also U.S. patent application Ser. No. 09/862,900, “Method and System for Minimizing Error in Bandwidth Allocation with an Optimal Number of Renegotiations,” filed by Porikli et al., on May 22, 2001, incorporated herein in its entirety by reference. They measure the current data rate to predict future data rates. They use the current data in a cost function to minimize the cost of renegotiation over time.  
           [0009]    In U.S. patent application Ser. No. 09/842,973 “Adaptive Bandwidth Allocation by Wavelet Decomposition and Energy Analysis of Network Traffic,” filed by Sahinoglu on Apr. 26, 2001, incorporated herein by reference in its entirety, measure and group data rates into overlapping vectors during fixed length time intervals. Discrete wavelet transform are applied to the overlapping vector to determine frequency bands and associated energies of the data rate, and allocate bandwidth accordingly.  
           [0010]    Adas, in “Using Adaptive Linear Prediction to Support Real-time VBR Video Under RCBR Network Service Model,” IEEE Trans. on Networking, v:6, n:5, October 1998, uses a normalized least-mean-square (NLMS) process to predict a next GOP rate for the purpose of dynamic bandwidth allocation.  
         SUMMARY OF THE INVENTION  
         [0011]    The invention dynamically allocates bandwidth for variable bit-rate (VBR) traffic in a network that supports bandwidth renegotiations. The invention does not assume any prior knowledge of traffic. The method according to the invention achieves better link utilization and lower 0.99-quantile queue sizes, after a fewer number of renegotiations than prior art methods.  
           [0012]    More particularly with multiple predictors, a method dynamically allocates bandwidth to traffic having a variable data rate in a network. A first amount P-I of bandwidth is allocated in a first state of a state machine. A second amount P-II of bandwidth is allocated in a second state of the state machine, and a third amount of bandwidth P-III is allocated in a a third state of the state machine such that P-II&gt;P-I&gt;P-III. Cost functions are periodically evaluated to transition between the first, second, and third states of the state machine. 
       
    
    
     BRIEF DESCRIPTION OF THE DRAWINGS  
       [0013]    [0013]FIGS. 1 a  and  1   b  are tables of variables and terms used to describe the invention;  
         [0014]    [0014]FIG. 2 is a block diagram of a finite state machine used by a resource allocation method according to the invention;  
         [0015]    [0015]FIG. 3 is graph of factors contributing to cost functions evaluated according to the invention;  
         [0016]    [0016]FIG. 4 is a graph of bandwidth allocation as a function of time;  
         [0017]    [0017]FIG. 5 is a graph of a bandwidth compensation factor according to the invention; and  
         [0018]    [0018]FIGS. 6 a  and  6   b  compare the performance of the bandwidth allocation method according to the invention with prior art allocation methods.  
     
    
     DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT  
     Finite State Bandwidth Allocation Model  
       [0019]    [0019]FIGS. 1 a  and  1   b  show variables and term definitions used to describe the invention, these variables and their use are describe in greater detail below.  
       Finite State Machine  
       [0020]    [0020]FIG. 2 shows a finite state machine (FSM)  100  that can be used for dynamic asynchronous bandwidth allocation according to the invention. The FSM  100  includes an initial state  101 , and three allocation states  111 - 113 . The amount of bandwidth to allocate, e.g., bandwidths (P-I, P-II, P-III), is greatest for state P-II  112 , and smallest for state P-III  113 , i.e., P-II&gt;P-I&gt;P-III. The FSM  100  starts out in the initial state  101 , subject to system constraints  120 . The states  112 - 113  consider inter-renegotiation intervals (IRI)  130 , and state P-II also considers an instantaneous queue size  131 .  
       Interrupts  
       [0021]    State transitions are triggered by three types of interrupts generated due to temporal changes in cost metrics. The cost functions that cause the interrupts are described in greater detail below. The interrupts are used to transition from one state to another. The interrupts are queue-size  141 , low utilization  142 , and under-utilization  143 . Bandwidth (P-I, P-II, P-III) are then allocated according to the new state. For example, if the current state is  112 , then the under-utilization interrupt  143  transitions to state  111 , and the new bandwidth to allocate is returned as P-I.  
         [0022]    In practice, it is more difficult to obtain additional bandwidth for streaming data, because the network may have to release bandwidth from other traffic flows or traffic sources to meet new demand. The multi-state model according to the invention prevents drastic changes in bandwidth allocation, and adaptively increases or decreases the bandwidth amount to allocate in a stepwise manner. Thus, the probability of getting additional bandwidth granted is increased. Because, there is no perfect predictor, and each prediction includes error, this tethered bandwidth allocation also lowers the impact of prediction errors on achieving high utilization.  
         [0023]    Each state determines the bandwidth to be allocated according to the following analytical expression: 
           PII:X   dc +{square root}{square root over (max)}( E   i )+ b ( n )/(α. IRI )  (1) 
           PI:X   dc +{square root}{square root over (min)}( E   i )  (2) 
           PIII:X   dc +{square root}{square root over (min)}( E   i )− u ( n )/(β. IRI )  (3) 
         [0024]    where the variables are defined in FIG. 2, and i is the frequency sub-band index in wavelet analysis of the traffic data.  
         [0025]    Further details on how to determine X dc  and E i  dynamically are described by Sahinoglu et al., in “A Novel Adaptive Bandwidth Allocation: Wavelet decomposed Signal Energy Approach,” Proc. of GLOBECOM&#39;01, pp. 2253-2257, 2001 and U.S. patent application Ser. No. 09/842,973 “Adaptive Bandwidth Allocation by Wavelet Decomposition and Energy Analysis of Network Traffic,” filed by Sahinoglu on Apr. 26, 2001, incorporated herein by reference.  
       Cost Functions  
       [0026]    We use three cost functions to cause the interrupts  141 - 143 . The goals of the cost functions are to maximize utilization, minimize buffering delays, and minimize the number of renegotiations. The cost functions are an under-utilization cost function b(n), a buffering cost function u(n), and a renegotiation cost function T(n). These three cost functions are determined by: 
           b ( n )=αmax(0 ,q ( n −1)+ X ( n )− a ( n )),  (4) 
           u ( n )=β. s ( n ),  (5) 
         [0027]    where  
               where                   s   (   n   )       =     {               min        (     0   ,       s        (     n   -   1     )       +     X        (   n   )       -     a        (   n   )           )       ,       q        (   n   )       =   0                   0   ,       q        (   n   )       &gt;   0                          ,       and        
                     T        (   n   )         =     {               T   max     ,       CFI   -   LRI     &lt;   r                   T   min     ,       CFI   -   LRI     &gt;   r             .                     (   6   )                               
 
         [0028]    From the above equations it can be seen that b(n) is always zero or positive, and u(n) is always zero or negative. We assume that renegotiation takes r time intervals. Therefore, a new renegotiation cannot be started until after r time intervals when the last one started. We also define a minimum threshold T min  for the renegotiation cost, because even though a renegotiation may be feasible, it induces an additional signaling load on the network.  
         [0029]    Whenever the under-utilization or buffering cost is less than T min , or greater than T max , i.e., the renegotiation cost boundaries, the low utilization  142  or queue-size  141  interrupt is created.  
         [0030]    The under-utilization  143  interrupt is generated whenever the instantaneous utilization ρ(n) is very low, e.g., less than 0.3, and it causes average utilization {overscore (ρ)} to fall under a utilization threshold, e.g., 0.9. In order to process this interrupt, the renegotiation cost must be at its lower limit.  
         [0031]    [0031]FIG. 3 shows the various factors that can contribute to the cost functions over time  300 . These are arrival rate (bps)  301 , service rate (bps)  302 , buffering interval  303 , under-utilization interval  304 , queue size (bits)  305 , and under-utilization  306 .  
         [0032]    [0032]FIG. 4 shows bandwidth reallocation instants t 1 , t 2 , t 3 , and interrupt events due to buffering  401  and under-utilization  402  as a function of time  403 .  
         [0033]    [0033]FIG. 5 shows a bandwidth compensation process, which can be added to the process shown in FIG. 4, when bandwidth  500  needs to be increased in state  112 . For highly delay sensitive applications, this compensation process further improves delay performance at the expense of decreasing achievable utilization. Here, buffering begins at time t, and renegotiation begins at time t+τ. The number of bits buffered  501  during the time interval τ is given  
       A   =       ∫   t     t   +   τ            (         (       X        (   t   )       -     a        (   t   )         )                        t       ,                               
 
         [0034]    i.e., the area  501  under the curve that is equal to the amount (over time) that the arrival rate is greater than the allocated bandwidth.  
         [0035]    Assume that transmit delay is negligable compared to buffering delay, and an interframe interval is 40 ms, e.g., an MPEG-1 coded video. For video streaming applications, the tolerable end-to-end delay is within 50 to 120 ms. Then, 120 ms is the maximum buffering delay allowed. Until forwarding of the frame with 120 ms buffering delay, three new frames are stored in the buffer. Therefore, it is desired to empty the buffer faster to provision end-to-end delay constraints for the stream. Therefore, the allocated bandwidth  502  is increased by A/3τ  503  to decrease buffering delay.  
       Effect of the Invention  
       [0036]    [0036]FIGS. 6 a  and  6   b  compare the performance of the invented method (R++) with prior art methods for the MPEG-1 “Star Wars” and “Soccer Videos.” These are available from the University of Wuerzburg, Institute of Computer Science III, Am Hubland, 97074 Wuerzburg, Germany. The method and system as described herein can achieve the same queue size performance as the prior art RCBR method of Grossglauser et al., with 2% better utilization, and 24% less renegotiations. It also outperforms the RDBA, NLMS methods, and the method described by Casilari et al. For example, where NLMS method requires 780 reallocations for 3333 GOPs, the present method only takes 882 renegotiations for 40,000 frames. When the method is used for GOP predictions, it also achieves a smaller number of renegotiations (N), a lower 0.99 quantile queue size (B), and a higher average utilization {overscore (ρ)} than NLMS. The high performance of R++ is also confirmed by the results for the soccer trace.  
         [0037]    This invention is described using specific terms and examples. It is to be understood that various other adaptations and modifications may be made within the spirit and scope of the invention. Therefore, it is the object of the appended claims to cover all such variations and modifications as come within the true spirit and scope of the invention.