topology design for service overlay networks with bandwidth guarantees sibelius vieira* jorg...
TRANSCRIPT
Topology Design for Service Overlay Networks with Bandwidth
Guarantees
Sibelius Vieira* Jorg Liebeherr**
*Department of Computer ScienceCatholic University of Goias, Brazil
**Department Computer ScienceUniversity of Virginia
Service Overlay Networks
Provisioning of end-to-end QoS across multiple autonomous systems (ASs) requires a level a cooperation that is difficult to achieve in the current architecture.
Service Overlay Networks can avoid these difficulties
We define a Provider Network as a value-added overlay network that supports end-to-end bandwidth guarantees to a collection of subscribers
Problem studied in this paper: Building a topology for a provider network
Endsystems and Provider Nodes
Internet
Endsystems ProviderNode
Sprint MCI Level 3
Transport LinkAccess Link
ProviderNode
UUNet
Level 3
MCI
Internet
Provider network = Provider nodes + Endsystems
Provider nodes and endsystems gain access to the Internet through ISPs
Provider network buys bandwidth from ISPs and sells bandwidth guarantees to endsystems
Provider nodes, endsystems and ISPs
ProviderNode 1
ProviderNode 2
ProviderNode 3
ProviderNode 4
ISP A ISP B ISP C
Endsystem 1 Endsystem 4Endsystem 3 Endsystem 6Endsystem 2 Endsystem 5
Two provider nodes and/or endsystems can establish a link between themselves if they have a common ISP
Access link
Transport link
Topology Design Problem
ProviderNode 1
ProviderNode 2
ProviderNode 3
ProviderNode 4
ISP A ISP B ISP C
Endsystem 1 Endsystem 4Endsystem 3 Endsystem 6Endsystem 2 Endsystem 5
Given the connectivity of endsystems, provider nodes, and ISPs Given the bandwidth requests between endsystems
How to construct a “good” topology ?
Solution to the topology of the provider network
ProviderNode 1
ProviderNode 2
ProviderNode 3
ProviderNode 4
ISP A ISP B ISP C
Endsystem 1 Endsystem 4Endsystem 3 Endsystem 6Endsystem 2 Endsystem 5
For each endsystem, select an ISP to connect endsystem to a provider node
Connect provider nodes, so that there are end-to-end paths for traffic between endsystems
Resulting topology:
ProviderNode 2
ProviderNode 3
ProviderNode 1
ProviderNode 4
Endsystem 3 Endsystem 2
Endsystem 1
Endsystem 4
ISP B
Endsystem 5
Endsystem 6
ISP B
ISP A
ISP A
ISP C
ISP CISP A
ISP CISP B
ISP B
Formal problem statement M Number of endsystems N Number of provider nodes
ESi Endsystem i PNj Provider node j αij Cost of reserving one Mbps from ESi to PNj, through
the ISP which provides the minimal cost (access cost) lij Cost of reserving one Mbps between PNi to PNj
through the ISP that provides the minimal cost of connecting the two provider nodes (transport cost)
ωij Required bandwidth from ESi to ESj Ωj Total bandwidth for traffic generated at ESj (Ωj = j
ωij).
Formal problem statement Each endsystem must be assigned to one provider node via
an access link Provider nodes must be connected by transport links Cost of a link is weighted by the traffic sent over the link
Total cost of network = Costs of the access links + transport links
Goal: Minimize total cost of network
Irrespective of the amount of traffic, traffic between two provider nodes is sent at lowest cost if it is sent on the least-cost path between the two provider nodes
Let rnm denote the least-cost path between PNn to PNm
Cost of the least-cost path per unit of reserved bandwidth from PNn to PNm is bnm = (ij) rnm lij .
Optimization problem
Let yij be a 0-1 decision variable that indicates if ESi is assigned to PNj
Solving the topology design problem requires:
Minimize
i k Ωi αik yik + i j kl yij ykl ωik bjl + jl Ωj αjl yjl
subject to j yij = 1 for i = 1,..,M
Ingress access costs
(from endsystems to
provider nodes)
Transport cost Egress access costs
(from provider nodes to
endsystems)
Each endsystem is
connected to one provider
node
Complexity
Minimize
i k Ωi αik yik + i j kl yij ykl ωik bjl + jl Ωj αjl yjl
subject to j yij = 1 for i = 1,..,M
Bad news: The optimization is a variant of the NP-hard quadratic assignment problem (QAP)
Good news: In some special cases, the problem can be much simplified Heuristics optimizations (e.g., simulated annealing) seem to
work well for this problem
The optimization problem can be expressed as an equivalent matrix-combination problem
Define: u(i) = j, iff yij = 1.
Then: u = (u(1),u(2), ..,u(M)) is assignment of endsystems to provider nodes.
We can write optimization as:
Minimize Z(u) = i j ωij (αiu(i) + bu(i)u(j) + αju(i))
Side conditions of the original problem are implicitly given via the definition of the u(i)´s.
Finding simpler solutions Special case
Choose v(i) such that αiv(i) = minj{αij}.
Consider the following conditions:(C1) bij ≤ bik + bkj for all i,j,k ≤ N.(C2) αij ≥ αiv(i) + bv(i)j for all i ≤ M and j, v(i) ≤ N.
Note: (C1) always holds by construction of the least-cost paths, and (C2) is satisfied if the cost structure is such that access costs outweigh transport costs.
Lemma 1. Under (C1) and (C2), Z(u) is minimized for the mapping u(i)=v(i)
Finding simpler solutions: Special case
Finding simpler solutions: Heuristic solutions
Without (C2), exact solutions can be obtained only for problems up to 30 endsystems and provider nodes
Here, heuristic optimizations are necessary
Simulated annealing has been shown to provide good results for QAP type problems.
See paper for details of the simulated annealing algorithm
Finding simpler solutions: Greedy Algorithm
Greedy assignment: assign endsystems to provider nodes with lowest access cost, i.e.,
yiv(i)=1 iff. αiv(i) = minj{αij}
When (C2) holds, greedy assignment yields the optimal solution The algorithm performs well when access costs dominate
transport costs
Finding simpler solutions: Clustering Cluster endsystems into groups (regions) and assign complete
regions to a provider node
Rules for clustering: Endsystems that are geographically close are likely to be assigned to the
same region Endsystems with higher traffic load are given more consideration when
regions are being formed
Use the k-means clustering algorithm to assign endsystems into regions: Input – M endsystems with position (ri,si) and traffic load
Ωi of each endsystem ESi and number of desired regions, R. Output – R cluster centers (centroids) and assignment of
each endsystem to each centroid.
Clustering Algorithm for Endsystems If Rk is the set of endsystems assigned to the kth centroid, the centroid
position is given by: rk = i: ESi є Rk ri. Ωi / i: ESi є Rk Ωi
sk = i: ESi є Sk si. Ωi / i: ESi є Sk Ωi
After establishing the new centroid position, re-associate each endsystem with a region by reassigning each endsystem to the closest centroid, until the algorithm converges.
Endsystem Centroid Region
Region 1
Region 2 Region 3
(c)(a) (b)
Numerical Evaluation Questions
How well do the heuristic algorithms perform? How does cost change with the number of provider nodes? What is the impact of the clustering algorithm?
Evaluation with random graphs Connectivity of provider nodes is determined by random
graph (using the GT-ITM, ‘Pure Random’ model) Each endsystem can access a randomly subset of pα·100%
of provider nodes Access costs = Uniform[5,50] Transport costs = Uniform[5,50] Traffic matrix = Uniform[10,20] Mbps
Evaluation of Simulated Annealing
Comparson with optimum solution for a small network (M = 9, N = 9)
Repetition factor (Repmax) controls the number of solutions evaluated by simulated annealing
Conclusion: Simulated annealing seems to work well
Repetition factor
(Repmax)
Average deviation
from minimum
(%)
Number of optimal
solutions found
(from 100)
10 6.59 % 1
20 4.44% 3
30 1.41% 4
40 0.02% 7
50 0.02% 9
Evaluation of Simulated Annealing
Enforce condition (C2) optimum solution can be computed for large networks
Here: Simulated annealing always gets close to optimum solution
Set: M = N10 20 30 40 50 60 70 80 90 1000
100
200
300
400
500
600
700
800
900
1000
Number of Provider Nodes
Rep
etiti
on F
acto
r
Value of “Repetition Factor” (Repmax) needed to get simualted annealing within 1% of optimal solution
Evaluation of Heuristic Algorithms General network (i.e.,do not assume (C2)) Number of endsystems and provider nodes: 10 to 100 Prob. of transport link between provider nodes: P = 0.1, 0.5,
0.9.
Comparison of: simulated annealing greedy algorithm random assignment
Evaluation of Heuristic Algorithms
10 20 30 40 50 60 70 80 90 1000.5
1
1.5
2
2.5
3
Number of Provider Nodes
Rel
ativ
e T
opol
ogy
Cos
t
Simulated AnnealingRandomGreedy
Plots show cost of network relative to “Greedy algorithm”
10 20 30 40 50 60 70 80 90 1000.5
1
1.5
2
2.5
3
Number of Provider Nodes
Rel
ativ
e T
opol
ogy
Cos
t
Simulated AnnealingRandomGreedy
P = 0.1 P = 0.5
Impact of the Number of Provider Nodes
Network with M = 100 endsystems and N= 10-100 provider nodes Solution method: Simulated annealing Costs normalized to network with N=10
10 20 30 40 50 60 70 80 90 1000.5
0.55
0.6
0.65
0.7
0.75
0.8
0.85
0.9
0.95
1
Number of Provider Nodes
Rel
ativ
e T
opol
ogy
Cos
t
P = 0.1P = 0.5P = 0.9
10 20 30 40 50 60 70 80 90 1000.5
0.55
0.6
0.65
0.7
0.75
0.8
0.85
0.9
0.95
1
Number of Provider Nodes
Rel
ativ
e T
opol
ogy
Cos
t
P = 0.1P = 0.5P = 0.9
p = 0.9 p = 0.5
Impact of Clustering
Network of M=100 endsystems and N= 10 provider nodes. Number of regions is 10 – 100 Solution method: Simulated annealing
10 20 30 40 50 60 70 80 90 1000.9
0.92
0.94
0.96
0.98
1
1.02
1.04
1.06
1.08
1.1
Number of Regions
Rel
ativ
e T
opol
ogy
Cos
t
Conclusions
Formaluated network topology design problem for a service overlay network with QoS guarantees
We showed that the general problem is NP-hard But when the underlying network satisfies certain
conditions, the problem has only linear complexit Developed and evaluated several heuristic methods
Caveat: Different cost structure may give different results and may require a different solution approach