Lecture 06
Lecture 06
IP Datagram, Address
Resolution Protocol (ARP) ,
RARP
The Function of Packets in
Network Communications
• Large amounts of data sent as one large
unit tie up the network and make timely
interaction and communications
impossible because one computer is
flooding the cable with data.
• The impact of retransmitting large units of
data further multiplies network traffic.
• When the network operating system at the
sending computer breaks the data
into packets, it adds special control
information to each frame.
Advantages of Packets
• This makes it possible to:
– Send the original, disassembled data in
small chunks.
– Reassemble the data in the proper order
when it reaches its destination.
– Check the data for errors after it has
been reassembled.
Packet Structure
• Packets can contain several types of
data including:
– Information, such as messages or files.
– Certain types of computer control data
and commands, such as service
requests.
– Session control codes, such as error
correction, that indicate the need for a
retransmission.
Packet Structure
Packet Components
• All packets have certain components in
common.
– A source address that identifies the
sending computer.
– The data that is intended for transmission.
– A destination address that identifies the
recipient.
– Instructions that tell network
components how to pass the data along.
– Information that tells the receiving
computer how to connect the packet
to other packets in order to reassemble the
Header
• The header includes:
– An alert signal to indicate that the
packet is being transmitted.
– The source address.
– The destination address.
– Clock information to synchronize
transmission.
Data
• This describes the actual data being sent.
This part of the packet varies in size,
depending on the network. The data
section on most networks varies from
512 bytes—or 0.5 kilobytes (KB)—to 4 KB.
• Because most original data strings are
much longer than 4k, data must be broken
into chunks small enough to be put into
packets. It takes many packets to
complete the transmission of a large file.
Trailer
• The exact content of the trailer varies
depending on the communication method,
or protocol. However, the trailer usually
contains an error-checking component
called a cyclical redundancy check (CRC).
• The CRC is a number produced by a
mathematical calculation on the packet at
its source. When the packet arrives at its
destination, the calculation is made again.
If the results of both calculations are the
same, this indicates that the data in the
packet has remained stable.
ARP
• Before an IP packet can be forwarded
to another host, the hardware
address of the receiving machine
must be known.
• The ARP determines hardware
address (MAC addresses) that
correspond to an IP address. If ARP
does not contain the address in its
own cache, it broadcasts a request
for the address.
• All hosts on the network process the
request and, if they contain a map to
that address, pass the address back
to the requestor. The packet is then
sent on its way, and the new
information address is stored in the
router's cache.
Reverse Address Resolution
Protocol (RARP)
• A RARP server maintains a database
of machine numbers in the form of
an ARP table (or cache) which is
created by the system administrator.
In contrast to ARP, the RARP protocol
provides an IP number to a
requesting hardware address.
• When the RARP server receives a
request for an IP number from a node
on the network, it responds by
checking its routing table for the
machine number of the requesting
node and sending the appropriate IP
number back to the requesting node.
Details Of IP Datagram
• ip version (4 bits)
The ip protocol version. Currently 4 as of
1979 (rfc 791).
• ip header length (4 bits)
Total header length in 32 bit words.
Usually five (5) (since you hardly ever use
options). Sort of silly because values of 0-4
cannot be used. Perhaps these could be
used as some sort of biased value to
extend the length of the header?
• type of service (8 bits)
Describes how the packet should be
handled in transit (speed vs. reliability vs.
throughput).
• total packet length (16 bits)
Packet length in bytes up to 65535 (includes the
bytes in the header). You won't probably won't
see many packets this big because ethernet
framing doesn't let you have anything more than
1500 and modem links are usually set much
lower (about 296 perhaps?) for responsiveness.
So larger poackets would always get fragemented
and that's something to avoid. If possible.
• identification (16 bits)
An identifying number to be used to reassemble
fragmented packets.
• fragmentation flags (3 bits)
Flags controlling whether a packet is fragmented
and/or may be fragmented.
• fragmentation offset (13 bits)
Measured in units of 8 octets (or bytes) is
simply a sequence number for the bytes in
this packet when reassembling. The first
offset will be zero.
• time to live (8 bits)
Maximum life of a packet. If this field is
zero, the packet is destroyed. Usually
decremented by one when passed from
one hop to the next (unless bridging).
• protocol (8 bits)
The protocol used in the data portion (see
"assigned numbers" rfc 790 or 1010 or
• header checksum (16 bits)
A sixteen bit checksum on the ip header only. The
ttl field changes at each hop so this needs to be
recomputed on each hop. "The checksum field is
the 16 bit one's complement of the one's
complement sum of all 16 bit words in the
header. For purposes of computing the checksum,
the value of the checksum field is zero." (At least,
according to rfc 791). My interpretation: one's
complement each sixteen bit word in the header,
add all these quantities (drop carries) and then
one's complement that sum.
• source address &