Basic internet tools
It is important to understand that there are important Internet protocols other than HTTP. The other protocols work in much the same way as HTTP in that there is a piece of client software making requests to a server machine running the appropriate server software. Here are some of the most common and useful protocols.
FTP (File Transfer Protocol): This existed before HTTP and as the name implies is a protocol for exchanging files over the Internet. There are two types of FTP:nonanonymous and anonymous. With nonanonymous FTP, you are required to have an account name and password on the server in order to access files on the server. When using nonanonymous FTP client software you must provide three things: 1) the name of the server, 2) the account name, and 3) your password.
When you use nonanonymous FTP you are connecting to a server and have access to certain files on the server for which your account has permission. Figure 46 shows the screen when you FTP to the server gsbkip.uchicago.edu using the account kmartin (that is, when you enter ftp://kmartin@gsbkip.uchicago.eduon your browser). As the figure indicates, you can click on file folder icons and "drill down" through the file structure in a hierarchical fashion just as though the server were your own machine. Note the contrasts between HTTP and FTP. First, when you FTP to a server and click on folder or file icons, you remain connected to that server machine. This is in contrast to HTTP, where a click on a hypertext link may take you to a different server altogether. The second difference between HTTP and FTP is that with HTTP you can see the actual content of the files you request displayed using HTML, whereas with FTP you can see only the folders and directories where your requested file is housed. With FTP you must first download a file from the server onto your computer and then open that file, assuming you have the required software to read it. Note also that when using FTP, the only service we require from the server is to serve up files. We are not using the server CPU for computing.
Figure 4--6 Using FTP.
FTP is an important protocol for Internet business. It is an excellent way for a company to exchange files quickly and securely with customers or partner companies. Perhaps the most common example is in distributing software. Many software companies offer their customers the option of using FTP to download software after making a purchase rather than sending a CD-ROM via the postal service. Another typical example is provided by a company like Hewlett Packard. You can go to the HP Web site and download via FTP the most current version of their printer drivers (software used by an application such as a word processor to communicate with a specific type of printer). Netscape has always used FTP as a means to distribute its browser. Of course, FTP use is not restricted to software companies. Companies might also use FTP to exchange purchase orders. It is also quite common in the Web development process to create and design Web pages on a client machine and then FTP the resulting work to the server machine of the Web-hosting company.
If you download software over the Internet using FTP, it is important to understand the following distinctions:
Public domain software3this is software that is free, carries no copyright, and there are no restrictions on redistribution of the software. In this context, free refers to price, not free in the sense of the GNU GPL as developed by Richard Stallman and described on page 65. Public domain software may well be an executable binary file with no source code provided.
Freeware3this is software that is free, but is copyrighted. There may be restrictions on the redistribution of freeware. Again, in this context, free refers to price, not free in the sense of the GNU GPL as developed by Richard Stallman and described on page 65. Freeware software may well be an executable binary file with no source code provided. Also, the policy on use and redistribution may be considerably more restrictive than in the GNU GPL.
Shareware3this is copyrighted software that is distributed on a "try-before-you-buy" basis. You download the software using FTP. The software will often have an expiration date. You use the software until the expiration date. If you like the software, you purchase it after the trial period ends. Often there is no trial period and the users are on their honor to purchase this software if they decide to keep it. This is a surprisingly effective business model. John McAfee used this shareware model to build a very successful software company based upon his anti-virus software. Shareware software often requires a purchase of the software in order to get technical support. The technical support appeals to large corporations, which motivates them to pay for the software.
Shareware and freeware are often distributed using anonymous FTP. With anonymous FTP the user does not need a password. When using FTP client software, the word anonymous is used as the account name and any string of characters can be used for the password. Distributing files with anonymous FTP is a good way to maximize their availability.
Client software is necessary in order to FTP files from a server. There is much dedicated FTP client software available as shareware or freeware. You can also use a browser as an FTP client. When Tim Berners-Lee was developing the Web protocols he made a conscious decision to incorporate the already existing FTP protocol into the Web. This allows users of the Web to easily access the numerous documents available on FTP servers. The URL syntax for using anonymous FTP with a browser is:
ftp://name_of_server
and for nonanonymous FTP it is
ftp://account_name@name_of_server
In the latter case you will be prompted for the password associated with account name.
In Chapter 2, "What Do I Need to Know about Hardware?," we discussed file compression algorithms. Many files stored on the Internet for download are compressed. A summary of the most common file extensions and associated compression programs is given in Table 41. Shareware or freeware programs are available on the Internet that allow a user to uncompress compressed files. Some programs provide the capability to uncompress without charge, but you are required to pay for a version of the program if you want to compress a file. This is yet another example of the classic Internet business model to give a useful product away free but charge for enhanced versions of the product.
Table 4--1 Compression Programs and Extension
Extension |
Compression Program |
.Z |
Compress (Unix) |
.sit |
Stuffit Deluxe |
.sea |
Self-extracting archive (Stuffit Deluxe) |
.zip |
Pkzip or Winzip - Windows and DOS |
.exe |
Windows/DOS self-extracting archive |
Just as with the HTTP protocol, special FTP server software must be running on the server computer. A server computer may run more than one piece of server software simultaneously. However, for a company serving many users, there may be separate computers that are dedicated FTP servers. The Microsoft Internet Information Server comes bundled with both an HTTP and FTP server.
Telnet: In a sense, Telnet is the converse of FTP. With FTP you are using a dumb server3the server is only providing files and all the computing is done on the client machine. With Telnet, the client machine is nothing more than a dumb terminal. You connect to the server machine running Telnet server software and all the computing is done on the server machine. The Telnet URL has the form
telnet://name_of_server
In order to use the Telnet protocol you need Telnet client software. You cannot Telnet using a browser without this additional client software. When you Telnet to a server machine, you are given a command line (not GUI) interface to the server machine. This is akin to being at the 2 o'clock position in Figure 21, the old time-sharing mode of the late 1960s and early 1970s. Telnet is still widely used, especially in Unix environments. It is a great way to access the CPU of another machine and test software. Telnet is often used by systems administrators to connect remotely to computers they are managing.
News: Internet newsgroups are a very common way of exchanging information. There are newsgroups on everything from archery to zen. An example news URL is
news://uchinews.uchicago.edu/rec.backcountry
In this URL, news is the service required, uchinews.uchicago.edu is the news server, and rec.backcountry (a newsgroup devoted to backpacking) is the target newsgroup desired. In order to access a newsgroup you need client software, such as Microsoft Outlook, and the server needs to be running the appropriate server software.
Newsgroups are asynchronous. That is, you post a message, someone responds at a later date, and you go back to the newsgroup and read the response to your message. Chat rooms and instant messaging are becoming increasingly popular because they are synchronous.
Mailto: Electronic mail, better known as email, is perhaps the most popular Internet protocol. As with all Internet software tools, you need client software and server software to use email. Indeed, when configuring your client email software to use programs like Eudora or Microsoft Outlook, you have to provide the name of the server where you send and receive mail. You can also send email using your browser and the mailto protocol. There is a mail URL for the browser that has the format
mailto:johndoe@company.com
where mailto is the service required, johndoe is the name of the person (or whatever name the person chooses to go by) to whom you're sending email, and company.comis the mail address. The mailto tool is similar to Telnet and news, in that you can execute the URL in a browser, but additional client software is needed in order to actually use the tool.
File or Path: Unlike the other URLs, this URL is used on the client machine only. It has a very useful function, which is to let a developer test a Web page before putting it on a server. Using this URL allows the developer to view a Web page through a browser where both the browser and Web page are on the client machine. For example, assume you have a file test.htmlthat you wish to view in a browser. Assume this file is in the directory tempon the C drive of a Windows machine. Then the URL
C:\temp\test.html
will allow the user to view test.htmlin the browser. The client machine does not need to be connected to the Internet in order to use the file URL.