QoS Routing with Performance- Dependent Costs Funda Ergun ;Rakesh Sinha ;Lisa Zhang INFOCOM 2000.Nineteenth Annual Joint Conference of the IEEE Computer and Communications Societies.Proceedings.IEEE Volume:1,2000,Page(s):137~146 vol.1
Outline Introduction Preliminaries Polynomial-time approximation Heuristics for partition Conclusion
Abstract Present approximation algorithms guarantee to produce solutions that are within 1+ of the optimal The running times are polynomial in the input size and 1/ Present good approximations algorithms and heuristics which apply to general cost functions
Introduction Today ’ s Internet deploys best effort routing without any assurance of service quality Future Internet will support various QoS classes,and each class has its own set of service guarantee and associated costs Packets will be given higher priority with aim of satisfying performance requirements Stringent requirements should be charged a higher fee
Introduction(cont.) QoS routing is to identify a routing path based on an application ’ s Qos requirements and resource avalilability QoS requirements are specified either as Set of path constraints Set of link constraints A feasible path is a path with sufficient resources to satisfy QoS requirements Optimal criteria narrow the selection among feasible paths
Introduction(cont.) This paper considers a model in which an application is charged a per link price depending on delay guarantee requested Service provider provides multiple service classes with different price
Problems A network with n nodes and m links Each link has a cost function c e (d) to represent cost incurred by delay d on link e Given source s and destination t,and end-to- end delay constraint D needs to be satisfied There are following two problems: Constrained minimum cost path (PATH) Constrained minimum cost partition (PARTITION)
Problems(cont.) PATH problem Chose an s-t path and minimize sum of link costs along the path subject to delay constraint D PARTITION problem s-t path is already chosen Determine delay to be imposed on every link along path such that cost is minimized subject to the end-to-end delay constraint D
Preliminaries Network N has n nodes and m links Given an s-t path P, let p be the number of links on the path Each link has associated cost function c e (d), and it is non-increasing Work with integral delays and costs Use d e (c) to denote the “inverse” of c e (d) and it returns smallest delay that incurs cost at most c
Preliminaries(cont.) Given link e and delay d,we can retrieve cost c e (d) in constant time Given link e and cost c,we can compute delay in logD time using binary search OPT denote the cost of the optimal s-t path subject to the delay constraint C denote the maximum possible cost on any link,i.e. C=max e c e (1)
Polynomial-time approximation Approximation algorithms for PATH and PARTITION are based on approximation algorithm for RSP RSP is a restricted version of PATH with each link has fixed cost and delay Theorem 1:the result is given by Hassin RSP has an -approximation algorithm with running time O( mnloglog U) U is upper bound of OPT
Polynomial-time approximation Theorem 2: PATH has an -approximation algorithm with running time O(X mnloglog U),where X =min{D, +logD, +logD} Theorem 3: PARTITION has an -approximation algorithm with running time O(X p 2 loglog U),where X=min{ D, +logD, +logD }
Algorithm 1 Derive from approximation algorithm for RSP Transform network N(for PATH) into a network N 1 (for RSP) such that optimal RSP solution is equivalent to optimal PATH solution Replace each link e of N by D links e 1, …,e D Each link e i has cost c ei (i) with delay i Apply Hassin’s approximation algorithm for RSP to N 1 Map resulting s-t path to a path in N Replace link e i with link e with delay i and cost c e (i)
Algorithm 1(cont.) Running time includes two components: Time of creating N 1 Time of applying approximation algorithm for RSP Time for creating N 1 is mD Time for running Hassin’s algorithm is O( D mnloglog U) Lemma: Algorithm 1 is an -approximation of PATH with running time O(mD+D mnloglog U)
Algorithm 2 Key idea of to achieve weaker guarantee with far fewer links transformation Goal of algorithm 1 is to capture all possible choices of cost and delay assignments Subdivide range of cost [1,c e (1)] into sub-ranges and pick one representative from each sub-range Reduce the linear “ blow-up ” to logarithmic “ blow- up ” Disadvantage is the approximation
Algorithm 2(cont.) Precise description: Consider a link e in N Each semi-open sub-range:, Find minimum delay d i that incurs a cost within above range,and create a link in N 2 with delay d i and c e (d i )
Transformation example
Algorithm 2(cont.) Each link in N is replaced by links Creating N 2 requires at most m and computations of d e (.) function,resulting in running time Lemma Algorithm 2 is an - approximation of PATH with running time
Algorithm 3 High-level idea Use TEST procedure to determine whether OPT is greater than some given value V Then start with some upper bound U and use EXACT procedure for exact value of OPT TEST procedure will determine whether OPT V or OPT (1+ )V Maintain a range,[L,(1+ )U],for OPT To approximate OPT,we repeatedly narrow the gap
An Exact solution Let g v (c) be the minimum delay from s to v with total cost c Minimum delay path s-v goes through some intermediate node u Obtain g v (c) by minimizing all possible intermediate nodes u and all possible costs b<c OPT is the smallest cost of an s-t path with delay at most D g t (OPT) D and for any c D The smallest c such that g t (c) D is equal to OPT
An Exact solution(cont.)
Running time for one iteration is O(mlogD+mc) For loop has OPT iterations,so overall running time is O( mOPT logD+mOPT 2 )
The TEST procedure Approximately determine if a given value is greater than OPT TEST resembles EXACT,except: Costs c e (d) are scaled down by a factor V / n For loop is executed for c=1,2, …, If a path of delay at most D is found for some c,TEST outputs OPT (1+ )V Scaled down cost and its inverse are denoted by and
The TEST procedure(cont.) running time is
The Approximation algorithm Total running time is
Heuristics for PARTITION Greedy algorithms One unit of delay is initially assigned to each link along path P One unit of delay is added to the link that causes largest reduction in total cost
Greedy algorithm(cont.)
Heuristics Greedy algorithm always makes locally optimal choice For non-convex functions,make some locally non-optimal choices to reach globally optimal Two heuristics: Greedy heuristic with Rollback Continues adding delay to one link Variable Step Size Heuristic Adding delay in chunks of various sizes
Greedy Heuristic with Rollback Proceeds greedily by always adding one unit of delay to the link that offers largest cost reduction If cost reduction(g) due to current delay is greater than previous reduction,checks every link and performs a rollback Rollback consists of removing delay units from each link until a unit reach a unit whose reduction was at least g
Greedy Heuristic with Rollback
Variable step size heuristic Allow allocation of delay in sizes greater than single unit during a iteration Pick best link and best delay increment Motivation If a curve offers large per delay cost reduction,we are not stuck in earlier part of that curve Has additional advantage of making the heuristic run faster Two variants Delay allocations are all possible powers of 2 All possible delay allocation between 1 and D
Variable step size heuristic(cont.)
Simulation results Experiments are run on a path of 30 links with D=250 Each group of experiments aims to test cost functions with different shapes Earlier groups tend to have more alternating convex/concave regions Actual cost functions are generated randomly Each number in table shows percentage error for corresponding heuristic Difference between initial cost and optimal cost
Simulation results(cont.)
Conclusion Present polynomial-time -approximations for PATH and PARTITION problems with general cost functions Applying results to more complicated structures such as multicast trees is left for future research