Please Whitelist This Site?

I know everyone hates ads. But please understand that I am providing premium content for free that takes hundreds of hours of time to research and write. I don't want to go to a pay-only model like some sites, but when more and more people block ads, I end up working for free. And I have a family to support, just like you. :)

If you like The TCP/IP Guide, please consider the download version. It's priced very economically and you can read all of it in a convenient format without ads.

If you want to use this site for free, I'd be grateful if you could add the site to the whitelist for Adblock. To do so, just open the Adblock menu and select "Disable on tcpipguide.com". Or go to the Tools menu and select "Adblock Plus Preferences...". Then click "Add Filter..." at the bottom, and add this string: "@@||tcpipguide.com^$document". Then just click OK.

Thanks for your understanding!

Sincerely, Charles Kozierok
Author and Publisher, The TCP/IP Guide


NOTE: Using software to mass-download the site degrades the server and is prohibited.
If you want to read The TCP/IP Guide offline, please consider licensing it. Thank you.

The Book is Here... and Now On Sale!

Enjoy The TCP/IP Guide? Get the complete PDF!
The TCP/IP Guide

Custom Search







Table Of Contents  The TCP/IP Guide
 9  TCP/IP Application Layer Protocols, Services and Applications (OSI Layers 5, 6 and 7)
      9  TCP/IP Key Applications and Application Protocols
           9  TCP/IP Application Layer Addressing: Uniform Resource Identifiers, Locators and Names (URIs, URLs and URNs)
                9  Uniform Resource Locators (URLs)

Previous Topic/Section
Uniform Resource Locators (URLs)
Previous Page
Pages in Current Topic/Section
1
2
34
Next Page
URL Schemes (Applications / Access Methods) and Scheme-Specific Syntaxes
Next Topic/Section

URL General Syntax
(Page 2 of 4)

Common Internet Scheme Syntax

In theory, each scheme may use a completely different syntax entirely for the “<scheme-specific-part>”. However, many of these schemes share a common syntax for this part, by virtue of the similarities in how they refer to internetwork devices and resources on those devices. For example, both HTTP and FTP are used to point to specific TCP/IP devices using a DNS name or IP address, and then access resources stored in a hierarchical directory structure. It makes sense that their URLs would be at least somewhat similar.

The most general form of this common Internet scheme syntax is as follows:

<scheme>://<user>:<password>@<host>:<port>/<url-path>;<params>?<query>#<fragment>

The elements of this syntax are as follows:

  • <scheme>: The URL scheme, as described above.

  • <user> and <password>: Authentication information for schemes requiring a login, in the form of a user name and password.

  • <host>: An Internet host, usually specified either as a fully qualified DNS domain name, or an IP address in dotted-decimal notation.

  • <port>: A TCP or UDP port number to use when invoking the protocol appropriate to the scheme.

  • <url-path>: A resource location path. This is usually a full directory path expressing the sequence of directories to be traversed from the root directory to the place where the resource is located, and then the resource's name. For example, if on a device there is a directory called “project1” and within it a subdirectory called “memos” containing a text file called “June11th-minutes.txt”, the URL path “project1/memos/June11th-minutes.txt” would refer to that resource.

    Note that the slash before the <url-path> is required, and while it is technically not considered part of the path, it serves the purpose of “acting” like the slash denoting the root directory in many file systems. Also, the <url-path> may end in a slash, which means that the path refers specifically to a directory. However, this is often not required, as the server will treat the URL as a directory reference by context when needed. A path may also refer to a virtual file, program or resource other than a “normal” file.


  • <params>: Scheme-specific parameters included to control how the scheme is used to access the resource. Each parameter is generally of the form “<parameter>=<value>”, with each parameter specification separated from the next using a semi-colon.

  • <query>: An optional query or other information to be passed to the server when the resource is accessed.

  • <fragment>: Identifies a particular place within a resource that the user of the URL is interested in.

Figure 287 illustrates this common syntax and its elements using an example HTTP URL.


Figure 287: Example Uniform Resource Locator (URL)

This diagram shows a sample URL that includes almost all of the possible elements in the general scheme syntax, each of them highlighted using snazzy rainbow-colored boxes. J This URL identifies a Web (HTTP) resource that must be accessed using a particular password at the site “www.mysite.org” using port 8080. The resource in this case is a PHP program in the site’s “cgi-bin” directory that causes a particular page of photographs to be displayed. The “<fragment>” specifier will cause the picture “Reception07” on the retrieved page of wedding photos to be displayed to the user.

 


Previous Topic/Section
Uniform Resource Locators (URLs)
Previous Page
Pages in Current Topic/Section
1
2
34
Next Page
URL Schemes (Applications / Access Methods) and Scheme-Specific Syntaxes
Next Topic/Section

If you find The TCP/IP Guide useful, please consider making a small Paypal donation to help the site, using one of the buttons below. You can also donate a custom amount using the far right button (not less than $1 please, or PayPal gets most/all of your money!) In lieu of a larger donation, you may wish to consider purchasing a download license of The TCP/IP Guide. Thanks for your support!
Donate $2
Donate $5
Donate $10
Donate $20
Donate $30
Donate: $



Home - Table Of Contents - Contact Us

The TCP/IP Guide (http://www.TCPIPGuide.com)
Version 3.0 - Version Date: September 20, 2005

© Copyright 2001-2005 Charles M. Kozierok. All Rights Reserved.
Not responsible for any loss resulting from the use of this site.