Routing - PowerPoint PPT Presentation

1 / 58
About This Presentation
Title:

Routing

Description:

Distributed Bellman-Ford algorithm ... an alternate routing algorithm is also known as bifurcated routing. nd eie507. routing ... Bifurcated routing in general ... – PowerPoint PPT presentation

Number of Views:99
Avg rating:3.0/5.0
Slides: 59
Provided by: ACE560
Category:

less

Transcript and Presenter's Notes

Title: Routing


1
Routing
  • Routing in voice networks
  • Routing in data networks
  • Vector distance routing
  • Link state routing
  • Distributed Bellman-Ford algorithm
  • Routing information protocol (RIP) and open
    shortest path first (OSPF) for the Internet

2
ROUTING FUNCTIONS
  • The major functions of a network is to enable
    different users to communicate with each other by
    making use of the network, as shown below

3
  • Through the routing function performed by the
    network, user1 is able to communicate with user2
    by
  • setting up a circuit between user1 and user2, in
    the case of circuit-switched networks or
  • exchanging data units (frames, cells, packets)
    between user1 and user2, in the case of data
    networks.
  • The objectives of network design are to
    accommodate the expected user traffic under
    specified network conditions, this is done by
  • producing a network topology at minimal equipment
    cost (e.g., minimum spanning tree, cheap access
    network)
  • performing the routing functions

4
Routing functions (cont.)
  • There can be three major components of the
    routing function to be performed by a network
  • Collecting and distributing of state information
    about the users and the network itself
  • Determination of the route according to some
    criteria, this is the routing algorithm that
    determines the path between each pair of users
    usually an optimum criteria (such as least cost
    or shortest delay) is to be satisfied while the
    routes are to be determined, it is desirable for
    a routing algorithm to be

5
Routing functions (cont.)
  • correct -- user traffic are routed to the
    correct destination
  • robust -- cope with changes in topology and,
    traffic
  • stable -- convergence to an equilibrium
  • simple -- easy implementation and maintenance
  • fair -- every user is equal
  • optimal -- the best use of the network is got.
  • Forwarding the user traffic - mode of operation
    may be connection-oriented or connectionless.

6
ROUTING IN VOICE NETWORKS
  • in a circuit-switched network, two users are
    "connected up" together through a circuit so that
    they can communicate
  • the telephone network is an example network of
    this kind
  • routing is the selection of a path to connect two
    users
  • the circuit between two users, once has been set
    up, is dedicated to their use until the circuit
    is disconnected

7
  • blocking occurs when a free user calls another
    free user but the circuit cannot be set up
    between them because of the network resource
    problem
  • a major quality of service (QOS) is the blocking
    probability
  • an example of blocking

8
  • when a path is to be set up between user 1 and
    user 2, the usual requirements are
  • the path can be set up (otherwise the call is
    blocked)
  • if there are many different ways to set up the
    path, it is preferable to set up the path such
    that it should not increase much the blocking
    probability for "future traffic" in other parts
    of the network
  • since the traffic entering a telephone network
    changes according to the time of day, a dynamic
    routing algorithm, which can cope with traffic
    changes, will perform better

9
Dynamic alternative routing (DAR)
  • this is a routing algorithm for the telephone
    network developed by British Telecom
  • the network model is
  • when traffic between a node pair is offered to
    the network, the first-choice circuit is the
    direct link between the two nodes, through two
    directly connected parents

10
  • if no direct link is available, a two-link
    alternative is to be sought, since two links are
    engaged for this call, this will lessen the
    chance of establishing circuits for future calls
  • the above problem can be alleviated by
    implementing a trunk reservation scheme with a
    trunk-reservation parameter r
  • a two-link alternative is accepted only if more
    than r circuits are free for this two-link
    circuit
  • under overload condition when there are not so
    many free circuits, the two-link alternative
    routes are effectively suppressed, thus
    preventing the spread of overload

11
Dynamic nonhierarchical routing (DNHR)
  • this is another dynamic routing algorithms for
    circuit-switched networks, which is employed in
    ATT's long-distance network
  • similar to the network model for the DAR
    algorithm, there is a direct route between two
    switches, and several ordered alternate routes,
    which have been computed off-line with reference
    to network topology and traffic forecast

12
  • when the direct route is full, the ordered
    alternate routes are tried one-by-one until the
    call is connected
  • if no alternative route is free, the call is
    blocked
  • in the course of setting up the circuit, blocking
    may occur at any stage, in case that intermediate
    links are blocked, there can be different schemes
    to handle these situations, namely originating
    office control (OOC), sequential office control
    (SOC), and crank back

13
Originating office control (OOC)
  • according to OOC, in case that a chosen route is
    blocked, the choice of the next route to try is
    always made by the source node (i.e. the
    originating office)
  • suppose that for a network as shown below

14
  • in this example, three routes have been computed
    for traffic from node A to node F, namely
    A-B-C-F, A-B-E-F, and A-D-E-F
  • if a particular route is blocked, all the
    intermediate reserved links will be released and
    a blocking message is passed all the way back to
    node A, node A will then try another computed
    route
  • disadvantage of this method
  • A does not know where blocking occurs, from the
    given example, if A-B link is blocked, it is
    useless for A to try A-B-E-F in the second route

15
Sequential office control (SOC)
  • Also known as progressive control, sequential
    control, spill-forward without crankback
  • to overcome a disadvantage of OOC, the SOC scheme
    allows intermediate nodes to react to blocking
  • when blocking occurs, the intermediate node tries
    to set up the call on another link, if no links
    are available at an intermediate node, the call
    is blocked

16
  • an example
  • each intermediate node will have a set of
    possible outgoing links to try
  • if the link B-C is blocked, B is responsible to
    try B-E

17
Crank back
  • also called spill-forward with crank back
  • this is an improvement over SOC, a blocked
    message is allowed to be sent back to the
    upstream nodes in the routing tree
  • for example
  • if the call request travels over A-B-E but B-E
  • link is blocked, the blocking message is passed
    back to A, so that A may choose another route
    (e.g. maybe A-D-E)
  • the call is blocked only when non of the paths
    defined in the routing tree are available, i.e.
    when A-D, D-E, and E-F are blocked

18
ROUTING IN DATA NETWOKRS
  • in data networks, user data are routed from
    source to destination along a path chosen by the
    routing algorithm
  • the data are usually in the form of packets
  • as far as a network node is concerned, the
    routing algorithm decides which output line an
    incoming packet should be transmitted on to, as
    shown in the following

19
  • if the total input rate to a node is ?., the
    output rates to the outgoing links may be denoted
    as ?1?, ?2?, ?3?
  • if it is assumed that packets will not be created
    nor destroyed within a node, to maintain the
    continuity of traffic flow, for each node the
    following holds
  • ?1 ?2 ?3 1, ?i ? 0
    for i1,2,3
  • according to the way to choose the ?-variables,
    routing algorithms may be classified as
    centralized or distributed
  • according to the time interval between updates of
    the ?-variables are made, routing algorithms may
    be classified as static or dynamic
  • according to the range of possible values of the
    ?-variables, routing algorithms may be classified
    as fixed or alternate

20
Centralized vs. distributed routing
  • a centralized algorithm employs a central
    controller to determine the ?-variables for the
    entire network
  • the central controller bases its decisions on
    global information about conditions everywhere in
    the network, such as the state of the network,
    and the state of the user traffic
  • disadvantages of centralized routing
  • requirement of central controller leads to single
    point of failure

21
  • traffic in the vicinity of the controller will be
    high
  • not feasible for very large network (e.g. the
    Internet with many of hosts)
  • a distributed algorithm requires that each
    individual node decide the values for its
    ?-variables without coordinating its decisions
    with those of other nodes, these decisions are
    taken on the basis of local information only
  • some routing algorithms employ a mixture of
    centralized and distributed features, they are
    known as "hierarchical

22
Static vs. dynamic
  • a static routing algorithm chooses the values of
    the ?-variables once and for all, and stay
    constant throughout the life cycle of the
    network's operation
  • a dynamic algorithm updates the ?-variables
    constantly to reflect the changes in network
    topology and traffic conditions
  • many practical routing algorithms are dynamic in
    nature, adapting themselves to the changing
    environment to achieve optimum (or sub-optimum)
    performance
  • intermediate algorithms are called "quasi-static"

23
Fixed versus alternate
  • a fixed routing algorithm constraints the values
    of ? to be either zero or 1, as a result between
    two update instants, all traffic received will be
    assigned to the same outgoing link if the node is
    not the destination node
  • an alternate routing algorithm allows ? to take
    any value between 0 and 1 as a result traffic is
    split between alternate routes (perhaps
    probabilistically)
  • an alternate routing algorithm is also known as
    bifurcated routing

24
MINIMUM NETWORK--WIDE DELAY ROUTING
  • one approach to designing optimum routing is by
    choosing the ?-variables such that the
    network-wide packet delay is minimized
  • the following example may illustrate the
    fundamental concept

25
An example
  • consider the following simple network
  • in the above network, the line speed of the two
    links are 20kbps, and average packet size is 1000
    bits

26
  • user A is sending data to user B at a rate of 10
    packets/sec, i.e. the exogamous traffic is
    r(1,2) 10 packets/sec
  • according to the network topology, there are two
    possible paths to route traffic from A to B,
    namely (1-2)up and (1-2)low
  • if the traffic is split over the two paths with
    relative proportion ?1 and ?2, as illustrated,
    where ?1 ?2 1, the average network-wide delay
    can be calculated as follows
  • each link is modeled as an M/M/1 queue

27
  • for the upper link, packet arrival rate is 10?1
    pkt/sec, service rate is 20,000/1,000 20
    pkt/sec, the link delay is
  • for the lower link, packet arrival rate is 10?2
    pkt/sec, service rate is 20,000/1,000 20
    pkt/sec, the link delay is

28
  • the average network-wide delay T is given by the
    weighted sum of Tup and Tlow, each weighted by
    the traffic volume
  • the standard way to determine the minimum value
    of T is by solving
  • after ?1 and ?2 have been determined, the routing
    problem of this case has been solved.

29
  • or this example, a plot of T against ?1, is shown
    below
  • from the above plot, it can be seen that when
    ?10.5 (i.e. ?2 is also equal to 0.5), the
    average network-wide delay is minimum, which is
    equal 0.067 sec approximately

30
  • this example demonstrates that minimum
    network-wide delay routing can be achieved by
    distributing the traffic over the links within
    the network in an appropriate manner
  • since the ?-variables are usually non-zero, the
    resultant routing algorithm usually employs an
    alternate routing approach, which is also called
    bifurcated routing
  • Bifurcated routing in general
  • consider a network consisting of M links and N
    nodes
  • the network is so modeled that each link can be
    modeled as independent M/M/1 queue

31
  • suppose link i has a total traffic of ?i
    traveling over it, and that the average rate of
    transmitting the packets over link i is ?i, then
    the delay time in traversing link i is Ti given
    by
  • and the the average number of packets
    waiting to be transmitted on link i is obtained
    by Little's theorem, as

32
  • suppose the average network-wide packet delay is
    denoted as E(T), and the average number of
    packets within the network is E(n), and the total
    traffic input to the network is ?, then according
    to Little's theorem the following can be
    established
  • E(n) ? E(T)
  • therefore
  • E(T) E(n)/ ?
  • if all the links are treated as independent M/M/1
    queues, E(n) can be calculated as the sum of
    individual link occupancy, i.e.

33
  • the average network-wide packet delay is
  • once the external traffic are known, and the
    routing algorithm is known, all the ?is and ?is
    are known, and then E(T) can be calculated
  • the minimum network-wide delay routing problem is
    to route the traffic so that E(T) is a minimum

34
SHORTEST-PATH ROUTING
  • since shortest-path routing aims at routing the
    data from a source node to a destination node
    over the shortest path
  • the total path length is the summation of the
    individual link cost along the path, if the link
    costs represent delay time, this gives rise to
    minimum delay routing if the link costs
    represent transmission cost, this gives rise to
    least cost routing
  • the shortest path between two nodes can be
    determined by algorithms that have been discussed
    in graph theory

35
  • two algorithms (or their variations) have been
    widely adopted for routing in data networks,
    namely
  • Dijkstra algorithm (for positive link costs) that
    finds the shortest path from one source node to
    all other nodes (this is called Algorithm A in
    Schwartz's book)
  • Bellman-Ford algorithm (Algorithm B in Schwartz's
    book) that finds the shortest path from all nodes
    to one destination node, this algorithm works for
    negative link costs

36
  • both Dijkstra and Bellman-Ford algorithms can be
    implemented in a centralized routing manner,
    where a central controller computes the shortest
    paths for all node pairs, and then distributes
    the routing tables to all nodes the shortest
    paths may be computed regularly or after some
    changes in user traffic or network state have
    taken place, resulting in a dynamic algorithm
  • they may also be implemented in a distributed
    manner where every node participates in
    determining the shortest path, the nodes must be
    able to gather and exchange information about the
    network with the use of a routing protocol

37
Distributed shortest path routing
  • also known as distance-vector algorithm
  • as an illustration, consider a node N that has
    neighboring nodes X, Y, and Z, as below

38
  • node N knows the direct distance from itself to
    its neighbors according to the above diagram
  • node N keeps a routing table containing the
    shortest path length to each destination, and the
    outgoing link to route to this destination, as an
    example

39
  • regularly node N receives routing information
    from its neighboring nodes, in the form
  • as an example, X announces that it can send data
    to node A as the destination over a path with
    length 21 then N will reason in this way "If I
    send a piece of data to destination A by giving
    it to X, my direct distance to X is 4, and X will
    use a path with length 21 to reach A, then the
    total path length is 42125"

40
  • similarly, if X routes data to A via Y, the total
    path length will be 52227 via Z, the total
    path length will be 62531
  • so N will decide to send data to A via X, since
    this is the shortest path with length 25 N will
    compile a table like this
  • the underlined entries are shortest paths

41
  • hence N will have an updated shortest path
    routing table like this
  • and N will send the following distance table to
    its neighbors

42
  • in practice not the entire distance table needs
    to be sent out, only those entries that have
    changed need to be sent out, these are in the
    form of d, Dd(N), where "d" denotes the
    destination node, "Dd(N)" denotes the minimum
    distance from node N to destination node d
  • all nodes in the network participate in the same
    manner, and convergence to the shortest path is
    guaranteed in most practical situations

43
Link-state routing
  • each node maintains a link-state database, which
    is identical to what other nodes have got
    throughout the network
  • the link-sate database describe the complete map
    of the network
  • based on this link-state database, a node can
    calculate the shortest paths to any other node by
    using, for example, Dijkstra algorithm
  • the link-state database is formed by the
    cooperation of all nodes in the network
  • a node will gather its local information and form
    a part of the link-state database, known as
    link-state advertisements (LSA)

44
  • an LSA consists of the following information
  • the identity of the node itself (e.g. node
    address)
  • a list of the node's outgoing links
  • the identity of the node to which each outgoing
    link connects
  • the cost of each outgoing link (e.g. packet
    transmission time) when used to forward data
  • consider node N as follows

neighbour
45
  • the LSA gathered by node N will be
  • the LSAs are distributed throughout the entire
    network by a routing method called flooding
  • when a node receives a piece of data, it will
    copy this piece of data to all its output ports
  • after all LSAs from all nodes are gathered, the
    entire map of the network can be constructed and
    then the shortest path to any destination node
    can be calculated

Flash movie Net map based on LSAs
46
Distributed Bellman-Ford algorithm (distance
vector revisited)
  • Each node maintains two tables a distance table
    and a routing table.
  • The distance table for node v lists the cost to
    each destination via each outgoing link (or
    equivalent to each neighboring node).
  • The cost to destination d via a node w, denoted
    as Cd(v,w), is listed in row d and column w.

47
Distributed Bellman-Ford algorithm (cont.)
  • The routing table lists the minimum cost and the
    next-node assignment in the distance table.
    Assume Dd(v) minw Cd(v,w) Cd(v,p). The
    routing table will have a p and Dd(v) in row d.
  • Example distance and routing tables for node N

48
Distributed Bellman-Ford algorithm routing table
example
  • Example Routing table for node N

49
The distributed Bellman-Ford algorithm
  • The distributed distance vector algorithm for
    node v, the routing table contains pairs
    (n,Dd(v)) (next neighbor (node), distance to
    node d from v), the link cost from w to v is
    denoted as l(w,v) the cost to destination d via
    the neighboring node w is denoted as Cd(v,w).

50
The distributed Bellman-Ford algorithm (part 1)
  • Part 1 link (m,v) comes up.On recognizing this
    event node v
  • Sets entry (m,m) (m_th row,m_th column) cost to
    m via m of the distance table to l(m,v).
  • Computes minw Cm(v,w) Cm(v,p).
  • If Cm(v,p) Dm(v), set Dm(v) Cm(v,p). The
    routing table is changed to (p, Dm(v)), and the
    control message m, Dm(v) is sent to all
    neighbors.
  • The routing table is sent to m, each row of the
    routing table as one control message.

51
The distributed Bellman-Ford algorithm (part 2)
  • Part 2 cost of link (m,v) changes.On
    recognizing this event node v
  • Makes the change in the column m (corresp. To
    node m) in all distance table.
  • Computes minw Cm(v,w) Cm(v,p).
  • If Cm(v,p) Dm(v), set Dm(v) Cm(v,p). The
    routing table is changed to (p, Dm(v)), and the
    control message m, Dm(v) is sent to all
    neighbors.

52
The distributed Bellman-Ford algorithm (part 3)
  • Part 3 A control message d,Dd(w) is received
    by node v.If dv (destination is v itself), v
    ignores it. Else, v does the following.
  • Set Dd(v,w) Dd(w)l(w,v).
  • Computes minw Cm(v,w) Cm(v,p).
  • If Cm(v,p) Dm(v), set Dm(v) Cm(v,p). The
    routing table is changed to (p, Dm(v)), and the
    control message m, Dm(v) is sent to all
    neighbors.

53
The distributed Bellman-Ford algorithm an example
  • Node 1 comes up. All nodes operate in
    synchronism. Only row 1 (destination to node 1)
    is shown.

54
The distributed Bellman-Ford algorithm an
example (cont.)
55
Routing information protocol (RIP) for the
Internet
  • A protocol for an autonomous system (a set of
    networks under the same organization).
  • A dedicated device is responsible to direct data
    traffic for a network, known as router.
  • Cost number of hops (number of intermediate
    routers traversed).

56
Routing information protocol (RIP) (cont.)
  • Routers advertise the table of distance vector
    regularly in 30 seconds interval.
  • Count-to-infinity set to 16

57
Routing information protocol (RIP) (cont.)
  • Convergence all routers have agreed on the costs
    of routers. A router starts using the new update
    after waiting for three updates. Hold down 90
    secs.
  • Speeding up convergence split horizon (A does
    not tell C that D is reachable though A) and
    poison reverse (A tells C that D is unreachable
    though A).
  • Trigged updates whenever a router detects a
    change in router cost, it is required to send
    update message immediately.
  • Age out the cost is increased by one if a
    router does not receive a route update. If no
    update is received for three minutes (6 update
    period), then the router is removed from the
    table.

58
Link state routing for the Internet Open
shortest path first (OSPF)
  • Also a protocol for an autonomous system.
  • Features of OSPF
  • open available in the open literature.
  • supports various distance metrics, e.g.,
    physical distance, delay.
  • Dynamic e.g., adapting to changes in the
    topology automatically and quickly.
  • In OSFP and RIP version 2, authentication
    passwords are required in routing updating.
Write a Comment
User Comments (0)
About PowerShow.com