CS4550: Computer Networks II network layer basics 3 routing - PowerPoint PPT Presentation

1 / 31
About This Presentation
Title:

CS4550: Computer Networks II network layer basics 3 routing

Description:

basic routing techniques. fixed. random. flooding. adaptive. routing in ... basic ... congestion control : five basic strategies. 1 choke packets. 2 ... – PowerPoint PPT presentation

Number of Views:184
Avg rating:3.0/5.0
Slides: 32
Provided by: Lun1
Category:

less

Transcript and Presenter's Notes

Title: CS4550: Computer Networks II network layer basics 3 routing


1
CS4550Computer Networks IInetwork layer
basics 3routing congestion control

2
basic routing techniques
  • fixed
  • random
  • flooding
  • adaptive
  • routing in ARPAnet
  • distance vector
  • link state
  • optimal

3
basic routing techniques fixed
  • routes between node pairs determined in advance
    by network control center or administrator
  • routing tables loaded into nodes, and are not
    changed dynamically
  • simple, may be best technique for small networks
    which do not change often (topology, traffic
    patterns
  • routing more easily controlled
  • not responsive to changes in traffic

4
basic routing fixed
6
5
9
3
2
7
1
8
4
10
5
routing table for node 1
next node
dest
1 2 3 4 5 6 7 8 9 10
- 2 2 4 7 7 7 7 2 4
6
basic routing flooding
  • send packet to all neighbors, except the one from
    which received the packet
  • should assign packet or ID, to avoid needless
    redundant transmissions
  • should assign hop count/lifetime to packet to
    limit needless congestion, distance traveled
  • advantages
  • disadvantages

7
routing in ARPAnet 1969-90?
  • 1st version
  • -distributed Bellman-Ford SP algorithm also
    known as distance vector routing
  • -each node exchanged delay info each 128 ms with
    neighbor
  • -delay info based solely on queue lengths
  • -problems excessive overhead, unstable network,
    inaccurate delay estimates responded too quickly
    to some problems, too slowly to others

8
distance vector routing
  • -each node measures distance to adjacent
    neighbors
  • -these distances put into a message
    (vector) and sent to neighbors
  • -distances ( route) to other nodes (not
    neighbors) computed by adding the measured
    distance to those in received distance vectors
  • - if dont know, distance is infinity

9
distance vector routing
  • key assumption that each node knows (can
    measure) distance to its neighbors
  • each node maintains a routing table has 1 entry
    for all nodes in the network

dest node next hop distance
10
distance vector routing example
12
2
3
10
5
1
18
12
5
4
20
using measured distances shown, show computation
of distance vector tables for each node.
11
distance vector routing example
(1)
(2)
2 10 2 3 - - 4
12 4 5 - -
1 10 1 3 12 3 4
- - 5 18 5
initial tables (vectors) for nodes 1 (left) and
2 give initial tables for 3,4,5 then show
computation of tables as vectors are exchanged,
until stable.
12
distance vector routing
  • works reacts quickly to good news (a new,
    shorter route), but reacts slowly to bad news
    (router or link down)
  • count to infinity problem
  • split horizon solution, and why it doesnt always
    work

13
distance vector count to infinity
a
c
e
1
1
2
d
2
b
Suppose node a goes down. Show updating of the
distance vector tables.
14
distance vector split horizon
B
A
C
D
what happens if the CD link fails? (assume all
hops have length of 1)
15
ARPAnet, 2nd version (1979/80)
  • delay measurements much better measured,
    averaged actual delay of all packets on the link
  • updates transmitted only every 10 seconds much
    improved stability
  • switched to link-state routing, and used
    Dijkstras SP algorithm
  • much improved but later, as use of network
    approached capacity, more problems surfaced

16
Iink state routing
  • -each node measures distance to neighbors
  • -sends this info to ALL other nodes in the
    network (flooding)
  • -each node constructs a weighted graph of the
    network, and
  • -used Dijkstras SP algorithm to compute
    shortest path

17
routing metrics, shortest paths
  • routing metrics vary widely
  • -instantaneous queue length
  • -measured time
  • -hop count
  • -distance
  • -capacity (bandwidth), data rate
  • getting the shortest path may not really matter
    to end user. (How many people count time in
    milliseconds?)

18
ARPAnet data rates, links
  • initially, all ARPAnet links were 56Kbps
    telephone lines (digital)
  • later, higher capacity lines added (T1 lines,
    satellite links)
  • computers faster than networks, then
  • data link protocol very close to HDLC

19
ARPAnet, 3rd version
  • increased use of network led to new problems
  • north-south oscillation problem
  • true solution -
  • multipath routing
  • increased capacity
  • fix implemented
  • damping algorithm
  • increase update interval to 17 seconds

20
optimal routing
  • defined mathematically as routing for which
    average delay (distance, or other metric) for
    all packets is minimized.
  • characterized mathematically as a network flow
    problem
  • solution computable, but not efficient algorithm
    not useful. However,
  • light load single SP routing is optimal
  • heavier load use more routes to spread out
    traffic

21
congestion control
  • congestion an excessive number of packets in
    the network
  • terms
  • congestion control
  • traffic control
  • flow control 2 points link/connection level

network level
22
congestion - levels
  • need to define levels of congestion. Below is a
    very rough rule of thumb.
  • 0 none - no delay experienced
  • 1 moderate - experience minimal delay
  • 2 heavy - significant delays, but still able to
    get packets through
  • 3 total (deadlocked) - so clogged, cant get
    packets through in any reasonable time

23
congestion - levels
  • - general guidelines only percentages vary
    according to the network protocols, topologies,
    and actual distributions of the traffic on the
    network
  • reduction from Max throughput
  • 0 none lt20
  • 1 moderate 20-50
  • 2 heavy 50-70
  • 3 total gt 70

24
congestion run away
  • in packet switched networks, this problem is
    exacerbated, because as delay increases, timeouts
    occur, causing packet retransmissions, which
    cause increased congestion
  • care must be taken first to avoid congestion,
    second, to reduce it when it occurs packet
    retransmissions may have the opposite result, of
    actually making things worse

25
congestion control five basic strategies
  • 1 choke packets
  • 2 buffer preallocation
  • 3 packet discarding
  • 4 isarithmetic control
  • 5 flow control (covered elsewhere)

26
choke packets
  • variation of flow control used only when
    congestion occurs
  • 1. each node monitors utilization U of output
    lines
  • 2. if U becomes heavy, a choke packet sent to
    hosts sending traffic to that destination
  • 3. upon receiving choke packet, the sending host
    decreases traffic to that destination by X
    percent

27
choke packets
  • 4. host discards other choke packets for that
    destination for Y time
  • 5. After some time, host continues watching for
    choke packets if no more come OK, if they do,
    reduces output again.
  • 6. After longer time, if no more choke packets
    arrive, again slowly may increase the flow.
    MDAI
  • adds packets to a congested network

28
buffer preallocation
  • only for VC packet networks
  • 1. as call request made, buffer reserved in each
    node for the connection if not available, must
    find another or refuse.
  • 2. as data packets transmitted, acks returned
    new packets only sent after receiving acks (which
    are not sent until packet is in output queue)
  • completely solves congestion ... at what price?

29
packet discarding
  • no buffers reserved in advance
  • when packets arrive, if no buffer space exists,
    discard them
  • Irlands strategy
  • refinements
  • discard older packets
  • lower priority packets
  • packets on more congested links
  • check packet for acks before discarding

30
isarithmetic control
  • keeps total number of packets in network below a
    specified limit
  • whenever a node transmits a packet into the
    network, must get a permit for the packet
  • similar to token for LANs
  • several problems

31
isarithmetic control
  • 1. guarantees network not overloaded but a part
    or node could be
  • 2. how many permits to use? not easy to decide
  • 3. what if permits lost? how can we tell?
  • 4. in some networks, some packets much larger
    than others all use same permit?
  • 5. not clear that it is fair
  • 6. difficult to respond to changing conditions
Write a Comment
User Comments (0)
About PowerShow.com