Behind-the-scene workings of the Internet are strikingly similar. Your computer is connected to the Internet just as your phone is connected to the phone network. It has a unique number just like your phone does. A computer’s “phone number” is called its Internet Protocol (IP) address. The IP address looks something like 66.23.22.115. It is provided to a computer by its Internet Service Provider (ISP) such as AOL, Earthlink, and Verizon.
Now, let us say you want to visit www.pcmech.com. To do so, your computer as well as the computer that hosts the pcmech.com web site must be connected to the Internet and their ISPs must allot them IP addresses. If you know that the IP address of www. pcmech.com is 209.68.45.231, you could type it in your browser’s address window as http://209.68.45.231 and you would get to pcmech.com’s home page. (Go ahead, try it!)
Most people are as bad at remembering long strings of numbers, so they come up with mnemonics for numbers. It is much easier for them to remember www.pcmech.com than to remember 209.68.45.231. But then, www.pcmech.com must somehow be translated, or resolved, to 209.68.45.231 just as your friend’s name has to be resolved to his phone number.
Since computer is considerably more intelligent than a telephone, you can leave the task of resolving IP addresses to it rather than calling around yourself. If your computer does not know the IP address of www.pcmech.com, it would need to look it up in its cache. All computers maintain such a cache. If the address is not in the cache, your computer needs to ask someone (or, to be precise, something) equivalent to the directory assistance operator. That “something” is called a name server.
Recall that an operator needs a person’s complete name and street address to find his telephone number. Similarly, a name server needs the complete name and address of a computer to look up its IP address. As it happens, www.pcmech.com is not only the name but the name and complete address of the computer that hosts the pcmech.com web site. It is called a(n) URL (pronounced “Earl” or “you-are-ell”, depending on who you ask). If pcmech.com’s web server were a person, you could write its name and address as:
www
pcmech
com
“www” is simply a prefix to an address, which is not always necessary these days. “pcmech” is akin to a street address and is called the “domain”, or “hostname” if there is more than one domain name at a single IP address. Domain names can also be differentiated by using different prefixes for “sub-domains”. Finally, “com” is like the town and is called the suffix or top-level domain (TLD). You may have seen addresses that end in “net”, “org”, “edu”, “gov” and also in two letter country codes such as “us” and “ca”. These are examples or other TLDs. There can be only one pcmech.com, but you can have a pcmech domain in every TLD. So pcmech.com, pcmech.net, and pcmech.org are all distinct domain names and each may belong to a different person or organization.
Before we go any further, let’s see how the cross-reference between web site names and IP addresses is established. The process is analogous to establishing a cross reference between your telephone number and your street address.
To get a telephone number, you must have a street address. If you buy an existing house, it already has a complete street address. But, if you construct a new house on an as-yet-unnumbered lot, your house will only have an address street name onwards. To complete the address (and distinguish your house from your neighbor’s), you must get a house number allotted from your town hall.
When a builder develops a whole new community that includes new streets, he has to get the new street names approved from the local town hall. The town hall will insist that each street name be unique in order to preserve the sanity of the local postal service staff. If the town already has a Washington Avenue, for example, the builder has to call his street something else.
When a whole new town is built, whoever is building it has to get in touch with The Board of Geographic Names (BGN), a branch of Department of Interior. The folks there ensure that the name proposed for the town is unique within the state and make an entry in their records that the name is taken.
Domain names work just like street and town names. An autonomous body called ICANN is in charge of all domain names. It authorizes one or more organizations called Registrars to allot names in various TLDs. Some common registrars are Network Solutions and GoDaddy.com, who have the authority to dispense names in the “com” and a few other TLDs.
When you want to register a new domain, you must contact a registrar and give them some information about yourself, and of course, your credit card number. In exchange, the registrar will make an entry on its name servers for a computer in your domain. That entry is called a DNS entry. The entry could simply be the name of a computer and its IP address.
But this creates an administrative headache for the registrar; it must maintain a list of all the computers in your domain along with their IP addresses. You may decide to have many computers in your domain. Every time you add computers to (or remove computers from) your domain the registrar will have to alter DNS entries.
Since you have the authority to add or remove computers in your domain, would it not be easier if you maintained your own name server? That’s exactly is the case. Instead of making an entry for every computer in a domain, the registrar makes a single entry for a domain name and the IP address of the name server in that domain.
Armed with this knowledge, we can now see how your computer resolves a request for www.pcmech.com. If you visit the site often, your computer will likely have the IP address in its little notebook – its DNS cache. If the entry is not in the cache, your computer must ask the local operator, the name server of your ISP. If several of the ISP’s customers visit www.pcmech.com, the name server is likely to have the IP address in its DNS cache. So the ISP’s Name server first looks at its cache. If it finds the address, the ISP’s name server returns it your computer. If not, it must ask another name server. The question is, which name server should it ask?
The logical name server to ask is the one in the pcmech.com domain. But now your ISP’s name server needs to know the IP address of pcmech.com’s name server. If that address is in the ISP’s Name server’s cache, well and good. But if it isn’t, the ISP’s Name server will have to ask pcmech.com’s registrar’s name server which is in the “com” TLD (or another name server in the “com” TLD) .
A name server in “com” TLD does not know the address of www.pcmech.com, but it does know the address of the name server for pcmech.com because the registrar made an entry to that effect. It passes that address to the ISP’s name server. The ISP’s name server then asks pcmech.com’s name server for the IP address of www.pcmech.com.
pcmech.com’s name server knows the IP address because when the folks at pcmech.com installed a computer by the name of pcmech, they made a DNS entry for it on their name server. The name server finds that entry and returns the corresponding IP address to your ISP’s name server. Your ISP’s name server then passes the IP address on to your computer.
“Now wait a minute!” you say. How on Earth did the ISP’s name server know the IP address of a name server in “com” TLD?
The answer is that there are 13 primary or “root” name servers on the Internet that synchronize with each other several times a day. These name servers have entries for all name servers (and also computers) in all TLDs. The IP addresses of the root name servers are built into the software on every computer. So your ISP’s name server can easily look up the IP address of one of the 13 name servers and ask it for the IP address of the next name server down the line.
Strictly speaking, when a computer (or a name server) makes a query to a name server, it does not actually ask for the address of a knowledgeable name server. It asks for the address of the target computer such as www.pcmech.com. But name servers are lazy beings. They just reply to the effect of “I don’t know, but this guy might” and pass back the address of another name server down the line. This continues until a name server can’t pass the buck any further and has to look up the actual address.
And at long last (which actually is only a second or two) your computer, armed with the necessary IP address, establishes a connection with www.pcmech.com.
But remember that you typed http://www.pcmech.com in your browser. The “http://” tells www.pcmech.com that the request is for a web page. Since you did not request a specific page such as http://pcmech.com/show/network/926/, the computer serves you the site’s default page, generally called the “Home Page”.
And that’s how the page appears in your browser.
The PCMech.com weekly newsletter has been running strong for over 8 years. Sign up to get tech news, updates and exclusive content - right in your inbox. Also get (several) free gifts.
Pages: 1 2


