SlideShare a Scribd company logo
Computer Networks: Routing 1
Network Layer
Routing
Computer Networks: Routing 2
Network Layer
• Concerned with getting packets from source to
destination.
• The network layer must know the topology of the
subnet and choose appropriate paths through it.
• When source and destination are in different
networks, the network layer (IP) must deal with
these differences.
* Key issue: what service does the network layer
provide to the transport layer (connection-
oriented or connectionless).
Computer Networks: Routing 3
Network Layer Design Goals
1. The services provided by the network layer
should be independent of the subnet topology.
2. The Transport Layer should be shielded from the
number, type and topology of the subnets
present.
3. The network addresses available to the
Transport Layer should use a uniform
numbering plan (even across LANs and WANs).
Computer Networks: Routing 4
Figure 7.2
Physical
layer
Data link
layer
Physical
layer
Data link
layer
End system
a
Network
layer
Physical
layer
Data link
layer
Physical
layer
Data link
layer
Transport
layer
Transport
layer
Messages
Messages
Segments
End system
b
Network
service
Network
service
Copyright ©2000 The McGraw Hill Companies Leon-Garcia & Widjaja: Communication Networks
Network
layer
Network
layer
Network
layer
Computer Networks: Routing 5
Application
Transport
Internet
Network
Interface
Application
Transport
Internet
Internet
Network 1 Network 2
Machine A Machine B
Router/Gateway
Network
Interface
Network
Interface
Figure 8.3
Computer Networks: Routing 6
R
R
R
R
S
S
S
s
s
s
s
s
s
s
s
s
s
R
s
R
Backbone
To internet or
wide area
network
Organization
Servers
Gateway
Departmental
Server
Figure 7.6
Copyright ©2000 The McGraw Hill Companies
Leon-Garcia & Widjaja: Communication Networks
Metropolitan Area
Network (MAN)
Computer Networks: Routing 7
Interdomain level
Intradomain level
LAN level
Autonomous system
or domain
Border routers
Border routers
Figure 7.7
Internet service
provider
Copyright ©2000 The McGraw Hill Companies
Leon-Garcia & Widjaja: Communication Networks
Wide Area Network
(WAN)
Computer Networks: Routing 8
RA
RB
RC
Route
server
NAP
National service provider A
National service provider B
National service provider C
LAN
NAP
NAP
(a)
(b)
Figure 7.8
Copyright ©2000 The McGraw Hill Companies
Leon-Garcia & Widjaja: Communication Networks
National ISPs
Network Access
Point
Computer Networks: Routing 9
Packet 2
Packet 1
Packet 1
Packet 2
Packet 2
Figure 7.15
Copyright ©2000 The McGraw Hill Companies Leon-Garcia & Widjaja: Communication Networks
Computer Networks: Routing 10
Destination
address
Output
port
1345 12
2458
7
0785
6
12
1566
Figure 7.16
Copyright ©2000 The McGraw Hill Companies
Leon-Garcia & Widjaja: Communication Networks
Computer Networks: Routing 11
Packet
Packet
Figure 7.17
Copyright ©2000 The McGraw Hill Companies Leon-Garcia & Widjaja: Communication Networks
Computer Networks: Routing 12
Identifier Output
port
15 15
58
13
13
7
27
12
Next
identifier
44
23
16
34
Entry for packets
with identifier 15
Figure 7.21
Copyright ©2000 The McGraw Hill Companies
Leon-Garcia & Widjaja: Communication Networks
Computer Networks: Routing 13
Routing
Routing algorithm:: that part of the Network
Layer responsible for deciding on which
output line to transmit an incoming packet.
Remember: For virtual circuit subnets the
routing decision is made ONLY at set up.
Algorithm properties:: correctness, simplicity,
robustness, stability, fairness, optimality, and
scalability.
Computer Networks: Routing 14
Routing Classification
Adaptive Routing
• based on current measurements
of traffic and/or topology.
1. centralized
2. isolated
3. distributed
Non-Adaptive Routing
• routing computed in advance
and off-line
1. flooding
2. static routing
using shortest path
algorithms
Computer Networks: Routing 15
Flooding
• Pure flooding :: every incoming packet to a
node is sent out on every outgoing line.
– Obvious adjustment – do not send out on
arriving link (assuming full-duplex links).
– The routing algorithm can use a hop counter
(e.g., TTL) to dampen the flooding.
– Selective flooding :: only send on those lines
going “approximately” in the right direction.
Computer Networks: Routing 16
Shortest Path Routing
1. Bellman-Ford Algorithm [Distance Vector]
2. Dijkstra’s Algorithm [Link State]
What does it mean to be the shortest (or optimal)
route?
Choices:
a. Minimize the number of hops along the path.
b. Minimize mean packet delay.
c. Maximize the network throughput.
Computer Networks: Routing 17
Possible Metrics
• Set all link costs to 1.
– Shortest hop routing.
– Disregards delay and capacity differences on
links!
{Original ARPANET}
• Measure the number of packets queued to
be transmitted on each link.
– Did not work well.
Computer Networks: Routing 18
Metrics
{Second ARPANET}
• Timestamp each arriving packet with its
ArrivalTime and record DepartTime* and use
link-level ACK to compute:
Delay = (DepartTime – ArrivalTime) +
TransmissionTime + Latency
• The weight assigned to each link was average
delay over ‘recent’ packets sent.
• This algorithm tended to oscillate – leading to
idle periods and instability.
* Reset after retransmission
Computer Networks: Routing 19
Metrics
{Revised ARPANET}
– Compress dynamic range of the metric to
account for link type
– Smooth the variation of metric with time:
• Delay transformed into link utilization
• Utilization was then averaged with last reported
utilization to deal with spikes.
• Set a hard limit on how much the metric could
change per measurement cycle.
Computer Networks: Routing 20
Dijkstra’s Shortest Path Algorithm
Initially mark all nodes (except source) with infinite distance.
working node = source node
Sink node = destination node
While the working node is not equal to the sink
1. Mark the working node as permanent.
2. Examine all adjacent nodes in turn
If the sum of label on working node plus distance from working node to adjacent
node is less than current labeled distance on the adjacent node, this implies a
shorter path. Relabel the distance on the adjacent node and label it with the node
from which the probe was made.
3. Examine all tentative nodes (not just adjacent nodes) and
mark the node with the smallest labeled value as permanent.
This node becomes the new working node.
Reconstruct the path backwards from sink to source.
Computer Networks: Routing 21
Internetwork Routing [Halsall]
Adaptive Routing
Centralized Distributed
Intradomain routing Interdomain routing
Distance Vector routing Link State routing
[IGP] [EGP]
[BGP,IDRP]
[OSPF,IS-IS,PNNI]
[RIP]
[RCC]
Interior
Gateway Protocols
Exterior
Gateway Protocols
Isolated
Computer Networks: Routing 22
Adaptive Routing
Design Issues:
1. How much overhead is incurred due to
gathering the routing information and
sending routing packets?
2. What is the time frame (i.e, the frequency)
for sending routing packets in support of
adaptive routing?
3. What is the complexity of the routing
strategy?
Computer Networks: Routing 23
Adaptive Routing
Basic functions:
1. Measurement of pertinent network data.
2. Forwarding of information to where the
routing computation will be done.
3. Compute the routing tables.
4. Convert the routing table information into
a routing decision and then dispatch
the data packet.
Centralized Routing
RCC
Computer Networks: Routing 25
Distance Vector Routing
• Historically known as the old ARPANET routing
algorithm {or known as Bellman-Ford
algorithm}.
Basic idea: each network node maintains a Distance
Vector table containing the distance between
itself and ALL possible destination nodes.
• Distances are based on a chosen metric and are
computed using information from the neighbors’
distance vectors.
Metric: usually hops or delay
Computer Networks: Routing 26
Distance Vector Routing
Information kept by DV router
1. each router has an ID
2. associated with each link connected to a router,
there is a link cost (static or dynamic).
Distance Vector Table Initialization
Distance to itself = 0
Distance to ALL other routers = infinity number
Computer Networks: Routing 27
Distance Vector Algorithm
[Perlman]
1. A router transmits its distance vector to each of its
neighbors in a routing packet.
2. Each router receives and saves the most recently
received distance vector from each of its
neighbors.
3. A router recalculates its distance vector when:
a. It receives a distance vector from a neighbor containing
different information than before.
b. It discovers that a link to a neighbor has gone down (i.e., a
topology change).
The DV calculation is based on minimizing the cost
to each destination.
Computer Networks: Routing 28
Distance Vector Routing
Figure 5-9.(a) A subnet. (b) Input from A, I, H, K, and the
new routing table for J.
Computer Networks: Routing 29
Routing Information Protocol
(RIP)
• RIP had widespread use because it was distributed
with BSD Unix in “routed”, a router management
daemon.
• RIP is the most used Distance Vector protocol.
• RFC1058 in June 1988.
• Sends packets every 30 seconds or faster.
• Runs over UDP.
• Metric = hop count
• BIG problem is max. hop count =16
 RIP limited to running on small networks!!
• Upgraded to RIPv2
Computer Networks: Routing 30
Figure 4.17 RIP Packet Format
Address of net 2
Distance to net 2
Command Must be zero
Family of net 2 Address of net 2
Family of net 1 Address of net 1
Address of net 1
Distance to net 1
Version
0 8 16 31
(network_address,
distance)
pairs
P&D slide
Computer Networks: Routing 31
Link State Algorithm
1. Each router is responsible for meeting its neighbors
and learning their names.
2. Each router constructs a link state packet (LSP) which
consists of a list of names and cost to reach each of its
neighbors.
3. The LSP is transmitted to ALL other routers. Each
router stores the most recently generated LSP from
each other router.
4. Each router uses complete information on the network
topology to compute the shortest path route to
each destination node.
Computer Networks: Routing 32
Figure 4.18 Reliable LSP Flooding
(a)
X A
C B D
(b)
X A
C B D
(c)
X A
C B D
(d)
X A
C B D
P&D slide
Computer Networks: Routing 33
Reliable Flooding
• The process of making sure all the nodes
participating in the routing protocol get a copy of
the link-state information from all the other
nodes.
• LSP contains:
– Sending router’s node ID
– List of connected neighbors with the
associated link cost to each neighbor
– Sequence number
– Time-to-live (TTL)
Computer Networks: Routing 34
Reliable Flooding
• First two items enable route calculation
• Last two items make process reliable
– ACKs and checking for duplicates is needed.
• Periodic Hello packets used to determine
the demise of a neighbor.
• The sequence numbers are not expected to
wrap around.
– this field needs to be large (64 bits)
Computer Networks: Routing 35
Open Shortest Path First
(OSPF)
• Provides for authentication of routing
messages.
– 8-byte password designed to avoid
misconfiguration.
• Provides additional hierarchy
– Domains are partitioned into areas.
– This reduces the amount of information
transmitted in packet.
• Provides load-balancing via multiple routes.
Computer Networks: Routing 36
Open Shortest Path First
(OSPF)
Area 1
Area 0
Area 3
Area 2
R9
R8
R7
R1
R5
R6
R4
R3
R2
Figure 4.32 A Domain divided into Areas
P&D slide
Backbone
area
Computer Networks: Routing 37
Open Shortest Path First
(OSPF)
• OSPF runs on top of IP, i.e., an OSPF packet is
transmitted with IP data packet header.
• Uses Level 1 and Level 2 routers
• Has: backbone routers, area border routers, and
AS boundary routers
• LSPs referred to as LSAs (Link State
Advertisements)
• Complex algorithm due to five distinct LSA
types.
Computer Networks: Routing 38
OSPF Terminology
Internal router :: a level 1 router.
Backbone router :: a level 2 router.
Area border router (ABR) :: a backbone router
that attaches to more than one area.
AS border router :: (an interdomain router),
namely, a router that attaches to routers
from other ASs across AS boundaries.
Computer Networks: Routing 39
OSPF LSA Types
1. Router link advertisement [Hello message]
2. Network link advertisement
3. Network summary link advertisement
4. AS border router’s summary link
advertisement
5. AS external link advertisement
Computer Networks: Routing 40
Figure 4.21 OSF Type 1 Link-State
Advertisement
LS Age Options Type=1
0 Flags 0 Number of links
Link type Num_TOS Metric
Link-state ID
Advertising router
LS sequence number
Link ID
Link data
Optional TOS information
More links
LS checksum Length
P&D slide
Indicates
LSA type
Indicates
link cost
Computer Networks: Routing 41
Area 0.0.0.1
Area 0.0.0.2
Area 0.0.0.3
R1
R2
R3
R4
R5
R6 R7
R8
N1
N2
N3
N4
N5
N6
N7
To another AS
Area 0.0.0.0
R = router
N = network
Figure 8.33
Copyright ©2000 The McGraw Hill Companies Leon-Garcia & Widjaja: Communication Networks
OSPF Areas
[AS Border router]
ABR
Computer Networks: Routing 42
OSPF
Figure 5-65.The relation between ASes, backbones,
and areas in OSPF. Tanenbaum slide
Computer Networks: Routing 43
Border Gateway Protocol
(BGP)
• The replacement for EGP is BGP. Current version
is BGP-4.
• BGP assumes the Internet is an arbitrary
interconnected set of AS’s.
• In interdomain routing the goal is to find ANY
path to the intended destination that is loop-free.
The protocols are more concerned with
reachability than optimality.

More Related Content

PPT
routing-Network182912222222222918298181.ppt
PPT
routing algorithms in computer Networks.ppt
PPTX
Network Layer
PPTX
Network Layer
PPTX
Network layer new
PPTX
Computer networks for cse Unit-3 (1).pptx
PPTX
Module 3 Part B - computer networks module 2 ppt
PPT
Routing.pptbbbbbbbbbbbbbbbbbbbbbnbbnbbbbnbb
routing-Network182912222222222918298181.ppt
routing algorithms in computer Networks.ppt
Network Layer
Network Layer
Network layer new
Computer networks for cse Unit-3 (1).pptx
Module 3 Part B - computer networks module 2 ppt
Routing.pptbbbbbbbbbbbbbbbbbbbbbnbbnbbbbnbb

Similar to destination. The network layer must know the topology of the subnet and choose appropriate paths through it. When source and destination are in different networks, the network layer (IP) must deal with these differences (20)

PDF
Understanding Network Routing Problem and Study of Routing Algorithms and Heu...
PPT
Network layer
PPT
NETWORK LAYER.ppt
PPT
Routing
PPT
Unit-3-Part-1 [Autosaved].ppt
PPT
Routing
PPT
QSpiders - Good to Know Network Concepts
PDF
routing
PPTX
computer communications
PPTX
Chapter Four - Network Layer.pptx
PDF
introduction to network and computer security
PPT
Chapter07
PPT
module10-rip (1).ppt
PPT
ConfigureTwo networks principle
PDF
COMPUTER NETWORKS CHAPTER 3 NETWORK LAYER NOTES CSE 3RD year sem 1
PPT
Intro 2 Computer Networks
PPT
Introduction to Computer Networks
PPT
Powerpoint one
PPT
Powerpoint one
PPT
11-RoutingThe development of wireless systems traces its roots .ppt
Understanding Network Routing Problem and Study of Routing Algorithms and Heu...
Network layer
NETWORK LAYER.ppt
Routing
Unit-3-Part-1 [Autosaved].ppt
Routing
QSpiders - Good to Know Network Concepts
routing
computer communications
Chapter Four - Network Layer.pptx
introduction to network and computer security
Chapter07
module10-rip (1).ppt
ConfigureTwo networks principle
COMPUTER NETWORKS CHAPTER 3 NETWORK LAYER NOTES CSE 3RD year sem 1
Intro 2 Computer Networks
Introduction to Computer Networks
Powerpoint one
Powerpoint one
11-RoutingThe development of wireless systems traces its roots .ppt
Ad

More from Ashish Gupta (19)

PPTX
independent of the subnet topology. The Transport Layer should be shielded fr...
PPTX
Link state Distance Vector Hierarchical routing 4.6 Routing in the Internet
PPTX
Internet Protocol Datagram format IPv4 addressing NAT ICMP IPv6
PPTX
ML) is a subdomain of artificial intelligence (AI) that focuses on developing...
PPTX
Layer should be shielded from the number, type and topology of the subnets pr...
PPTX
network layer service models forwarding versus routing how a router works rou...
PPTX
Virtual circuit and datagram networks 4.3 What’s inside a router 4.4 IP: Inte...
PPTX
services: network layer service models forwarding versus routing how a router...
PPTX
on sending side encapsulates segments into datagrams on rcving side, deliver...
PPTX
network layer service models forwarding versus routing how a router works rou...
PPTX
understand principles behind network layer services: network layer service mo...
PPTX
Presentation1.Machine learning, Supervised, semi supervised learning, cluste...
PPTX
packets between same source-dest pair may take different paths
PPTX
on sending side encapsulates segments into datagrams
PPTX
The services provided by the network layer should be independent of the subne...
PPTX
yturi900.pptx
PDF
interpolation-170509191157.pdf
PDF
Stat 4325IS.pdf
PDF
17545489052556.pdf
independent of the subnet topology. The Transport Layer should be shielded fr...
Link state Distance Vector Hierarchical routing 4.6 Routing in the Internet
Internet Protocol Datagram format IPv4 addressing NAT ICMP IPv6
ML) is a subdomain of artificial intelligence (AI) that focuses on developing...
Layer should be shielded from the number, type and topology of the subnets pr...
network layer service models forwarding versus routing how a router works rou...
Virtual circuit and datagram networks 4.3 What’s inside a router 4.4 IP: Inte...
services: network layer service models forwarding versus routing how a router...
on sending side encapsulates segments into datagrams on rcving side, deliver...
network layer service models forwarding versus routing how a router works rou...
understand principles behind network layer services: network layer service mo...
Presentation1.Machine learning, Supervised, semi supervised learning, cluste...
packets between same source-dest pair may take different paths
on sending side encapsulates segments into datagrams
The services provided by the network layer should be independent of the subne...
yturi900.pptx
interpolation-170509191157.pdf
Stat 4325IS.pdf
17545489052556.pdf
Ad

Recently uploaded (20)

PDF
School Leaders Revised Training Module, SCB.pdf
PPTX
Green Modern Sustainable Living Nature Presentation_20250226_230231_0000.pptx
PPTX
Topic Globalisation and Lifelines of National Economy (1).pptx
DOCX
Epoxy Coated Steel Bolted Tanks for Beverage Wastewater Storage Manages Liqui...
PDF
Bai bao Minh chứng sk2-DBTrong-003757.pdf
PPTX
Plant_Cell_Presentation.pptx.com learning purpose
PPTX
structure and components of Environment.pptx
DOCX
D-360 ESG Series: Sustainable Hospitality Strategies for a Greener Future
PDF
Urban Hub 50: Spirits of Place - & the Souls' of Places
PPTX
Disposal Of Wastes.pptx according to community medicine
PPTX
Environmental Ethics: issues and possible solutions
PPTX
Making GREEN and Sustainable Urban Spaces
PPT
Compliance Monitoring report CMR presentation.ppt
PDF
The Role of Non-Legal Advocates in Fighting Social Injustice.pdf
PDF
Lecture 2 investigation of renal diseses.pdf
PPTX
Conformity-and-Deviance module 7 ucsp grade 12
PDF
Insitu conservation seminar , national park ,enthobotanical significance
PDF
Tree Biomechanics, a concise presentation
PDF
Ornithology-Basic-Concepts.pdf..........
PDF
The Truth Behind Vantara zoo in Jamnagar
School Leaders Revised Training Module, SCB.pdf
Green Modern Sustainable Living Nature Presentation_20250226_230231_0000.pptx
Topic Globalisation and Lifelines of National Economy (1).pptx
Epoxy Coated Steel Bolted Tanks for Beverage Wastewater Storage Manages Liqui...
Bai bao Minh chứng sk2-DBTrong-003757.pdf
Plant_Cell_Presentation.pptx.com learning purpose
structure and components of Environment.pptx
D-360 ESG Series: Sustainable Hospitality Strategies for a Greener Future
Urban Hub 50: Spirits of Place - & the Souls' of Places
Disposal Of Wastes.pptx according to community medicine
Environmental Ethics: issues and possible solutions
Making GREEN and Sustainable Urban Spaces
Compliance Monitoring report CMR presentation.ppt
The Role of Non-Legal Advocates in Fighting Social Injustice.pdf
Lecture 2 investigation of renal diseses.pdf
Conformity-and-Deviance module 7 ucsp grade 12
Insitu conservation seminar , national park ,enthobotanical significance
Tree Biomechanics, a concise presentation
Ornithology-Basic-Concepts.pdf..........
The Truth Behind Vantara zoo in Jamnagar

destination. The network layer must know the topology of the subnet and choose appropriate paths through it. When source and destination are in different networks, the network layer (IP) must deal with these differences

  • 1. Computer Networks: Routing 1 Network Layer Routing
  • 2. Computer Networks: Routing 2 Network Layer • Concerned with getting packets from source to destination. • The network layer must know the topology of the subnet and choose appropriate paths through it. • When source and destination are in different networks, the network layer (IP) must deal with these differences. * Key issue: what service does the network layer provide to the transport layer (connection- oriented or connectionless).
  • 3. Computer Networks: Routing 3 Network Layer Design Goals 1. The services provided by the network layer should be independent of the subnet topology. 2. The Transport Layer should be shielded from the number, type and topology of the subnets present. 3. The network addresses available to the Transport Layer should use a uniform numbering plan (even across LANs and WANs).
  • 4. Computer Networks: Routing 4 Figure 7.2 Physical layer Data link layer Physical layer Data link layer End system a Network layer Physical layer Data link layer Physical layer Data link layer Transport layer Transport layer Messages Messages Segments End system b Network service Network service Copyright ©2000 The McGraw Hill Companies Leon-Garcia & Widjaja: Communication Networks Network layer Network layer Network layer
  • 5. Computer Networks: Routing 5 Application Transport Internet Network Interface Application Transport Internet Internet Network 1 Network 2 Machine A Machine B Router/Gateway Network Interface Network Interface Figure 8.3
  • 6. Computer Networks: Routing 6 R R R R S S S s s s s s s s s s s R s R Backbone To internet or wide area network Organization Servers Gateway Departmental Server Figure 7.6 Copyright ©2000 The McGraw Hill Companies Leon-Garcia & Widjaja: Communication Networks Metropolitan Area Network (MAN)
  • 7. Computer Networks: Routing 7 Interdomain level Intradomain level LAN level Autonomous system or domain Border routers Border routers Figure 7.7 Internet service provider Copyright ©2000 The McGraw Hill Companies Leon-Garcia & Widjaja: Communication Networks Wide Area Network (WAN)
  • 8. Computer Networks: Routing 8 RA RB RC Route server NAP National service provider A National service provider B National service provider C LAN NAP NAP (a) (b) Figure 7.8 Copyright ©2000 The McGraw Hill Companies Leon-Garcia & Widjaja: Communication Networks National ISPs Network Access Point
  • 9. Computer Networks: Routing 9 Packet 2 Packet 1 Packet 1 Packet 2 Packet 2 Figure 7.15 Copyright ©2000 The McGraw Hill Companies Leon-Garcia & Widjaja: Communication Networks
  • 10. Computer Networks: Routing 10 Destination address Output port 1345 12 2458 7 0785 6 12 1566 Figure 7.16 Copyright ©2000 The McGraw Hill Companies Leon-Garcia & Widjaja: Communication Networks
  • 11. Computer Networks: Routing 11 Packet Packet Figure 7.17 Copyright ©2000 The McGraw Hill Companies Leon-Garcia & Widjaja: Communication Networks
  • 12. Computer Networks: Routing 12 Identifier Output port 15 15 58 13 13 7 27 12 Next identifier 44 23 16 34 Entry for packets with identifier 15 Figure 7.21 Copyright ©2000 The McGraw Hill Companies Leon-Garcia & Widjaja: Communication Networks
  • 13. Computer Networks: Routing 13 Routing Routing algorithm:: that part of the Network Layer responsible for deciding on which output line to transmit an incoming packet. Remember: For virtual circuit subnets the routing decision is made ONLY at set up. Algorithm properties:: correctness, simplicity, robustness, stability, fairness, optimality, and scalability.
  • 14. Computer Networks: Routing 14 Routing Classification Adaptive Routing • based on current measurements of traffic and/or topology. 1. centralized 2. isolated 3. distributed Non-Adaptive Routing • routing computed in advance and off-line 1. flooding 2. static routing using shortest path algorithms
  • 15. Computer Networks: Routing 15 Flooding • Pure flooding :: every incoming packet to a node is sent out on every outgoing line. – Obvious adjustment – do not send out on arriving link (assuming full-duplex links). – The routing algorithm can use a hop counter (e.g., TTL) to dampen the flooding. – Selective flooding :: only send on those lines going “approximately” in the right direction.
  • 16. Computer Networks: Routing 16 Shortest Path Routing 1. Bellman-Ford Algorithm [Distance Vector] 2. Dijkstra’s Algorithm [Link State] What does it mean to be the shortest (or optimal) route? Choices: a. Minimize the number of hops along the path. b. Minimize mean packet delay. c. Maximize the network throughput.
  • 17. Computer Networks: Routing 17 Possible Metrics • Set all link costs to 1. – Shortest hop routing. – Disregards delay and capacity differences on links! {Original ARPANET} • Measure the number of packets queued to be transmitted on each link. – Did not work well.
  • 18. Computer Networks: Routing 18 Metrics {Second ARPANET} • Timestamp each arriving packet with its ArrivalTime and record DepartTime* and use link-level ACK to compute: Delay = (DepartTime – ArrivalTime) + TransmissionTime + Latency • The weight assigned to each link was average delay over ‘recent’ packets sent. • This algorithm tended to oscillate – leading to idle periods and instability. * Reset after retransmission
  • 19. Computer Networks: Routing 19 Metrics {Revised ARPANET} – Compress dynamic range of the metric to account for link type – Smooth the variation of metric with time: • Delay transformed into link utilization • Utilization was then averaged with last reported utilization to deal with spikes. • Set a hard limit on how much the metric could change per measurement cycle.
  • 20. Computer Networks: Routing 20 Dijkstra’s Shortest Path Algorithm Initially mark all nodes (except source) with infinite distance. working node = source node Sink node = destination node While the working node is not equal to the sink 1. Mark the working node as permanent. 2. Examine all adjacent nodes in turn If the sum of label on working node plus distance from working node to adjacent node is less than current labeled distance on the adjacent node, this implies a shorter path. Relabel the distance on the adjacent node and label it with the node from which the probe was made. 3. Examine all tentative nodes (not just adjacent nodes) and mark the node with the smallest labeled value as permanent. This node becomes the new working node. Reconstruct the path backwards from sink to source.
  • 21. Computer Networks: Routing 21 Internetwork Routing [Halsall] Adaptive Routing Centralized Distributed Intradomain routing Interdomain routing Distance Vector routing Link State routing [IGP] [EGP] [BGP,IDRP] [OSPF,IS-IS,PNNI] [RIP] [RCC] Interior Gateway Protocols Exterior Gateway Protocols Isolated
  • 22. Computer Networks: Routing 22 Adaptive Routing Design Issues: 1. How much overhead is incurred due to gathering the routing information and sending routing packets? 2. What is the time frame (i.e, the frequency) for sending routing packets in support of adaptive routing? 3. What is the complexity of the routing strategy?
  • 23. Computer Networks: Routing 23 Adaptive Routing Basic functions: 1. Measurement of pertinent network data. 2. Forwarding of information to where the routing computation will be done. 3. Compute the routing tables. 4. Convert the routing table information into a routing decision and then dispatch the data packet.
  • 25. Computer Networks: Routing 25 Distance Vector Routing • Historically known as the old ARPANET routing algorithm {or known as Bellman-Ford algorithm}. Basic idea: each network node maintains a Distance Vector table containing the distance between itself and ALL possible destination nodes. • Distances are based on a chosen metric and are computed using information from the neighbors’ distance vectors. Metric: usually hops or delay
  • 26. Computer Networks: Routing 26 Distance Vector Routing Information kept by DV router 1. each router has an ID 2. associated with each link connected to a router, there is a link cost (static or dynamic). Distance Vector Table Initialization Distance to itself = 0 Distance to ALL other routers = infinity number
  • 27. Computer Networks: Routing 27 Distance Vector Algorithm [Perlman] 1. A router transmits its distance vector to each of its neighbors in a routing packet. 2. Each router receives and saves the most recently received distance vector from each of its neighbors. 3. A router recalculates its distance vector when: a. It receives a distance vector from a neighbor containing different information than before. b. It discovers that a link to a neighbor has gone down (i.e., a topology change). The DV calculation is based on minimizing the cost to each destination.
  • 28. Computer Networks: Routing 28 Distance Vector Routing Figure 5-9.(a) A subnet. (b) Input from A, I, H, K, and the new routing table for J.
  • 29. Computer Networks: Routing 29 Routing Information Protocol (RIP) • RIP had widespread use because it was distributed with BSD Unix in “routed”, a router management daemon. • RIP is the most used Distance Vector protocol. • RFC1058 in June 1988. • Sends packets every 30 seconds or faster. • Runs over UDP. • Metric = hop count • BIG problem is max. hop count =16  RIP limited to running on small networks!! • Upgraded to RIPv2
  • 30. Computer Networks: Routing 30 Figure 4.17 RIP Packet Format Address of net 2 Distance to net 2 Command Must be zero Family of net 2 Address of net 2 Family of net 1 Address of net 1 Address of net 1 Distance to net 1 Version 0 8 16 31 (network_address, distance) pairs P&D slide
  • 31. Computer Networks: Routing 31 Link State Algorithm 1. Each router is responsible for meeting its neighbors and learning their names. 2. Each router constructs a link state packet (LSP) which consists of a list of names and cost to reach each of its neighbors. 3. The LSP is transmitted to ALL other routers. Each router stores the most recently generated LSP from each other router. 4. Each router uses complete information on the network topology to compute the shortest path route to each destination node.
  • 32. Computer Networks: Routing 32 Figure 4.18 Reliable LSP Flooding (a) X A C B D (b) X A C B D (c) X A C B D (d) X A C B D P&D slide
  • 33. Computer Networks: Routing 33 Reliable Flooding • The process of making sure all the nodes participating in the routing protocol get a copy of the link-state information from all the other nodes. • LSP contains: – Sending router’s node ID – List of connected neighbors with the associated link cost to each neighbor – Sequence number – Time-to-live (TTL)
  • 34. Computer Networks: Routing 34 Reliable Flooding • First two items enable route calculation • Last two items make process reliable – ACKs and checking for duplicates is needed. • Periodic Hello packets used to determine the demise of a neighbor. • The sequence numbers are not expected to wrap around. – this field needs to be large (64 bits)
  • 35. Computer Networks: Routing 35 Open Shortest Path First (OSPF) • Provides for authentication of routing messages. – 8-byte password designed to avoid misconfiguration. • Provides additional hierarchy – Domains are partitioned into areas. – This reduces the amount of information transmitted in packet. • Provides load-balancing via multiple routes.
  • 36. Computer Networks: Routing 36 Open Shortest Path First (OSPF) Area 1 Area 0 Area 3 Area 2 R9 R8 R7 R1 R5 R6 R4 R3 R2 Figure 4.32 A Domain divided into Areas P&D slide Backbone area
  • 37. Computer Networks: Routing 37 Open Shortest Path First (OSPF) • OSPF runs on top of IP, i.e., an OSPF packet is transmitted with IP data packet header. • Uses Level 1 and Level 2 routers • Has: backbone routers, area border routers, and AS boundary routers • LSPs referred to as LSAs (Link State Advertisements) • Complex algorithm due to five distinct LSA types.
  • 38. Computer Networks: Routing 38 OSPF Terminology Internal router :: a level 1 router. Backbone router :: a level 2 router. Area border router (ABR) :: a backbone router that attaches to more than one area. AS border router :: (an interdomain router), namely, a router that attaches to routers from other ASs across AS boundaries.
  • 39. Computer Networks: Routing 39 OSPF LSA Types 1. Router link advertisement [Hello message] 2. Network link advertisement 3. Network summary link advertisement 4. AS border router’s summary link advertisement 5. AS external link advertisement
  • 40. Computer Networks: Routing 40 Figure 4.21 OSF Type 1 Link-State Advertisement LS Age Options Type=1 0 Flags 0 Number of links Link type Num_TOS Metric Link-state ID Advertising router LS sequence number Link ID Link data Optional TOS information More links LS checksum Length P&D slide Indicates LSA type Indicates link cost
  • 41. Computer Networks: Routing 41 Area 0.0.0.1 Area 0.0.0.2 Area 0.0.0.3 R1 R2 R3 R4 R5 R6 R7 R8 N1 N2 N3 N4 N5 N6 N7 To another AS Area 0.0.0.0 R = router N = network Figure 8.33 Copyright ©2000 The McGraw Hill Companies Leon-Garcia & Widjaja: Communication Networks OSPF Areas [AS Border router] ABR
  • 42. Computer Networks: Routing 42 OSPF Figure 5-65.The relation between ASes, backbones, and areas in OSPF. Tanenbaum slide
  • 43. Computer Networks: Routing 43 Border Gateway Protocol (BGP) • The replacement for EGP is BGP. Current version is BGP-4. • BGP assumes the Internet is an arbitrary interconnected set of AS’s. • In interdomain routing the goal is to find ANY path to the intended destination that is loop-free. The protocols are more concerned with reachability than optimality.