Network Planning VITMM215
Markosz Maliosz
10/24/2016
2
Simulated Allocation Heuristics for MCMF
3 3
Simulated Allocation
Michał Pióro
Aiming at network planning, traffic engineering (multicommodity flow problems)
– with or without capacity limits
Initial state: empty network without traffic flows
Adding traffic flows step-by-step:
– Either allocate resources for a new flow
– Or release one or more flow resources
Not a greedy method: steps back with deletion of flows
4 4
Simulated Allocation Algorithm: Let state X the empty network Costmin := ∞ l := 0 /* step counter */ Repeat l := l+1 generate uniform random number: r [0,1[ if r < q(X) then reserve resources for a new flow else free resources of an already reserved flow if X is full solution (every flow has allocated resources) and Cost(X) < Costmin then Costmin := Cost(X) Xmin := X if X is full solution or Cost(X) > Costmin then free resources of many flows from state X until l ≤ lstop
5 5
Simulated Allocation
q(X) function:
– probability depends on state X
– To achieve convergence: q(X) > 0.5,
For rapid convergence q(X)1
It can be set according to the ratio of the partial solution
Features
– A partial solution must be also evaluated
– Steps back to a partial solution, building a new solution from the partial
6 6
Simulated Allocation
Subroutines:
Allocate: reserve resources for a not yet allocated flow by calculating the shortest path
Free: release resources allocated to a flow in the network
Bulk free:
– e.g. take an (or more) edge(s) and release all flow resources that have resources allocated on that edge (emptying an edge)
7
Joint Topology Planning and Path Selection
Joint Topology Planning and Path Selection
Cost model: linear separable cost
– fixed cost for provisioning a link (e) = βe
– traffic related cost is proportional to the load (flow value) (fe) on the link (e) = αefe
– if there is no traffic on a link, then that link can be eliminated from the topology
8
LP of Joint Topology Planning and Path Selection
9
A variation of MCMF – no capacity limits – provisioning cost for links: βe – cost is uniform among commodities (= traffic demands) : αe
Given: – Network: G = (N, E) – K source-destination node pair: (s1, t1), (s2, t2), …, (sK, tK) – Traffic demand (amount of commodity): dk, traffic from sk to tk
Variables: – xe
k : traffic flow value on link e by demand k xe
k ≥ 0
– ye : link e is part of the topology? ye binary, zero-one
ILP of Joint Topology Planning and Path Selection
10
Ee Ee
K
k
k
eeeexy
1
min
ikd
d
xxk
k
jiej ijej
k
e
k
e
,
otherwise ,0
ti if ,
si if ,
k
k
),(: ),(:
keMyxe
k
e ,
kexk
e , 0
eye
1,0
Minoux’s Greedy Method for Joint Topology Planning and Path Selection
For a given topology if the shortest path is selected between the source-destination pairs, then the cost of the network can be computed cost of the network only depends on the topology
It is even NP-hard, because of the number of possible topologies heuristics
Minoux’s Greedy Method – notation:
provisioning cost for links: βe cost is uniform among commodities (= traffic demands) : αe Network: G = (N, E) K source-destination node pair: (s1, t1), (s2, t2), …, (sK, tK) Traffic demand (amount of commodity): dk, traffic from sk to tk
fe : load on link e L: subset of E, the provisioned links
11
Minoux’s Greedy Method Initialization:
– n=0 : iteration counter – L(0)=E : all links are provisioned – f(0) : initial load on links, calculated with shortest path routing
Iteration: – For each link e=(i,j)L(n), such that fe(n)>0,
determine the length of the shortest path from i to j with link e removed from L (notation: p(L-e))
– compute Δe=p(L-e)fe (n)-(αefe(n)+ βe) this is the change in cost of rerouting the traffic from link e to the shortest
path, when link e is removed
– If there is link e such that Δe<0, the network can be improved then
– Let Δe=min{Δg : Δg<0, gL(n)} and L(n+1)=L(n)\{e} – For all gL(k) update the load – n=n+1 goto next itertaion
else STOP (Δe ≥ 0 for all eL(n))
12
Minoux’s Greedy Method Example
Initial state:
– topology: complete graph
– demands between all node-pairs
– shortest paths direct routing
– Total cost: 55
13
223
254
254
344
4
3
2
1
4321Traffic matrix: (Offered traffic)
Minoux’s Greedy Method Example
Iteration 1
– determine shortest path with link e removed
– calculate Δe
14
Minoux’s Greedy Method Example
Remove e=(1,3)
L(1)=L(0)\{(1,3)}
After updating the loads:
Cost can be calculated:
55 - 6 = 49
15
Minoux’s Greedy Method Example
Iteration 2:
– working on L(1)
– recalculate all Δe:
16
Minoux’s Greedy Method Example
Remove e=(2,4)
L(2)=L(1)\{(2,4)}
After updating the loads:
Cost can be calculated:
49 - 4 = 45
17
Minoux’s Greedy Method Example
Iteration 3: recalculate all Δe on network L(2)
Final solution:
Homework: Is this optimal? 18
Minoux’s Accelerated Greedy Method
It still requires a lot of shortest path computations in complete graphs
Observation: as the greedy algorithm proceeds, once the Δ value associated with some link has become positive, then (apart from rather infrequent cases) the Δ value of this link doesn’t take later on negative values again
at each step, only the Δ values that were negative up to now, need to be recomputed
Task: apply Minoux’s (accelerated) greedy method to the following problem
19
20
Virtual Private Network (VPN)
21
Virtual Private Network (VPN)
Important properties – Secure communication
– Closed user group
– Using the shared resources of a public network
Connects – Remote clients with their organization’s internal network
– LANs One organization with many remote offices – to have direct
communication network between them separated from the Internet
There are many different classifications, implementations, and uses for VPNs
22
Advantages of VPN
Simpler to build compared to physical network – Avoids the using of expensive owned or leased lines
– Rapid deployment
– Setup is by configuring devices
– Flexible
– Many different in parallel running VPNs can be configured over the same physical network
For end users the same experience as a physical private network – External traffic is not seen
– VPN traffic is not seen by others
23
VPN Traffic Models Pipe model
– Offered traffic between each VPN customer end-node pair
– Traffic matrix
Hose model
– Defined by the customers’ interface towards the network
– Aggregated input and output traffic of each VPN customer end-point – flexibility
N. G. Duffield, Pawan Goyal, Albert Greenberg, K. K. Ramakrishnan, and Jacoubs E. van der Merwe, "A flexible model for resource management
in virtual private networks," in Proceedings of SIGCOMM, Aug. 1999.
24
VPN Traffic Models
Hose modell is favorable for customers:
– Easier to define the input/output traffic by end-points
– Aggregates the traffic from/to all other VPN end-points
– Implementation can save bandwidth compared to traffic specified by the pipe model
On the other hand: implementation is much harder task for the VPN service provider
25
VPN Topology Planning
Given:
– Physical network topology
– Cost model: fixed link cost
– VPN end-points
26
VPN Topology Planning
VPN end-points: A, C, K 1. solution: full mesh
VPN topology – Direct paths between
end-point pairs: number of VPN edges is proportional to n2
– 3 tunnels: A-C, C-K, A-K – Routing:
Without internal routing: end-points send traffic into the tunnels according to the other end-point
27
VPN Topology Planning
2. solution:
– Star or Hub and Spoke topology
Number of VPN edges: n
One of the VPN end-points can be the hub too
Routing is required in the hub node
Hub
28
VPN Topology Planning
3. solution: – Steiner-tree (NP-hard problem)
Arbitrary intermediate nodes can work as redistribution nodes Find the minimum cost topology
Routing is required in these redistribution nodes
Heuristic methods – Heuristic 1
Find the minimum spanning tree in the physical topology
Remove the unnecessary edges
– Heuristic 2
Calculate the shortest paths between each VPN end-point pair in the physical network
Result is a full mesh network, i.e. complete graph
Find the minimum spanning tree in the complete graph
Reconstruct the paths in physical network according to the minimum spanning tree
29
Steiner tree Heuristic 2 – Example
VPN end-pints: a, c, i, k
http://www.dgp.toronto.edu/people/JamesStewart/270/9798s/Laffra/DijkstraApplet.html
30
Steiner tree Heuristic 2 – Example
Complete graph built from the shortest paths:
31
Steiner tree Heuristic 2 – Example
Minimum spanning tree on the complete graph:
32
Steiner tree Heuristic 2 – Example
Reconstruction of the paths in physical network according to the minimum spanning tree:
33
Review of Planning Methods Topology
– Tree Minimum spanning tree: Kruskal’s, Prim’s algorithm Minimum cost paths from a dedicated root: Dijkstra’s algorithm
– Ring Minimum cost ring = TSP: ILP, heuristics
– VPN virtual topology Full mesh Hub and spoke Steiner tree: 2 heuristics
Traffic Engineering – Flow problems
Shortest path: LP, Dijkstra’s algorithm Minimum cost single-commodity flow: LP Minimum cost multi-commodity flow:
– Splittable (branching) flows: LP – Unsplittable (single path) flows: ILP – Heuristics: e.g. simulated allocation
Joint topology planning and path selection – Linear separable cost: ILP, Minoux’s greedy algorithm
Network Dimensioning – Telephone network traffic modeling and dimensioning