L12. Network optimization
E N D
Presentation Transcript
L12. Network optimization D. Moltchanov, TUT, Fall 2017 D. Moltchanov, TUT, Spring 2008
Analysis vs. dimensioning • Forward task • Analyze system • What is the delay, packet loss, throughput, given • Link rate • Buffer space • Routing matrix • Specific protocols • Inverse task • Optimize system • What link rates, buffer space, routing weights, given • Arriving traffic • Packet loss rate • Delay
Example: buffer dimensioning • We have output-queuing router • Question: how much buffer is needed at port j • We know internal routing, pij, i=1,2,..,N, j=1,2,…,M • We know arrival traffic on all the links, λi, i=1,2,…,N • We know outgoing rates, Cj, j=1,2,…,M
Example: buffer dimensioning • We may consider port j in isolation • M/M/1 is a good model • Performance metric: mean delay • Mean delay for M/M/1 is given by (recalling that ρ= λ/µ) • where µ is the average service rate • where E[P] is the average packet size
Example: buffer dimensioning Performance response Could analyze M/M/1/K estimating loss But… how do we know arriving traffic, link rates, routing?
Example: buffer dimensioning • Let’s revisit our assumptions… • We know outgoing rates, Cj, j=1,2,…,M??? • We only know it when the network is already planned and installed • Should there be a link between two routers? • If yes, what should be its rate? • We know internal routing, pij, i=1,2,..,N, j=1,2,…,M??? • Only if someone already assigned weights to OSPF (or IS-IS) • Internal routing = generic OSPF view of the network • We know arrival traffic on all the links , λi, i=1,2,…,N??? • If traffic demands are known… • Who is going to do this for us?
Generic solution • Formulate constraints • Capacity constraints • Demand constraints • Specific constraints of protocols/algorithms • Write down objective function • Maximize network throughput • Minimize network cost • Minimize network delay • Solve using optimization techniques • Classify • Solve using well-known methods
Optimization problems • Depends on the nature of involved variables • Linear programming • Simplex algorithm • Interior point algorithm • Convex programming • Linearization • Method of Lagrange multipliers • Method of gradients • Integer programming • Continuitization • Branch-and-cut/branch-and-bound algorithms • Heuristic methods, e.g., genetic algorithms
Problems • Dimensioning problems: minimize network cost given • Set of demands • Each can be routed over different paths • Shortest-path routing: two problems • Given link weights find shortest paths • Given a network with links find the optimal weights • Fair network problem: given greedy traffic • Allocate available resources among demands • Topological design: minimize network cost given • Set of demands • Cost of links (no links are given) • Restoration design: optimize network given • Possible failures • Multi-layer networks
Toy example • Link-demand-path-identifier-basedformalization • Compact • Allows to list only necessary objects • Good for moderate-to-large networks • Seem strange for small networks at the first glance though… • 1. Start with demands • Enumerate from 1 to D • Only those that are non-zero • Three nodes example • Demand (1->2): demand ID 1 • Demand (1->3): demand ID 2 • Demand (2->3): demand ID 3 • We have d=1,2,3 demands • In general: d=1,2,..,D demands
Toy example • 2. Continue with links • Enumerate from 1 to E • Only those that exist • Three nodes example • Link 1->2: link ID 1 • Link 1->3: link ID 2 • Link 2->3: link ID 3 • We have e=1,2,3 links • In general e=1,2,…,E links • Can perform mapping of • Demand volumes • Link capacities
Toy example • 3. Continue with candidate paths for demand • There could be more than one • Enumerate from 1 to Pd for demand d • Note!paths have to be found prior to the solution of the task • Example: demand pair (1->2) ID 1 • There exist two paths, P1= 2 • These are 1-2, 1-3-2 • Path 1-2: path ID 1 • Path 1-3-2: path ID 2
Toy example • Finish with path-flow variables • Demand ID: first index • Path ID for demand: second index
Toy example • The allocation task now reads as • Minimize routing cost (routing over each link costs 1 unit) • subject to demands constraints • and capacity constraints • and positivity constraints