Title: Dynamic Routing and OSPF
1- Dynamic Routing and OSPF
- (part 1)
2IP routing
- Each router or host makes its own routing
decisions - Sending machine does not have to determine the
entire path to the destination - Sending machine just determines the next-hop
along the path. - This process is repeated until the destination is
reached - Forwarding table consulted to determine the
next-hop
3IP routing
- Classless routing
- route entries include
- destination
- next-hop
- mask (prefix-length) indicating size of address
space described by the entry - Longest match
- for a given destination, find longest prefix
match in the routing table - example destination is 35.35.0.0/19
- routing table entries are 35.0.0.0/8 and
35.35.0.0/16
4IP routing
- Default route
- where to send packets if dont have an entry for
the destination in the routing table - most machines have a single default route
- often referred to as a default gateway
5Static routing
- each router manually configured with a list of
destinations and the next hop to reach those
destinations - ideal for small number of destinations or stub
networks - stub network - network with only one or two paths
to the rest of the network
6Dynamic Routing
- routers compute routing tables dynamically based
on information provided by other routers in the
network - routers communicate topology to each other via
different protocols - routers then compute one or more next hops for
each destination - trying to calculate the most
optimal path
7Static and Dynamic Routing
- Static routing is a simplistic approach
- Shortcomings
- Cumbersome to configure
- Cannot adapt to link/node failures, addition of
new nodes and links - Doesn't scale to large networks
- Solution Dynamic Routing
8Desirable Characteristics
- Automatically detect and adapt to network
topology changes - Optimal routing
- Scalability
- Robustness
- Simplicity
- Speed of convergence
- Some control of routing choices (e.g. which links
we prefer to use)
9Convergence - Why do I care?
- Convergence is when all the routers have the same
routing information - When a network is not converged, there is network
downtime - Packets don't get to where they are supposed to
be going routing loops, black holes - Occurs when there is a change in the status of a
router or link
10Dynamic Protocols
- Metrics can be calculated based on a single
characteristic of a path or by combining multiple
characteristics - Metrics commonly used
- Bandwidth
- Hop count
- Cost
- administratively defined metrics
11OSPF magic exercise
- delete your static routes
- config t
- no ip route x.x.x.x y.y.y.y z.z.z.z
- enter the following
- router ospf 1
- network x.x.x.x 0.0.0.0 area 0
- x.x.x.x ip address of your backbone interface
- redistribute connected subnets
12OSPF magic exercise
- Verify connectivity to all PCs in the network
- Do not save your config
13Dynamic Routing Protocols and OSPF (part 2)
14Types of Routing Protocols
- EGP
- Exterior Gateway Protocol
- Example BGP
- IGP
- Interior Gateway Protocol
- Example OSPF, RIP
15Types of Routing Protocols
- Link-state
- Distance-vector
16IGP
- Used within a single Autonomous System (AS)
- Within a single network
17Other Interior Gateway Protocols (IGPs)
- RIP
- Lots of scaling problems
- RIPv1 is classful and officially obsolete
- RIPv2 is classless
- EIGRP
- Proprietry (Cisco only)
- IS/IS
- The forerunner of OSPF
- Multiprotocol (OSPF is IP only)
18Distance Vector Protocols
- Listen to neighboring routes
- Install all routes in a table
- Advertise all routes in table
- Very simple
- Very Stupid
- example RIP
19RIP
- routing information protocol
- distance-vector algorithm
- cost is hop count
- broadcast information to all neighbors every 30
seconds
20RIP
ROUTING TABLE for A A - B 1 C 2 D 3 E 2
21Why not use RIP?
- Distance Vector algorithm
- Broadcasts everything (not scalable)
- Metric is hop-count only
- Infinity of 16 (not large enough)
- Slow convergence (routing loops)
- Poor robustness
22OSPF
- Open Shortest Path First
- Dynamic IGP (Interior Gateway Protocol)
- Use within your own network
- Link state algorithm
23Shortest Path First
Metric Link Cost
3
A
B
15
4
4
C
D
7
24Link State Algorithm
- Each router maintains a database containing map
of the whole topology - Links
- State (including cost)
- All routers have the same information
- All routers calculate the best path to every
destination
25Link State Algorithm (con)
- Any link state changes are flooded across the
network - "Global spread of local knowledge
26Link State vs. Distance vector
- Distance Vector
- views net topology from neighbors perspective
- adds distance vectors from route to router
- frequent, periodic updates slow convergence
- passes copies of routing table to neighbor routers
27Link State vs. Distance vector
- Link-State
- gets common view of entire network topology
- calculates the shortest path to other routers
- event-triggered updates faster convergence
- passes link-state routing updates to other routers
28Distance Vector and Link State Protocols
- Distance vector routers compute the best path
from information passed to them from neighbors - Link State routers each have a copy of the entire
network map - Link State routers compute best routes from this
local map
29Note Routing is not the same as Forwarding
- Forwarding passing packets along to the next hop
- There is only one forwarding table
- Just has prefix and next-hop info
- Routing populating the forwarding table
- You might have multiple routing databases - e.g.
both OSPF and BGP - Routing databases have more information
30Routing and Forwarding
BGP
OSPF
Static
Forwarding Table
On Cisco, if the same prefix is received from
multiple protocols, the "administrative distance"
is used to choose between them
31OSPF
- open shortest path first
- dynamic IGP
- not distance vector
- Link-State algorithm
32OSPF How it works (1)
- "Hello" packets sent periodically on all
OSPF-enabled interfaces - become "neighbors"
- establishes that link can carry data
- used to determine if neighbor is up
- Adjacencies (virtual point-to-point links) formed
between some neighbors
33How it works (2)
- Once an adjacency is established, trade
information with your neighbor - Topology information is packaged in a "link state
announcement" - Announcements are sent ONCE, and only updated if
there's a change (or every 30 minutes)
34How it works (3)
- Each router sends Link State Announcements (LSAs)
over all adjacencies - LSAs describe router's links, interfaces and
state - Each router receives LSAs, adds them into its
database, and passes the information along to its
neighbors
35How it works (4)
- Each router builds identical link-state database
- Runs SPF algorithm on the database to build SPF
tree - Forwarding table built from SPF tree
36How it works (5)
- When change occurs
- Broadcast change
- All routers run SPF algorithm
- Install output into forwarding table
37HELLO
- Broadcast HELLO on network segment
- Receive ACK
- Establishes 2-way communication
- Repeat periodically
- Default HELLO sent every 10 seconds
- Default if no HELLO heard for 40 seconds, link
is assumed to be dead - Now establish adjacencies
Actually uses Multicast addresses (224.0.0.9,
224.0.0.10) so that non-OSPF devices can ignore
the packets
38The HELLO packet
HELLO
HELLO
HELLO
- Router priority
- Hello interval
- Router dead interval
- Network mask
- List of neighbors
These must match
39Neighbors
- Bi-directional communication
- Result of OSPF hello packets
- Need not exchange routing information
40Who is adjacent?
- "Adjacent" neighbors exchange routing information
- Not all neighbors are adjacent
- On a point-to-point link
- everyone
- On broadcast medium
- not everyone
- why?
41Broadcast neighbors
Order of N2 adjacencies
A
B
C
D
42Broadcast medium
- Select a neighbor Designated Router (DR)
- All routers become adjacent to DR
- Exchange routing information with the DR
- DR updates all the other neighbors
- Scales
- Adjacencies reduced from N2 to 2N
- Backup Designated Router (BDR)
43LSAs propagate along adjacencies
DR
BDR
44Other nice features of OSPF
- Authentication (optional)
- Equal-cost multipath
- more than one "best" path - share traffic
- Proper classless support (CIDR)
- Multiple areas
- For very large networks (gt150 routers)
- Aggregate routes across area boundaries
- Keep route flaps within an area
- Proper use of areas reduce bandwidth and CPU
utilisation - Backbone is Area 0
45Cisco OSPF commands and configuration
- show ip route
- show ip ospf neighbor
- show ip ospf database
46Configuring OSPF
- router ospf ltprocess-idgt
- network x.x.x.x m.m.m.m area ltarea-idgt
- m.m.m.m wildcard mask
- 0 dont care bit
- 1 check bit
- 0.0.0.0 mask for exact match
- network 203.167.177.10 0.0.0.0 area 0
- network 203.167.177.0 0.0.0.255 area 0
47Classroom Layout
A
B
Router
PC
Router
PC
C
D
PC
Router
PC
Router
F
E
PC
Router
PC
Router
G
H
PC
Router
PC
Router
I
J
PC
Router
PC
Router
SWITCH
48Serial Links for exercise
A
B
133.27.162.96/28
133.27.162.112/28
133.27.162.48/30
133.27.162.60/30
C
D
133.27.162.128/28
133.27.162.144/28
F
E
133.27.162.16/28
133.27.162.160/28
133.27.162.176/28
133.27.162.52/30
133.27.162.64/30
G
H
133.27.162.192/28
133.27.162.208/28
I
J
133.27.162.224/28
133.27.162.240/28
133.27.162.56/30