1.Address resolution with table lookup: This technique of address resolution requires a data structure that contains information about address binding. The table consists of an array. Each entry in the array contains a pair (P,H),where P is the protocol address and H is its corresponding hardware address. The main advantage of table lookup approach is generality- a table can store the address bindings for an arbitrary set of computers on a given network. In particular a particular protocol address can map to an arbitrary hardware address.
Furthermore, the table lookup algorithm is straight forward and easies among all the approaches. Suppose we have given a next-hop address, N, the software searches the table until it finds an entry where the IP address matches N. The software then extracts the hardware address from the entry.For a network that contains a less then dozen of hosts, a sequential search is sufficient ,the resolution software begins at first entry and searches each entry in table until a match is found. But for large networks this sequential search is not possible because it consumes excessive CPU time. In these type of situations to improve computational efficiency we can use Hashing or Direct Indexing.
As all we know that Hashing is a general purpose data structure and is well known to all the programmers, so, here I am not going to discuss it. Let’s take a look at the other technique that is of Direct Indexing. Direct Indexing is slightly more efficient but less general technique. In particular Direct Indexing is possible only in those cases where protocol addresses are assigned from a compact range.
Direct Indexing can be used with IP addresses that are arranged in sequential order. In these type of cases the software maintains a one dimensional array of hardware addresses, and uses the host suffix from an IP address as an index to an array.
In the next post I will tell you the second technique of Address Binding.