Routing Concept

Download Report

Transcript Routing Concept

Routing Concept
Sirak Kaewjamnong
Computer Network Tech and Security
Agenda
• Basic concepts
• Routing components
• Classes of routing protocol
• Internet routing protocol
2
What’s Routing
Routing - path finding from one end to the
other
• Routing occurs at layer 3
• Bridging occurs at layer 2
Application layer
Application layer
Presentation layer
Presentation layer
Session layer
Session layer
Transport layer
Transport layer
Network layer
Network layer
Network layer
Data link layer
Data link layer
Data link layer
Physical link
Physical link
Physical link
Network A
Network B
3
IP Routing
• IP performs:
• search for a matching host address
• search for a matching network address
• search for a default entry
• Routing done by IP router, when it searches the
routing table and decide which interface to end a
packet out.
incoming
which interface ?
4
Routing Tables
• Routing is carried out in a router by consulting
routing table.
• No unique format for routing tables, typically
table contains:
–
–
–
–
–
address of a destination
IP address of next hop router
network interface to be used
subnet mask for the this interface
distance to the destination
5
Routing Component
• Three important routing elements :
– algorithm
– database
– protocol
• Algorithm : can be differentiate based on several
key characteristics
• Database : table in routers or routing table
• Protocol: the way information for routing to be
gathered and distributed
6
Routing Algorithm
Design goals
• Optimality - compute the best route
• Simplicity/low overhead - efficient with a
minimum software and utilization overhead
• Robustness/stability- perform correctly in the face
of unusual circumstances
• Rapid convergence- responds quickly when the
network changes
• Flexibility- accurate adapt to a variety of network
7
Routing Protocols
• Routing protocol : protocol to exchange of
information between routers about the current
state of the network
• Routing protocol jobs
– create routing table entries
– keep routing table up-to-date
– compute the best choice for the next hop router
8
Routing Metrics
• How do we decide that one route is better than
another?
• Solution : using a metric as a measurement to
compare routes
• Metrics may be distance, throughput, delay, error
rate, and cost.
• Today, IP supports Delay, Throughput, Reliability
and Cost (DTRC)
9
Hop Count
• A hop is defined as a passage through one router
2 hops
1 hop
1 hop
R1
R2
1 hop
1 hop
R3
10
Routing Algorithm Types
•
•
•
•
Static V.S. Dynamic
Source routing V.S. Hop-by-hop
Centralize V.S. Distributed
Distance vector V.S. Link state
11
Routing Algorithm: Static Route
• Manually configuration routing table
• Can’t react dynamically to network change such as
router’s crash
• Work well with small network or simple topology
• Unix hosts use command route to add an entry
point to point
connection
route to this
way only, no need
for update
12
Routing Algorithm: Static Technique
Flooding
•
•
•
•
Every incoming packet is sent out every outgoing
Retransmit on all outgoing at each node
Simple technique, require no network information
Generate vast numbers of duplicate packet
flooding
incoming
13
Routing Algorithm: Dynamic Route
Dynamic route
• Network protocol adjusts automatically for
topology or traffic changes
• Unix hosts run routing daemon routed or gated
14
Routing Algorithm: Dynamic Route operation
• Routing protocol maintains and distributes
routing information
Routing
Protocol
Routing
Table
Routing
Table
Routing
Protocol
Update Routing Information
15
Routing Algorithm: Source Routing
• Source routing
– Source will determine the entire route
– Routers only act as store-forward devices
• Hop-by-hop
– Routers determine the path based on theirs own
calculation
16
Routing Algorithm: Distance Vector
• Distance means routing metric
• Vector means destination
• Flood routing table only to its neighbors
• RIP is an example
• Also known as Bellmann-Ford algorithm or FordFulkerson algorithm
17
Distance Vector Algorithm
• Using hop count as a metric
• Each router periodically sends a copy of its
routing table to neighbors
• send <network X, hopcount Y>
R2
R1
X
W
routing table
W
0
X
0
Y
1
Z
2
R3
Y
routing table
W
1
X
0
Y
0
Z
1
Z
routing table
W
2
X
1
Y
0
Z
0
18
Distance Vector Routing Update
• Step by step from router to router
• Slow convergence
recompute R1’s
routing table
•
recompute R2’s
routing table
•
recompute R3’s
routing table
Œ
R1
R2
R2 sends out
the updated table
•
R3
topology
change
R3 sends out
the updated table
Ž
19
Distance Vector: Broadcast (I)
• The first round
I, 1 hop
J, 1 hop
R1
J, 1 hop
K, 1 hop
M, 1 hop
N, 1 hop
J
I
K
R3
N, 1 hop
O, 1 hop
R2
I, 1 hop
K, 1 hop
L, 1 hop
L
N
R5
M
O
R4
L, 1 hop
M, 1 hop
O 1 hop
20
Distance Vector: Broadcast (II)
• The second round
I, 1 hop
J, 1 hop
K, 2 hops
L, 2 hops
M, 2 hops
N, 2 hops
R1
J, 1 hop
K, 1 hop
M, 1 hop
N, 1 hop
I, 2 hops
L, 2 hops
O, 2 hops
J
I
K
N, 1 hop
O, 1 hop
J, 2 hops
K, 2 hops
M, 1 hop
L, 2 hops
R3
R2
I, 1 hop
K, 1 hop
L, 1 hop
J, 2 hops
M, 2 hops
N, 2 hops
O, 2 hops
L
N
R5
M
O
R4
L, 1 hop
M, 1 hop
O, 1 hop
I, 2 hops
K, 2 hops
J, 2 hops
N, 2 hops
21
Distance Vector: Broadcast (III)
• The third round
I, 1 hop
J, 1 hop
K, 2 hops
L, 2 hops
M, 2 hops
N, 2 hops
O, 3 hops
R1
J, 1 hop
K, 1 hop
M, 1 hop
N, 1 hop
I, 2 hops
L, 2 hops
O, 2 hops
J
I
K
R3
N, 1 hop
O, 1 hop
J, 2 hops
K, 2 hops
M, 1 hop
L, 2 hops
I, 3 hops
R2
I, 1 hop
K, 1 hop
L, 1 hop
J, 2 hops
M, 2 hops
N, 2 hops
O, 2 hops
L
N
R5
M
O
R4
L, 1 hop
M, 1 hop
O, 1 hop
I, 2 hops
K, 2 hops
J, 2 hops
N, 2 hops
22
Distance Vector: Crashed Recovery
• R3 crashed
R1
• New complete route of R1
R2
J
I
K
R3
R1 routing table
net
I
J
K
L
M
N
O
hop
1
1
2
2
2
2
3
via
N/A
N/A
R2
R2
R3
R3
R5
L
M
N
R5
O
net
I
J
K
L
M
N
O
hop
1
1
2
2
3
4
3
via
N/A
N/A
R2
R2
R2
R2
R2
R4
23
Count to Infinity
• R2 does not hear any thing from R3
• R1 says : don’t worry, I can reach R3 in 2 hops,
R2 update hop count to 3
• R1 sees R2’s update, then update itself to 4 and so
on……
R3 crashed
R1
2
2
4
4
I
R2
J
1
3
3
5
initial
1st round
2nd round
3rd round
R3
hop count to R3
24
Split Horizon
• Solve by set distance “16” as infinity
• No destination can be more than 15 hops away
from any other
• Distance to X is not reported on the line that
packet for X are sent
• Actually, it reports with infinity
R1
to R3
I
R2
J
R3
R3 crashed
to R3
25
Dijkstra’s Shortest Path First Algorithm
• Routers send out update messages whenever the
state of a link changes. Hence the name: “Link
State” algorithm.
• Each router calculates lowest cost path to all
others, starting from itself.
• At each step of the algorithm, router adds the next
shortest (i.e. lowest-cost) path to the tree.
• Finds spanning tree routed on source router.
26
Open Shortest Path First (OSPF)
• RIP limited in large internets
• OSPF preferred interior routing protocol for
TCP/IP based internets
• Link state routing used
27
Routing Algorithm: Link State
• Flood routing information to all nodes
• Each router finds who is up and flood this
information to the entire routers
• Use the link state to build a shortest path map to
everybody
• OSPF is an example
• Also known as Shortest Path First (SPF) algorithm
28
Flooding
• Packet sent by source router to every neighbor
• Incoming packet resent to all outgoing links
except source link
• Duplicate packets already transmitted are
discarded
– Prevent incessant retransmission
• All possible routes tried so packet will get through
if route exists
– Highly robust
• At least one packet follows minimum delay route
– Reach all routers quickly
• All nodes connected to source are visited
– All routers get information to build routing table
• High traffic load
29
Link State Overview
• Using cost as a metric
• Exchange its connection and cost to its neighbors
• Each router compute the set of optimum path to all
destination (Shortest Path First)
X
W
link state
W
0
X
0
Z
Y
link state
X
0
Y
0
link state
Y
0
Z
0
30
Link State Concept
• Each router initially begins with directly
connected network
• Determine full knowledge of distant routers and
theirs connection
R1
Œ
R2
•
exchange link
state packets
R4
build topological
database
R3
Routing
Table
Ž
compute SPF
•
update routing
table
31
Link State Routing Update
• Send information to other routers
• Fast convergence
R1
R4
topology
change
R2
R3
32
OSPF Overview
• Router maintains descriptions of state of
local links
• Transmits updated state information to all
routers it knows about
• Router receiving update must acknowledge
– Lots of traffic generated
• Each router maintains database
– Directed graph
33
Link Costs
• Cost of each hop in each direction is called
routing metric
• OSPF provides flexible metric scheme
based on type of service (TOS)
–
–
–
–
–
Normal (TOS) 0
Minimize monetary cost (TOS 2)
Maximize reliability (TOS 4)
Maximize throughput (TOS 8)
Minimize delay (TOS 16)
34
Areas
• Make large internets more manageable
• Configure as backbone and multiple areas
• Area – Collection of contiguous networks
and hosts plus routers connected to any
included network
• Backbone – contiguous collection of
networks not contained in any area, their
attached routers and routers belonging to
multiple areas
35
Operation of Areas
• Each are runs a separate copy of the link
state algorithm
– Topological database and graph of just that area
– Link state information broadcast to other
routers in area
– Reduces traffic
– Intra-area routing relies solely on local link
state information
36
Comparison
Distance Vector
Link State
pass a copy of
whole routing table
pass links state update
add metric from
router to router
calculate the shortest path
to other routers
frequent periodic update:
slow convergence
event updated: fast
convergence
37
Internet Routing Architecture
Autonomous
System
EGP/BGP
IGP
IGP
EGP/BGP
IGP
Autonomous
System
BGP4
BGP4
IGP
EGP/BGP
BGP4
EGP/BGP
IGP
IGP
Autonomous
System
Autonomous
System
IGP
EGP/BGP
IGP
EGP/BGP
Autonomous
System
IGP
38
Routing in the Internet
The Internet uses hierarchical routing
• The Internet is split into Autonomous Systems (AS’s)
• Within an AS, the administrator chooses an Interior
Gateway Protocol (IGP)
• Examples of IGPs: RIP (rfc 1058), OSPF (rfc 1247).
• Between AS’s, the Internet uses an Exterior Gateway
Protocol
• AS’s today use the Border Gateway Protocol, BGP-4 (rfc
1771)
39
Autonomous System
• AS is a collectionof LANs and WANs and the
interconnectting routers which under the control of
one management authority
• The same AS runs the same Interior Gateway
Protocol
• Why setting up AS? - establish a direct link to
each other rather than route through the core
Internet
• How to select AS? - register and get the AS
number from IAB
40
Gateway Protocol
• Interior gateway protocol
– exchange routing information between routers
within a single AS
– RIP, RIP II, OSPF
• Exterior gateway protocol
– collect network-reachablity information for the
AS
– EGP, BGP
41
Interior Routing Protocols
• RIP
• Uses distributed Bellman-Ford algorithm.
• Updates sent every 30 seconds.
• No authentication.
• Originally in BSD UNIX.
• OSPF
• Link-state updates sent (using flooding) as and when
required.
• Every router runs Dijkstra’s algorithm.
• Authenticated updates.
• Autonomous system may be partitioned into “areas”.
42
Exterior Routing Protocols
Problems:
• Topology: The Internet is a complex mesh of different
AS’s with very little structure.
• Autonomy of AS’s: Each AS defines link costs in
different ways, so not possible to find lowest cost paths.
• Trust: Some AS’s can’t trust others to advertise good
routes (e.g. two competing backbone providers), or to
protect the privacy of their traffic (e.g. two warring
nations).
• Policies: Different AS’s have different objectives (e.g.
route over fewest hops; use one provider rather than
another).
43
Border Gateway Protocol (BGP-4)
• BGP is not a link-state or distance-vector routing
protocol.
• BGP advertises complete paths (a list of AS’s).
• Example of path advertisement:
• “The network 171.64/16 can be reached via the path
{AS1, AS5, AS13}”.
• Paths with loops are detected locally and ignored.
• Local policies pick the preferred path among
options.
• When a link/router fails, the path is “withdrawn”.
44
References
• http://www.cisco.com/en/US/products/hw/routers/ps
274/index.html
• http://www.cisco.com/en/US/products/hw/routers/ps
274/products_data_sheet09186a008010fba1.html
• Computer Networks with Internet Technology
By William Stallings Chapter 11 Interior Routing Protocols
45