Inet 101 - A Brief History of the Internet Part 3
Written by Marco J. Shmerykowsky
I-net 101 - The Basics of File Transfers - Part 3/4
In the last I-net 101 installment I mentioned that users should avoid attaching large files to their e-mail messages. This time I'm going to review the tool that you should use to accomplish this task.
Ever since Computer Aided Drafting (CAD) was introduced into the architectural, engineering, and construction community, firms have been trading drawing files. At this point in time, almost everyone has probably requested the latest CAD files for a particular job. Typically, this involved compressing the files, copying them to a number of disks, stuffing them in an envelope, and then trusting either the post office or a messenger to deliver them to their destination in one piece. The popularity of the Internet and open standard computing, however, has given professionals the ability to transfer files from point A to be B without leaving their computers.
There are two basic ways to transfer electronic files. One is to send them as e-mail attachments and the other is to use what is known as an FTP site. The choice of which method to use practically depends on the size and the number of files which need to be transferred. The "snail mail" analogy for this criteria revolves around the size of a package. The United States Postal Service will ship packages which weigh no more than 70 lbs and do not measure more than 108 inches in length and girth combined. Packages which exceed these limits must be shipped through an alternate carrier such as the United Postal Service (UPS).
Sending electronic files as e-mail attachments is equivalent to using the US Postal Service. Typically, files should not exceed more than the capacity of a standard High Density 3.5" PC floppy disk (i.e.. approximately 1.44 Mb). In order to minimize the size of the files it is common to use a popular available compression format such as ZIP which can usually reduce a file to nearly 50% of its original size. File size is limited to reduce the required time of transmission and to be kind to the computers functioning as mail servers. Many Internet Service Providers (ISPs) place limits on the maximum file size which will be accepted by a particular server in order to prevent the machine from bogging down. A typical e-mail message will have a size of approximately two kilobytes. A file attachment of 1.44 Mb in size would be equivalent to approximately 720 messages! Given the choice between servicing a single user and 720 users, an ISP will typically choose to keep the larger number of paying customers happy. Finally, one must recognize that creating an acceptable level of performance at points A and B does not resolve the issue since the e-mail message must pass through many intermediate points prior to reaching its destination. The multiple transmission points also means that the file can get lost or corrupted "en-route."
Once the file is ready for transmission, the user must make one "technical" decision: which encoding format should be used. Since the Internet e-mail standard only allows ASCII plain text to be transmitted in the body of a message, binary files (eg CAD files, ZIP files, executable programs) must be converted into plain text. The most popular formats for converting these files are UUENCODE and MIME/Base64. UUENCODE and UUDECODE are coding and decoding programs which were originally developed for the Unix operating system and have been ported to almost all commonly used platforms. MIME stands for "Multipart Internet Mail Extensions" and is the more modern encoding format. Typically, you should use the MIME format. In general, the type of format isn't as important as ensuring that both sender and receiver are using the same encoding formats. If they aren't, then the files will be unreadable and useless.
The second method uses the Internet's File Transfer Protocol more commonly referred to as FTP. In my opinion this is the better and simpler way to transfer files. As such, I'll use a double analogy to describe it. First, FTP is equivalent to using UPS. The files are either too numerous or too big to send via the good old Postal Service. Second, FTP functions conceptually like a post office box. The sender places the package in a "box" with a known address, and the receiver picks up the package from the same box. Pretty simple, huh?
The key to this process is having access to an FTP site (ie, the post office box). Commonly these sites have Internet addresses like "ftp.shmerykowsky.com". These sites have two types of access. The first in known as "anonymous FTP" and the second is a password protected FTP. The anonymous FTP site allows anyone on the Internet (eg your competitor, the hacker next door, the kindergarten class developing the next cool program you're going to use) to access the site. These people can place and copy files from the site freely. Some security is provided by the fact that most servers record the IP address or domain name of the user, and files are assigned "permissions" which prevent them from unauthorized erasure. The second type of site restricts access to the site by forcing the user to provide a "username" and "password." Although this level of security isn't foolproof, it does require some effort to bypass. [Anonymous FTP sites are generally used when you want everyone to be able to download the files, such as freeware software. Ed.]
The basic functionality of the FTP site is identical to your local hard disk. The site is composed of nested "directories" or "folders" which contain files. Once you locate the file you need to retrieve, just copy it. There are a number of FTP programs which provide the capability to copy files. The most common programs are Microsoft's Internet Explorer and Netscape's Navigator. Access the site, supply the username & password, find the file, and click to download. More functional programs allow a user to select and copy multiple files in a single session. This is where the advantages lie. If I need to receive 20 files, I simply access the FTP site, select the files with my FTP program, and start the download. Then I tackle the next crisis on my desk as my computer does the work. The key point is that the sender knows with 100% certainty that the files were placed in the "post office box," and the receiver knows with 100% certainty that the files were retrieved. The most important fact is that the FTP servers and clients were designed to transfer numerous large files. E-mail systems weren't.
In general, use the right tool or service for the right job. To ship one small file use e-mail (ie. The United States Postal Service). To ship numerous large files use an FTP site (ie. United Parcel Service). Thank you & have a nice day <GRIN>.