If a machine is exchanging information with another equivalent device on the same network, this connection requires a physical or MAC address. However, the application responsible for communication requires the use of some mechanism capable of associating an IP address with a MAC address.
This mechanism is implemented using address resolution protocols (ARP). Thanks to them, the IP address of the destination node is translated, which informs the source of the MAC address. Thus, ARPs facilitate communication between two devices when they are simultaneously connected to the network.
How it works?
This means that every time machine A wants to send data packets to machine B, A must send an ARP packet to request MAC address B. However, this will inevitably lead to an increase in network load and traffic burden.
In order to reduce traffic and network connection costs, computers using the ARP protocol support the cache of recently acquired IP_to_MAC binding addresses, that is, they should not reuse ARP.
However, some ARP refinements are possible: when machine A wants to send data to machine B, it is possible that B is going to send response data A in the near future. Therefore, in order to avoid using ARP for machine B, A must save its binding address IP_to_MAC in a special packet when it requests MAC address B. Since A sends its initial request to MAC address B, each machine on the network must retrieve and store it in its cache is IP_to_MAC.
When the device is online (for example, if the operating system reboots), it can broadcast the binding address so that all other machines can save it in their settings. This will prevent reuse of the ARP protocols that might be needed when connecting other new devices.
An example of displaying the use of the address resolution protocol
You can consider the scenario when a computer tries to contact some remote devices, and previously no IP exchange between them was carried out. That is why the ARP protocol must be applied to determine the MAC address of the remote machine.
The ARP request message (which goes from the AAAA IP address to the BBBB) is broadcast over a local area network with an Ethernet protocol type. ARPs come from all machines except the target, which sends a response message to the request. This answer contains the IP address of BBBB, i.e. hardware address of the Ethernet source, after which communication between the devices will be established.
ARP and its purpose - conclusions
As can be seen from the description above, the address resolution protocol is used to establish interaction between various devices on the network. In other words, it is a technology without which a normal connection is not possible. But is ARP possible without other network parameters? Definitely impossible. Therefore, other protocols that play an important role should be considered.
Return Address Recovery Protocol
RARP is a protocol by which a physical computer on a local network can request its IP address from the Address Resolution Protocol table or gateway cache server. The network administrator creates a table in the gateway or router of the local network that displays the physical address of the machine (or the address of the medium access control - MAC) regarding the corresponding protocol. When a new device connects to the network, its RARP client creates a request on the server to send its IP address. Assuming the entry was created in the router table, the RARP server returns the IP address to the machine, which can store it for future use. Thus, the ARP address resolution protocol is continuously associated with RARP.
Detailed mechanism
Both the machine that issues the request and the server that answers it all use physical network addresses during the communication session. Typically, the requester does not know the physical address. Thus, the request is broadcast to all machines on the network. Then, the requester must identify with the server. For this, the serial number of the CPU or the physical address of the network machine can be used. Using a physical address as a unique identifier has two advantages.
These addresses are always available and should not be linked in the boot code.
Since the identifying information depends on the network, and not on the CPU provider, all machines on this network will have unique identifiers.
RARP action over time
Since RARP uses the physical network directly, no other protocol software will respond to the request or relay it. RARP software must single-handedly cope with these tasks. Some workstations that rely on RARP to load can retry repeatedly indefinitely until they get a response. Other implementations fail after several attempts to avoid overloading the network with unnecessary translations.
IP / ICMP / ARP
ICMP connects the mechanism, gateways, and hosts that are used to manage the connection or receive an error report. The Internet protocol provides a signal from gateway to gateway until it reaches a point that can deliver it directly to its final destination. If the gateway cannot send or deliver data, or it detects an unusual condition such as network congestion, it should issue a message about this in order to take measures to avoid or fix this problem.
The Internet Message Control Protocol (ICMP) allows gateways to send errors or manage messages for other gateways or hosts. Thus, ICMP provides communication between the Internet protocols on both connected computers.
This special mechanism has been added by developers in addition to TCP / IP protocols. It allows you to use Internet gateways to report errors or provide emergency information. The IP protocol itself does not contain anything that can help verify communication with the sender or learn about failures.
TCP / IP Protocols
TCP / IP protocols provide tools that can help network administrators or users identify network problems. One of the most commonly used debugging tools raises an ICMP request and receives a response message. At the same time, the host or gateway sends an echo message with an ICMP request to the specified address. Any machine that receives an echo request formulates a response and returns to the original sender. In this case, the response contains a copy of the data transmitted in the request, as well as the response associated with them.
This protocol can be used to check if the destination is accessible and possible to communicate with. In turn, ARP protocols are hardware used in addition to TCP / IP and necessary for the correct communication between devices on the network.