ARP Protocol

The Address Resolution Protocol is a communication protocol used for discovering the link layer address, such as a MAC address, associated with a given internet layer address, typically an IPv4 address.
It is a network layer protocol used to convert an IP address into a physical address.
Watch the Video lecture on ARP (click here)
You are invited to raise queries by writing your question in the the box given below

Published by Expert_Talk

I like sharing article and discussion on emerging technologies. Love to share my knowledge on various latest trends and technologies.

27 thoughts on “ARP Protocol

  1. Hi, folks
    I have some questions about ARP packet fields:

    – How can we identify hardware field?
    – How can we determine protocol type?

    thanks for your response in advance,

    U1710012

    1. Hi!
      The first 4 Bytes of the entire ARP packet indicate the type of hardware (HTYPE), for instance 0x0001 means Ethernet (1), while the next 4 Bytes specify Protocol Type (PTYPE), ex. IPv4 is 0x0800

      The full list of Hardware Types you may find here:
      https://www.iana.org/assignments/arp-parameters/arp-parameters.xhtml#arp-parameters-2
      and Protocol Types (column Ethertype):
      https://www.iana.org/assignments/ieee-802-numbers/ieee-802-numbers.xhtml#ieee-802-numbers-1

      Hope that helps 🙂

  2. Hello!
    Professor, I have a question regarding encapsulation of ARP packet into Ethernet frame.
    In some sources I have noticed that Ethernet Frame is without Preamble and SFD. And when at physical layer they are added, it becomes an Ethernet Packet.
    So are the Preamble and SFD parts of frame or not?
    Also, do we need to count their size, when calculating the size of frame?

    1. If it is given, not to include Preamble and SFD
      You should not include that
      Otherwise, if it is not mentioned
      You should take SFD and Preamble into your calculations

    2. Preamble is not added to frame at the data link layer but it is added to the frame at the physical layer. Preamble along with SFD consists of first 8 bytes of the packet and is used to synchronize two different medium.

  3. Hi,
    I have a simple question.
    Let s say that we are using checksum detection method by TCP/IP. checksum process will be done in both sides (sender and reciever). My question is do we have a probablity that checksum packet itself will be damaged during the transmission ?

    1. If we lose some parts of a packet that has been sent during the transmission, it will absolutely change the checksum value.

    2. If any of the bit including checksum bits in packet gets corrupted during transmission, the packet will be rejected bcoz in this case the packet does not get validated..(That is.. at the receiver side th addition of all bits in pair of 16 bits will not result to Zero).

  4. Is the size of an Ethernet frame carrying an ARP packet always 72 bytes or will it change in some cases?

    1. Size of an ARP packet is variable, depending on the length of addresses. If the ARP packet size is 28 bytes and ARP packet less than minimum Ethernet payload, then the size of an Ethernet frame carrying an ARP packet is 72 bytes.

    2. Ethernet frame has data field with payload minimum of 46 bytes. Other fields are fixed. As ARP packets contain only short operations its size almost never be more than 46 bytes, So we take minimum value of data field payload which contains ARP packet.

    3. In some web sites, Ethernet frame size is given as 64 bytes { without preamble (7 bytes) and SFD (1 bytes)}
      The SFD is the eight-bit (one-byte) value that marks the end of the preamble, which is the first field of an Ethernet packet, and indicates the beginning of the Ethernet frame. The SFD is designed to break the bit pattern of the preamble and signal the start of the actual frame.
      So, I’m not sure that the Ethernet frame can be 64 bytes, but some sources say so
      U1710057

      1. The minimum frame size for IPv4 must be 64 bytes,
        where the Ethernet header makes up 18 bytes( which consists of MAC addr 12 Bytes + Data-length 2 byres + CRC 4bytes ), the IPv4 header 20 bytes(mandatory bytes), and the UDP-header 8 bytes (port –Addr 4 bytes + length 2 bytes + checksum 2bytes).

        This also describe mandatory payload size must be 46 Bytes

        Therefore 46 Bytes + 18 bytes = 64 bytes

    4. For different protocol type, the size of ARP packet will change.

      In General, considering the Hardware Ethernet and Protocol IPv4 is used for an ARP packet, then
      The size of ARP packet is 28 Bytes.
      Minimum size of Ethernet frame (with preamble and SOF) is 72 byte, this also means that padding is used in the payload.

    1. Gratutous ARP is a special case of ARP used mainly in two scenario.
      1. Resolving Conflict IP issue (two host assigned same IP)
      2. Updating table entries of other nodes(host/switch) of same network

      Case 1
      When packets are getting frequently or not able to forward bcoz of IP conflict, then source host will send ARP packet keeping the same IP address both for source and destination, if there is reply received for this packet, it conforms that there is other host exist with same IP.

      Case 2
      Generally Host maintans table that keeps the record of MAC and IP address pair, If this pair get changed, one reason may be if NIC card replaced (MAC address changed) then this host will send a ARP broadcast packet. This packet is recived by all the other host in network, though packet get discarded by other host but they will peep into MAC-IP pair and will update thier own table.

  5. Hello Professor, i have one question about ARP packet.
    If ARP request goes from many routers and all the time ARP packet contains the next router address, how can the real target address be maintained during these transmissions?

    1. Through ARP transmission, the actual data is not transmitted but ARP is only used to MAP the logical address to physical address(MAC) so that the packet can be forwarded to next immediate hop (router).

      ARP is used only as an intermediate service to complete the actual transmission. Real Target address is still maintained at IP packet, once the MAC address of next hop is retrived using ARP, this MAC is used to deliver the actual data packet to next hop. This process keep on repeating for router to router till the packet is delivered to destination

  6. Size of an ARP packet is variable, depending on the length of addresses. If the ARP packet size is 28 bytes and ARP packet less than minimum Ethernet payload, then the size of an Ethernet frame carrying an ARP packet is 72 bytes.

  7. Hello there I have a question about ARP packet. We know that size of ARP packet for IP&Ethernet is 28 bytes. How this value changes for other protocols?

  8. The principal packet structure of ARP packets is shown in the following table which illustrates the case of IPv4 networks running on Ethernet. In this scenario, the packet has 48-bit fields for the sender hardware address (SHA) and target hardware address (THA), and 32-bit fields for the corresponding sender and target protocol addresses (SPA and TPA). The ARP packet size in this case is 28 bytes.
    I hope that I answered correctly. If not, you can go to this link –> https://en.m.wikipedia.org/wiki/Address_Resolution_Protocol

  9. What is the importance of SFD and Preamble? In some sources, the size of ARP packet is given with SFD and Preamble while the other sources says the size of ARP packet without SFD and Preamble?
    U1710057

  10. Question from Encapsulation of ARP packet. ARP packet consists of Preamble and SFD, Destination address,Source address,type,Data and CRC.
    What is CRC? What is role of CRC in ARP packet?

    1. CRC stands for Cyclic Redundancy Code, a techniques used for error detection that may occur during transmission. It is added as a trail at datalink layer when packet is encapsulated in a frame ( Note -frame add header and trail to the packet)

  11. Hello Professor! I have a question.What will happen if ARP is not receive for ARP request?

    1. If an ARP reply is not received, then that IP address cannot be resolved to an Ethernet address. Without a Ethernet address, the packets cannot be transmitted.

Leave a reply to Shakhriyorkhon Marifkhonov (U1710124) Cancel reply