Data Networks 5'3, 5'4 - PowerPoint PPT Presentation

1 / 85
About This Presentation
Title:

Data Networks 5'3, 5'4

Description:

In the ARPANET, update messages from originated at some node i, it checks to see ... The definition of k-connectivity. Node 1 and 2 are 6-connected. 2 and 3 are ... – PowerPoint PPT presentation

Number of Views:54
Avg rating:3.0/5.0
Slides: 86
Provided by: imgu5
Category:

less

Transcript and Presenter's Notes

Title: Data Networks 5'3, 5'4


1
Data Networks 5.3, 5.4
  • Daniel Gau
  • Graduate Institute
  • Information Management Dept.
  • National Taiwan University
  • R90057_at_im.ntu.edu.tw

2
outlines
  • Coping with link failures when broadcasting
    routing information
  • Flow models
  • Optimal routing
  • Topology design

3
Difficulties
  • Topological update information must be
    communicated over links that are themselves
    subject to failure.
  • One has to deal with multiple topological changes
  • New topological update information may arrive as
    the old algorithm is running
  • The repair of a single link. The algorithm must
    ensure that eventually the two parts agree and
    adopt the correct network topology.

4
The flooding algorithm in its pure form fails
  • n is initially up, then it goes down, then up
    again.
  • AC fails after the first update.

5
Assumptions
  • Network links preserve the order and correctness
    of transmissions.
  • Nodes maintain the integrity of messages that are
    stored in their memory.
  • A link failure can be detected by both end nodes
    of the link, though not simultaneously.
  • If one of the end nodes declares the link to be
    up, then within finite time, either the opposite
    end node also declares the link up or the first
    declares it down again.

6
Assumptions (contd)
  • A node can crash, in which case each of its
    incident links is, within finite time, declared
    down by the node at the opposite end of the link.
  • The preceding assumptions are not always
    satisfied in practice, one must weigh the
    consequences of the exceptional case where they
    are not.

7
Flooding The ARPANET Algorithm
  • The time interval between update broadcasts by
    the node varies from 10 to 60 sec, depending on
    whether there has been a substantial change in
    any single-link average delay or not.
  • Each message includes a time average of packet
    delay on each outgoing link from the node.

8
Example of difficulties with certain forms of
flooding
  • Rules a node that receives a message relays it
    to all of its neighbor nodes except the one from
    which the message was received.
  • This form of flooding works only if the network
    has no cycles.

9
Flooding The ARPANET Algorithm (contd)
  • In the ARPANET, update messages from originated
    at some node i, it checks to see if its sequence
    number is greater than the sequence number of the
    message last received from i.
  • If so, the message together with its sequence
    number is stored in memory, and its contents are
    transmitted to all neighbors of j except the one
    from which the message was received
  • Otherwise, the message is discarded.

10
Flooding The ARPANET Algorithm (contd)
  • Problems with sequence numbers
  • There may be no way for the two separated
    portions to figure out the correct topology after
    they connect again by relying on the sequence
    number scheme alone
  • A sequence number could be altered either inside
    a nodes memory due to malfunction, or due to an
    undetected error in transmission.

11
How ARPANET resolves the problems associated with
seq
  • Each update message includes an age field, which
    indicates the amount of time that the message has
    been circulating inside the network.
  • In addition to the messages transmitted when a
    link status change is detected, each node is
    required to transmit update messages
    periodically.(at least one from every node every
    60 sec.)

12
Flooding without periodic updates
  • Method modify the previous flooding rules
  • requirement The seq field must be so large
    that wraparound never occurs.
  • A zero seq is allowed only when the node is
    recovering from a crash.

13
Rules
  • When bringing up links that have been down, the
    end nodes of the link, in addition to
    broadcasting a regular update message on all of
    their outgoing links, should exchange their
    current views of the network
  • By which we mean that they should send to each
    other all the update messages stored in their
    memory that originated at other nodes together
    with the corresponding sequence numbers.

14
Rules (contd)
  • When node j receives an update message A that has
    originated from i, and let B be the message
    originated at node i and currently stored in node
    js memory
  • AltB discarded
  • AB discarded
  • AgtB
  • if , j stores A in its memory and sends a
    copy of A on all its incident links except the
    one on which A was received.
  • if i j, node j sends to all its neighbors a new
    update message carrying the current status of all
    its outgoing links together with a seq that is
    1 plus the seq

15
Why comapre A and B when the seq are the same
  • Initially, both links are up. (2,3) down, (1,2)
    down, (2,3) comes up again

2
1
3
16
Broadcast without Seq
  • We wish to have an algorithm by which all nodes
    get to know the correct value of V after a finite
    time from the last change. V represent the
    status of the incident links of the center
  • Vi each node i stores in memory a value Vi,
    which is an estimate of the correct value of V.
  • each node i stores the last value received by
    each of its neighbors j, denoted as

17
General rules for changing the estimate Vi of
each node i
  • Suppose we have an algorithm that maintains a
    tree of directed paths from all nodes to the
    center.
  • Each node except for the center has a unique
    successor s(i) in such a tree.
  • Node i make Vi equal to the value last
    transmitted by the successor s(i) within a finite
    time after either the current successor transmits
    a new value or the successor itself changes.

18
Information broadcast over a tree rooted at the
center that holds the value V
19
SPTA (Shortest Path Topology Algorithm)
  • The tree construction algorithm and the
    topological change broadcast procedure are
    integrated into a single algorithm
  • The data structure each node i stores
  • The Main Topology Table
  • Stores the believed status of every link
  • Official table used by the routing algorithm at
    the node
  • The Port Topology Table
  • There is one such table for each neighbor node j.

20
Data structures of SPTA at node i
21
Communication Rules
  • When a link status entry of a nodes main
    topology tables changes, the new entry is
    transmitted on each of its operating incident
    links.
  • When a failed link comes up, each of its end
    nodes transmits its entire main topology table to
    the opposite end node over that link. Upon
    reception these entries, the opposite end node
    enters the new link status in its main and port
    topology tables.

22
Topology Table Update Rules
  • When an incident link of a node fails, the failed
    status is entered into the nodes main and port
    topology tables.
  • When receiving a link status message from a
    neighbor, it enters the message into the port
    topology table associated with the neighbor
  • When entries changes according to the above
    situation, node i update its main topology table
    by using the following algorithm.

23
Main Topology Update Algorithm
  • At the start of Kth iteration, there is a set of
    nodes . Each nodes m in has a label,
    which is the ID number of the neighbor of i that
    lies on the path from i to m that has a minimum
    number of links.
  • Example, , each node in it is directly
    connected to i and the label is their own id.
  • At Kth iteration, will be augmented by new
    nodes to form or the algorithm terminates.

24
Main Topology Update Algorithm (contd)
  • Status of links ( at least end node in but
    no node in ) is entered into Main Topology
    Table.
  • (m,n) m ? , n ? , m or
    n(or both) ?
  • For notational completeness

25
Main Topology Update Algorithm (contd)
  • Step 1
  • Link (m,n) ? , let m ? , let ms label
    j
  • Copy status of (m,n) from port topology to
    .
  • If status is up and n ? , give to node n the
    label j.

26
Main Topology Update Algorithm (contd)
  • Step 2
  • Let be the nodes labeled in step 1.
  • If is empty, the algorithm terminates
  • Otherwise, set and do
    iteration

27
Example
28
Example (contd)
29
Properties of the main topology update algorithm
  • the set of nodes m with the property that
    in the topology finally obtained, there is a
    path of k or fewer up links connecting m with i.
  • (kgt1) all paths of up links connecting
    one of the end nodes of l with node i has no
    fewer than k links, and there is exactly one such
    path with k links.
  • When an incident link (i,j) fails, then the
    information from port topology is in effect
    disregarded.

30
Operation of the SPTA for a single-link status
change
31
Operation of the SPTA for a multi-link status
change
32
Operation of the SPTA for a multi-link status
change
33
Chapter 5.4
  • Flow models, optimal routing, and topological
    design

34
Routing Optimization
  • cost function for optimization
  • flow of link (i,j)
  • A frequently used formula
  • Another cost function

is the propagation delay
35
Routing Optimization (contd)
  • A computational study Vas79 has shown that it
    typically make little difference whether the cost
    function of the previous slide is used for
    routing optimization.

36
Formulate a problem of optimal routing
  • the input traffic arrival rate for each
    pair w (i,j)
  • W set of all OD pairs
  • set of all directed paths connecting the
    origin and destination nodes of OD pair w
  • flow (data units/sec) of path p

37
Formulate a problem of optimal routing (contd)
  • The collection of all path flows
  • must satisfy the
    constraints
  • for all w ? W,
  • for all p ? , w ? W

38
Schema representation
39
Formulate a problem of optimal routing (contd)
  • The total flow of link (i,j) is the sum of
    all path flows traversing the link

40
Formulate a problem of optimal routing (contd)
  • Subject to for all w ? W
  • for all p ? , w
    ? W

41
Problem
  • Algorithms for its solution are given in Section
    5.6 and 5.7.
  • The underlying hypothesis here is that one
    achieves reasonably good routing by optimizing
    the average levels of link traffic without paying
    attention to other aspects of the traffic
    statistics.

42
Routing based on queue length information
43
Overview of Topological Design Problems
  • Concept
  • Given a set of traffic demands, we want to put
    together a network that will service these
    demands at minimum cost while meeting some
    performance requirements.

44
Overview (contd)
  • Given conditions
  • Geographical location of a collection of
    devices(terminals) that need to communicate with
    each other
  • A traffic matrix giving the input traffic flow
    from each terminal to every other terminal

45
Overview (contd)
  • What we want to design
  • Topology of a communication subnet to service
    the traffic demands of the terminals
  • Location of the nodes
  • Choice of links
  • Capacity of each link
  • Local access network i.e., the collection of
    communication lines that will connect the
    terminals to entry nodes of the subnet

46
illustration
Local access network
Subnetwork
47
Design Objectives
  • Keep the average delay per packet or message
    below a given level
  • Satisfy some reliability constraint to guarantee
    the integrity of network service in the face of a
    number of link and node failure
  • Minimize a combination of capital investment and
    operating costs while meeting the above
    objectives 1 and 2.

48
Subnet design problem
  • Assumptions
  • Local access network has been designed
  • Matrix of input traffic flow for every pair of
    subnet nodes is known
  • We want to select the capacity and flow of each
    link so as to meet some delay and reliability
    constraints while minimizing costs.
  • This turns to be a difficult combinational
    problem as illustrated by the following problem

49
Subnet design problem (contd)
  • The problem is to choose the capacity of each
    link (i,j), so as to minimize the linear cost
  • Subject to (average
    delay constraint)
  • is a known positive price per unit
    capacity
  • ? is the total arrival rate into the network

50
Subnet design problem (contd)
  • When the flows are known, the problem is to
    minimize the linear cost
  • over the capacities
  • We introduce a Lagrange multiplier ?, and form
    the Lagrangian function

51
Subnet design problem (contd)
  • Set the partial derivatives to zero
  • Solving for gives

(1)
52
Subnet design problem (contd)
  • Substituting in the constraint equation, we can
    obtain
  • And from the last equation

(2)
(3)
53
Subnet design problem (contd)
  • Last equation is substituted in Eq. (1) yields
    the optimal solution
  • After rearranging

(4)
(5)
54
Subnet design problem (contd)
  • We can get the optimal cost

55
Subnet design problem (contd)
  • There is a tendency for many of the flows
    and corresponding capacities to be zero
  • Is unrealistic because , in practice, capacity
    costs are not linear
  • The capacity of a line is typically equal in both
    directions, whereas this is not necessarily true
    for the optimal capacities of the above equation

56
Heuristic methods for capacity assignment
  • Assumptions
  • The nodes of the network and the input traffic
    flow for each pair of nodes are known.
  • A routing model has been adopted
  • There is a delay constraint must be met.
  • There is a reliability constraint must be met.
  • There is a cost criterion

57
Steps of the iteration
  • Assign Flows by means of some routing algorithm
  • Check Delay
  • If go to step 3 D can be, for example,
  • Else go to step 5
  • Check Reliability
  • If the constraints are not met, go to step 5
  • Else go to step 4

58
Steps of the iteration(contd)
  • Check Cost Improvement
  • If the cost of the trial topology is less than
    the cost of the current best topology, replace it
  • Generate a New Trial Topology
  • Use some heuristic to change one or more
    capacities of the current best topology,
    obtaining a trial topology. Go to step 1

59
Step5 Create New Topology
  • Branch exchangeone link is deleted and another
    link is added
  • Saturated cut method(how to choose the links to
    be added and deleted)
  • Identify a partition of the nodes into two sets
    N1 and N2 such that the links joining N1 and N2
    are highly utilized.
  • It seems plausible that adding a link between a
    node in N1 and a node in N2 will help reduce the
    high level of utilization across the cut.

60
Saturated cut method
  • Prepare a list of all undirected links (i,j),
    sorted in order of decreasing utilization as
    measured by
  • Find a link k such that
  • If all links above k on the list are eliminated,
    the network remains connected
  • If k is eliminated together with all links above
    the list, the network separates in two
    disconnected component N1 and N2

61
Saturated cut method (contd)
  • Remove the most underutilized link in the
    network, and replace it with a new link that
    connects a node in the component N1 and a node in
    the component N2.

62
Example
63
Step3 Check Reliability
  • K-connected
  • We say two nodes i and j in an undirected graph
    are k-connected if there is a path connecting i
    and j in every subgraph obtained by deleting
    (k-1) nodes other than i and j together with
    their adjacent arcs from the graph.
  • Arc-connectivity
  • The minimum number of arcs that must be deleted
    before the graph becomes disconnected

64
The definition of k-connectivity
Graph(b) is 2-connected
Node 1 and 2 are 6-connected 2 and 3 are
2-connected 1 and 3 are 1-connected Graph(a) is
1-connected
65
Check Reliability (contd)
  • It can be shown that i and j are k-connected if
    and only if either i and j are connected with an
    arc or there are at least k node-disjoint paths
    connecting i and j.
  • Its possible to calculate the number of
    node-disjoint paths connecting two nodes i and
    j.This can be done by setting up and solving a
    max-flow problem

66
Check Reliability (contd)
To find the number of node-disjoint paths from A
to F
67
Check Reliability (contd)
  • One way to check k-connectivity of a graph is to
    check k-connectivity of every pair of nodes.
  • Another particular method by Kleitman
  • Choose an arbitrary node and check
    k-connectivity between that node and every other
    node.
  • Delete and its adjacent arcs

68
Check Reliability (contd)
  • Another particular method by Kleitman
  • Choose another node and check
    (k-1)-connectivity between that node and every
    other node.
  • Continue in this manner until node is
    checked to be 1-connected to every remaining
    node, or (k-i)-connectivity of some node , i
    0,1,....k-1, to every remaining node can not be
    verified.

69
illustration
1
3
2
70
Spanning tree topology design
  • For some networks where reliability is not a
    serious issue, a spanning tree topology may be
    appropriate.
  • A potential difficulty arises when there is a
    constraint on the amount of traffic that can be
    carried by any one link.
  • A modified Kruskal or Prim-Dijkstra algorithms
    can be used.

71
Essau-Williams algorithm
  • A special case of the constrained MST(minimum
    weight spanning tree)
  • All traffic must go through the central node, so
    it can be assumed that there is input traffic
    only from the noncentral nodes to the central
    node and the reverse.
  • Its a branch exchange heuristic

72
Essau-Williams algorithm steps
  • Starts with the spanning tree where the central
    node is directly connected with each of the N
    other nodes. (assumed to be a feasible solution)
  • At each successive iteration, a link (i,0)
    connecting some node i with the central node 0 is
    deleted from the current spanning tree, and a
    link (i,j) is added

73
Essau-Williams algorithm steps(contd)
  • These links are chosen so that
  • No cycles formed
  • The capacity constraints of all the links of the
    new spanning tree are satisfied
  • The saving in link weight obtained by
    exchanging (i,0) with (i,j) is positive and is
    maximized over all nodes i and j for which 1 and
    2 are satisfied.

74
Essau-Williams algorithm steps(contd)
  • The algorithm terminates when there are no nodes
    i and j for which requirements 1 to 3 are
    satisfied when (i,0) is exchanges with (i,j).

75
Illustration of the Essau-Williams
76
Local Area Network Design problem
  • Assumptions a communication subnet is available
  • Objective to design a network that connects a
    collection of terminals with known demands to the
    subnet
  • Its difficult to recommend a global design
    strategy without knowledge of the given practical
    situation.

77
Concentrator problem
  • There are n sources located at known geographical
    points. Each source may be a gateway of a local
    area network that connects several terminals.
  • The problem is to connect the n sources to m
    concentrators that are themselves connected to a
    communication subnet.

78
Concentrator problem example
79
Concentrator problem (contd)
  • the cost of connecting source i to
  • concentrator j

If source i is connected to concentrator j
otherwise
80
Concentrator problem (contd)
  • The total cost of a source assignment specified
    by a set of variables is
  • Assume that each source is connected to only one
    concentrator

(1)
for all sources i (2)
81
Concentrator problem (contd)
  • There is a maximum number of sources that
    can be handled by concentrator j.
  • The problem is to select the variables so as to
    to minimize the cost (1) subject to the
    constraints (2) and (3)

for all concentrators j (3)
82
Concentrator problem (contd)
  • If we change by
  • the problem becomes a linear transportation
    problem that can be solved by very efficient
    algorithms such as the simplex method. It will be
    shown that the solution obtained from the simplex
    method will be integer.

83
Further discussion
  • When the location of the concentrator is not
    fixed, and is subject to optimization.
  • There are m potential concentrator sites and
    there is a cost for locating a concentrator
    at site j.

If a concentrator is located at site j
where
otherwise
84
Presentation end
85
Tendency for low connectivity
  • We want to choose the capacities C1,..., Cn so as
    to minimize the sum C1... Cn while dividing the
    input rate ? among the n links so as to meet an
    average delay constraint
  • The optimal solution is the minimal connectivity
    topology to meet the delay constraint. (3.1
    and 3.3)
Write a Comment
User Comments (0)
About PowerShow.com