Distributed and Dynamic Resource Allocation for ... - NCSU COE People

0 downloads 0 Views 374KB Size Report
We use network calculus to obtain .... delay bound derived from network calculus [7]. It considers traffic details ..... ness which allows context-based routing; i.e., the exchanged .... Maragh, F. W. Faltin, G. J. Hahn, W. T. Tucker, J. S. Hunter, J. F..
Distributed and Dynamic Resource Allocation for Delay Sensitive Network Services Michael G. Kallitsis ∗† , Robert D. Callaway ∗† , Michael Devetsikiotis ∗† , and George Michailidis § ∗ Department

of Electrical and Computer Engineering, NC State University, Raleigh, North Carolina 27695 Technology Institute, IBM, Research Triangle Park, North Carolina 27709 § Department of Statistics, University of Michigan, Ann Arbor, Michigan 48109 [email protected], [email protected], [email protected], [email protected] † WebSphere

Abstract—In this paper, we present a distributed algorithm to dynamically allocate the available resources of a service-oriented network to delay sensitive network services. We use a utilitybased framework to differentiate services based on both their relative profitability and quality-of-service requirements. Our performance metric is the end-to-end delay that a service class experiences in the network. We use network calculus to obtain a deterministic upper bound of this delay and we incorporate this information into our optimization problem formulation. We leverage a moving average control scheme to capture traffic shifts in real time, which makes our solution to react adaptively to traffic dynamics. Finally, we evaluate our system using real traces of instant messaging service traffic.

I. I NTRODUCTION With advances in various networking technologies creating connections with enormous bandwidth and low latency, transport services offered by telecommunication service providers are becoming commoditized. In order to differentiate their services against those of their competitors, these service providers are seeking to enable value-added services layered on top of the commodity transport service. At the same time, businesses across all industries realize the need to be flexible and adaptable to change in order to succeed in today’s information-driven economy. A robust, scalable, and dynamic communication and integration infrastructure is necessary to connect service consumers and providers within and between corporations. Service-oriented networking (SON) is an emerging architecture that directly addresses this need by enabling network devices to operate at the application layer to provide functions such as service-based routing, content transformation, and protocol integration to consumers and providers [1]. We anticipate that enterprise applications of the future will leverage distributed SON deployment patterns where large numbers of SON devices coordinate with peers using network-wide application-specific policies. Manual configurations are not able to scale with these environments, nor can they adapt the configuration to dynamic network and application conditions. SON devices should therefore coordinate with their peers to determine the appropriate points in the network to perform configuration changes based on prevailing network and application conditions. In this paper, we combine ideas from economic theory, convex optimization, and traffic measurement to extend our

existing Measurement Based Optimal Resource Allocation (MBORA) framework, presented in [2], that directly addresses the dynamic and distributed resource allocation problem in service-oriented networks. Different priorities and quality-ofservice requirements of services are taken into consideration in the problem formulation; therefore, services are classified and treated according to appropriate policies and service level agreements. Our framework effectively maximizes the service providers utility (i.e., an economic profit or any more generally defined desired welfare) while at the same time allocating the resources to value-added services in an optimal and fair manner. Its dynamic idiosyncrasy qualifies it for deployment in next generation autonomic service-oriented networks. We explicitly incorporate the end-to-end delay that a service experiences from source to destination into our mathematical framework via an exponentially increasing cost function. This allows us to allocate resources to higher priority services in a SON which are experiencing delays that exceed their target threshold. SIP and Video-on-Demand are examples of real services which would have sensitivity to end-to-end delay through a SON that would directly benefit from our proposed system. The structure of this paper is as follows: first, we provide an overview of our MBORA system and describe its components. In Section III we present the optimization problem that needs to be solved and in Section IV we illustrate how the problem can be decomposed and solved in a distributed manner. Next we view the MBORA module responsible for online traffic measurements and monitoring. Finally, we provide experimental performance evaluation results using real world network traces generated from instant messaging applications. II. M EASUREMENT BASED O PTIMAL R ESOURCE A LLOCATION Our modeling framework is depicted in Figure 1. It represents a service-oriented network device whose application layer awareness (e.g., XML aware) allows for content-based routing and resource allocation based on priorities and qualityof-service requirements of incoming services. IBM’s WebSphere DataPower SOA appliance [3] is a real example of an SON device. In particular, the proposed system is responsible for optimally allocating resources to elastic delay-bound classes in

978-1-4244-2324-8/08/$25.00 © 2008 IEEE. This full text paper was peer reviewed at the direction of IEEE Communications Society subject matter experts for publication in the IEEE "GLOBECOM" 2008 proceedings.

Adjacent MBORAs

ij*(t-1)

ȡ1, R1, ı1, L1

MEASUREMENT

ȡ2, R2, ı2, L2

OPTIMIZATION (Distributed Algorithm)

(EWMA) ȡk, Rk, ıK, Lk

ĭJ1 * Class 1

ĭJ2* Class 2

RESOURCE ORCHESTRATOR (DWFQ, DWRR)

ĭJk* Class k

Fig. 1.

High level architecture of MBORA at node-j.

below their respective thresholds), then the allocation would converge to a proportionally fair solution. The revenue rji (·) of class-i at node-j is given by a logarithmic function rji (φji ) = pi log(φji Cj ), while the cost ci (·) across all nodes through which class-i traffic traverses is given by a exponential function ci (·) = bi Di (·) exp[βi (Di (·) − di )]. The coefficient pi corresponds to the price/priority of servicei and bi is a parameter that adjusts the cost of the provider whenever SLAs of service-i are not met. A higher priority class u requires better service than a lower one v and this implies pu > pv and bu > bv . Di (·) is our performance metric (a delay metric) and is described below in (4). Parameter di is the desired delay bound (target level under the SLA), while parameter βi adjusts the steepness of the cost function.  = [φ1 , . . . , φK ] where Let φi = [φ1i , φ2i , . . . , φN,i ] and φ K is the number of service classes and N is the number of SON devices. The optimization problem becomes: K  K N   rji (φi ) − ci (φi )} π = max{  φ

the over-provisioned case. These classes enter the MBORA system which consists of a measurement module, an optimization module and a resource orchestrator module. Online traffic estimation and monitoring is performed by the measurement module. In this work, traffic is described by the tuple (ρi , σi , Ri ), where ρi is the mean rate of class-i, σi represents its burst size and Ri the peak rate. Nevertheless, other traffic models could be used as well. The optimization module receives the traffic characteristics of each class and coordinates with other network nodes in a distributed manner to solve the optimization problem discussed in Section III. Note that the optimization problem is solved only when there is a significant change in traffic characteristics; this is indicated by an out-of-control signal which is triggered by the Exponentially Weighted Moving Average (EWMA) control chart when the traffic intensity of a particular class changes. More information about the MBORA system is provided in our earlier work [2], [4], [5]. III. F ORMULATION OF O PTIMIZATION P ROBLEM In this section we present the intuition behind the objective function to be optimized. It consists of a revenue function and a cost function. The revenue function has its roots on the seminal work of Kelly et al. [6] that allows for pricedbased differentiation of services. The cost function has an exponential form and was first introduced in [2]. The key idea is to have an increasing cost function as a function of the end-to-end delay that a service class experiences from source to destination. Moreover, the cost escalates dramatically when the measured delay exceeds the desired delay threshold imposed by class’s quality-of-service requirements. Our choice of utility function is an extension to the one used for allocating resources in a weighted proportional fairness manner as presented in [6]; the difference is that in our case we penalize services that violate their delay service level agreements. If the delay for all services in our system is negligible (significantly

i=1 j=1 K 

= max{  φ



K 

pi

i=1

N 

i=1

log(φji Cj )Hji +

(1)

j=1

 bi Di (φi )eβi (Di (φi )−di ) }

i=1

subject to the constraints: Hji φji > Hji ρi ≥ 0, (∀j ∈ {1, 2, . . . , N }, ∀i ∈ {1, 2, . . . , K}| Hji = 1) K 

φji Hji − 1 ≤ 0, ∀j ∈ {1, 2, . . . , N }

(2)

(3)

i=1

H is the N × K incidence matrix representing the path taken by each service class in our topology. Hji = 1 when class i flows through node j and Hji = 0 otherwise. The performance metric Di (φi ) for class-i is given by: σi − Li Ri − ri Li  Li × + + ( + Sj ) (4) Di (φi ) = ri Ri − ρi ri φji Cj j=1 N

where ri = minj {φji Cj }. This is a deterministic end-to-end delay bound derived from network calculus [7]. It considers traffic details (ρi , σi , Ri ) and the maximum message size Li . Sj = Lj,max /Cj with Lj,max being the maximum message size at node-j across all classes. The mean ρi can be measured online whereas the remaining parameters are determined through offline analysis of network traces. ri represents the minimum allocation that class-i receives among the nodes-j it traverses; however, the min operator affects the convexity of (1). To overcome this limitation, we use the smallest allocation from the solution of (1) as determined in the previous iteration. In (4), propagation delays are not considered as they are assumed insignificant.

978-1-4244-2324-8/08/$25.00 © 2008 IEEE. This full text paper was peer reviewed at the direction of IEEE Communications Society subject matter experts for publication in the IEEE "GLOBECOM" 2008 proceedings.

IV. D ECOMPOSITION AND D ISTRIBUTED A LGORITHM This section elaborates on decomposing the aforementioned centralized problem into several subproblems to enable the optimization problem to be solved in a distributed fashion. Let the elements of λ = [λ1 , . . . , λN ] be the Lagrange multipliers for the constraints in (3). We define the Lagrangian of (1) as:

The Lagrangian function can now be equivalently written as:  λ, γ ) = L(φ,

K  N 

pi log(φji Cj )Hji

i=1 j=1



K  N 

j

ˆ ji eβi (Di (φji ,{φξi }ξ )−di ) bi Di (φji , {φjξi }ξ )H

i=1 j=1

 λ) = − L(φ, +

K 

i=1 K N  

pi

i=1



N  l=1

+

 bi Di (φi )eβi (Di (φi )−di )

K  N  

ˆ ji − γξi (φξi − φjξi )H

i=1 j=1 ξ∈Ξ(i)

N 

K  λl ( φli Hli − 1) i=1

l=1

(7) log(φji Cj )Hji

(5)

j=1 K  λl ( φli Hli − 1) i=1

Our motivation is to have each node-j solve a local supproblem. Thus, (7) is separated in j as follows: K N    λ, γ ) = pi log(φji Cj )Hji L(φ, j=1

In order to solve the dual problem of (1), we need to slightly modify the expression of our Lagrangian. To achieve that, we define the following transformation of the H incidence matrix: ⎧ ⎪ ⎨Hij , ∀j, i = 1 ˆ Hij = Hij , {∃v ∈ Z+ | ∀ 0 < u < i, Huj = 0 ∧ Hvj = 1} ⎪ ⎩ 0, otherwise (6) The above transformation aids us to describe mathematically the fact that the cost function of a particular flow would be considered exclusively by the very first node that the flow encounters. We are now close to decomposing the original problem into N separate subproblems. However, one piece is missing: note that end-to-end delay of service-i, Di (φi ), and, thus, the corresponding objective functions, can depend on local variables (i.e., node-j) and also on variables of other nodes. Specifically, Di (φi ) = Di (φji , {φξi }ξ∈Ξ(i) ) where Ξ(i) is the set of nodes that service class-i traverses after passing through the first node it encounters and {φξi } emblematize the coupled variables. Therefore, we can potentially have coupled objective functions which is something not in favor of decomposing the original problem into several subproblems. To circumvent this obstacle, we introduce auxiliary variables and extra equality constraints. Hence, the new problem becomes amenable to dual decomposition and the integrity of the original problem is dictated by the consistency pricing technique proposed in [8]. Nevertheless, this does not come for free; additional messages need to be exchanged between nodes that have their objectives coupled. We introduce the auxiliary variables φjξi for each coupled variable in the delay metric function Di (·) and the supplementary equality constraints φjξi = φξi , ∀j, ξ ∈ Ξ(i). The key idea is that we substitute coupled variables φξi with φjξi and we assign all new variables with superscript j to the subproblem solved by node-j. The overall consistency of the problem is enforced via the ancillary equality constraints and their corresponding consistency prices γξi .



K 

i=1 j

ˆ ji eβi (Di (φji ,{φξi }ξ )−di ) bi Di (φji , {φjξi }ξ )H

i=1



K  

ˆ ji γξi φjξi H

i=1 ξ∈Ξ(i)

−λl

K  i=1

+

(8) γji φji

i:j∈Ξ(i)



φli Hli



+

N 

λl

l=1

 Let φˆj ≡ {φji , φj2 , . . . , φjK } be a vector of the allocations at node-j for each class-i. The objective function of the dual problem is:  λ, γ ) =  λ, γ ) = max L(φ, Δ(φ,  φ

N 

  Bj (φˆj , λ, γ )+ λl (9) N

j=1

l=1

where

 K  ˆ  ˆ ji eβi (Di (·)−di ) bi Di (·)H Bj (φj , λ, γ ) = max −  φˆj



K  

i=1

i=1 ξ∈Ξ(i)

+

K 



ˆ ji ) + γξi φjξi H

γji φji

i:j∈Ξ(i)

pi log(φji Cj )Hji − λl

i=1

K 

(10)



φli Hli

i=1

represents the subproblem to be solved at node-j, subject to the constraints: Hji φji > Hji ρi ≥ 0, (∀i ∈ {1, 2, . . . , K}| Hji = 1)

(11)

The dual problem of (1) is:  λ, γ ) min Δ(φ,

 λ≥0, γ

(12)

This can be solved with an iterative subgradient method using the following updates: K  φ∗li (t)Hli − 1)]+ , ∀l λl (t + 1) = [λl (t) − α1 (t)(

(13)

i=1

978-1-4244-2324-8/08/$25.00 © 2008 IEEE. This full text paper was peer reviewed at the direction of IEEE Communications Society subject matter experts for publication in the IEEE "GLOBECOM" 2008 proceedings.

γξi (t + 1) = γξi (t) − α2 (t)(φ∗ξi (t) − φj∗ ξi (t)), ∀i, ξ ∈ Ξ(i) (14) where [·]+ represents the projection to [0, +∞). α1 (t) and α2 (t) denote the positive stepsizes. We used the diminishing stepsize rule αi (t) = βi /t, βi > 0 which is proved to increase the performance of gradient projection algorithms [9]. Algorithm 1 depicts a sketch of the iterative process, following the guidelines of [8].

Class 1 Traffic 200 LCL Prediction UCL

KB per slot

150 100 50 0 −50

0

1000

2000

3000 time slot (min) Class 2 Traffic

4000

5000

6000

200 LCL Prediction UCL

KB per slot

150 100 50 0 −50

0

1000

2000

3000 time slot (min) Class 3 Traffic

4000

5000

6000

200 LCL Prediction UCL

150 KB per slot

Algorithm 1 MBORA’s distributed algorithm at node-j 1: procedure A LGORITHM INPUT: Local utilities, link capacity Cj . 2: 3: INIT: t = 0. Set λ(0), γ (0) to non-negative values. 4: while Termination Criterion = HAPPY do 5: Solve subproblem (10). Broadcast φ∗j (t). 6: Update Lagrangian prices using (13). 7: Broadcast λl (t + 1) to other nodes. 8: Update consistency prices (14). Broadcast prices 9: γξi (t + 1) to coupled nodes. Perform updates 10: only at node-j that service-i first encounters. 11: t=t+1 12: end while  13: return optimum allocation φˆ∗j 14: end procedure

100 50 0 −50

0

1000

2000

3000 time slot (min)

4000

5000

6000

Fig. 2. EWMA monitoring of the three instant messaging services used in our experiments.

V. O NLINE T RAFFIC M ONITORING In this part of the paper, we present a measurement module which offers MBORA the capability of dynamic resource allocation. Our traffic monitoring employs the EWMA control chart so as to capture the significant changes of the mean arrival rate of each service class. Therefore, the optimum allocation can be dynamically recalculated only when traffic intensities, ρ¯i , are altered. Suppose that time is divided into sequential intervals (tn , tn+1 ), n = 0, 1, 2, . . . of duration Δ. The measurement module has to count the number of packets (or bytes) from each class that arrive during each interval in order to obtain the sequence of traffic intensities {ρˆi (1), ρˆi (2), . . .} for each class i. The EWMA statistic for that class would then be: ρ¯i (n + 1) = θ × ρˆi (n) + (1 − θ) × ρ¯i (n)

(15)

where ρ¯i (n + 1) is the one-step-ahead predictor of ρˆi (n + 1) and 0 < θ ≤ 1 represents the weight that the most recent estimation is assigned (for more details, see [10]). Moreover, we have to compute the lower and upper control limits of EWMA, given as: θ (16) LCL/U CL = ρi ± cσi 2−θ where parameter c > 0 is a tuning variable that combined also with parameter θ can set the sensitivity level that the provider needs to accomplish. An out-of-control signal is generated at time slot n when ρ¯i (n) > U CL or ρ¯i (n) < LCL. A screenshot of a typical EWMA operation is depicted in Figure 2.

Fig. 3.

A two-node network of SON devices.

VI. P ERFORMANCE E VALUATION In this section we evaluate the performance of our system to obtain insights on its functionality. First, we examine the sensitivity of our system with respect to some model parameters (i.e., prices pi , delay requirements di ). Then, we employ application layer traffic to capture the performance of the system in a real world scenario. Specifically, we use three different traces of instant messaging traffic that were captured at the internet gateway of a large enterprise (more information about the traces can be found in [11] and [12]). Finally, we briefly discuss the convergence of our algorithm. Our topology is depicted in Figure 3. It consists of two service nodes that serve three different traffic flows. Classi, i ∈ {1, 2, 3}, is assigned the following parameters: pricing parameters are set to pi = 1 and bi = 10 pricing units, delay threshold is equal to di = 2 delay units, link capacity is C = 20Kbps, steepness parameter βi = 10 and traffic is characterized by mean rate ρi = 0.2 (normalized to C), peak rate Ri = 1 (normalized as well) and burst size σi = 10 × Li , where Li is the maximum message size (200 bytes, which we

978-1-4244-2324-8/08/$25.00 © 2008 IEEE. This full text paper was peer reviewed at the direction of IEEE Communications Society subject matter experts for publication in the IEEE "GLOBECOM" 2008 proceedings.

φ

11

φ12

0.5

φ21 φ23

0.4

TABLE I A LLOCATION GIVEN BY MBORA TO I NSTANT M ESSAGING SERVICES : A LL SERVICES HAVE EQUAL PRIORITIES .

1

45 40 35

30 0.8 1 1.2 1.4 1.6 Pricing parameter p1 (price units) Sensitivity to delay threshold d1 36.85

1 1.2 1.4 1.6 Pricing parameter p1 (price units) 0.54

Utility (utility units)

Optimum allocation (normalized to C)

0.6

Utility (utility units)

Senitivity to pricing parameter p

0.52 0.5 0.48 0.46

2

2.1 2.2 2.3 Delay threshold d (delay units) 1

Fig. 4.

36.84 36.83 36.82 36.81 36.8 1.9

2 2.1 2.2 2.3 Delay threshold d1(delay units)

Sensitivity to pricing parameter p1 and delay threshold d1 .

approximate from the statistical information on the message size distribution as presented in [12]). Having set all model parameters as described above, we examine the sensitivity of our system to price pi and delay threshold di . The results are illustrated in Figure 4. As the priority of the service class-1 increases (i.e., greater p1 ), the allocation of resources to that service class increases (upper left plot). Furthermore, the total utility of the system increases (upper right plot). On the other hand, as we relax the delay bound d1 , the allotments to service class-1 slightly decrease whereas the total utility increases due to less delay violations incurring in the network (lower graphs). In Table I we present how the MBORA system would perform in the realistic scenario of having to serve real application layer traffic; in this experiment we utilized instant messaging data. A screenshot of the data traffic pattern for a window of 6000 minutes is shown in Figure 2. In addition, the same illustration reveals the performance of our monitoring module using the EWMA control scheme. Specifically, we see that significant traffic changes are captured and out-of-control signals are triggered to the optimization module so as to start the procedure of dynamically allocating the available resources. Table I tabulates the results; the first column represents the time slot that traffic change was apprehended, the second column shows the new mean arrival rate after the traffic shift as measured by our online measurement module and the remaining two columns display the optimum solution. In Table II we see the allocation calculated by MBORA in the case where service class-1 has the highest priority. In particular, its price parameter is set to p1 = 2. Incoming traffic was identical to the previous scenario. One can observe the increase of bandwidth allotment to service class-1. This is in accordance with the sensitivity analysis presented earlier. Examples of the convergence of our algorithm are depicted in Figure 5. Note that since we are dealing with a convex optimization problem (for proof of convexity, see our earlier work [5]), the solution is unique. However, we did observe some cases where the initial guess of the starting iterate of the algorithm or the choice of the stepsize a(t) (refer to section IV)

Time slot (in minutes)

Mean traffic (ρ1 , ρ2 , ρ3 )

Node 1 (φ11 , φ12 )

Node 2 (φ21 , φ23 )

360

(0.01, 0.20, 0.08)

(0.51, 0.49)

(0.50, 0.50)

501

(0.09, 0.51, 0.20)

(0.44, 0.56)

(0.52, 0.43)

613

(0.23, 0.20, 0.23)

(0.53, 0.47)

(0.49, 0.50)

1023

(0.02, 0.07, 0.04)

(0.50, 0.50)

(0.51, 0.49)

1921

(0.09, 0.41, 0.32)

(0.47, 0.50)

(0.49, 0.51)

2413

(0.01, 0.06, 0.06)

(0.51, 0.49)

(0.50, 0.50)

3391

(0.09, 0.46, 0.21)

(0.45, 0.55)

(0.52, 0.48)

3851

(0.04, 0.06, 0.04)

(0.51, 0.49)

(0.50, 0.50)

4831

(0.57, 0.37, 0.12)

(0.57, 0.43)

(0.61, 0.39)

5332

(0.01, 0.02, 0.04)

(0.51, 0.49)

(0.50, 0.50)

TABLE II A LLOCATION GIVEN BY MBORA TO I NSTANT M ESSAGING SERVICES : S ERVICE CLASS -1 HAS A HIGHER PRIORITY. Time slot (in minutes)

Mean traffic (ρ1 , ρ2 , ρ3 )

Node 1 (φ11 , φ12 )

Node 2 (φ21 , φ23 )

360

(0.01, 0.20, 0.08)

(0.57, 0.43)

(0.59, 0.41)

501

(0.09, 0.51, 0.20)

(0.45, 0.52)

(0.57, 0.43)

613

(0.23, 0.20, 0.23)

(0.56, 0.43)

(0.56, 0.44)

1023

(0.02, 0.07, 0.04)

(0.59, 0.41)

(0.60, 0.40)

1921

(0.09, 0.41, 0.32)

(0.47, 0.49)

(0.53, 0.47)

2413

(0.01, 0.06, 0.06)

(0.59, 0.40)

(0.60, 0.40)

3391

(0.09, 0.46, 0.21)

(0.49, 0.51)

(0.56, 0.44)

3851

(0.04, 0.06, 0.04)

(0.59, 0.40)

(0.60, 0.40)

4831

(0.57, 0.37, 0.12)

(0.57, 0.42)

(0.59, 0.39)

5332

(0.01, 0.02, 0.04)

(0.60, 0.40)

(0.60, 0.40)

was inducing the algorithm towards a stagnation point (i.e., not terminating at the optimum solution). For brevity, those cases are not demonstrated in this paper. As a future work assignment we will investigate methods for improving the convergence rate of our algorithm. VII. R ELATED W ORK The cornerstone of our system is that we are operating in a service-oriented network that offers application-level awareness which allows context-based routing; i.e., the exchanged messages are parsed and treated according to appropriate policies and service level agreements. This idea is also present in [13] where application level awareness is considered to have a key role in future Internet design. Regarding optimization, our work closely resembles the seminal paper by Kelly [6] in which the NUM optimization problem is solved under some capacity constraints in order to maximize social welfare. Optimal resource allocation is also studied in [14], where the authors perform a maximization over a utility function provided from the network subscribers and resources are shared based on the solution of that optimization problem. In [15] the

978-1-4244-2324-8/08/$25.00 © 2008 IEEE. This full text paper was peer reviewed at the direction of IEEE Communications Society subject matter experts for publication in the IEEE "GLOBECOM" 2008 proceedings.

Iteration history Dimishing stepsize rule: α(t) = β/t Termination tolerance:10−4

R EFERENCES

37.4 (ρ1=ρ2=0.2, ρ3=0.1) (ρ1=0.3, ρ2=ρ3=0.2)

37.2

(ρ =0.4, ρ =0.2, ρ =0.12) Absolute Utility Value

1

2

3

(ρ =ρ =ρ =0.3)

37

1

2

3

36.8

36.6

36.4

36.2 0

10

20

30 40 Nonlinear iterations (t)

50

60

Fig. 5. Convergence of our distributed algorithm using the diminishing stepsize rule.

network utility maximization is done over utility functions that incorporate the delay requirements of incoming traffic classes and distributed algorithms are suggested for the solution of the optimization problem. However, they do not suggest how often and under which conditions the optimization problem should be solved. Therefore, allocation may remain static for large time periods which can lead to network under-utilization. Congestion management in a network where users have different delay requirements is studied in [16] as well. In addition, studies have been made that focus on using methodologies of “service overlay networks” to provide better end-to-end quality of service for requests in the network by provisioning bandwidth or selecting the best path through the network based on available bandwidth (see [17], [18]). In [19], the authors suggest a market-based model in which network nodes selfoptimize the utility of an autonomic overlay network. VIII. C ONCLUSION In this paper we proposed a distributed algorithm that optimally allocates resources in a service-oriented network. The algorithm is dynamically invoked when traffic intensities change; thus it is adaptive, scalable, and suitable for online implementation due to the reduced traffic overhead required for its operation. It also considers pricing and quality of service criteria of incoming services. Opportunities for future work include analysis and improvements in our algorithm’s convergence, and extensions towards finding optimum allocations in the case of vector of resources (e.g., bandwidth, CPU capacity, memory).

[1] R. D. Callaway, A. Rodriguez, M. Devetsikiotis, and G. Cuomo, “Challenges in Service-Oriented Networking,” in Proceedings of IEEE GLOBECOM, 2006. [2] M. G. Kallitsis, G. Michailidis, and M. Devetsikiotis, “Pricing and Measurement-Based Optimal Resource Allocation in Next Generation Network Services,” in Proceedings of the First IEEE Workshop on Enabling the Future Service-Oriented Internet, Washington, DC, USA, November 2007. [3] WebSphere DataPower SOA Appliances, IBM, 2008, http://www306.ibm.com/software/integration/datapower/. [4] P. Xu, G. Michailidis, and M. Devetsikiotis, “Profit-oriented resource allocation using online scheduling in flexible heterogeneous networks,” Telecommunication Systems, vol. 31, no. 2-3, pp. 289–303, 2006. [5] M. G. Kallitsis, G. Michailidis, and M. Devetsikiotis, “Pricing and Optimal Resource Allocation in Next Generation Network Services,” in Proceedings of IEEE Sarnoff Symposium, Princeton, NJ, USA, April 2007. [6] F. Kelly, A. Maulloo, and D. Tan, “Rate control in communication networks: shadow prices, proportional fairness and stability,” in Journal of the Operational Research Society, vol. 49, 1998. [7] J.-Y. L. Boudec and P. Thiran, Network Calculus. A Theory of Deterministic Queuing Systems for the Internet. Springer, 1998. [8] D. P. Palomar and M. Chiang, “A tutorial on decomposition methods for network utility maximization,” IEEE Journal on Selected Areas in Communications, vol. 24, no. 8, pp. 1439 – 1451, 2006. [9] D. Bertsekas, Nonlinear Programming. Athena Scientific, 2003. [10] J. M. Lucas, M. S. Saccucci, J. Robert V. Baxley, W. H. Woodall, H. D. Maragh, F. W. Faltin, G. J. Hahn, W. T. Tucker, J. S. Hunter, J. F. MacGregor, and T. J. Harris, “Exponentially weighted moving average control schemes: properties and enhancements,” Technometrics, vol. 32, no. 1, pp. 1–29, 1990. [11] Z. Xiao, L. Guo, and J. Tracey, “Understanding Instant Messaging Traffic Characteristics,” in Proceedings of IEEE ICDCS, Toronto, Canada, June 2007. [12] F. Clarke, E. Nahum, C. P. Wright, and Z. Xiao, “The Design, Implementation, and Validation of an Instant Messaging Workload Generator,” in Submitted to USENIX Annual Technical Conference, Boston, MA, USA, June 2008. [13] T. Wolf, “Service-centric end-to-end abstractions in next-generation networks,” in Proceedings of 15th IEEE International Conference on Computer Communications and Networks, Arlington, VA, Oct. 2006, pp. 79–86. [14] S. Kalyanasundaram, E. K. P. Chong, and N. B. Shroff, “Optimal resource allocation in multi-class networks with user-specified utility functions,” Comput. Networks, vol. 38, no. 5, pp. 613–630, 2002. [15] Y. Li, M. Chiang, and A. R. Calderbank, “Congestion control in networks with delay sensitive traffic,” in Proc. IEEE GLOBECOM, 2007. [16] S. Stidham, “Pricing and congestion management in a network with heterogeneous users,” in IEEE Transactions on Automatic Control, vol. 49, 2004. [17] Z. Li and P. Mohapatra, “QRON: Qos-aware routing in overlay networks,” IEEE Journal on Selected Areas in Communications, vol. 22, no. 1, pp. 29–40, 2004. [18] Z. Duan, Z.-L. Zhang, and Y. T. Hou, “Service overlay networks: Slas, qos, and bandwidth provisioning,” IEEE/ACM Trans. Netw., vol. 11, no. 6, pp. 870–883, 2003. [19] W. Wang and B. Li, “Market-based self-optimization for autonomic service overlay networks,” IEEE Journal on Selected Areas in Communications, vol. 23, no. 12, pp. 2320– 2332, 2005.

ACKNOWLEDGMENT The work of George Michailidis was supported in part by NSF grants CCR-0325571 and DMS-0505535. Michael Devetsikiotis is supported in part by IBM and by the Center for Advanced Computing and Communication. Robert Callaway is supported by a 2007-2008 IBM PhD Fellowship.

978-1-4244-2324-8/08/$25.00 © 2008 IEEE. This full text paper was peer reviewed at the direction of IEEE Communications Society subject matter experts for publication in the IEEE "GLOBECOM" 2008 proceedings.