optimal network flow allocation - stanford...

24
Optimal Network Flow Allocation EE 384Y Almir Mutapcic and Primoz Skraba 27/05/2004

Upload: others

Post on 19-Oct-2020

23 views

Category:

Documents


0 download

TRANSCRIPT

  • Optimal NetworkFlow Allocation

    EE 384YAlmir Mutapcic and Primoz Skraba27/05/2004

  • Problem StatementOptimal network flow allocation

    Find flow allocation which minimizes certain performance criterion

    Lowest average delay through the networkMinimize maximum link utilizationFair bandwidth allocation and QoS agreements

    Trade-off between optimality and simplicityDevise practical schemes with low computational complexity and guaranteed performance bounds

  • Motivation

    Internet backbone and PoPs are over-engineeredOvercome link failuresUnderutilized (multiple routes exist)

    Current ProtocolsTypically find shortest path(s)Do not directly minimize delay through PoPs

  • BackgroundIS-IS & OSPF

    Link-state routing protocolsLimited load balancingManually tuned to a few routes (traffic engineering)

    MPLSRe-labels packets in the internal network

    Previous workResource Allocation (minimize max link utilization)Routing Heuristics

  • Informal FormulationOptimal network flow allocation

    Decide how to distribute packets from a particular flow across the network links (x variables)Satisfy conservation laws

    Definition of a flowAggregate flow to each destination (sink) nodeEvery other node can be a source to the sink nodeSource-sink vector

  • Mathematical Formulation

    Convex cost function for each link iTotal link i traffic (x is flow’s traffic)Node-link incidence matrix – A Link capacity vector – C

  • Piece-wise Linear ApproximationGoal: Convert problem into LP

    Approximate convex function by K (PWL) segmentsEpigraph minimization (p variables)

  • Cost Function

    0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.90

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    Minimize delay over all links

    Delay for one linkM/M/1 queue delay

    A convex functionProblem

    Complex algorithms Slow convergence

  • PWL ApproximationHow to approximate?

    UniformMSEMin-Max

    0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.90

    1

    2

    3

    4

    5

    6

    7

    8

    Uniform s plit

    0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.90

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10Min-Max s plit

    0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.90

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10MS E s plit

  • PWL Optimization AlgorithmCentralized “one-shot” algorithm (K > 100)

    Computational intensiveVery accurate results for underutilized networks

    Centralized iterative algorithm (K < 10)Solve LP for the given K (start)Identify link segment k = 1,…,K* that contains traffic flowSplit marked link segment into K more segmentsUpdate LP constraints (slopes and intercepts)Repeat until stopping criteria satisfied

  • Algorithm SimulationExperimental Setup

    MATLAB linprog()Sprint IP backbone network topologyTraffic matrix

    Uniform trafficSparsity pattern

  • ResultsUniform traffic, unit capacities, (K = 2, 3, 5)

    1 2 3 4 5 6 7 860

    62

    64

    66

    68

    70

    72

    74objective value

    1 2 3 4 5 6 7 810

    -2

    10-1

    100

    101

    102

    optimality gap

  • Results

    1 2 3 4 5 6 7 80

    50

    100

    150

    200

    250total cumulative iterations

    Iterations (how many?)Stopping criteria

    Feasability10E-6

    ConvergenceAlways findsfeasible solution(if one exists)

  • More Results

    1 2 3 4 5 6 7 810-4

    10-3

    10-2

    10-1

    100optimality gap

    Gaussian traffic withsparsity pattern, unit C

    1 2 3 4 5 6 7 828.7

    28.8

    28.9

    29

    29.1

    29.2

    29.3

    29.4

    29.5

    29.6objective value

    1 2 3 4 5 6 7 80

    20

    40

    60

    80

    100

    120

    140

    160

    180

    200total cumulative iterations

  • Even More Results

    1 2 3 4 5 6 710

    -1

    100

    101

    102

    optimality gap

    Heavy Gaussian traffic with sparsity, random C

    1 2 3 4 5 6 760

    65

    70

    75

    80

    85objective value

    1 2 3 4 5 6 70

    20

    40

    60

    80

    100

    120

    140

    160

    180

    200total cumulative iterations

  • Traffic Distribution

    -3 -2 -1 0 1 2 3-3

    -2

    -1

    0

    1

    2

    3

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    14

    15

    16

    17

    18

    Total flow allocation

  • Computational ComplexityLP interior-point algorithms

    number of arithmetic operationsnumber of iterations

    M is number of variables + inequality constraintsFor our problem:

    M = LF + LK + LFor i iterations = iL(K+F+i/2+3/2)

  • Storage ComplexityMemory storage requirements

    F – FlowsL – LinksN – NodesK – number of segments

    (KLFN + N + KLF)α ≈ KLF(N + 1)αith iteration: (K + i)LF(N + 1)α

  • Distributed algorithmCentralized implementationEasily distributed (especially PWL approximation)Dual methods

    Subgradient ascentLagrangian relaxation

    Path augmentation approach

  • Protocol ImplementationRouting protocols

    MPLS-like labelingAt most M flowsM – Number of edge routers or PoPsDEST determines pi

    DEST IP PACKETp1

    p2

    p3

  • Edge RoutersFull look-up

    DEST – ID of edge router where packet leaves PoPIdentifies flows within PoP

    Congestion ControlAll congestion control can be done at the edgesDetect when traffic not admissible – not feasible

    Drop packets at edgeEstimate flows – recalculation at substantial changeShould not occur often – large aggregation of flows

  • ConclusionMost links underutilized (IP backbone)But still cannot guarantee performance (e.g. delay)Optimal network flow allocation could helpWe suggest a practical algorithm

    Converges to near optimal solutionsFew iterationsStandard LPCan make it distributed

    Special thanks to Yashar Ganjali for all his help!!

  • Questions?

  • PWL Approximation (1)Convert PWL problem into LP

    Optimal Network Flow AllocationProblem StatementMotivationBackgroundInformal FormulationMathematical FormulationPiece-wise Linear ApproximationCost FunctionPWL ApproximationPWL Optimization AlgorithmAlgorithm SimulationResultsResultsMore ResultsEven More ResultsTraffic DistributionComputational ComplexityStorage ComplexityDistributed algorithmProtocol ImplementationEdge RoutersConclusionPWL Approximation (1)