mathias fischer - svs.informatik.uni-hamburg.de › teaching › rn › slides › 03-1_netw… ·...
Post on 27-Jan-2021
0 Views
Preview:
TRANSCRIPT
-
1
Resilient Networks
3.1 Resilient Network Design - Intro
Prepared along: Michal Pioro and Deepankar Medhi - Routing, Flow, and Capacity
Design in Communication and Computer Networks, The Morgan Kaufmann Series in Networking, 800 pages, 2004
Mathias Fischer
-
2
Outline
Motivation
Introduction to Network Design Problems
– Traffic and Demand
– Network Design and Routing
– Multi-layer Networks
– Network Management
Notations and mathematical formulation
– Link-Path Formulation
– Link-Demand-Path-Identifier-based Notation
Some basic design problems
– Minimizing costs of network links
– Capacitated design problems
– Shortest path routing
Summary
-
3
A Network Analogy
FrankfurtMoscow
Peking
Kuala Lumpur
Sydney
San Francisco
NY
Sao Paolo
Johannesburg
• New links are expensive• Economies of scale
• Store and forward concept• Hop-by-Hop routing
-
4
Network Basics
Communication network carries traffic
Network has different links of different capacity (bandwidth)
– Economies of scale principle applies
Traffic may be routed via different paths to destination
– According to store-and-forward principle
– Hop-by-hop
We need to have enough bandwidth to carry all data
We might want to reduce the average packet traversal delay
-
5
Network Design Questions
Can we find better routes?
Where should we add more bandwidth?
Where and when should we add new nodes (and links) in the network?
How does the inherent property of a network technology or protocol can affect our decision making?
What level of abstraction is appropriate for a particular network for modeling purpose so that meaningful results can be obtained
How to design cost-effective, resilient core/backbone networks taking into consideration properties of the network? - How to do network design?
-
6
Routing in the Internet – Autonomous Systems
Internet consists out of connected Autonomous Systems (AS)
– Stub AS: small organization (one connection to the Internet)
– Multi-homed AS: large organization (several connections, no transit traffic)
– Transit AS: Provider (several connections , transit traffic)
The Internet today consists out of 44.000 AS
– Of different size
– AS Exchange data packets as
• Peers
• Provider AS and Customer AS
Each AS has a unique ID (number)
Each AS needs to know at least one route to any other AS
Bildquelle: caida.org
-
7
Communication Networks and Network Providers (1)
Packet sending in the Internet Involves series of different AS networks
Each network with own switches or routers
Packet routing depends completely on the specific network
Network design problems are confined within each network or administrative domain
AS 3AS 2AS 1
-
8
Communication Networks and Network Providers (2)
Layered (or Hierarchy of) Networks Private networks of large companies and corporations
Telecommunication network providers that operate transport or transmission networks
Different ISPs may use the same transport network
Multi-layer network environment
AS 1AS 2
AS 3
Transport
Provider 1
AS 5AS 4
Transport
Provider 2
-
9
Autonomous Systems in Germany
Bildquelle: Institut für Internet-Sicherheit, Fachhochschule Gelsenkirchen
-
10
Communication Networks and Network Providers (3)
Network providers Design and manage their networks
Need to know
– traffic demands in their networks
– Considering all network nodes, they need to know traffic volume between any two such nodes
Traffic volume matrix or demand volume matrix as input to network design required
-
11
Traffic and Demand (1)
Task of a network
– Route packets from one end to another,
– without considering the reliability of delivery
Reasons for lost packets
– Physical transmission errors
– Traffic congestion and routers running out of buffer space
Task of network designer (our task)
– Keep delay low
– Design networks to prevent or at least limit congestion at routers
-
12
Traffic and Demand (2)
What do we need for this? Prediction of traffic demand, e.g., via statistical approaches
Estimating traffic volume by capturing statistics about traffic arrival distribution
We need this information in between different network points
Necessary Measurements
– Average arrival rate of packets
– Average size of packets
– Both influence delay
-
13
Traffic and Demand (3)
Example: M/M/1 queuing system
Packet arrival follows Poisson process
Packet size is exponentially distributed
D average delay in seconds
λp average packet arrival in secondsμp average link service rateC link capacity per secondKp average packet size
Average delay increases drastically when average arrival rate is closer to average service rate of the link
-
14
Traffic and Demand (4)
What is the acceptable delay users would like to tolerate?
– If acceptable delay is 15 ms, then the acceptable average utilization can be no more than 64,5% on the link
Good News
– At least for purpose of network design maximum link utilization can be used as alternative criterion to the delay
However, traffic arrival does not follow Poisson process
– Realistic delay is worse than the calculated one
– In reality average utilization has to be kept lower, e.g., at 50% to achieve the 15 ms
-
15
Traffic and Demand (5)
We need to know whether observed utilization is higher than acceptable threshold for a particular link type
In single-link networks
– Measurement is easy
– Bandwidth can be easily added
In multi-link networks
– Utilization is further impacted by routing of traffic flows
– Adding bandwidth becomes complex network design problem
Lesson learned / What we need to solve network design problems
– Average arrival rate in between different nodes in the network
– Traffic demand volume as input for all network design problems
-
16
Network Design and Routing (1)
In reality we have many source-destination (egress-ingress) traffic demands between various points in the network
Traffic-demand matrix required
as input to network design
Goal: Determine a network with enough capacity and connectivity to route traffic, so that acceptable service guarantees can be provided
– In single-link networks it is sufficient to determine link utilization threshold for given traffic demand
– However, this is not the case in multi-link networks anymore
-
17
Network Design and Routing (2)
Role of network design Distinction between (usually continuous) Demand Volume Units (DVU) and
(usually discrete) Link Capacity Units (LCU)
Three node network with traffic demand of 300Kbps between each node
– QoS goal: utilization threshold below 60%
– Three T1 links (LCU: each 1.54 Mbps) 300 Kbps/1.54Mbps ≈ 19,5%
– Two T1 links (2-1, 1-3)(300 +300)Kbps / 1.54 Mbps ≈ 39%
Network design also depends on routing capabilities
1
2 3
300 Kbps
300 Kbps
300 Kbps
1
2 3
300 Kbps
300 Kbps
300 Kbps
-
18
Network Design and Routing (3)
Some Definitions
Candidate path list: All possible paths between two points
Route: Particular path chosen as valid path by network design
Flow: The amount of traffic associated with a route
-
19
Multi-layer Networks (1)
End-system
Layer 5
Layer 4
Layer 3
Application Layer
Transport Layer
Network Layer
Layer 2
Layer 1
Data Link Layer
Physical Layer
IP
OpenFlow / MPLS / …
End-system
Layer 5
Layer 4
Layer 3
Application Layer
Transport Layer
Network Layer
Layer 2
Layer 1
Data Link Layer
Physical Layer
Optical Networks
UDP / TCP
SMTP/ POP3 / IMAP/ HTTP / …
Traffic networks• Aka service level• Traffic arrival
stochastic in nature• Has switching / routing
capabilities
Transport networks• service level traffic as
demand input• High-data rate services that
are required to be set up at permanent or semi-permanent basis
• Traffic deterministic or precise in nature over time
Ethernet / GMPLS
OC-1 / OC-3 / OC-48 / T-1 / …
-
20
Multi-layer Networks (2)
The architecture of communication networks A network (or layer) on top another
A network may look logically diverse, but may not be diverse in another layer
Implications in protection and restoration design (network resilience)due to inter-relation between layers
Multi-layer network design as important problem to consider
-
21
Multi-layer Networks (3) - Traffic and Demand
Traffic, Demand, and layered Networks Output bandwidth requirement for each Internet, telephone, and private-
line service from service networks, is input demand to layer beneath
Capacity requirement of one network becomes traffic demand volume for network below
-
22
Network Management Cycle (1)
Network management is the entire process from planning a network, to deploying it, and to operate it on a day-to-day basis.
Requires network management systems and protocols
Different management tasks run at different time granularity
-
23
Network Management Cycle (2)
Packet Discarding,Buffer Management,
Packet Routing
TCP Feedback control
Call Routing,Call Setup,
Call Admission Control,Call Rerouting, Routing,
Information Update
Traffic EngineeringOSPF weight updatesTrunk Rearrangement
PeriodicTraffic Estimation
Traffic NetworkCapacity Expansion
SONET / SDHring restoration
Mesh TransportNetwork Restoration
Transport NetworkRouting/Loading
Transport NetworkCapacity
Planning / Expansion
Micro-secs
Mili-secs
Secs
Minutes
Hours
Days
Weeks
Months
Year(s)
Traffic Network Transport Network
-
24
Network Management Cycle (3) – Traffic Networks
Traffic
Network
(IP)
Real-Time Traffic Management
Capacity Management
Traffic Engineering
Network Planning
variouscontrols
secs-mins
days-weeks
months-years
routingupdate
capacitychange
Traffic data
Forecast adjustment
Marketing input
Network Management
-
25
Network Management Cycle (3) – Transport Networks
Transport
Network
Near Real-Time Management
Capacity Management
Traffic Engineering
Network Planning
restoration
mins-hours
days-weeks
months-years
routeloading
Capacity expansion/protection
Network fill factor, loading
New Transport
Demand,
Marketing Input
Network Management
-
26
Notation for Network Design Problems
Network Design Problems Can be formally specified using mathematical notations
Representation of specific design problems in compact way
Eventually helps to understand the problem at hand
Eventually helps to solve the problem
Notations for Network Design Problems
Link-Path Formulation
Link-Demand-Path-Identifier-based Formulation
-
27
Link-Path Formulation (1)
Three node network example
– Demand volume hij in between nodes i and j
– Example demand
Each demand volume between two nodes can be routed over two paths
3
21
21
3
1
3
21
3
21
3
23
21
Path 1-2
Path 1-3
Path 1-3-2Path 1-2-3 Path 2-1-3
Path 2-3
-
28
Link-Path Formulation (2)
Demand between nodes 1 and 2 can be routed via direct link 1-2 and via alternate route 1-3-2
– Demand path flows 𝑥^ are non-negative, i.e., 𝑥^ > 0 for all paths
Link capacities 𝑐12^ , 𝑐13
^ , 𝑐13^
– Assumption, capacity of first twolinks is 10 and the third is 15
3
21
-
29
Link-Path Formulation (3)
System of linear equations and inequalities (constraints)
ො𝑥 are unknowns for all three considered demands
System has multiple solutions and defines set of feasible solutions
But which solution is of interest?
-
30
Link-Path Formulation (4)
Different goals/objectives possible
– Minimizing total routing costs
– Minimizing congestion of most congested link
– ...
In mathematical way, goals are expressed as objective functions that needs to be either minimized or maximized
Example: Minimizing total routing costs
– cost of routing one unit of flow on every link along a path is simply 1
– Resulting objective function F:
3
21
-
31
Link-Path Formulation (5)
Routing minimization problem
Capacity Constraints
Demand Volume
Constraints
Objective Function
-
32
Link-Path Formulation (6) – Routing Minimization
Routing minimization problem
Multi-Commodity Flow Problem
– Multiple demands (or commodities)
– Need to be routed in a network simultaneously
– Compete for resources
Optimization Context: Linear Programming Problem
– All constraints are linear
– The objective function is linear
-
33
Link-Path Formulation (7) – Routing Minimization
Optimal solution for demand
Required: feasible solution for decision variables ( ො𝑥) that minimize F
Common sense solution– Route everything on direct (cheapest) path, other x-variables are zero
Total optimal cost F*=20
3
21
-
34
Link-Path Formulation (8) – Routing Minimization
However
Optimal solution may not be unique
Not in all cases a solution is that simple to obtain
Constraints
– Need to be satisfied by optimal solution
– Especially link capacity constraints need not be violated
3
21
-
35
Link-Path Formulation (9) – Routing Minimization
Let‘s change the objective function From
To
For demand
Solution not that easy anymore
– Cheapest path routing violates capacity constraints of link 1-3
– We are happy to announce a solution with total cost F*=25
3
21
-
36
Link-Path Formulation (10) – Routing Minimization
Lessons learned from Routing Minimization Problem
Changing objective function affects
– optimal solution to a problem
– and the way of finding it
Carefully selection of right objective function (or goal) for particular network required,
– Otherwise obtained solution might not be meaningful
-
37
Link-Path Formulation (11) – Pros and Cons
All demands and paths easy to follow from node-reference point of view
Works well for three-node example but not in general case
Drawbacks
– Paths may contain many intermediate nodes
– Flow variables have indices of different length
– Some node pairs might not have any demand
– Not all nodes directly connected
Link-Path Formulation insufficient for Multi-Commodity-Flow Problems
-
38
Link-Path Formulation (12) – Pros and Cons
More Problems
When network gets larger the indices grow as well: Xi-m-...-n-j No easy way to represent multiple-paths
– For specific demand pair when each path may go through different number of intermediate nodes
Not all paths might be acceptable
– For example, due to the distance between the nodes
– This requires additional exceptions for paths not used
Notation cannot handle more than one link between two nodes, e.g., multi-graph case
Multiple demands between nodes cannot be handled
Not possible to write summations over paths
-
39
Link-Demand-Path-Identifier-based Notation (1)
Compact, allows to list only necessary objects
Non-zero demand pairs with indices from 1 to their total number
Total number of demands D, index d (D=3, d=1,2,3)
Links are assigned labels from 1 to total number of links
Total number of links E, index e(E=3, e=1,2,3) 3
21
-
40
Link-Demand-Path-Identifier-based Notation (2)
Mapping for demand volumes h and link capacities c
Path identifiers (path-flow variables) 𝑥𝑑𝑝– Demand-pair identifier d used as first subscript
– Path label p for demand pair as second subscript
• Candidate paths for demand pair numbered from 1 to total number
• Total number of candidate paths for demand 𝑑 will be denoted 𝑃𝑑• Paths are labeled with index 𝑝
-
41
Link-Demand-Path-Identifier-based Notation (3)
Example Demand between nodes 1 and 2 identified by label d = 1 (first subscript)
has two candidate paths (𝑃1 = 2)
Paths 1-2 and 1-3-2 are labeled with p=1,2 (second subscript)
Paths are identified as (1,1) and (1,2)
Path-flow variables
3
21
-
42
Link-Demand-Path-Identifier-based Notation (4)
Mapping of path identifiers and paths from:node-identifier-based notation to link-demand-path-identifier-based notation
Node-identifier-based Link-demand-path-identifier-b.
Path identifier Path Path identifier Path
132 1-3-2 12 {2,3}
213 2-1-3 32 {1,2}
23 2-3 31 {3}
-
43
Link-Demand-Path-Identifier-based Notation (5)
Routing Minimization Problem in Link-Demand-Path-Identifier-based Notation
-
44
Link-Demand-Path-Identifier-based Notation (6)
Comparison
Link-path formulation Link-demand-path-identifier-based
-
45
Link-Demand-Path-Identifier-based Notation (7)
Notation Summary
-
46
DP: Minimizing Costs of Network Links (1)
Minimizing costs of networks links Minimizing total link capacity cost
required to carry given demand
Assuming not a fixed, but variable capacity 𝑦𝑒 of links
Dimensioning Problem (DP):Determine
– required demand flows
– and link capacities
– to carry givendemand volumes
4
31
2
2
31Demand
Network
-
47
DP: Minimizing Costs of Network Links (2)
4-node example network Four nodes with routable demands
Node 4 is only transit node
𝜉𝑒 as costs for sending one unit via link e
Demands:
– d=1, only one path P11={2,4} allowed
– d=2, paths P21={5}, P22={3,4}
– d=3, paths P31={1}, P32={2,3}
Demand constraints
4
31
2
2
31Demand
Network
-
48
DP: Minimizing Costs of Network Links (3)
Demand constrains in general form
– Vector of flows assigned to demand d:
Hence, we can write
In summation notation
Flow allocation vector x
-
49
DP: Minimizing Costs of Network Links (4)
Capacity constraints
– Assures that for each link e its capacity ce (or ye, if capacity is a variable) is not exceeded by the flows using the link
Sum on left side are link loads ye(total flow through that link)
-
50
DP: Minimizing Costs of Network Links (5)
To write down link loads in compact manner we need to know relationships between links and paths
Formally defined via link-path incidence coefficients
In more compact manner via coefficient δ𝑒𝑑𝑝:
e\ Pdp P11={2,4} P21={5} P22={3,4} P31={1} P32={2,3}
1 0 0 0 1 0
2 1 0 0 0 1
3 0 0 1 0 1
4 1 0 1 0 0
5 0 1 0 0 0
4
31
2
2
31
-
51
DP: Minimizing Costs of Network Links (6)
Link load ye on link e in compact manner
Summation over all paths
appearing in routing listsof all demands, over allcombinations (d,p)
-
52
DP: Minimizing Costs of Network Links (7)
Minimizing capacity costs, objective function
– 𝜉𝑒 as costs for sending one unit via link e
-
53
DP: Minimizing Costs of Network Links (8)
DP: Minimizing capacity costs
4
31
2
2
31Demand
Network
-
54
DP: Minimizing Costs of Network Links (10)
Optimal solution for DP Feasible solution (x,y) with y1(x)=y1=5, y2(x)=y2=20, y3(x)=y3=10,y4(x)=y4=20, y5(x)=y5=15, and
thus y = (y1, y2, y3, y4, y5) = (5,20,10,20,15) has
total cost F=115
However, solution not optimal,because of usage of P22 with costsζ22= ξ3 + ξ4 = 1 + 3 = 4
Other possible path P21 has costs ζ21= ξ5= 1
Cost of path Pdp is given by:
4
31
2
2
31Demand
Network
-
55
DP: Minimizing Costs of Network Links (11)
Optimal solution to DP
In example we need to move all the flow for demand d=2 from path P22 to path P21, which gives savings of (ζ22- ζ21) = 3 per flow unit, in our case the total savings are x22(ζ22- ζ21) = 15
d=1: x*11= 15
d=2: x*21= 20, x*
22= 0
d=3: x*31= a, x*
32= 10-a, for any 0 ≤ a ≤ 10
y*1 = 10 –a, y*
2 = 15 + a, y*3 = a, y
*4 = 15, y
*5 = 20
F*=100 4
31
2
2
31Demand
Network
-
56
DP: Minimizing Costs of Network Links (12)
Shortest Path allocation rule:
For each demand allocate entire demand volume to its shortest path (w.r.t. to link unit costs and candidate paths)
If there is more than one shortest path for a demand then demand volume can be split among shortest paths arbitrarily
Works well for dimensioning problems, but no general solution approach for other multi-commodity flow problems, e.g.,
– Restriction to non-bifurcated flows
– Modular design problems: in real networks capacities can be installed only in modular units (e.g., T1, E1, OC-3)
-
57
DP: Minimizing Costs of Network Links (13)
The observed DP is an uncapacitated design problem
Another type of problem are capacitated design problems
– Link capacities ce given instead of variable ye– Find a feasible flow allocation that satisfies demand and capacity
constraints with ce appearing on the right-hand sides
– In such scenario there might not be an objective function, except flow routing cost minimization is required
– Capacitated problem in compact form
-
58
Capacitated Design Problems (1)
4-Node Network Example
Capacity vector 𝒄 = 𝑐1, 𝑐2, 𝑐3, 𝑐4, 𝑐5 = (5,10,10,5,30)
Additional path for d=1: P13 = {1,3,4}
All solutions are necessarily bifurcated
Possible solution:
Note that d=1 also uses path 𝑃13, its longest path
When non-bifurcated solutions are required, additional constraints necessary to force single-path solution
4
31
2
2
31Demand
Network
𝑃11
𝑃22
𝑃21
𝑃32𝑃31
𝑃13
-
59
Shortest Path Routing (1)
Shortest path routing, e.g., OSPF routing in IP networks
Shortest paths are
– essential for network design,
– pre-requisite for resilient network design
For each d all volume ℎ𝑑 realized on shortest path w.r.t. to
– given link weight system 𝑤 = 𝑤1, 𝑤2, … , 𝑤𝐸– and link weight cost we for link e
Path selection based on additive calculation of link weights
Flow allocation vector x(w), thus flow allocation dictated by link weights w
Shortest-path routing and term shortest-path allocation are not the same!
-
60
Shortest Path Routing (2)
Modified 4-Node Network Example
Capacity vector
– 𝒄 = 𝑐1, 𝑐2, 𝑐3, 𝑐4, 𝑐5 = (5,10,10,5,30)
Additional paths for d=1:
– P12 = {1,5}
– P13 = {1,3,4}
4
31
2
2
31Demand
Network
𝑃11
𝑃22
𝑃21
𝑃32 𝑃31
𝑃12
𝑃13
-
61
Shortest Path Routing (3)
4-Node Network Example Link weight system 𝒘 = (1,3,1,2,4)
Solution
Rest of flow variables are 0
Shortest paths are unique for each demand pair → flow allocation vector 𝒙(𝑤)
is also unique
4
31
2
2
31Demand
Network
𝑤4 = 2
𝑤2 = 3
𝑤3 = 1
𝑤1 = 1
𝑤5 = 4
-
62
Shortest Path Routing (4)
4-Node Network Example However, flow allocation not feasible for capacity vector 𝒄=(5,10,10,5,30)
Link loads resulting from allocation vector 𝒙(𝒘) would be y(w) = (y1,y2,y3,y4,y5) = (25,0,35,35,0)
Solution violates capacity constraints!
Changing link capacity so that c = y(w): shortest path allocation w.r.t. to w becomes (trivially) feasible again
-
63
Shortest Path Routing (5)
Single shortest-path allocation problemFor given link capacities c and demand volumes h, find a link weight system w such that the resulting shortest paths are unique and the resulting flow allocation vector 𝒙(𝒘) is feasible, i.e., such that 𝒙(𝒘) satisfies
Three reasons for complexity of the problem
A non-bifurcated (single-path) feasible flow allocation may not exist, while bifurcated feasible flow allocations may exist
Even if single-path solution exists, in most cases it can be hard to determine
Even if we find single-path flow solution, the weight system to induce it may not exist
-
64
Shortest Path Routing (6)
Infeasible unique shortest path case
Two demands
– d=1 between nodes 1 and 7
– d=2 between nodes 2 and 6
– ℎ1 = ℎ2 = 1, ce ≡ 1(∀𝑒 ∈ 𝐸)
Two paths per demand
– d=1: 𝑃11:1-3-5-7, 𝑃12: 1-3-4-5-7
– d=2: 𝑃21:2-3-4-5-6, 𝑃22: 2-3-5-6
Allocating flows d=1: 𝑥11=1, d=2: 𝑥21=1
No link weight system that induces single shortest path solution!
1
3
5
7
6
4
2
-
65
Shortest Path Routing (7)
4-Node Example Considering weight system w=(1,1,1,1,1), which
is shortest path routing w.r.t. hop count
d=1: there are two shortest paths
– 𝑃11 = 2,4 , 𝑃12 = {1,5}
Which path has to be used for traffic?
– In OSPF: Equal Cost MultiPath (ECMP) rule
– Split all outgoing demands at a node among its outgoing links that are on shortest paths to destination
4
31
2
2
31Demand
Network
𝑤4 =1
𝑤2 =1
𝑤3 = 1
𝑤1 = 1
𝑤5 =1
𝑃11𝑃12
-
66
Shortest Path Routing (8)
Infeasible unique shortest path case
Two demands: d=1, d=2, ℎ1 = ℎ2 = 1, ce ≡ 1(∀𝑒 ∈ 𝐸)
Paths: 𝑃11:1-3-5-7, 𝑃12: 1-3-4-5-7 , 𝑃21:2-3-4-5-6, 𝑃22: 2-3-5-6
Solution: assign link weight 2 to all links except to links 2-3 and 4-5 that obtain weight 1
Result is feasible solution under ECMP rule
1
3
5
7
6
4
2
w=2
w=2
w=2 w=2
w=2
w=1
w=1
-
67
Additional Network Design Problems
Fair Networks
– Demand is elastic and can consume any bandwidth assigned to its path, e.g., within certain predefined bounds (lower and upper bound for demand)
– Capacity constraints should not be violated
– Network needs to carry more than lower bound for each demand volume to maintain fairness, e.g., Max-Min-Fairness or Proportional Fairness criterion
Topological Design
– Cost function takes into account not only capacity-dependent costs of links 𝜉𝑒, but also link installation costs 𝜅𝑒
– Additional binary variable 𝑢𝑒 that indicates if link is installed or not
– Problem similar to uncapacitated design problem with modular links
-
68
Summary
Network design as generic problem in multitude of areas
Traffic and demand as input to network design
Networks have multiple layers
Network management based on multitude of different systems and protocols
Right notation makes a lot of problems way easier
– Even when it seems to be more complicated on first sight
– Even when you do not believe me yet ;)
Network design problems covered
– Capacitated vs. uncapacitated problems
• Minimizing costs of networks links
– Shortest path routing
top related