1
IP - FORWARDING
K. PALANIVEL
Systems Analyst, Computer Centre
Pondicherry University, Puducherry – 605014.
LECTURE 11
COMS 525: TCPIP
COURSE
TOPIC
Part - II
Delivery of an IP datagram
• View at the data link layer:
– Internetwork is a collection of LANs or point-to-
point links or switched networks that are connected
by routers
2
Ethernet
Token
Ring
LAN
Ethernet
H1
R1 R2
R3 R4
H2
Network of
Ethernet
switches
Point-to-point link Point-to-point link
IP
Delivery of an IP datagram
• View at the IP layer:
– An IP network is a logical entity with a network number
– We represent an IP network as a “cloud”
– The IP delivery service takes the view of clouds, and
ignores the data link layer view
3
H1
R1 R2
R3 R4
H2
10.2.1.0/24
20.1.0.0/16
10.1.2.0/24
10.1.0.0/24 10.3.0.0/16
20.2.1.0/28
IP
Tenets of end-to-end delivery of datagrams
The following conditions must hold so that an IP
datagram can be successfully delivered
4
1. The network prefix of an IP destination address must correspond to
a unique data link layer network (=LAN or point-to-point link or
switched network). (The reverse need not be true!)
2. Routers and hosts that have a common network prefix must be able
to exchange IP datagrams using a data link protocol (e.g., Ethernet,
PPP)
3. Every data link layer network must be connected to at least one
other data link layer network via a router.
Routing tables
• Each router and each host keeps a routing table which tells the router
how to process an outgoing packet
• Main columns:
1. Destination address: where is the IP datagram going to?
2. Next hop: how to send the IP datagram?
3. Interface: what is the output port?
• Next hop and interface column can often be summarized as one column
• Routing tables are set so that datagrams gets closer to the its destination
Destination Next
Hop
interface
10.1.0.0/24
10.1.2.0/24
10.2.1.0/24
10.3.1.0/24
20.1.0.0/16
20.2.1.0/28
direct
direct
R4
direct
R4
R4
eth0
eth0
serial0
eth1
eth0
eth0
5
Routing table of a host or router
IP datagrams can be directly delivered
(“direct”) or is sent to a router (“R4”)
Delivery with routing tables
to:
20.2.1.2
D e s t in a tio n N e x t H o p
1 0 .1 .0 .0 /2 4
1 0 .1 .2 .0 /2 4
1 0 .2 .1 .0 /2 4
1 0 .3 .1 .0 /2 4
2 0 .1 .0 .0 /1 6
2 0 .2 .1 .0 /2 8
d ire c t
R 3
R 3
R 3
R 3
R 3
H 1
R 1 R 2
R 3 R 4
H 2
1 0 .2 .1 .0 /2 4
2 0 .1 .0 .0 /1 6
1 0 .1 .2 .0 /2 4
1 0 .1 .0 .0 /2 4 1 0 .3 .0 .0 /1 6
2 0 .2 .1 .0 /2 8
2 0 .2 .1 .2 /2 8
D e s t in a tio n N e x t H o p
1 0 .1 .0 .0 /2 4
1 0 .1 .2 .0 /2 4
1 0 .2 .1 .0 /2 4
1 0 .3 .1 .0 /2 4
2 0 .1 .0 .0 /1 6
2 0 .2 .1 .0 /2 8
d ire c t
d ire c t
R 4
d ire c t
R 4
R 4
D e s t in a tio n N e x t H o p
1 0 .1 .0 .0 /2 4
1 0 .1 .2 .0 /2 4
1 0 .2 .1 .0 /2 4
1 0 .3 .1 .0 /2 4
2 0 .1 .0 .0 /1 6
2 0 .2 .1 .0 /2 8
R 3
R 3
R 2
d ire c t
d ire c t
R 2
D e s t in a tio n N e x t H o p
1 0 .1 .0 .0 /2 4
1 0 .1 .2 .0 /2 4
1 0 .2 .1 .0 /2 4
1 0 .3 .1 .0 /2 4
2 0 .2 .0 .0 /1 6
3 0 .1 .1 .0 /2 8
R 3
d ire c t
d ire c t
R 3
R 2
R 2
D e s tin a tio n N e x t H o p
1 0 .1 .0 .0 /2 4
1 0 .1 .2 .0 /2 4
1 0 .2 .1 .0 /2 4
1 0 .3 .1 .0 /2 4
2 0 .1 .0 .0 /1 6
2 0 .2 .1 .0 /2 8
R 1
R 1
d ire c t
R 4
d ire c t
d ire c t
D e s t in a tio n N e x t H o p
1 0 .1 .0 .0 /2 4
1 0 .1 .2 .0 /2 4
1 0 .2 .1 .0 /2 4
1 0 .3 .1 .0 /2 4
2 0 .1 .0 .0 /1 6
2 0 .2 .1 .0 /2 8
R 2
R 2
R 2
R 2
R 2
d ire c t
Delivery of IP datagrams
• There are two distinct processes to delivering IP
datagrams:
1. Forwarding: How to pass a packet from an
input interface to the output interface?
2. Routing: How to find and setup the routing
tables?
• Forwarding must be done as fast as possible:
– on routers, is often done with support of hardware
– on PCs, is done in kernel of the operating system
• Routing is less time-critical
– On a PC, routing is done as a background process
7
Processing of an IP datagram in IP
8
UDP TCP
Input
queue
Lookup next
hop
Routing
Protocol
Destination
address local?
Static
routing
Yes
Send
datagram
IP forwarding
enabled?
No
Discard
Yes No
Demultiplex
routing
table
IP module
Data Link Layer
IP router: IP forwarding enabled
Host: IP forwarding disabled
Processing of an IP datagram in IP
• Processing of IP datagrams is very similar on an IP
router and a host
• Main difference: “IP forwarding” is enabled on router
and disabled on host
• IP forwarding enabled
 if a datagram is received, but it is not for the local
system, the datagram will be sent to a different
system
• IP forwarding disabled
 if a datagram is received, but it is not for the local
system, the datagram will be dropped
9
Processing of an IP datagram at a router
1. IP header validation
2. Process options in IP header
3. Parsing the destination IP address
4. Routing table lookup
5. Decrement TTL
6. Perform fragmentation (if necessary)
7. Calculate checksum
8. Transmit to next hop
9. Send ICMP packet (if necessary)
10
Receive an
IP datagram
Routing table lookup
• When a router or host need to
transmit an IP datagram, it
performs a routing table lookup
• Routing table lookup: Use the
IP destination address as a key
to search the routing table.
• Result of the lookup is the IP
address of a next hop router,
and/or the name of a network
interface
Destination
address
Next hop/
interface
network prefix
or
host IP address
or
loopback address
or
default route
IP address of
next hop router
or
Name of a
network
interface
11
Type of routing table entries
• Network route
– Destination addresses is a network address (e.g.,
10.0.2.0/24)
– Most entries are network routes
• Host route
– Destination address is an interface address (e.g.,
10.0.1.2/32)
– Used to specify a separate route for certain hosts
• Default route
– Used when no network or host route matches
– The router that is listed as the next hop of the default route
is the default gateway (for Cisco: “gateway of last resort)
• Loopback address
– Routing table for the loopback address (127.0.0.1)
– The next hop lists the loopback (lo0) interface as outgoing
interface
12
Routing table lookup: Longest Prefix Match
• Longest Prefix Match: Search for the
routing table entry that has the longest
match with the prefix of the destination IP
address
1. Search for a match on all 32 bits
2. Search for a match for 31 bits
…..
32. Search for a mach on 0 bits
Host route, loopback entry
 32-bit prefix match
Default route is represented as 0.0.0.0/0
 0-bit prefix match
13
Destination address Next hop
10.0.0.0/8
128.143.0.0/16
128.143.64.0/20
128.143.192.0/20
128.143.71.0/24
128.143.71.55/32
default
R1
R2
R3
R3
R4
R3
R5
128.143.71.21
The longest prefix match for
128.143.71.21 is for 24 bits with
entry 128.143.71.0/24
Datagram will be sent to R4
Route Aggregation
Destination Next Hop
10.1.0.0/24
10.1.2.0/24
10.2.1.0/24
10.3.1.0/24
20.0.0.0/8
R3
direct
direct
R3
R2
14
• Longest prefix match algorithm permits to aggregate
prefixes with identical next hop address to a single
entry
• This contributes significantly to reducing the size of
routing tables of Internet routers
Destination Next Hop
10.1.0.0/24
10.1.2.0/24
10.2.1.0/24
10.3.1.0/24
20.2.0.0/16
30.1.1.0/28
R3
direct
direct
R3
R2
R2
How do routing tables get updated?
• Adding an interface:
– Configuring an interface eth2 with
10.0.2.3/24 adds a routing table
entry:
• Adding a default gateway:
– Configuring 10.0.2.1 as the default
gateway adds the entry:
• Static configuration of network routes or
host routes
• Update of routing tables through routing
protocols
• ICMP messages
Destination Next Hop/
interface
10.0.2.0/24 eth2
15
Destination Next Hop/
interface
0.0.0.0/0 10.0.2.1
Routing table manipulations with ICMP
• When a router detects that an IP datagram should have gone to
a different router, the router (here R2)
• forwards the IP datagram to the correct router
• sends an ICMP redirect message to the host
• Host uses ICMP message to update its routing table
(1) IP datagram
(2) IP datagram
Destination Next Hop
10.1.0.0/24
…
R2
Destination Next Hop
10.1.0.0/24
…
R1
Ethernet
H1
R1 R2
R1
(3) ICMP redirect
ICMP Router Solicitation / ICMP Router
Advertisement
• After bootstrapping a host
broadcasts an ICMP router
solicitation.
• In response, routers send an
ICMP router advertisement
message
• Also, routers periodically
broadcast ICMP router
advertisement
This is sometimes called the
Router Discovery Protocol
Ethernet
H1
R1 R2
ICMP router
advertisement
ICMP router
advertisement
ICMP router
solicitation
17
QUESTIONS ???

More Related Content

PPTX
11 coms 525 tcpip - internet protocol - forward
PDF
IPForwarding-Lab3 in routing and switching
PPT
Concept of Network Routing Layer
PPT
ComputerNetworksWeek-9-10 Network layer Routing.ppt
PPT
IP Addressing.ppt
PPT
Chapter_4_Network Layer lecturees 01.ppt
PPTX
Network_Layer_and_Internet_Protocols_IPv.pptx
11 coms 525 tcpip - internet protocol - forward
IPForwarding-Lab3 in routing and switching
Concept of Network Routing Layer
ComputerNetworksWeek-9-10 Network layer Routing.ppt
IP Addressing.ppt
Chapter_4_Network Layer lecturees 01.ppt
Network_Layer_and_Internet_Protocols_IPv.pptx

Similar to 11 - COMS 525 TCPIP - Internet Protocol - Forward.pptx (20)

PPT
Network Layer_Routing_Forwarding-1.ppt engineering
PPTX
06.CS2005-NetworkLayer-2021_22(1) (1).pptx
PPT
IP Addressing for the extereme beggeners
PPT
ch4_2ed_31july2002SamirAdditions ipp address.ppt
PPT
ch4_ip address-2ed_31july2002SamirAdditions.ppt
PPTX
NP - Unit 3 - Forwarding Datagram and ICMP
PPTX
Lecture 04 networking
PPTX
Module_3_Part_3.pptx
PPTX
Chapter_6_ Network Layer.pptx
PPT
4d routing
PPT
22 Network Layer_Delivery_forwarding_and_Routing
PDF
Cs8591 Computer Networks
PDF
Clase 4. Routing IP.pdf
PPTX
474-22-DatagramForwarding.pptx
PPT
CCNA Exam by [email protected] - for CCNA test
PDF
IP Routing
PPT
Routing in Network Devices aktu Computer Network PPT.ppt
PPTX
Computer Network - Network Layer
PPTX
computer communications
Network Layer_Routing_Forwarding-1.ppt engineering
06.CS2005-NetworkLayer-2021_22(1) (1).pptx
IP Addressing for the extereme beggeners
ch4_2ed_31july2002SamirAdditions ipp address.ppt
ch4_ip address-2ed_31july2002SamirAdditions.ppt
NP - Unit 3 - Forwarding Datagram and ICMP
Lecture 04 networking
Module_3_Part_3.pptx
Chapter_6_ Network Layer.pptx
4d routing
22 Network Layer_Delivery_forwarding_and_Routing
Cs8591 Computer Networks
Clase 4. Routing IP.pdf
474-22-DatagramForwarding.pptx
CCNA Exam by [email protected] - for CCNA test
IP Routing
Routing in Network Devices aktu Computer Network PPT.ppt
Computer Network - Network Layer
computer communications
Ad

Recently uploaded (20)

PPT
Acidosis in Dairy Herds: Causes, Signs, Management, Prevention and Treatment
PDF
Physical education and sports and CWSN notes
PDF
Horaris_Grups_25-26_Definitiu_15_07_25.pdf
PPTX
Cite It Right: A Compact Illustration of APA 7th Edition.pptx
PPTX
Neurological complocations of systemic disease
PDF
Lecture on Viruses: Structure, Classification, Replication, Effects on Cells,...
PDF
Disorder of Endocrine system (1).pdfyyhyyyy
PPT
hemostasis and its significance, physiology
PDF
Health aspects of bilberry: A review on its general benefits
PPTX
Integrated Management of Neonatal and Childhood Illnesses (IMNCI) – Unit IV |...
PDF
Fun with Grammar (Communicative Activities for the Azar Grammar Series)
PDF
faiz-khans about Radiotherapy Physics-02.pdf
PDF
Laparoscopic Dissection Techniques at WLH
PPTX
IT infrastructure and emerging technologies
PPTX
Power Point PR B.Inggris 12 Ed. 2019.pptx
PPTX
BSCE 2 NIGHT (CHAPTER 2) just cases.pptx
PPTX
Why I Am A Baptist, History of the Baptist, The Baptist Distinctives, 1st Bap...
PDF
Solved Past paper of Pediatric Health Nursing PHN BS Nursing 5th Semester
PDF
African Communication Research: A review
PDF
Farming Based Livelihood Systems English Notes
Acidosis in Dairy Herds: Causes, Signs, Management, Prevention and Treatment
Physical education and sports and CWSN notes
Horaris_Grups_25-26_Definitiu_15_07_25.pdf
Cite It Right: A Compact Illustration of APA 7th Edition.pptx
Neurological complocations of systemic disease
Lecture on Viruses: Structure, Classification, Replication, Effects on Cells,...
Disorder of Endocrine system (1).pdfyyhyyyy
hemostasis and its significance, physiology
Health aspects of bilberry: A review on its general benefits
Integrated Management of Neonatal and Childhood Illnesses (IMNCI) – Unit IV |...
Fun with Grammar (Communicative Activities for the Azar Grammar Series)
faiz-khans about Radiotherapy Physics-02.pdf
Laparoscopic Dissection Techniques at WLH
IT infrastructure and emerging technologies
Power Point PR B.Inggris 12 Ed. 2019.pptx
BSCE 2 NIGHT (CHAPTER 2) just cases.pptx
Why I Am A Baptist, History of the Baptist, The Baptist Distinctives, 1st Bap...
Solved Past paper of Pediatric Health Nursing PHN BS Nursing 5th Semester
African Communication Research: A review
Farming Based Livelihood Systems English Notes
Ad

11 - COMS 525 TCPIP - Internet Protocol - Forward.pptx

  • 1. 1 IP - FORWARDING K. PALANIVEL Systems Analyst, Computer Centre Pondicherry University, Puducherry – 605014. LECTURE 11 COMS 525: TCPIP COURSE TOPIC Part - II
  • 2. Delivery of an IP datagram • View at the data link layer: – Internetwork is a collection of LANs or point-to- point links or switched networks that are connected by routers 2 Ethernet Token Ring LAN Ethernet H1 R1 R2 R3 R4 H2 Network of Ethernet switches Point-to-point link Point-to-point link IP
  • 3. Delivery of an IP datagram • View at the IP layer: – An IP network is a logical entity with a network number – We represent an IP network as a “cloud” – The IP delivery service takes the view of clouds, and ignores the data link layer view 3 H1 R1 R2 R3 R4 H2 10.2.1.0/24 20.1.0.0/16 10.1.2.0/24 10.1.0.0/24 10.3.0.0/16 20.2.1.0/28 IP
  • 4. Tenets of end-to-end delivery of datagrams The following conditions must hold so that an IP datagram can be successfully delivered 4 1. The network prefix of an IP destination address must correspond to a unique data link layer network (=LAN or point-to-point link or switched network). (The reverse need not be true!) 2. Routers and hosts that have a common network prefix must be able to exchange IP datagrams using a data link protocol (e.g., Ethernet, PPP) 3. Every data link layer network must be connected to at least one other data link layer network via a router.
  • 5. Routing tables • Each router and each host keeps a routing table which tells the router how to process an outgoing packet • Main columns: 1. Destination address: where is the IP datagram going to? 2. Next hop: how to send the IP datagram? 3. Interface: what is the output port? • Next hop and interface column can often be summarized as one column • Routing tables are set so that datagrams gets closer to the its destination Destination Next Hop interface 10.1.0.0/24 10.1.2.0/24 10.2.1.0/24 10.3.1.0/24 20.1.0.0/16 20.2.1.0/28 direct direct R4 direct R4 R4 eth0 eth0 serial0 eth1 eth0 eth0 5 Routing table of a host or router IP datagrams can be directly delivered (“direct”) or is sent to a router (“R4”)
  • 6. Delivery with routing tables to: 20.2.1.2 D e s t in a tio n N e x t H o p 1 0 .1 .0 .0 /2 4 1 0 .1 .2 .0 /2 4 1 0 .2 .1 .0 /2 4 1 0 .3 .1 .0 /2 4 2 0 .1 .0 .0 /1 6 2 0 .2 .1 .0 /2 8 d ire c t R 3 R 3 R 3 R 3 R 3 H 1 R 1 R 2 R 3 R 4 H 2 1 0 .2 .1 .0 /2 4 2 0 .1 .0 .0 /1 6 1 0 .1 .2 .0 /2 4 1 0 .1 .0 .0 /2 4 1 0 .3 .0 .0 /1 6 2 0 .2 .1 .0 /2 8 2 0 .2 .1 .2 /2 8 D e s t in a tio n N e x t H o p 1 0 .1 .0 .0 /2 4 1 0 .1 .2 .0 /2 4 1 0 .2 .1 .0 /2 4 1 0 .3 .1 .0 /2 4 2 0 .1 .0 .0 /1 6 2 0 .2 .1 .0 /2 8 d ire c t d ire c t R 4 d ire c t R 4 R 4 D e s t in a tio n N e x t H o p 1 0 .1 .0 .0 /2 4 1 0 .1 .2 .0 /2 4 1 0 .2 .1 .0 /2 4 1 0 .3 .1 .0 /2 4 2 0 .1 .0 .0 /1 6 2 0 .2 .1 .0 /2 8 R 3 R 3 R 2 d ire c t d ire c t R 2 D e s t in a tio n N e x t H o p 1 0 .1 .0 .0 /2 4 1 0 .1 .2 .0 /2 4 1 0 .2 .1 .0 /2 4 1 0 .3 .1 .0 /2 4 2 0 .2 .0 .0 /1 6 3 0 .1 .1 .0 /2 8 R 3 d ire c t d ire c t R 3 R 2 R 2 D e s tin a tio n N e x t H o p 1 0 .1 .0 .0 /2 4 1 0 .1 .2 .0 /2 4 1 0 .2 .1 .0 /2 4 1 0 .3 .1 .0 /2 4 2 0 .1 .0 .0 /1 6 2 0 .2 .1 .0 /2 8 R 1 R 1 d ire c t R 4 d ire c t d ire c t D e s t in a tio n N e x t H o p 1 0 .1 .0 .0 /2 4 1 0 .1 .2 .0 /2 4 1 0 .2 .1 .0 /2 4 1 0 .3 .1 .0 /2 4 2 0 .1 .0 .0 /1 6 2 0 .2 .1 .0 /2 8 R 2 R 2 R 2 R 2 R 2 d ire c t
  • 7. Delivery of IP datagrams • There are two distinct processes to delivering IP datagrams: 1. Forwarding: How to pass a packet from an input interface to the output interface? 2. Routing: How to find and setup the routing tables? • Forwarding must be done as fast as possible: – on routers, is often done with support of hardware – on PCs, is done in kernel of the operating system • Routing is less time-critical – On a PC, routing is done as a background process 7
  • 8. Processing of an IP datagram in IP 8 UDP TCP Input queue Lookup next hop Routing Protocol Destination address local? Static routing Yes Send datagram IP forwarding enabled? No Discard Yes No Demultiplex routing table IP module Data Link Layer IP router: IP forwarding enabled Host: IP forwarding disabled
  • 9. Processing of an IP datagram in IP • Processing of IP datagrams is very similar on an IP router and a host • Main difference: “IP forwarding” is enabled on router and disabled on host • IP forwarding enabled  if a datagram is received, but it is not for the local system, the datagram will be sent to a different system • IP forwarding disabled  if a datagram is received, but it is not for the local system, the datagram will be dropped 9
  • 10. Processing of an IP datagram at a router 1. IP header validation 2. Process options in IP header 3. Parsing the destination IP address 4. Routing table lookup 5. Decrement TTL 6. Perform fragmentation (if necessary) 7. Calculate checksum 8. Transmit to next hop 9. Send ICMP packet (if necessary) 10 Receive an IP datagram
  • 11. Routing table lookup • When a router or host need to transmit an IP datagram, it performs a routing table lookup • Routing table lookup: Use the IP destination address as a key to search the routing table. • Result of the lookup is the IP address of a next hop router, and/or the name of a network interface Destination address Next hop/ interface network prefix or host IP address or loopback address or default route IP address of next hop router or Name of a network interface 11
  • 12. Type of routing table entries • Network route – Destination addresses is a network address (e.g., 10.0.2.0/24) – Most entries are network routes • Host route – Destination address is an interface address (e.g., 10.0.1.2/32) – Used to specify a separate route for certain hosts • Default route – Used when no network or host route matches – The router that is listed as the next hop of the default route is the default gateway (for Cisco: “gateway of last resort) • Loopback address – Routing table for the loopback address (127.0.0.1) – The next hop lists the loopback (lo0) interface as outgoing interface 12
  • 13. Routing table lookup: Longest Prefix Match • Longest Prefix Match: Search for the routing table entry that has the longest match with the prefix of the destination IP address 1. Search for a match on all 32 bits 2. Search for a match for 31 bits ….. 32. Search for a mach on 0 bits Host route, loopback entry  32-bit prefix match Default route is represented as 0.0.0.0/0  0-bit prefix match 13 Destination address Next hop 10.0.0.0/8 128.143.0.0/16 128.143.64.0/20 128.143.192.0/20 128.143.71.0/24 128.143.71.55/32 default R1 R2 R3 R3 R4 R3 R5 128.143.71.21 The longest prefix match for 128.143.71.21 is for 24 bits with entry 128.143.71.0/24 Datagram will be sent to R4
  • 14. Route Aggregation Destination Next Hop 10.1.0.0/24 10.1.2.0/24 10.2.1.0/24 10.3.1.0/24 20.0.0.0/8 R3 direct direct R3 R2 14 • Longest prefix match algorithm permits to aggregate prefixes with identical next hop address to a single entry • This contributes significantly to reducing the size of routing tables of Internet routers Destination Next Hop 10.1.0.0/24 10.1.2.0/24 10.2.1.0/24 10.3.1.0/24 20.2.0.0/16 30.1.1.0/28 R3 direct direct R3 R2 R2
  • 15. How do routing tables get updated? • Adding an interface: – Configuring an interface eth2 with 10.0.2.3/24 adds a routing table entry: • Adding a default gateway: – Configuring 10.0.2.1 as the default gateway adds the entry: • Static configuration of network routes or host routes • Update of routing tables through routing protocols • ICMP messages Destination Next Hop/ interface 10.0.2.0/24 eth2 15 Destination Next Hop/ interface 0.0.0.0/0 10.0.2.1
  • 16. Routing table manipulations with ICMP • When a router detects that an IP datagram should have gone to a different router, the router (here R2) • forwards the IP datagram to the correct router • sends an ICMP redirect message to the host • Host uses ICMP message to update its routing table (1) IP datagram (2) IP datagram Destination Next Hop 10.1.0.0/24 … R2 Destination Next Hop 10.1.0.0/24 … R1 Ethernet H1 R1 R2 R1 (3) ICMP redirect
  • 17. ICMP Router Solicitation / ICMP Router Advertisement • After bootstrapping a host broadcasts an ICMP router solicitation. • In response, routers send an ICMP router advertisement message • Also, routers periodically broadcast ICMP router advertisement This is sometimes called the Router Discovery Protocol Ethernet H1 R1 R2 ICMP router advertisement ICMP router advertisement ICMP router solicitation 17