Every second of every day, data is being sent and received. Billions of data packets are processed by your company’s network every day. In fact, you received dozens of packets just to read this article, but the vast majority of us have no idea how this works. People have no clue as to what goes on behind the scenes to ensure data actually gets to the right device. And with an estimated 3.8 billion internet users as of June 2017, it’s important that the right device gets the right data.
Now I could give you an accurate (and boring) technical description of what is happening with all of the network protocols involved, but I want you to actually remember it! So instead, let me tell you a little story.
Janet works for a large real estate firm. She has a list of properties that are up for sale that she would like for her firm to consider purchasing. She needs to get this list to the appropriate partner, so the paperwork can be drawn up. She knows the name of the partner, George, but she doesn’t know exactly where he is located. Is he in the building with her, or is he in one of the remote offices across town? She checks her building directory and doesn’t see his name. So she pulls up her recent contact list, but she doesn’t see his name. She hasn’t communicated with George recently, so she doesn’t have his location information. If she had his info already in her records, she could have the letter delivered directly to him by courier. Instead, she sends it down to shipping and receiving and indicates it should go to George.
Shipping and receiving then looks up his location in a larger database. It is determined that George is located in a remote office in a neighboring town. Shipping and receiving doesn’t have the resources to deliver this document to George themselves. With as many branches as they have, this would be too expensive. Instead, they give the letter to the post office with the appropriate street address information for George’s building and his office number.
The post office then uses their resources to determine the best path to deliver this letter to the shipping and receiving office of George’s building. Even with the suite number on the packet, the post office doesn’t really know (or care) exactly where George is in the building. Instead, the postal worker hands the envelope to the shipping and receiving clerk.
That clerks observes the suite number on the envelope and then has the envelope delivered to George’s office, and George can now review this list of properties to see which make the most sense for his firm to purchase.
Janet represents the sending host. George’s name represents the destination host with a MAC address, and his location is his IP address. Like Jane does with her building directory, your host has a list of local network information called a local Address Resolution Protocol (ARP) cache and Host Route Table. If your host can find the relevant info in the local data, then it will simply use the switch to deliver traffic to the device in the local network. If your host, like Janet, cannot find any relevant information in the local ARP cache and host route table, then it will need to send the data packet to a device that can help find the destination.
In my story, the shipping and receiving department fulfills two of those functions. First, we need to resolve the MAC address into an IP address. The ARP does this by broadcasting a request packet. The device using the IP address in question responds with its MAC address. If the destination host, like George, isn’t in the building, then the data is sent to the default gateway, which is also represented by the shipping and receiving department. The default gateway has its own route table that may include information regarding the outside network, the Internet.
In my analogy, the internet is represented by the post office. Notice that Janet doesn’t talk to the post office just like your host doesn’t talk to the internet. The internet doesn’t see your MAC address nor does it care. The Internet only uses IP addresses. The destination IP address is George’s mailing address in my story, and it is the job of the various “post offices” or internet routers to determine the best path to get to George’s network.
This is one of the biggest misconceptions about network data delivery. IP addresses do not facilitate the delivery of data to individual machines—at least not directly. In my analogy, the post office doesn’t deliver the packet to George. Instead, the shipping and receiving clerk gives it to George. The internet protocols act like the post office and deliver the data to your default gateway. Your default gateway then performs another ARP request to locate the MAC address of the destination (George in my story). Once the switch knows the MAC address of the destination device, the data packet can then be delivered by the switch. The destination host (George) can now process the data.
Let me summarize this for you:
1. The sending host checks its local route table to determine whether the destination host is local or in some remote network.
• If the destination host is local, then the source host checks its ARP cache to get the destination MAC address.
o If the ARP cache contains the appropriate info, the data packet is then sent to the switch and is delivered to the local device.
o If the ARP cache does not contain the appropriate data, the sending host sends an ARP request message to learn the MAC address of the device. Once the destination host sends the ARP reply, the data packet is then sent to the switch and is delivered to the local device.
• If the destination host is remote, then the source host sends the data packet to its default gateway.
2. The default gateway then takes over the process. Using routing protocols and its own routing table, the default gateway figures out the best path to the destination, and, using the many routers throughout the Internet, the data packet is routed through the Internet and delivered to the default gateway of the destination network.
3. The destination gateway then does what the sending host did at the beginning. It checks its own ARP cache to find the IP address of the destination host.
• If the ARP cache contains the appropriate info, the data packet is sent to the switch and delivered to the destination device.
• If the ARP cache does not contain the appropriate data, the sending host sends an ARP request message to learn the MAC address of the destination device. Once the destination host sends the ARP reply, the data packet is then sent to the switch and is delivered to the local device.
As you can see, this is a complicated process but it is only the beginning of what networking has to offer. You will learn about this and many other vital networking topics in your pursuit of a CompTIA Network+ certification or a Cisco Certified Network Associate certification.
Never miss another article. Sign up for our newsletter.