How Does The Internet Work? (Bob Explains...)
In today's world of ubiquitous online access, it's easy to take the Internet for granted, using it as naturally as we use electricity or water. But when you peek under the hood to see what’s really going on out there 'on the net' or 'in the cloud,' you’ll find an elegantly simple yet infinitely complex system. Read on for a layman's explanation of how it all works...
What Happens When You Click?
When I was a new hire at IBM in 1984, I heard a presentation by one of IBM's top sales reps. He said when people asked him "How do computers work?" he always told them "Just great, and I sell a lot of them!" The Internet is a similar story, but I think AskBob readers, since they are smarter and better looking than the average Internet user, should have a better understanding of what happens when you click a link or send an email.
“Internet” stands for “interconnected networks" because it's really a network of networks. The computers in your home or office are connected in a local network. That network is connected to another network operated by your Internet Service Provider (ISP). The ISPs network is connected to other ISPs’ networks. Those networks may consist of many different types of computers. That’s the hardware or physical view of the Internet.
A variety of physical media can be used to make the connections: Ethernet cable, telephone wires, power transmission lines, radio signals (satellite or wifi), and beams of visible light (fiber optics) are all the same to the Internet. The key thing is that a medium be capable of transmitting information according to the protocols of the Internet. In some cases, sneakers or tractor trailers are used to transport extremely large volumes of data. (And some think of it as a Series of Tubes.)
A protocol, on or off the Internet, is an agreed language for communicating, and a set of rules for doing something. There are fire drill protocols; CPR protocols; Dinner-With-the-Queen protocols, and Internet Protocol. The latter is the “IP” in the acronym, “TCP/IP.”
IP determines where data goes and how it travels; TCP makes sure it gets there quickly and intact. The Internet Protocol is the set of rules followed to deliver data from point A to point B on the Internet based on the destination machine’s IP address. TCP stands for Transmission Control Protocol; it is the set of rules followed to ensure fast, error-checked transmission of data between two points on the Internet.
IP Addresses and the Domain Name System
A numeric IP address is similar to the address written on a postcard. Applying the rules of the Internet Protocol to an IP address should get data from the sending (host) machine to the one with that IP address. These addressing and routing rules are found in the Domain Name System (DNS).
The core of the DNS is a huge, two-column table of domain names and IP addresses. When you type “askbobrankin.com” into your browser’s address bar, here is what happens:
The browser sends “askbobrankin.com” to a DNS server along with a request: “What’s the IP address that corresponds to askbobrankin.com?” The DNS server consults its table and sends the answer, if it has one. If the DNS server can’t find the answer, it sends the request to a higher-level DNS server that has more names and addresses. The request keeps getting kicked up to a higher level DNS server until the answer is found, if it exists. In the whole wide world, there are only 13 “root” DNS servers that know every name and address pair; most DNS requests are resolved (successfully answered) at much lower levels.
When your browser receives the correct IP address, it sends a request for Web content to that address using the HTTP or HTTPS protocol. (The latter specifies that certain security measures be taken to protect the privacy of communications; see below). When the Web server at that IP address gets the request, it collects the requested data and sends it back to the requesting browser’s IP address.
Sorry, No Teleportation (Yet)
So let me clear up a misconception (or at least a misnomer) here. It's fun to think that when we view a web page on a site half-way around the world, that we've somehow magically traveled to that location. But you don’t really “go to” a Web page, and likewise, there are no “site visitors.” Web pages come to you in response to your browser's requests, just as packages come to you from a warehouse in response to your purchase orders. To use the physical mail analogy, it's like sending a postcard from New York to Paris, asking for a picture of the Eiffel Tower. Someone in Paris receives that request, and sends back a postcard with the photo. You've gotten the photo of the Eiffel Tower, but you never actually visited Paris.
A Web page may consist of thousands or millions of bytes of data. They don’t all arrive at once in one huge package. The data your browser requests is broken up into blocks of 1,000 to 1,500 bytes. Each block is packaged with header and footer information that specify where it’s going, what larger body of data it comes from, and where it fits in the jigsaw puzzle of blocks that will have to be re-assembled at the destination address.
Data blocks don't necessarily follow each other in single file over the same path from a server to the machine that requested them. Instead, each packet of data is sent along the path of least resistance (fastest speed) by each router that handles it on its way back to you. So that postcard in my analogy would actually be torn into bits, each labelled with the destination address, and then re-assembled upon arrival.
You may wonder how each data packet knows where to go. When your browser sends a request for something on the Web, your router gets a data packet with a destination IP address. Your router's "routing table" then specifies in which direction the packet should be sent. The next router in the chain does the same thing. Eventually the packet gets to a router that says "Hey, there's a computer with that IP address attached to me!" The remote computer gets the desired information, and sends a bunch of data packets in the reverse direction, through a chain of routers, to the requester's IP address. Just replace "router" with "post office" in the postcard analogy, and it holds up pretty well.
So the illusion that you are visiting a website in Paris, London or Rome is created by software. Or if you prefer, magic. Clarke's Third Law states: "Any sufficiently advanced technology is indistinguishable from magic."
What About Security?
In theory, any data travelling across the Internet can be seen by persons who have access to the computers or routers in the local network or Internet backbone. On a public wifi connection, you are even more exposed, because everything you can see in your web browser or email program is also visible to others on the same wifi network. In practical terms, that means everyone in the same coffee shop, airport lounge, library or hotel.
The answer is encryption. When the web address shown in your browser says HTTPS instead of HTTP, that means your data is encrypted before hitting the Internet. To anyone who might be "sniffing" it will appear as a random jumble of numbers and letters.
The HTTPS protocol combines HTTP with a security protocol called TLS/SSL. Actually, TLS (Transport Layer Security) is a modern, more secure replacement for SSL (Secure Sockets Layer), but both are commonly used and so appear together. Using digital certificates and public key encryption technology, TLS/SSL first authenticates the destination server, verifying that it is indeed “askbobrankin.com” and not a malware-spewing imposter. Then an encrypted “tunnel” is created between the destination server and the requesting host machine, through which data is exchanged safe from eavesdropping. The math involved is mind-bogglingly complex, but that need not concern mere mortals.
All the extra activity of authentication, encryption and decryption of data adds some overhead to an Internet communication stream and the machines on each end. The Web may seem a bit slower but the added security and privacy are more than worth the sacrifice. Using a secure HTTPS connection is pretty much standard for most websites these days.
I hope that give you a better idea of what's happening under the hood while you surf the Web, chat with friends and exchange emails. Your thoughts on this topic are welcome. Post your comment or question below...
This article was posted by Bob Rankin on 26 Aug 2021
|For Fun: Buy Bob a Snickers.|
Do Computers (and other gadgets) Ever Get Tired?
The Top Twenty
Forgot Your Windows 10 Password? Here's the Solution
Post your Comments, Questions or Suggestions
Free Tech Support -- Ask Bob Rankin
Subscribe to AskBobRankin Updates: Free Newsletter
Copyright © 2005 - Bob Rankin - All Rights Reserved
Article information: AskBobRankin -- How Does The Internet Work? (Bob Explains...) (Posted: 26 Aug 2021)
Copyright © 2005 - Bob Rankin - All Rights Reserved