The Network Layer

   Network Layer Addresses vs.
   Data Link Layer Addresses

The addresses in a Network Layer header identify source and destination computers; however, a network address is fundamentally different from a Data Link Layer address.

A Data Link Layer address (NIC address) identifies a particular piece of hardware, because it uses the unique identification number built into each NIC at the factory. A Data Link Layer address is like a name or fingerprint, which identifies a unique individual.

In contrast, Network Layer addresses are symbolic or "logical" addresses assigned to computers through software. A Network Layer address identifies a computer's role in the network or relationship to other computers. Different computers may be assigned the same Network Layer address over time; however, each of those computers will always have its own unique NIC address.

If you consider sending a letter to the Head of Manufacturing of a company, the job title "Head of Manufacturing" is like a Network Layer address. Different people may perform that job over time, thus whoever happens to sit at that desk will receive mail addressed to that job title. However a name, which is the unique identity of each person, is like a Data Link Layer address.