How do Web Addresses Work

How does a Web Address Work?

First, when you type in something like yahoo.com, or twitter.com, or google.com that is not what the Internet uses to find the actual address of the web-site.

The web-site itself is actually identified by a code called Transmission Control Protocol/Internet Protocol (TCP/IP) number. The number is typically three digits, a period, three digits, a period, three digits a period and three more digits.

So, for example an address might look something like this:

000.000.000.000

Zeros are not required to "pad" the number so if one of the groups is "17," for example you will not see 017, but 17. You can see this in the table below of the list of sites and TCP/IP codes.

Of course if you type the number above into your Uniform Resource Locator (URL) bar you'll get nowhere because that's an invalid address. The URL and the Uniform Resource Name (URN) are both Uniform Resource Identifiers (URI).

Even if you were to ping (see below) that address you'd get nothing. The particular address of all zeros is invalid.

Later in this article I've give the TCP/IP addresses to the sites listed above and more. I'll even show you how to get the URN by typing in the web-site name.

The URN is the name of the web-site such as yahoo.com, google.com and hubpages.com; these are things you are familiar with and are easy to remember. Since the computer really doesn't know how to do anything useful with that name information it has to be converted to the numeric TCP/IP address.

To do this there is another system called the Domain Name System (DNS). It is basically a table of URNs with the associated TCP/IP addresses next to each name.

So, for example, when you type in one of those URNs the DNS converts the name to the TCP/IP address and passes that through your browser to the internet.

Venn diagram of URI
Venn diagram of URI | Source

Uniform Resource Name

There is a definite advantage to using a name rather than a number to identify where a web-site address is.

First, if the site wishes to change where it's servers are located, or wants to have the site located on a new set of servers it's very handy to be able to keep the name and use a new TCP/IP number. By using a table of URNs with the associated number this is a very easy change to make.

Second, humans have a much easier time remembering names that make sense rather than a series of number that can easily be forgotten.

After all, imagine having to type 208.68.139.89 every-time you want to go to Amazon.com and buy or search for a book.

TCP/IP Data Flow
TCP/IP Data Flow | Source

Transmission Control Protocol / Internet Protocol

This was the numbering system created to handle all of the potential sites on the Internet.

Originally, the idea was floated to Defense Advanced Research Projects Agency (DARPA). The main problem to be addressed was to ensure communications from one network got to the intended network regardless of how many intermediate places that information had to go first. This included data from ground based "brick-and-mortar" locations to orbiting satellites.

This way the location of the target and originating computer didn't matter as long as both these machines always used the same address.

Think of a TCP/IP number as a house address or the coordinates to any point on a globe of the earth. The difference is that the target and source computers can be physically moved as long as the underlying multi-digit address remains the same.

By using a system with so many digits in it there is a possibility have having up to nine hundred ninety-six billion (996,005,996,001) distinct addresses, that's almost one trillion, addresses.

Click thumbnail to view full-size
DNS DNS Resolver
DNS
DNS | Source
DNS Resolver
DNS Resolver | Source

Domain Name System

The Domain Name System keeps a list of TCP/IP address and the associated, human friendly, names for those locations. In the current system divisions in the name are separated by periods. So, for example, www.hubpage.com is actually (from right to left):

  1. The domain, in this case COM (commercial)
  2. The sub-domain, in this case HUBPAGES (the host name)
  3. The sub-domain to the sub-domain is WWW (world wide web)

With this system it's possible to have completely different host computers with similar names. For example, if had a site called www.liambean.com I might want to have direct access to the underlying file system for the site. Since files are sent, in whole, to specific locations, the file server might be called ftp.liambean.com and that is where I could store files.

If I were in Canada my web address might look something like www.liambean.ca, or if I were in South Korea the site name might be www.liambean.kp and so on.

This way the primary domain, on the very right, is a country identifier everywhere but the U.S.

Other identifiers include .org (if I'm a not-for-profit organization) or ,net for network oriented sites.

It doesn't really matter what the domain name is however, because the DNS server's know the numeric addresses to these places regardless of what they are called.

Note: I don't have any sites called liambean.com, liambean.net, or liambean anything else, so if you find one, bear in mind that it's not my site; it's someone else's.

Sample DNS List

Website URL
TCP/IP Address
http://www.yahoo.com
69.147.125.65
http://www.hubpages.com
66.211.109.13
http://www.google.com
66.102.7.104
http://www.amazon.com
208.68.143.55
http://www.twitter.com
128.242.240.244

Web Addresses Beyond the Host Name

Once your browser has landed on the core web-address anything beyond the the domain name (often after the domain name and a slash "/") is retained or resides on the host computer/network.

For example, the full host name for Barnes & Noble (another book seller site) is http://www.barnesandnoble.com. But if you select a link within the site the web-address is expanded to accommodate the page the link takes you to.

So clicking on the Books link and then selection B&N Top 100 will display;

http://www.barnesandnoble.com/u/Bestseller-Books/379001057/?r=1
 

which is the page listing the top one hundred (100) selling books on the site at that moment.

The portion of the address "u/Bestseller-Books/379001057/?r=1" is all on the web-site's computers or servers themselves.


Ping Test

Click thumbnail to view full-size
Start a command lineCommand PromptPing ExampleResult of Ping
Start a command line
Start a command line | Source
Command Prompt
Command Prompt | Source
Ping Example
Ping Example | Source
Result of Ping
Result of Ping | Source

Experiments

Do not attempt either of these examples if you are the least bit uncomfortable with the idea. They are completely safe if you follow the directions below exactly, but if you have any doubt skip both of these.

The first example demonstrates that the web-page name you type in is actually converted to a TCP/IP address by the Domain Name Service.

Name to Number Example
For these experiments I'm going to assume you are running Windows(XP, Vista, or 7). To the right of this section I have a series of images so you can check your results against what you should get.

  1. Click the "Start" button and select "Run."
  2. In the box that says open type "cmd" and click "OK."
  3. You should see a dark window with what's called a command line on it. In this case C:\Windows>
  4. Right after the > type in ping www.yahoo.com and hit Enter.
  5. Once you've finished click the "x" at the right top to close the window or type Exit at the command prompt.

As you can see from this example the Domain Name Service has translated the typed in name to a TCP/IP address.

Trace Route

Click thumbnail to view full-size
Start the Command LineThe Command Line PromptTracert Yahoo StartTracert Yahoo Result
Start the Command Line
Start the Command Line | Source
The Command Line Prompt
The Command Line Prompt | Source
Tracert Yahoo Start
Tracert Yahoo Start | Source
Tracert Yahoo Result
Tracert Yahoo Result | Source

How Did I Get There
The addressing is very important because it is very rare indeed for what you type into your URL address line to go directly between you and the site. In matter of fact, your request probably goes through at least two (if not many more) Internet servers to get to your desired site.

This example is designed to show you how many servers your request goes through from point A (your computer) to point B (the host computer/server) your target web-page resides on.

We'll use Yahoo again as an example.

  1. Click the "Start" button and select "Run."
  2. In the box that says open type "cmd" and click "OK."
  3. You should see a dark window with what's called a command line on it. In this caseC:\Windows>
  4. Right after the > type in tracert www.yahoo.com and hit Enter.
  5. What comes next is all of the computers your request had to go through between you and yahoo.com. The list includes your local host sever.
  6. As before click on the "x" at the right-hand corner of the command window or just type the word Exit and hit enter.

The command tracrt is short for trace route, which is exactly what it does.

Looking at the last image to the right every server your command had to go through to get from your computer to yahoo is shown as a single line. Each line names the computer your request was routed through, along with how long that routing took to process.

Coda

The author knows this is a really complex sounding explanation and there's a good reason for it. It is complicated.

But perhaps the best way to remember how this all works is this. When you or anyone else types in a web-address a Domain Name System sever converts the very human sounding address to a string of number and this string of numbers gets you right to where you want to go without you having to remember what amounts to a very long telephone type number.

Disclaimer

The author was not compensated in any way, either monetarily, with discounts, or freebies by any of the companies mentioned.

Though the author does make a small profit for the word count of this article none of that comes directly from the manufacturers mentioned. The author also stands to make a small profit from advertising attached to this article.

The author has no control over either the advertising or the contents of those ads.

More by this Author


Comments 2 comments

LiamBean profile image

LiamBean 5 years ago from Los Angeles, Calilfornia Author

Thanks. Corrections made.


nicomp profile image

nicomp 5 years ago from Ohio, USA

Actually, TCP stands for Transport Control Protocol or Transmission Control Protocol, not Terminal Control Program.

TCP is not defined as a program. it's a set of interacting messages that specify how hosts (computers) establish a connection and exchange data packets.

    0 of 8192 characters used
    Post Comment

    No HTML is allowed in comments, but URLs will be hyperlinked. Comments are not for promoting your articles or other sites.


    Click to Rate This Article
    working