1
Optimal per-Node Rate Allocation to provide per-Flow End-to-End Delay Guarantees in a Network of Routers supporting Guaranteed Service Class
Joy Kuri
Aniruddha Diwan
Center for Electronics Design & Technology Indian Institute of Science Bangalore 560 012
ECE Department Indian Institute of Science Bangalore 560 012
[email protected]
[email protected]
(Author for Correspondence)
Anurag Kumar
ECE Dept Indian Institute of Science Bangalore 560 012
[email protected]
Abstract
In this paper, we investigate the problem of providing worst-case end-to-end delay guarantee to a leaky-bucket constrained ow traversing a series of N packet schedulers. We consider a network of routers that support the Guaranteed (G) Service class of the IETF Integrated Services (IntServ) Working Group; this service class is proposed to provide Quality of Service (QoS) in the Internet. Under this framework, a worst-case end-to-end delay bound to a ow is provided by allocating a rate at each network element on the path of the ow. We associate a cost with allocating a rate at each link. The cost is assumed to be a convex and non-decreasing function of rate. We investigate the problem of obtaining an optimal rate allocation for a ow that minimizes the overall cost subject to the delay requirement and the available link capacity constraints. Allocating an identical rate at each link on the path of a ow is a widely used approach under the Guaranteed Service framework. We investigate the optimality of this approach and show that under certain conditions, it need not be optimal. Moreover, we investigate the optimal solution to the overall cost minimization problem and give scenarios in which we can explicitly obtain the optimal solution. Based on these results, we present an algorithm for optimal rate allocation. This work was carried out at the Indian Institute of Science and supported by a research grant from HFCL. September 27, 2001
(submitted)
2
I. Introduction
In this paper we consider the problem of provisioning of Quality of Service (QoS) guarantees to the applications of the Internet. Recent technological advances have given rise to a plethora of diverse multimedia applications and the Internet is expected to support such applications having various QoS requirements. Service guarantees are required in terms of not only channel reliability but also throughput and end-toend packet delays. In order to meet the QoS requirements of connections, the Internet needs to support various network mechanisms. A QoS routing mechanism is required which selects a suitable unicast path (or a multicast tree) for the packets of a connection. Once a path is selected, a mechanism is needed that provides QoS guarantees by reserving resources such as bandwidth/buer on the network elements (NE) along the path of the connection. As there is a local cost associated with allocation of resources at a network element, the resources should be optimally allocated to minimize the overall cost. This can be formulated as a network optimization problem for mapping of end-to-end QoS requirements to local requirements along a path. Addressing this problem is important because it impacts the routing process as well as the reservation of resources along the path. In our work, the QoS requirements of a connection are speci ed in terms of throughput and end-to-end delay and these QoS requirements are guaranteed by allocating a rate on each link along the path of a connection. In particular, we consider the Integrated Services (IntServ) [1] framework of the IETF [2], de ned to address the problem of supporting applications with QoS requirements in the Internet. In response to the increasing demand for QoS commitments to data ows, the IETF IntServ working group has developed a number of service speci cations that address the problem of QoS in the Internet. In this paper, we consider the Guaranteed (G) Services class of the IETF Int-Serv [3] that requires the trac of a data ow to conform to certain parameters (speci ed by the data ow at the time of connection setup) and provides an assured level of bandwidth, a rm end-to-end delay bound and no queueing loss for conforming packets of the data ow. The end-to-end delay bound facilitates the mapping of throughput and end-to-end delay requirement to local rates. There is a cost associated with allocation of a rate on each link and the problem that is investigated here is to optimally map the throughput and end-to-end delay requirements to local rates in such a way that the overall cost of rate allocation is minimized. Many papers have reported work on problems that are broadly classi ed as QoS mapping problems in which the end-to-end QoS requirements are mapped into local requirements. Since the problem investigated in this paper falls under this category, it is important to compare and contrast our work against the related work. The initial work on the QoS partition problem for unicast paths was reported in [5]. However, its focus was on loss rate guarantees. [6] reports work on the general QoS partition problem for weakly convex cost functions. It presents polynomial algorithms for both unicast paths and multicast trees. [7] and [8] address the QoS partitioning and routing problem in networks with uncertain parameters. [9] considers the QoS September 27, 2001
(submitted)
3
partitioning problem with discrete cost functions. However, all these works consider the class of additive QoS parameters such as delay and jitter. Thus the problem is to obtain an optimal local delay partition for an end-to-end delay requirement that minimizes the cost. Though the general problem of partitioning additive QoS parameters is intractable, these works restrict themselves to particular forms of cost functions and obtain ecient solutions. The QoS mapping problem that we consider does not t in the frameworks above because in our case, the end-to-end delay bound is not determined by the local delay bounds, but by the rates allocated on the links of the path of a connection. Note that [6] has recognized the fact that this is not a QoS partitioning problem. It was not pursued probably because of the \identical rate" approach that is applied in such delay-to-rate mapping problems which will be discussed at length in this paper later. The identical rate approach converts our problem into a bottleneck rate computation problem which has a straightforward solution. However, we will show that the identical rate based approach may not always be optimal in our case and hence the problem needs careful attention. Moreover, unlike in [6], we will try to obtain an exact solution by exploiting the form of the delay bound. The problem of providing QoS guarantees under the Guaranteed Services framework has been studied in a number of references. Most notably, [10] investigated some issues such as the impact of reshaping trac. It also de ned a new service speci cation called the Guaranteed Rate (GR) Service which makes use of unutilized bandwidth in the network to provide rate guarantees to ows. [11] reviews the basic mechanisms used to provide QoS guarantees and outlines proposed approaches to support QoS requirements and discusses the trade-os they involve. It also reports work on the coexistence of dierent mechanisms in delivering end-to-end QoS. Though the issues addressed in these works are dierent, the approach for providing end-to-end delay guarantees remains the same. The approach is as follows. Consider a data ow traversing a series of N schedulers that support the Guaranteed Services class. The packets of the data ow conform to certain prespeci ed parameters (token bucket parameters, to be de ned later). Then a simple closed-form endto-end delay bound expression for the connection can be obtained when an identical rate R is allocated at all the schedulers on the route of the ow. With the worst-case end-to-end delay requirement of the ow known, the minimum rate Requal required to guarantee this delay can be computed from the delay bound expression. If this rate is available at all the schedulers on the route of the ow, the ow is admitted and otherwise it is rejected. This single rate approach has the following drawbacks. Firstly, it need not minimize the overall cost. Secondly, it does not consider extra available resources while computing the rate. That is, if Requal is not available on some links, it might still be possible to admit the connection by giving higher rates on the non-bottleneck links. We address these issues in our work by working with a rate vector instead of a single rate. September 27, 2001
(submitted)
4
Note that in [12], the author has implicitly recognized the limitations of the identical rate approach and deals with this issue through the use of \slack terms" (section 3.6 of [12]). However, probably since the focus of the paper was RSVP, the issue was not addressed adequately in it. In particular, the concept of slack term was required because the framework inherently uses a single rate based approach. The slack term makes it possible to assign dierent rates. As our approach is based on assignment of a rate vector, we do not need the concept of slack term. Also [12] does not address the important problem of computation of the optimal rate vector. A. Our Contributions
We work under a general setting in which we associate a cost function for allocating a rate on a link. The cost function is assumed to be convex non-decreasing in rate. The problem that is investigated is to minimize total cost for admitting a ow subject to the worst-case end-to-end delay requirement constraint and the available link capacity constraints. We de ne a rate vector for a ow as follows. Rate component i of the rate vector represents the rate allocated to the ow at the ith scheduler on its route, 1 i N . Thus in the identical rate allocation case, the rate vector is of the form Requal = (Requal; Requal; ; Requal). In this paper, we investigate whether or not the identical rate vector is an optimal vector that minimizes the total cost. Surprisingly, it turns out that under certain conditions related to the router parameters and ow parameters, this need not be true. We investigate the optimal solution to the total cost minimization problem and give scenarios in which we can explicitly obtain the structure of the optimal solution. Note that the problem of minimizing the total bandwidth is one special case in which the cost function is the rate itself. So our results are directly applicable here. We present an optimal rate vector allocation algorithm for admitting a ow request. The optimal rate vector allocation algorithm either computes an optimal rate vector or, if the link capacities are insucient, declares the problem infeasible. We present a RSVP based implementation of the optimal rate vector allocation algorithm. This implementation requires minimal or no change in the RSVP message structure. We compare the simulated performance of the optimal rate vector allocation algorithm with that of the identical rate allocation algorithm. We try to judge merits and demerits of both approaches based on the simulation results. B. Paper Organization
The paper is organized as follows. A brief background on IntServ and Guaranteed Service class of IntServ is given in section 2. Section 3 describes the total cost minimization problem and states its mathematical formulation. In section 4 we study the problem excluding the available link capacity constraints. In section 5 we study the problem including the available link capacity constraints which leads to the optimal September 27, 2001
(submitted)
5 A( τ) S N(τ)
slope r
G slope R (p>=R)
Dbound
E
F
buffers
b slope p
L
H
τ
N
Σ
(
i=1
Ci / R + Di
)
Fig. 1. The case of identical rate allocation at each node on the route rate vector allocation algorithm in section 6. We give a RSVP based implementation of the optimal rate vector allocation algorithm in section 7. We study the simulated parformance of the optimal rate vector allocation algorithm and the identical rate allocation algorithm in section 8. Conclusions are drawn in section 9. II. IETF IntServ and Guaranteed Services
Owing to the ever increasing requirement of QoS support in the Internet, the Internet Engineering Task Force (IETF) [2] set up an Integrated Services (IntServ) Working Group [1] which has de ned several service classes that, if supported by the routers traversed by a data ow, can provide the data ow with certain QoS guarantees. The IETF has considered various QoS classes although to date only two of these, Guaranteed Service [3] and Controlled-Load Service [4] have attracted considerable attention. Guaranteed (G) Service [3] provides a guaranteed level of bandwidth, a rm end-to-end delay bound and no queueing loss for packets of a data ow that is admitted in the network. Each router characterizes the G Service for a speci c ow by allocating a bandwidth R and buer space B that the ow may consume. The amount of resources that need to be reserved are a function of ow characteristics and network characteristics. The G Service requires that the ow specify its characteristics in terms of token bucket parameters and the ow trac is required to conform to these parameters. The token bucket parameters are a triplet (b; r; p), where b is the token bucket size, r is the token accumulation rate, and p is the maximum peak rate of the ow. The maximum packet size, denoted by L, is also required. Network element i exports parameters C and D , that quantify the level of service that it can provide to ows that traverse it. These exported parameters are interpreted in the context of the reserved rate R that i
September 27, 2001
i
(submitted)
6 A( τ) S N(τ)
slope r
G Dbound
E
slope R min (p>= Rmin)
F
buffers
b slope p
L
H N
Σ
(
τ Ci /Ri + D i )
i=1
Fig. 2. The case of non-identical rate allocation at each node on the route might be reserved for a ow. Typically, C and D approximate the departure from the \ uid model" of service. In a perfect uid model, a ow conforming to a token bucket of rate r and depth b will have its delay bounded by b=R provided R >= r. C and D allow for deviations from this perfect uid model. Consequently the delay bound now becomes b=R + C =R + D . However the niteness of the maximum peak rate of the ow results in a reduction of the delay bound. In addition the eect of packets in the
ow needs to be taken into account by considering the maximum packet size L. These additional factors result in a more precise bound on the end-to-end delay. The bound can be obtained by using the arrival process envelope and the service curve for the tandem of NEs 1; 2; ; N along the route of the ow. The arrival process has an envelope A( ) that is given by A( ) = minfL + p; b + r g; 0 (1) The service curve for the tandem of NEs 1"; 2; ; N is given by [10], # ! i
i
i
i
i
S ( ) = N
?
N X
=1
i
D R? i
N X
=1
C
+
(2)
i
i
i
Fig. 1 describes this in a graphical can be easily obtained1. 8 context and the following delay bound > (b ? L)(p ? R) + L + X C + D ; p > R; > > > < R(p ? r) R =1 R Dbound = > L +X C +D ; > > > p R: : R R N
i
i
i
N
(3)
i
=1
i
i
If Dreqd is the worst-case end-to-end delay that is acceptable for the packets of a ow, Dbound Dreqd gives the minimum rate R that has to be allocated at each NE on the route of the ow. Denote by Requal this minimum rate. 1 Note that R r and when R < r the delay is unbounded. September 27, 2001
(submitted)
7
A. Delay Bound for a Rate Vector Assignment
In the previous section, an identical rate was allocated at all the NEs along the route of a ow and the delay bound was derived based on this scheme. In this section we study the delay bound when dierent rates are allocated at the NEs. Denote the rate allocated at NE i by R . The arrival process envelope is A( ) as before. Let Rmin = min R and Rmin r. It was shown in [20], [13] that the service curve for a tandem of NEs 1; 2; ; N is given by (example 3.5 of [20]) ! " #+ XC X S ( ) = ? D ? R Rmin (4) =1 =1 Fig. 2 describes this in a graphical context and the following delay bound can be easily obtained. 8 XC > L ( b ? L )( p ? R ) min > > > < Rmin(p ? r) + Rmin + =1 R + D ; p > Rmin; bound D => (5) XC L > > > p Rmin: +D ; : Rmin + =1 R Note that when the rate allocated at all the NEs is identical, we obtain the delay bound of eqn. (3). i
i
i
N
N
i
i
N
i
i
i
N
i
i
i
i
N
i
i
i
i
III. Problem Formulation
Consider a ow conforming to a set of token bucket parameters given by the triplet (b; r; p), traversing a tandem of N links. Let L denote the maximum packet size of the ow. Let R be the rate allocated to the ow on link i; 1 i N . We call R = fR1 ; ; R g as a rate vector assigned to the ow. Let Dreqd be the worst-case end-to-end delay that is acceptable for the packets of the ow. The ow can be admitted if we can obtain a rate allocation vector R such that, 1. Dbound Dreqd. 2. R ; 1 i N . is the available link bandwidth on link i which may be less than the capacity of the link. This constraint simply says that the allocated rate should not exceed the available link bandwidth. 3. Rmin = min R r, i.e., the minimum allocated rate along the route is greater than the average arrival rate of the ow. There may be many rate vector assignments that satisfy the above constraints. We associate a cost with allocating a rate on a link. The cost function f (R ) for link i is assumed to be convex and non-decreasing in the allocated rate R on link i for a ow. It is further assumed that the cost function is the same for each link and is denoted by f (). For a rate vector R = fR1 ; ; R g, the total cost is de ned as P t(R) = =1 f (R ). We would like to choose that rate vector which minimizes the total cost and hence our optimization criterion is the minimization of total cost for the ow. A special case of the convex and non-decreasing cost function f (R ) is f (R ) = R . Note that the total bandwidth allocated to a ow P along its route is Rtotal = =1 R . Thus with cost function f (R ) = R , the optimization criterion is the minimization of total bandwidth Rtotal . In the rest of the paper, we investigate the problem of obtaining a rate assignment vector for which t(R) is minimized and discuss its interesting implications for the special case of minimization of total i
N
i
i
i
i
i
i
i
i
N
N i
i
i
i
i
N i
September 27, 2001
i
i
i
(submitted)
8
bandwidth. Also we consider only rate vector assignments for which p > Rmin though the work is applicable to the case p < Rmin as well. Thus, we always work with the rst part of the delay bound of eqn. (5) for simplicity. Without loss of generality, we number the N links in the tandem as follows. The link with the least available capacity is numbered 1 and so on, i.e., 1 2 . We now present the minimization problem which we denote by MinimumCost . P (MinimumCost) min =1 f (R ) N
N
i
i
subject to:
(b ? L)(p ? Rmin) + L + X C + D Dreqd Rmin (p ? r) Rmin =1 R R ;1 i N N
(6)
i
i
i
i
i
(7)
i
Rmin r (8) Note that if R1 = R2 = = R = r is a feasible solution to the MinimumCost problem, it is also the optimal solution. That is, the end-to-end delay requirement is obeyed by simply giving the average rate of arrivals at each link of the path. We call such connections as rate-constrained connections because it is the average rate constraint that matters. To avoid this trivial case, we consider only those type of connections in our paper for which giving average rate at each link will violate the end-to-end delay requirement. Such connections are called delay-constrained connections. In the rest of the paper we assume that (r; r; ; r) is not a feasible solution to the MinimumCost problem. Before proceeding further, we make some observations regarding the constraint in eqn. (6). Substituting = (bp ? rL)=(p ? r), we can rewrite the constraint in eqn. (6) as follows. + X C Dreqd ? X D ? (b ? L) (9) Rmin =1 R (p ? r) =1 We denote the R.H.S. of eqn. (9) by D and note that D is a positive quantity. Let x = 1=R ; 1 i N , = 1= ; 1 i N and = 1=r. Let xmax = max x . Let x = (x1 ; ; x ). Let h(x ) = f (1=x ). We give a fact about h(x ) without proof. Lemma 3.1: If f (x) is a convex non-increasing (convex non-decreasing) function of x, then h(x) = f (1=x) is a convex non-decreasing (convex non-increasing) function of x. We now present the MinimumCost problem in terms of hP (); x ; and . (MinimumCost) min =1 h(x ) N
N
N
i
i
i
i
i
i
i
i
i
i
N
i
i
i
i
i
i
N
i
i
subject to:
PN
xmax + =1 C x D x ; 1iN x ; 1 i N j
i
i
j
j
(10) (11)
(12) P Let H (x) = =1 h(x ) where x = (x1 ; ; x ). Lemma 3.2: H (x) is a convex function in x. It can be seen that the structure of the MinimumCost problem has a convex cost function with linear constraints. There exist simple necessary and sucient conditions in terms of Lagrange multipliers for a i
N i
September 27, 2001
i
N
(submitted)
9
feasible solution to be optimal for such optimization problems [22], which we give in Appendix A. Note that if the MinimumCost problem is feasible, the ow can be admitted and the optimal solution to the problem gives the optimal rate allocation vector. If the problem is infeasible, the ow is blocked because of lack of sucient bandwidth. In the rest of the paper we consider dierent cases and investigate the structure of the optimal solutions. IV. Unbounded Rates Case and Non-optimality of the Identical Rate Vector
We rst investigate the problem when there are no available link capacity constraints, i.e., we can allocate any amount of bandwidth on the links, = 0; 1 i N . Note that the constraint of eqn. (10) actually represents N dierent constraints as follows. i
x +
N X
i
=1
C R D; 1 i N j
j
(13)
We denote by UnbddRates, the MinimumCost problem without the available link bandwidth constraints, viz., P (UnbddRates) min =1 h(x ) j
N
i
i
subject to:
x + P =1 C x D; 1 i N x > 0; 1 i N x ; 1 i N N
i
j
i
j
j
(14) (15)
(16) Now suppose that we decide to allocate identical rate to the ow on each link of its route. It is easy to compute the minimum identical rate Requal from the delay bound constraint of eqn. (14) which gives P D xequal = and thus Requal = + D=1 C . Thus xequal = (xequal ; ; xequal) is a feasible P + =1 C solution to the UnbddRates problem. Note that the approach of allocating of xequal is widely used to provide end-to-end delay guarantees under the Guaranteed Services framework. Our next theorem states a surprising result that xequal need not always be the optimal solution and gives an explicit condition for xequal to be or not to be the optimal solution. P Theorem 4.1: When + =1 C > NC ; 1 i N , xequal is the optimal solution to the UnbddRates problem otherwise xequal is not the optimal solution to the UnbddRates problem. Proof: We apply Proposition 3.4.2 of [22] described verbatim in Appendix A as Theorem A.1. The constraints of the UnbddRates problem are ordered as follows. P x + =1 C x D is the ith constraint, (1 i N ). x > 0 is the (N + i)th constraint, (1 i N ). x is the (2N + i)th constraint, (1 i N ). Note that xequal is a feasible solution to the UnbddRates problem. i
N i
i
N
i
i
N j
j
i
N
i
j
j
j
i
i
September 27, 2001
(submitted)
10
If xequal is also the optimal solution, we need to show the existence of appropriate scalars ; 1 i 3N i
that satisfy the conditions of Theorem A.1. If xequal is not the optimal solution, we need to show that there exist no scalars ; 1 i 3N that satisfy the conditions of Theorem A.1. Let denote the multiplier for the ith constraint. Let J and A() be as de ned in the Theorem A.1. Therefore let J = f1; ; 3N g and at xequal, A(xequal) = f1; ; N g as these are the only active constraints at xequal. If xequal is the optimal solution to the UnbddRates problem, then = 0; (N + 1) i 3N and we need to show that there exist unique nonnegative 1 ; ; , not all zero, such that (using the P notation of Theorem A.1), g(x) = f (x) + 2 (a0 x ? b ") is minimized at xequal . In our case, # i
i
i
N
j
j
J
j
j
N X g(x) = h(x1 ) + + h(xn ) + j j =1
x + j
N X
C x ?D i
=1 xequal,
(17)
i
i
Note that g(x) is a convex function in x. If g(x) is minimized at the partial derivatives of g(x) should vanish at xequal. If we take partial derivatives w.r.t. x ; 1 i N and set each partial derivative equal to 0 at xequal, we get N linear equations for ; 1 j N as follows, i
j
N X (18) i + Ci i = ?h0 (xequal); 1 i N j =1 where h0 (xequal ) is the derivative of h(x) at xequalP. Solving these N equations for i gives, + Nj=1 Cj ? NCi ; i = 1; ; N (19) i = ?h0 (xequal ) + PNj=1 Cj P Note that h0 (xequal) is a negative quantity. This implies that if + Nj=1 Cj > NCi 8i, then xequal is the optimal solution. Otherwise, there don't exist non-negative i and hence xequal is not the optimal
solution. There are two points to note here. Firstly, Theorem 4.1 is true for any convex non-decreasing cost function f () irrespective of the form of the function. Secondly, it can be seen from the Theorem that the identical rate vector xequal need not always be optimal. Next, we give a numerical example to show that P a better rate vector indeed exists if + =1 C > NC is not satis ed for every i. Let us consider the simple cost function f (R ) = R which means h(x ) = 1=x . Thus our optimization criterion is the minimization of the total bandwidth. Consider the following choice of parameters. N = 3 and = 30; C1 = 25; C2 = 5; C3 = 5; r = 1; D = 6:5. P P P Then it can be seen that + 3=1 C > 3C2 and + 3=1 C > 3C3 , but + 3=1 C < 3C1 . The identical rate vector is xequal = (0:1; 0:1; 0:1) for which the total cost is H (xequal) = 30. 0:005 = 0:103142857; x0 = 0:103. It can be Consider x0 = (x01 ; x02 ; x03 ) where x01 = 0:095; x02 = 0:103 + 3 35 0 0 easily veri ed that x is a feasible solution and H (x ) = 29:930344512. This simply indicates that xequal is not the optimal solution as x0 is a better rate vector. P Note that, from Theorem 4.1, the identical rate vector is optimal when + =1 C > NC ; 1 i N . P Consider the case when C1 = C2 = = C . It can be seen that + =1 C > NC ; 1 i N , in this case and therefore xequal is the optimal solution in this case. We state this as a corollary. N
j
j
i
i
i
i
i
i
i
i
i
i
i
N j
j
i
N
N
September 27, 2001
j
j
i
(submitted)
11
Corollary 4.1: For the case C1 = C2 = = C and unbounded rates, Requal is the optimal rate allocation vector. Note that C corresponds to the MTU size at the interface i and it could be dierent for dierent links. In the special case of equal MTU, C1 = C2 = = C . In the rest of the paper we work with this assumption. N
i
N
V. The Bounded Link Capacities Case
Now suppose that the optimal rate Requal is not available on some links of the route. In most of the approaches, the ow is blocked in such a case assuming that sucient link bandwidths are not available. But, in fact, sucient bandwidth might not be available only on a few links. We need not block the ow in this case, because the delay bound of eqn. (5) allows us to allocate dierent rates at dierent links on the route of the ow. Thus there might exist another rate vector which satis es the delay constraint and the available link bandwidth constraints. Note that if such a rate vector exists, the total cost of this rate vector is greater than H (xequal). This is intuitively pleasing as we are now admitting the ow at a higher cost. Therefore, we need to know the optimal rate vector when there are constraints on the available link capacities. Note that, when the xequal rate vector is infeasible, there is at least one link which has capacity < Requal. Then, by our numbering convention, link 1 (which has the least available capacity 1 ) has 1 < Requal. Let x = (x1 ; x2 ; ; x ) be the optimal solution when xequal is infeasible. Lemma 5.1: x1 = 1 and x 1 ; 2 i N . Proof: Claim 1: There exists i 2 f2; ; N g such that x < 1 . Proof: We have N
i
i
xequal +
N X
=1
Let xmax = max x . As x is the optimal solution,
Cxequal = D
i
i
i
But x1 1 > xequal . This implies
xmax + C
N X xi D i=1
f + (N ? 1)C gxequal xmax + C
But xmax x1 ! xmax > xequal . This implies
f + (N ? 1)C gxequal > xequal + C which gives
N X xi i=1 N X xi i=1
N X (N ? 1) i=2 xi < xequal Hence there exists a i 2 f2; ; N g such that xi < xequal < 1 . Denote it by xk .
1
Claim 2: x1 = 1 .
September 27, 2001
(submitted)
12
Proof: We prove this by contradiction. Assume x1 > 1 . Consider x < 1 . Consider a new rate vector x0 such that, x01 = x1 ? > 1 , x0 = x + < 1 and x0 = x ; i 6= f1; kg. Let x0max = max x0 . We choose that which preserves the structure of x , i.e., if xmax = x then x0max = x0 . It is easy to see that such an exists. Note that x0 satis es the delay constraint. Also note that h(x1 ) + h(x ) h(x01 ) + h(x0 ) as h() is a convex function. This implies x0 is the optimal rate vector and x not the optimal rate vector. This is a contradiction. Thus x1 = 1 . Claim 3: x 1 . Proof: We know that x1 = 1 and x < 1 . We need to prove the claim for the rest. We do this by contradiction. Let there exist a j (among the rest) such that x > 1 . Consider x01 = x1 + and x0 = x ? . With arguments similar to those of claim 2, we get a new optimum which contradicts with the assumtion that x was the optimum. Thus x 1 as required. k
k
i
k
i
i
j
k
i
j
k
i
k
j
j
j
i
A. The SingleLink Problem
Now consider the case when 1 < Requal , but there are no restrictions on the available link capacities on other links. We want to obtain the optimal rate vector for this problem which we refer to as SingleLink problem. Let x = fx1 ; ; x g denote the optimal rate vector for this problem. From Lemma 5.1, we know that x 1 and x1 = 1 . Then the mathematical formulation for the SingleLink problem is as follows, P (SingleLink) min =2 h(x ) N
i
N
i
i
subject to:
C
PN xj j =2
Lemma 5.2: x2 = = x .
D ? ( + C )1 ; 1 i N x > 0; 2 i N x ; 2 i N
(20)
i
(21)
i
(22)
N
Proof: By contradiction. Assume there exist x 6= x . Without loss of generality x < x . Let x + x x0 = 2 . Then by convexity of h(), x + x 1 ) h ( x ) + h ( x h 2 2 which gives h(x0 ) + h(x0 ) h(x ) + h(x ) contradicting the assumption that x is the optimal rate vector. It is easy to see that the delay constraint inequality is tight at the optimal rate vector. This gives ( + C )1 D ? ( + C )1 1 1 1 x2 = = x = D ? (N ? 1)C . Let xequal = (N ? 1)C and Requal = x1equal . Let xSingleLink = 1 ; ; R1 ). (1 ; x1equal; ; x1equal) and RSingleLink = ( 1 ; Requal equal Theorem 5.1: xSingleLink is the optimal solution to the SingleLink problem and therefore RSingleLink the optimal rate allocation vector for the SingleLink problem. j
j
j
k
k
k
j
k
j
j
k
k
N
September 27, 2001
(submitted)
13
B. The TwoLinks Problem
It is possible that xequal and xSingleLink are both not feasible. Then we know that 1 > xequal and 2 > x1equal. Let x = fx1 ; ; x g be the optimal solution for this case. Lemma 5.3: x1 = 1 ; x2 = 2 and x 2 ; 3 i N . Proof: From Lemma 5.1, x1 = 1 and x 1 . Claim 1: There exists i 2 f3; ; N g such that x < 2 . Proof: We have N
i
i
i
N X
1 + C1 + Cx1equal = D =2 Let xmax = max x , then xmax = 1 . As x is the optimal solution, X xmax + C x D i
i
i
N
i
so
=1 N X 1 + C1 + C xi i=2 i
But x2 2 > x1equal . This implies
(N ? 2)Cxequal C which gives
D
N X xi i=3
N X (N ? 2) i=2 xi < xequal Hence there exists a i 2 f3; ; N g such that xi < xequal < 2 . Denote it by xk .
1
Claim 2: x2 = 2 . Proof: Same as Claim 2 of Lemma 5.1. Claim 3: x 2 ; 3 i N . Proof: Same as Claim 3 of Lemma 5.1. 1 , but there are no restrictions on the available Now consider the case when 1 < Requal and 2 < Requal link capacities on other links. We want to obtain the optimal rate vector for this problem which we refer to as TwoLinks problem. Let x = fx1 ; ; x g denote the optimal rate vector for this problem. From Lemma 5.3, we know that x1 = 1 and x2 = 2 . Then the mathematical formulation for the TwoLinks problem is as follows, P (TwoLinks) min =3 h(x ) i
N
N i
subject to:
C P =3 x D ? ( + C )1 ? C2 ; 1 i N x > 0; 3 i N x ; 3 i N N j
Lemma 5.4: x3 = = x .
i
j
(23)
i
(24)
i
(25)
N
Proof: Same as that of Lemma 5.2.
September 27, 2001
(submitted)
14
It is easy to see that the delay constraint inequality is tight at the optimal rate vector. This gives 2 = x = D ? ((N+?C )2)1C? C2 . Let x2equal = D ? ((N+?C )2)1C? C2 and Requal = x21 . Let
x3 =
N
equal
2 ; ; R2 ). xTwoLinks = (1 ; 2 ; x2equal; ; x2equal) and RTwoLinks = ( 1 ; 2 ; Requal equal Theorem 5.2: xTwoLinks is the optimal solution to the TwoLinks problem and therefore RTwoLinks is
the optimal rate allocation vector for the TwoLinks problem. C. The K -Links Problem
2 Note that, if Requal is not available on one of the links 3; ; N , the rate vectors xequal; x1equal and x2equal are infeasible and we have a problem involving three links with limited capacity, and so on. The pattern of the optimal solution for K -Links, problem, K 3, is already clear from the optimal solutions of the SingleLink and the TwoLinks problems. (N ? I )C Let Requal = +C C C ; I 1 and xequal = 1=Requal. Let R Links = ( 1 ; ; ; Requal; ; Requal) I
I
I
I
I
I
D ? ? ?? 1 2 and x Links = (1 ; ; ; xequal ; ; xequal ); I 1. The K -Links problem is as follows. ( ?1) and unlimited capacity is The available link capacity on link I; 1 I K is , where < Requal available on links (K +1); ; N . What is the optimal rate allocation vector that minimizes the total cost I
I
I
I
I
I
I
i
and obeys the delay constraint and the available link capacities constraint? As the technique of obtaining the optimal solution is essentially the same as that of the TwoLinks case, we state the results directly. Let x = fx1 ; ; x g be the optimal solution to the K -Links problem. Lemma 5.5: x = ; 1 i K and x ; (K + 1) i N . Lemma 5.6: x( +1) = = x . Theorem 5.3: x Links is the optimal solution to the K-Links problem and therefore R Links is the optimal rate allocation vector for the K-Links problem. Note that in practice, there is an available link capacity constraint on every link. In the next section, we present an algorithm which tells us whether or not we can admit a ow and in case we can admit a ow, it also gives the optimal rate allocation vector. N
i
i
K
i
K
N
K
K
VI. Optimal Rate Vector Allocation Algorithm
Based on the results obtained in the previous sections, we develop an algorithm for optimal rate allocation for a ow. The basic steps are as follows. Though the available link bandwidths are nite, we rst assume that there are no available bandwidth constraints. That is we compute Requal. If Requal is available on all the links, it is clear that the available link bandwidth constraints have no eect and the optimal rate allocation is giving Requal on all the links. But say, Requal is not available on links 1; 2 and 3. Then we assume that there are no available link capacity constraints on other links, thus we have a 3 . If R3 3-Links problem. We then compute Requal equal is available on links 4, the optimal rate allocation 3 is not available on links 4 and 5. Then we assume a 5-Links problem vector is R3Links . But say, Requal September 27, 2001
(submitted)
I
15 5 . We repeat this until we (i.e., available capacity constraints on links 1; 2; 3; 4; 5) and compute Requal arrive at a N -Links problem and it is now clear that there is no way we can allocate rates that satisfy the constraints. We block the connection request in such a case. In the algorithm that we present below, in iteration i, the algorithm maps the rate allocation problem ( ) on links K + 1; ; N . into a K Links problem and checks for availability of the computed rate Requal If the rate is available on all the links, the ow is admitted, otherwise the algorithm computes K +1 and moves to next iteration (i.e., i + 1). Note that, K +1 > K . When K +1 = N , it is clear that sucient bandwidth is not available on any link and therefore the ow has to be blocked. We now give the pseudocode of the optimal rate vector allocation algorithm. Data: C; D; N; and ; 1 i N Result: Optimal rate vector x or infeasibility message Ki
i
i
i
i
i
i
i
i
BEGIN
Link 1 UnbddRate 1 While Link = UnbddRate then i
i
while i N do
x UnbddRate i i+1 i
endwhile endif Link September 27, 2001
optimal rate allocation done { exit
i (submitted)
16
END
endwhile VII. RSVP Based Implementation
Here we give an RSVP based implementation of the optimal rate vector algorithm that we gave in the previous section. Before proceeding, we brie y mention the RSVP message passing mechanism for the identical rate algorithm (i.e., allocating Requal at all the nodes, if possible; block otherwise). This is called OPWA (One Pass With Advertising) mechanism. In the forward pass, RSVP PATH message is forwarded by the source, along each router on the path, up to the receiver. The PATH message contains Csum and Dsum elds. Each router adds its C and D value to the Csum and Dsum elds of the received PATH message and forwards it to the next router. Thus, when the PATH message reaches the receiver, it has the Ctot and Dtot values. The PATH message also contains the token bucket parameters of the connection, propagation delay of the path and the maximum packet size. The receiver computes the required (identical) rate based on these received parameters. The receiver then sends a RSVP RESV message towards the source that contains the computed rate. This rate is reserved by each router of the path. If this rate is not available on a router, that router sends a RESV ERR message back to the receiver. Our goal is to implement the optimal rate vector algorithm (which sets dierent rates at dierent routers) with the currently available RSVP messages. That is, we want to introduce minimal extra elds in the PATH message or RESV message. Clearly, this involves multiple forward and reverse passes. The message passing procedure is as follows. When a connection request arrives at a source, the source forwards the RSVP PATH message towards the receiver as before. Each router on the path has the ability to set a
ag called FullBandwidthAllocated which is initialized to FALSE. When a router receives a RSVP PATH message, it does the following. if FullBandwidthAllocated = FALSE then Csum = Csum +C Dsum = Dsum +D i
i
i
i
else
endif
Dsum
= Dsum +D + C
i
i
i
The source conveys to the receiver whether it's a rst PATH message or not, through the FirstPass bit in the PATH message. After receiving and processing the PATH message, the receiver computes the rate requirement Rreqd for the routers with FullBandwidthAllocated = FALSE as follows. if FirstPass = True then (bp ? rL) + Ctot (p ? r) Rreqd = Dreqd ? ((bp ?? Lr)) ? Dtot ? Dprop September 27, 2001
(submitted)
17
else
Rreqd =
endif
Ctot
(b ? L) ( b ? L ) Dreqd ? (p ? r) ? Dtot ? Dprop ? (p ? r) 1
We require two extra bits in the RESV message as follows. The Block bit tells the router whether the connection request can be accepted or not. Before forwarding the RESV message, the receiver sets Block = TRUE. When a router with FullBandwidthAllocated = FALSE receives the RESV message, it checks if it can allocate the requested rate. In case it can, it sets Block = FALSE. If the source receives a RESV message with Block = TRUE, it sends a RESV ERR message back to the receiver and blocks the connection request. When the source receives a RESV message with Block = FALSE, either the rate allocation is done or one more pass is required. This is indicated to the source through the NextPassReqd bit in the RESV message. The receiver sets NextPassReqd = FALSE. When a router with FullBandwidthAllocated = FALSE receives a RESV message, it checks if the requested rate can be allocated. If it can not, then it allocates the full available bandwidth, sets FullBandwidthAllocated = TRUE and sets NextPassReqd = TRUE in the RESV message. Unlike the normal RSVP based reservation procedure, when a router receives a RSVP RESV message, it does the following. if FullBandwidthAllocated = TRUE then Forward the RSVP RESV message to the previous hop router
else
if < the requested bandwidth then i
reserve for the connection set FullBandwidthAllocated = TRUE set NextPassReqd = TRUE in the RESV message Forward the RESV message to the previous hop router i
else
endif
endif
reserve the requested bandwidth for the connection set Block = FALSE in the RESV message Forward the RESV message to the previous hop router
The source does the following after receiving a RESV message. if Block = TRUE then send a RESV ERR to the receiver block the connection request September 27, 2001
(submitted)
18
else
if NextPassReqd = TRUE then else
endif
endif
send a Path message to the receiver
reservation done { accept the connection request
VIII. Simulation Results
In the previous sections, we have seen that the optimal rate algorithm might admit a connection when the identical rate allocation algorithm blocks it. In this section, we explore the performance of these algorithms in a dynamic setting where connection requests arrive and depart randomly. In particular, we investigate whether or not the optimal rate algorithm performs better than the identical rate algorithm. Therefore, in this section, we compare the simulated performance of the optimal rate allocation algorithm with that of the identical rate allocation algorithm. The network under consideration is shown in Fig. 32. At each node, the packets are scheduled according to the Weighted Fair Queueing (WFQ) policy [16], [17], [18]3 . WFQ falls under the Guaranteed Services max framework with the following parameters. For a ow i at link l, C = Lmax and D = Lg + dprop, where Lmax is the maximum packet size of ow i, Lmax is the maximum size of the packets at link l, g is the capacity of link l and dprop is the propagation delay of link l. In our simulations, we assume that all the connections to be routed are full-duplex, that all links are bidirectional and the two halves of a full-duplex connection are to be routed on the same path. We consider the shortest path (in the number of hops) for a source-destination pair. The paths can be given or can be computed given the network topology. Connection requests are assumed to arrive according to a Poisson process and last for a duration that is exponentially distributed with unit mean. We further assume that an arriving connection request belongs to one of the pre-speci ed trac classes of table I [10]. Each trac class is identi ed by its token bucket parameters, maximum packet size and end-to-end delay requirement. We restrict ourselves to the uniform trac case, i.e., load of each class on each source destination pair is uniformly distributed. The performance criterion is the blocking probability of each class. With this setup, we obtain blocking probability curves. We rst show that the optimal rate allocation algorithm performs marginally better than the identical rate allocation algorithm, for connections that traverse longer paths. For this we assume that only video conferencing connections arrive and obtain separate blocking probability curves for connections with 1l
i
l
l
l
l
i
l
Figures and tables are included at the end of the paper. WFQ and PGPS (packet-by-packet generalized processor sharing), though independently invented in [16] and [17], are identical scheduling policies. 2
3
September 27, 2001
(submitted)
19
hop, 2-hops and 3-hops. It can be seen from the plot of Fig. 4 that, with the optimal rate algorithm, there is a reduction in the blocking probability for connections with 3-hops at the expense of an increase in the blocking probability for connections with 1-hop and 2-hops. Next we consider the case when arriving connections belong to the trac classes of table I. From Fig. 5 and Fig. 6, it can be seen that, the blocking probability curves are almost the same for both rate allocation algorithms. So, despite the fact that a connection which is blocked by the identical rate algorithm, might be admitted by the optimal rate algorithm, the performance of both the algorithms is almost the same. This is probably because the optimal rate allocation algorithm admits connections at the cost of higher network bandwidth. This leaves less bandwidth for future calls and leads to almost the same performance. Thus, we can conclude that, the simpler identical rate allocation algorithm can be sucient for connection admission. IX. Conclusion
In this work, we have investigated the problem of optimal rate vector allocation to provide end-to-end delay guarantees to Guaranteed Service class connections. We have shown that the widely used identical rate allocation algorithm need not be optimal (in minimizing the overall cost of rate allocation) when router parameters and ow speci cations do not satisfy certain conditions. We have also shown that we can explicitly obtain the optimal solution to minimize the total cost when the parameters at each router are identical. We have presented an optimal rate vector computation algorithm for this case. We have found through simulations that the optimal rate allocation algorithm only marginally reduces blocking probabilities, for connections traversing longer paths. Moreover, the performance of identical rate allocation algorithm is very close to that of the optimal rate allocation algorithm. Therefore, owing to the simplicity of the identical rate allocation algorithm, we can use it for connection admission in practice. Certain issues need to be investigated further. One such issue is computation of the optimal rate vector when router parameters are not identical. Also the more general total cost minimization problem in which link cost functions are not the same, requires further investigation. The current RSVP structure supports only the identical rate reservation and RSVP based scheme for supporting reservation of a rate vector are required. These issues form part of our ongoing work. Appendix I. Necessary and Sufficient Conditions for Minimization Problems with Convex Cost and Linear Constraints
All the minimization problems that are investigated in this paper fall under the category of minimization problems with convex cost and linear constraints. Simple necessary and sucient conditions in terms of Lagrange multipliers have been developed for a feasible solution to be optimal in the theory of optimization [22]. We have made extensive use of these conditions in obtaining the optimal solutions to the September 27, 2001
(submitted)
20
minimization problems in our paper. These conditions are stated in the Proposition 3.4.2 in [22] and we copy it here verbatim for the convenience of the reader. Proposition A.1: (Optimality Conditions for Convex Cost and Linear Constraints) Let f : R ! R be convex and continuously dierentiable, and let j be a subset of the index set f1; ; rg. Then x is a global minimum for the problem minimize f (x) n
subject to a0 b ; j = 1; ; r if and only if x is feasible and there exists scalars ; j 2 J , such that 0; j 2 J j
j
j
j
= 0; 8j 2 J withj 62 A(x ) x = arg min 62 g(x) P where g(x) = f (x) + 2 (a0 x ? b ) and A() is the set of those constraints which are active at x . Active constraints at x are those constraints which become equalities at x . j
aj x
j
J
j
j
bj ;j
J
j
References
[1] Integrated Services Charter, http://www.ietf.org/html.charters/intserv-charter.html. [2] Internet Engineering Task Force (IETF) Home Page, http://www.ietf.org. [3] S. Shenker and C. Partridge and R. Guerin, \Speci cation of guaranteed quality of service", Request For Comments (Proposed Standard) RFC 2212, IETF, September 1997. [4] J. Wroclawski, \Speci cation of the controlled-load network element service", Request For Comments (Proposed Standard) RFC 2211, IETF, September 1997. [5] \Allocation of Local Quality of Service Constraints to meet End-to-End Requirements", In IFIP Workshop on the Performance Analysis of ATM Systems, Martinique, January 1993. [6] D. Lorenz and A. Orda, \Optimal Partition of QoS Requirements on Unicast Paths and Multicast Trees", IEEE/ACM Transactions on Networking, October 1998. [7] R. Guerin and A. Orda, \QoS-based Routing in Networks with Inaccurate Information: Theory and Algorithms", IEEE/ACM Transactions on Networking, October 1999 (not correct). [8] D. Lorenz and A. Orda, \QoS Routing on Networks with Uncertain Parameters", IEEE/ACM Transactions on Networking, pp. 768{778, December 1998. [9] D. Raz and Y. Shavitt, \Optimal Partition of QoS Requirements with Discrete Cost Functions", In Proceeding of the IEEE INFOCOM, 2000. [10] L. Georgiadis, R. Guerin, V. Peris and R. Rajan, \Ecient support of delay and rate guarantees in an Internet", Proceedings of SIGCOMM, pp. 106-116, August 1996. [11] R. Guerin and V. Peris, \Quality-of-Service in packet networks: basic mechanisms and directions", Computer Networks, vol. 31, no. 3, pp. 169-179, February 1999. [12] P. White, \RSVP and integrated services in the Internet", IEEE Communications Magazine, May 1997. [13] D. Stiliadis and A. Varma, \Latency-rate servers: a general model for analysis of trac scheduling algorithms", IEEE/ACM Transactions on Networking, October 1998. [14] P. Goyal and H. Vin, \Generalized guaranteed rate scheduling algorithms: a framework", IEEE/ACM Transactions on Networking, vol. 5, no. 4, pp. 561-571, August 1997. September 27, 2001
(submitted)
21
[15] H. Zhang, \Service disciplines for guaranteed performance service in packet-switching networks", Proceedings of the IEEE, pp. 1374{1396, October 1995. [16] A. Demers, S. Keshav and S. Shenker, \Analysis and simulation of a fair queueing algorithm", Proc. ACM SIGCOMM'89, pp. 3{12, 1989. [17] A. K. Parekh and R. G. Gallagher,\A generalized processor sharing approach to ow control in integrated services networks: the single node case", IEEE Trans. on Networking, vol. 1, no. 3, pp. 137{150, 1993. [18] A. K. Parekh and R. G. Gallagher,\A generalized processor sharing approach to ow control in integrated services networks: the multiple node case", IEEE Trans. on Networking, vol. 2, no. 2, pp. 347{357, 1993. [19] L. Georgiadis, R. Guerin, V. Peris and K. Sivarajan, \Ecient network QoS provisioning based on per node trac shaping", IEEE/ACM Trans. on Networking, vol. 4, no. 4, pp. 482{501, August 1996. [20] R. Agrawal and R. Rajan, \Performance bound for guaranteed and adaptive services", IBM Research Report, RC20649, December 1996. [21] L. Georgiadis, R. Guerin and A. K. Parekh, \Optimal Multiplexing on a Single Link: Delay and Buer Requirements", Proc. IEEE INFOCOM, 1994. [22] D. Bertsekas, Nonlinear Programming, Athena Scienti c, Belmound, Massachusetts, 1995. 10
0
11 8
1 3
4
6
12
7
2 13
5 9
Fig. 3. The network under consideration. Each link has maximum capacity 155 Mbps and propagation delay 4 ms. TABLE I Parameters for traffic models of type voice and video.
Class b(kB) r(Mbps) pMbps Dreqd(ms) L(kB) voice 0.1 0.064 0.064 50 0.1 video conf 10 0.5 10 75 1.5 st video 100 3 10 100 1.5
September 27, 2001
(submitted)
22 0.14 blocking probability
0.12 0.1
identical: 1 link optimal: 1 link identical: 2 links optimal: 2 links identical: 3 links optimal: 3 links
0.08 0.06 0.04 0.02 0 4
4.5
5 5.5 6 6.5 arrival rate nsfnet 1 class vc
7
Fig. 4. Blocking probabilities of identical rate allocation and optimal rate allocation for connections with various hop counts are plotted. Only video conferencing connections are present. Note the marginal reduction in blocking probability for 3-hop connections. 0.018
blocking probability
0.016 0.014 0.012
identical optimal
0.01 0.008 0.006 0.004 0.002 0 1.2 1.4 1.6 1.8 2 2.2 2.4 2.6 2.8 arrival rate (nsfnet 3 classes: videoconf short)
Fig. 5. Blocking probabilities of video conferencing calls for identical rate allocation and optimal rate allocation are plotted. The blocking probabilities are almost the same.
blocking probability
0.1 0.08
identical optimal
0.06 0.04 0.02 0 1.2
1.4 1.6 1.8 2 2.2 2.4 2.6 2.8 arrival rate (nsfnet 3 classes: stvideo short)
Fig. 6. Blocking probabilities of stored video calls for identical rate allocation and optimal rate allocation are plotted. The blocking probabilities are almost the same. September 27, 2001
(submitted)