CSS432 Routing Textbook Ch3.3 - PowerPoint PPT Presentation

1 / 20
About This Presentation
Title:

CSS432 Routing Textbook Ch3.3

Description:

CSS432 Routing Textbook Ch3.3 Professor: Munehiro Fukuda CSS 432: Routing * CSS 432: Routing * What Is Routing? Forwarding vs Routing forwarding: To map a network ... – PowerPoint PPT presentation

Number of Views:82
Avg rating:3.0/5.0
Slides: 21
Provided by: klp7
Category:
Tags: ch3 | css432 | routing | textbook

less

Transcript and Presenter's Notes

Title: CSS432 Routing Textbook Ch3.3


1
CSS432 RoutingTextbook Ch3.3
  • Professor Munehiro Fukuda

2
What Is Routing?
  • Forwarding vs Routing
  • forwarding
  • To map a network to an outgoing interface and
    some MAC information in a forwarding table.
  • To send a packet to an interface as consulting a
    local and static forwarding table
  • OSI Layer 2 data link level
  • Implemented in specialized hardware (switch)
  • routing
  • To build a dynamic routing table
  • To update table contents in a dynamic and
    distributed fashion
  • OSI Layer 3 network level (internet)
  • Using complex distributed algorithms

3
Overview
At Node A
  • Network as a Graph
  • Goal
  • Find lowest cost path between two nodes
  • Static approach has shortcomings
  • Hardware failures
  • Static network topology
  • Static band width
  • Distributed, dynamic routing algorithms
  • Distance vector routing (RIP)
  • Link state routing (OSPF)

4
Distance Vector
  • Each node maintains a set of triples
  • (Destination, Cost, NextHop)

An initial distance vector at node A
Destination Cost Next hop
B 1 B
C 1 C
D 8 -
E 1 E
F 1 F
G 8 -
5
Distance Vector
  • Exchange updates directly connected neighbors
  • periodically (on the order of several seconds)
  • whenever table changes (called triggered update)
  • Each update is a list of pairs
  • (Destination, Cost)
  • From B (A, 1), (C, 1)
  • From C (A, 1), (B, 1), (D, 1)
  • From E (A, 1)
  • From F (A, 1), (G, 1)
  • Update local table if receive a better route
  • From B (C,1)
  • (C, 1, C) lt (C, 2, B)
  • From C (D, 1)
  • (D, 8, - ) gt (D, 2, C)
  • From F (G, 1)
  • (G, 8, - ) gt (G, 2, F)
  • Refresh existing routes delete if they are
    expired

Destination Cost Next hop
B 1 B
C 1 C
D 2 C
E 1 E
F 1 F
G 2 F
6
Routing Loop
  • Failure-recovering scenario
  • F detects the link to G has failed
  • F sets distance to G to 8 and sends an update to
    A
  • A sets distance to G to 8
  • A receives periodic update from C with a 2-hop
    path to G
  • A sets distance to G to 3 and sends update to F
  • F sets distance to G in 4 hops via A
  • Count-to-infinity problem
  • The link from A to E fails
  • A advertises distance of infinity to E
  • C advertise a distance of 2 to E
  • B decides it can reach E in 3 hops
  • B advertises this to A
  • A decides it can read E in 4 hops
  • A advertises this to C
  • C decides that it can reach E in 5 hops

To G in 2
To G in 3
To G in 1
To G in 4
8
B
(5) To E in 4
(2) To E in 8
(3) To E in 3
(4) To E in 8
(1) To E in 2
A
C
(6) To E in 5
8
E
7
Loop-Breaking Heuristics
  • Set infinity to 16
  • Scheme Stop an infinity loop in 16.
  • Problem No more 16 hops
  • Split horizon
  • Scheme Dont send a neighbor the routing
    information learned from this neighbor.
  • Ex. B includes (E, 2, A) and thus doesnt send
    (E, 3).
  • Split horizon with poison reverse
  • Scheme Send the routing information learned from
    this neighbor as setting hop count to 8.
  • Ex. B includes (E, 2, A) and thus sends (E, 8, A)
  • Problem Its slow convergence speed

8
Routing Information Protocol (RIP)
frame header
datagram heaader
UDP header
RIP Message
  • Cmd 1-6
  • 1 request
  • 2 reply
  • Port 520
  • Used by routed
  • Advertisement 30secs
  • Table entry timeout 3 mins.
  • Deleted in 60secs
  • Unix commands
  • Ripquery (BSD)
  • Tcpdump (available in Linux, too)
  • Snoop (Solaris)

Cmd
Ver
Routing domain
Addr family (net addr)
Route tag
Address of net 1
Subnet mask
Next hop address (1-16)
Distance to net 1
Addr family (net addr)
Route tag
Address of net 2
Subnet mask
Next hop address
Distance to net 2 (1-16)
25 entries
9
Link State
  • Strategy
  • Reliable dissemination of link-state information
    to all nodes over a system.
  • Calculation of routes from the sum of all the
    accumulated link-state knowledge.
  • Link State Packet (LSP)
  • ID of the node that created the LSP
  • A cost of link to each directly connected
    neighbor
  • A sequence number (SEQNO)
  • A time-to-live (TTL) for this packet

10
Link State (cont)
  • Reliable flooding
  • Store most recent LSP from each node
  • Forward LSP to all nodes but one that sent it
  • Generate new LSP periodically
  • Increment SEQNO
  • Start SEQNO at 0 when reboot
  • Decrement TTL of each stored LSP
  • Discard when TTL0

X
A
D
C
B
11
Dijkstras Shortest-Path Algorithm
  • put (myself, 0, -) in the confirmed list
  • Next myself
  • while( true )
  • for each edge (X, distance, Next) where X is Ns
    neighbor
  • if neither confirmed or tentative list has (X,
    distance, Y) where Y ! Next, put (X, distance,
    Next) in the confirmed list
  • if the tentative list has (X, distance, Y) where
    Y ! Next, and (X, distance, Y) gt (X, distance,
    Next)
  • Replace (X, distance, Y) with (X, distance, Next)
  • If the tentative list is empty,
  • exit
  • else
  • move the shortest edge (A, distance, B) from the
    tentative to the confirmed list.
  • Next A

12
Dijkstras Shortest-Path Algorithm
(D, 14, C) (G, 15, F)
(A, 0, -) (E, 2, E) (B, 5, B) (F, 4, F) (C, 8, B)
(A, 0, -)
(A, 0, -)
(B, 5, B) (C, 10, C) (E, 2, E) (F, 4, F)
(A, 0, -) (E, 2, E) (B, 5, B) (F, 4, F) (C, 8,
B) (D, 14, C)
(G, 15, F)
(B, 5, B) (C, 10, C) (F, 4, F)
(A, 0, -) (E, 2, E)
(A, 0, -) (E, 2, E) (F, 4, F)
(C, 10, C) (B, 5, B)
(A, 0, -) (E, 2, E) (B, 5, B) (F, 4, F) (C, 8,
B) (D, 14, C)
(G, 15, F)
(A, 0, -) (E, 2, E) (F, 4, F)
(C, 10, C) (B, 5, B) (G, 15, F)
(A, 0, -) (E, 2, E) (B, 5, B) (F, 4, F) (C, 8,
B) (D, 14, C) (G, 15, F)
(A, 0, -) (E, 2, E) (B, 5, B) (F, 4, F)
(C, 8, B) (G, 18, B)
(C, 8, B) (G, 15, F)
(A, 0, -) (E, 2, E) (B, 5, B) (F, 4, F)
(A, 0, -) (E, 2, E) (B, 5, B) (F, 4, F) (C, 8, B)
(G, 15, F)
13
Open Shortest Path First Protocol (OSPF)
  • Header
  • Hello (reachability)
  • Database description (topology)
  • Link status request
  • Link status update
  • Link status acknowledgment
  • Advertisement (header type4)
  • LS Age TTL
  • Type1 link cost b/w routers
  • Link-State ID Advertising Router
  • Seq from the same router
  • Link ID the other end route ID of link
  • Link data used if there are two or more links
    to the same router
  • Metric link cost
  • Link type P2P, ethernet, etc
  • TOS delay-sensitive, etc

14
OSPF Contd
  • Gated daemon directly uses IP datagram.
  • Header Type2 Database description (topology)
    message
  • Used when the current topology has changed.
  • Sent from an initialized router to another router
    which has a topology information
  • LS Sequence number
  • Used to determine which message is the latest
  • Send a message with a new sequence number and
    metric 8 when a router or a link fails.

15
Metrics
  • Original ARPANET metric
  • measures number of packets enqueued on each link
  • took neither latency or bandwidth into
    consideration
  • New ARPANET metric
  • stamp each incoming packet with its arrival time
    (AT)
  • record departure time (DT)
  • when link-level ACK arrives, compute
  • Delay (DT - AT) Transmit Latency
  • if timeout, reset DT to departure time for
    retransmission
  • link cost average delay over some time period
  • Fine Tuning
  • compressed dynamic range
  • replaced Delay with link utilization

16
Virtual Private Networks and Tunnels
10.0.0.1
20.0.0.1
A
B
Application Level
Router
Dest router
Source router
10.0.0.1
20.0.0.1
Router Level
A
B
To 20.0.0.1
To 215.0.0.1
To 20.0.0.1
To 10.0.0.2
Internet
C
215.0.0.1
Company Branch
Company Branch
Physical Network Level
To 20.0.0.1
A
B
20.0.0.1
10.0.0.1
17
Why VPN?
  • Security
  • The final destination/contents of packet cannot
    be easily intercepted.
  • Routers
  • Routers with special features such as
    multicasting can form a virtual network.
  • No-IP packets
  • Packets may be non-IP compatible packets.
  • Mobile IPs
  • The final destination may be a mobile computer.

18
Mobile IP
  • Invariant Sending hosts want to use the same IP
    address mapped to a mobile host regardless of its
    location.
  • Questions
  • How does the home agent intercept a packet that
    is destined for the mobile agent? --- Use ARP
  • How does the home agent then deliver the packet
    to the mobile host? Use DHCP and VPN

10.0.0.3
Internet
DHCP server
Home agent
12.0.0.6
19
Mobile IP (Contd)
1. ARP request Whats the physical addr
corresponding to 10.0.0.9?
3. Packet request sends a packet destined for
10.0.0.9 to the home agents MAC address
2. ARP response sends back MAC of 10.0.0.3
instead of 10.0.0.9
1. DHCP receives a new IP in the foreign network.
10.0.0.3
Internet
DHCP server
Home agent
12.0.0.6
IP tunneling wraps the packet inside an
IP header destined for the mobile host (12.0.0.7).
2. Care-of-address a mobile host informs
its Home agent of its original and new IPs.
20
  • Reviews
  • RIP distance vector, routing loop and breaking
    heurictics
  • OSPF link state, Dijkstras shortest path
    algorithm
  • VPN and mobile IP
  • Exercises in Chapter 3
  • Ex. 46 (RIP)
  • Ex. 52 (RIP)
  • Ex. 62 (OSPF)
  • Ex. 64 (OSPF)
Write a Comment
User Comments (0)
About PowerShow.com