0% found this document useful (0 votes)
65 views28 pages

Internet Control Protocols: Savera Tanwir

The document discusses several Internet control protocols including ICMP, ARP, RARP, and DHCP. ICMP is used for error reporting and queries. ARP and RARP are used to map IP addresses to MAC addresses on local networks, with ARP being the current standard. DHCP dynamically assigns IP addresses, subnet masks, default gateways and other network parameters to clients through a lease system. It has largely replaced older protocols like RARP for dynamic address assignment.

Uploaded by

chinchou
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
65 views28 pages

Internet Control Protocols: Savera Tanwir

The document discusses several Internet control protocols including ICMP, ARP, RARP, and DHCP. ICMP is used for error reporting and queries. ARP and RARP are used to map IP addresses to MAC addresses on local networks, with ARP being the current standard. DHCP dynamically assigns IP addresses, subnet masks, default gateways and other network parameters to clients through a lease system. It has largely replaced older protocols like RARP for dynamic address assignment.

Uploaded by

chinchou
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
You are on page 1/ 28

Internet Control Protocols

Savera Tanwir

Internet Control Protocols

ICMP
ARP
RARP
DHCP

Overview

The IP (Internet Protocol) relies on several


other protocols to perform necessary control
and routing functions:

Control functions (ICMP)


Multicast signaling (IGMP)
Setting up routing tables (RIP, OSPF, BGP, PIM, )

ICMP

The Internet Control Message Protocol


(ICMP) is a helper protocol that supports IP
with facility for

Error reporting
Simple queries

ICMP messages are encapsulated as IP datagrams:

ICMP Query message


ICMP Request
ICMP Reply

Host

Host or router

ICMP query:
Request sent by host to a router or host
Reply sent back to querying host

Example of ICMP Queries


Type/Code:

Description

8/0 Echo Request


0/0 Echo Reply
13/0
Timestamp Request
14/0Timestamp Reply

10/0
Router Solicitation
9/0 Router Advertisement

The ping command


uses Echo Request/
Echo Reply

Example of a Query:
Echo Request and Reply

Pings are handled directly by the kernel


Each Ping is translated into an ICMP Echo
Request
The Pinged host responds with an ICMP Echo
Reply
ICMP EC
Host
Host
or
or
Router
Router

HO REQUE
ST

REPL
O
H
EC
ICMP

Host
Host
or
or
router
router

ICMP Error message


IP datagram

IP datagram
is discarded

ICMP Error
Message

Host

Host or router

ICMP error messages report error conditions


Typically sent when a datagram is discarded
Error message is often passed from ICMP to
the application program

ICMP Error message


ICMP Message
from IP datagram that triggered the error
IP header

type

ICMP header

code

IP header

8 bytes of payload

checksum

Unused (0x00000000)

ICMP error messages include the complete IP


header and the first 8 bytes of the payload
(typically: UDP, TCP)

Frequent ICMP Error message


Type Code

Description

015 Destination

Notification that an IP datagram could not be


forwarded and was dropped. The code field
contains an explanation.

03 Redirect

Informs about an alternative route for the


datagram and should result in a routing table
update. The code field explains the reason for
the route change.

11

0, 1 Time
exceeded

Sent when the TTL field has reached zero


(Code 0) or when there is a timeout for the
reassembly of segments (Code 1)

12

0, 1 Parameter
problem

Sent when the IP header is invalid (Code 0)


or when an IP header option is missing (Code
1)

unreachable

Some subtypes of the


Destination Unreachable
Code

Description

Reason for Sending

Network
Unreachable

No routing table entry is available for the destination


network.

Host
Unreachable

Destination host should be directly reachable, but


does not respond to ARP Requests.

Protocol
Unreachable

The protocol in the protocol field of the IP header is


not supported at the destination.

Port
Unreachable

The transport protocol at the destination host cannot


pass the datagram to an application.

Fragmentation
Needed
and DF Bit Set

IP datagram must be fragmented, but the DF bit in


the IP header is set.

Example: ICMP Port


Unreachable

RFC 792: If, in the destination host, the IP module cannot deliver the
datagram because the indicated protocol module
or process port is not active, the destination host may send a destination unreachable message to the source host.

Scenario:

Request
a
service
at a por
t 80

Client
Client

No process
is waiting
at port 80
Server
Server

e
t
Por achabl
e
Unr

ARP/RARP Overview

ARP and RARP

Note:

The Internet is based on IP addresses


Data link protocols (Ethernet, FDDI, ATM) may have different
(MAC) addresses

The ARP and RARP protocols perform the translation


between IP addresses and MAC layer addresses
We will discuss ARP for broadcast LANs, particularly
Ethernet LANs

IP address
(32 bit)

ARP
RARP

Ethernet MAC
address
(48 bit)

Processing of IP packets by
network device drivers

Address Translation with ARP


ARP Request:
Argon broadcasts an ARP request to all
stations on the network: What is the
hardware address of Router137?

Address Translation with ARP


ARP Reply:
Router 137 responds with an ARP Reply which
contains the hardware address

ARP Packet Format


Ethernet II header
Destination
address

Source
address

Type
0x8060

ARP Request or ARP Reply


28

10

Hardware type (2 bytes)


Hardware address
length (1 byte)

Padding

CRC
4

Protocol type (2 bytes)

Protocol address
length (1 byte)

Operation code (2 bytes)

Source hardware address*


Source protocol address*
Target hardware address*
Target protocol address*
* Note: The length of the address fields is determined by the corresponding address length fields

Example

ARP Request from Argon:


Source hardware address:
Source protocol address:
Target hardware address:
Target protocol address:

00:a0:24:71:e4:44
128.143.137.144
00:00:00:00:00:00
128.143.137.1

ARP Reply from Router137:


Source hardware address:
Source protocol address:
Target hardware address:
Target protocol address:

00:e0:f9:23:a8:20
128.143.137.1
00:a0:24:71:e4:44
128.143.137.144

ARP Cache

Since sending an ARP request/reply for each


IP datagram is inefficient, hosts maintain a
cache (ARP Cache) of current entries. The
entries expire after 20 minutes.

Contents of the ARP Cache:


(128.143.71.37) at 00:10:4B:C5:D1:15 [ether] on eth0
(128.143.71.36) at 00:B0:D0:E1:17:D5 [ether] on eth0
(128.143.71.35) at 00:B0:D0:DE:70:E6 [ether] on eth0
(128.143.136.90) at 00:05:3C:06:27:35 [ether] on eth1
(128.143.71.34) at 00:B0:D0:E1:17:DB [ether] on eth0
(128.143.71.33) at 00:B0:D0:E1:17:DF [ether] on eth0

Things to know about ARP

What happens if an ARP Request is made for a nonexisting host?


Several ARP requests are made with increasing
time intervals between requests. Eventually, ARP
gives up.

On some systems (including Linux) a host periodically


sends ARP Requests for all addresses listed in the ARP
cache. This refreshes the ARP cache content, but also
introduces traffic.

Gratuitous ARP Requests: A host sends an ARP request


for its own IP address:

Useful for detecting if an IP address has already been assigned.

Dynamic Assignment of IP
addresses

Dynamic assignment of IP addresses is


desirable for several reasons:

Three Protocols:

IP addresses are assigned on-demand


Avoid manual IP configuration
Support mobility of laptops

RARP (until 1985, no longer used)


BOOTP (1985-1993)
DHCP (since 1993)

Only DHCP is widely used today.

Solutions for dynamic


assignment of IP addresses

Reverse Address Resolution Protocol


(RARP)

RARP is no longer used


Works similar to ARP
Broadcast a request for the IP address
associated with a given MAC address
RARP server responds with an IP address
Only assigns IP address (not the default router
and subnetmask)
IP address
(32 bit)

ARP
RARP

Ethernet MAC
address
(48 bit)

DHCP

Dynamic Host Configuration Protocol


(DHCP)

Designed in 1993
An extension of BOOTP (Many similarities to BOOTP)
Same port numbers as BOOTP
Extensions:

Supports temporary allocation (leases) of IP addresses


DHCP client can acquire all IP configuration parameters

DHCP is the preferred mechanism for dynamic


assignment of IP addresses
DHCP can interoperate with BOOTP clients.

DHCP Interaction (simplified)


Argon
00:a0:24:71:e4:44
DHCP Request
00:a0:24:71:e4:44
Sent to 255.255.255.255

DHCP Server

DHCP Operation

DCHP DISCOVER

DCHP OFFER

DHCP Operation

DCHP REQUEST

At this time, the DHCP client can start to use the


IP address

Renewing a Lease
(sent when 50% of lease has expired)
If DHCP server sends DHCPNACK, then address is released.

DHCP Operation

DCHP RELEASE

At this time, the DHCP client has released the IP


address

You might also like