Indiana University Multi-campus Modular Computing Curriculum

Introduction to Computing

Module ^{#} 8: Communication and Internet Protocols

Goals

• Students will recognize the main protocols used in Internet communications

• Students will send and receive email

• Students will join a mailing list

• Students will utilize newsgroups to find information

• Students will identify levels of connectivity to the Internet

Prerequisite Skills

• Familiarity with the worldwide web and URLs

• Basic historical background of the Internet

1 Structure of the Internet

Earlier in this course, we discussed the Internet. We saw that the Internet was a collection of protocols, hardware, and software components that enabled people to communicate via computers all over the world. We explored the world wide web, which is a major part of the Internet, and learned how it might be used to find all kinds of information.

As exciting as the web is, it is only a piece of an even larger and more significant entity. The Internet is made of other components that have other uses and characteristics.

Our purpose in this unit is to discuss the Internet in more detail than we have done before, and to learn some new ways we can use these additional Internet tools.

Module #8: Communication and Internet Protocols

8-1 1.1 Protocols

The Internet, as you remember, is a combination of hardware and software. Another very critical component of the Internet is the protocols, which are a series of agreements about how information will be shared and communicated between machines and networks. The protocols allow computers with different architectures and operating systems to share information.

It is important to note that protocols are NOT the same as programs. A protocol is simply an agreement about how data will be structured and communicated. Internet programs are designed to take advantage of one or more of the protocols.

1.1.1 TCPIP

TCPIP (Transfer Control Protocol / Internet Protocol) is the underlying protocol of the Internet today. It is the protocol that helps to split messages up, helps them find their way to the correct destination, then causes them rejoin at the destination. TCPIP is very important, but you rarely interact with it directly. All the other protocols take advantage of it.

TCPIP has been with us since the earliest days of the ARPANet. It is showing some signs of age, since it is being used for purposes its designers never imagined! Some other approaches to underlying Internet protocols are being studied. One notable possibility is a concept called ATM (Nope, not Automatic Teller Machines, but Asynchronous Transfer Mode.)

1.1.2 Telnet

One of the earliest protocols to be used regularly is called telnet. The telnet protocol allows a user to access a remote computer. If you have the permission of the owner, you can use your computer as a terminal of another computer. If Terrence has an account on a big unix machine at work, and that computer and his home computer are both attached to the Internet, he can use telnet to have his computer ’call up’ the unix machine at work. Once he does this, his computer is acting simply as a terminal. The screen he sees is being sent by the remote computer, and anything he types will be sent there. His own CPU is doing very little work. Any instructions he sends will go to the remote computer.

Why would anyone want to do this?

Telnet allows people to work on computers regardless of geographical limitations. It allows people to set up complex programs on mainframes or other computers, and let people log in to this computer. One good example is the library of Congress Information System (LOCIS). The Library of congress maintains a huge database. Through telnet connections, people can access the LOCIS computer from anywhere in the world.

Telnet is a very inexpensive protocol to implement and utilize. It does have disadvantages, however. The remote computer does all the work. It doesn’t matter how nice the graphics capabilities are on your local computer, for example, because you will be forced to use plain text most of the time when working on a telnet connection. Also, not all computers on the Internet allow unlimited telnet access. (In fact, very few do.) It is far more likely that a computer will allow you access only if you already have an account on that machine. In other words, you must have previously

8-2 arranged permission from the owner of the remote computer in order to use that computer. Telnet is still used extensively by computing professionals, and it is often used by large institutions such as libraries, universities, and government institutions as a very inexpensive way to provide access to information on mainframes. The Indiana University system, for example, uses a system called IUIS (IU Information System) for student scheduling and other purposes. If you have registered for class by computer at an IU campus, you probably used IUIS via telnet (!)

There are special programs designed specifically to help you use Telnet. These programs are generally referred to as terminal programs or telnet clients.

1.1.3 FTP

FTP stands for File Transfer Protocol. This protocol is a special protocol which is designed to facilitate copying information between computers through the Internet. Whenever you download a file from the Internet, you are probably using a form of the FTP protocol. Much of the time, FTP happens automatically through Web browsers, but there are special FTP programs as well. These FTP clients look like file management programs (with the directory tree structure and all!) except they also allow you to connect to a remote computer as well, and look at the file structure of that computer. Of course the purpose of this is so you can copy and move files between computers. An FTP program often looks like a file management program with TWO directory structures. You might use such a program if you have access to two Internet computers, and you want to back up some of your files on the other computer. The information you are reading now was created on a unix computer through Telnet, then FTPd to a couple of other computers for review!

1.1.4 Mail and News Protocols

If the web is the most glamorous protocol, the mail / news protocols are the work horses of the Internet. These protocols are designed simply to transfer text from computer to computer. There are a number of related protocols, including MNP, SMNP, POP, and on and on... It really isn’t that critical to understand the difference between them. The important thing to understand is that when you are reading mail or news, whatever program you use to do this is using a mail/news protocol.

1.1.5 HTTP

HTTP stands for hypertext transfer protocol. This is the protocol you already know and love. The WWW is based on this protocol. HTTP has some interesting characteristics. It was designed to make the Internet easier to use, and it accomplishes this in two major ways.

First, the HTTP protocol integrates many of the other protocols, so if you have a program that can understand HTTP, it knows how to handle other protocols such as gopher or ftp. Some browsers can also handle mail, news, and telnet.

Secondly, HTTP is designed with HYPERTEXT in mind. The earlier protocols often were implemented on text - only displays, and had command line - style interfaces. This was not a problem when the Internet (and its precursers) was populated by research scientists and the like

8-3 who actually seemed to ENJOY the confusing unnatural interface.

(Really. They dig that kind of stuff.)

HTTP encourages hypertext multimedia. Hypertext, as you remember, is text with links built in. These links can be activated to allow the user to go to a related topic. Multimedia refers to the ability to incorporate text, graphics, sound, and other media in the same document. Modern users are used to both concepts, and almost expect to find them in programs. The HTTP protocol is thus the most friendly. It is relatively easy through HTTP to share documents that contain all kinds of information.

Q. 1 Why do many URLs begin with the term http://?

(Answer on page 8-25.)

1.1.6 other protocols

There are a number of other protocols that are used on the Internet. Many of them are used mainly by computer professionals for maintaining and testing connections (such as ping, which checks to see if a certain site is running). Others (such as gopher) were very popular once, but now have been supplanted by another protocol. The worldwide web has made a number of smaller protocols far less important to the average user, because you don’t really have to know which protocol is being used.

1.2 The DNS system

All these computers that are connected to each other via the Internet need some way to ’find’ each other. There is a large system somewhat like a postal system that assigns each computer a special address.

1.2.1 IP numbers

The addresses are called IP numbers. An IP number has four ’digits’, with each digit represented by a number from 0 to 255. The smallest IP number is 0.0.0.0 The largest one is 255.255.255.255 The computer that this document was written on has an IP number of 134.68.140.61 These numbers are used very much like a zip code to help a packet of information find its way to the proper destination.

1.2.2 Domain Names

Numbers are, of course, easy for the computer to deal with, but confusing for human users. Computer scientists developed a system called the Domain Name Server (DNS) system. It was devised to give verbal equivalents to IP numbers. Many computers have domain names in addition to IP addresses. The Domain names are paired with the IP numbers in a large database that is

8-4 distributed throughout the Internet. So far, you may not have used any IP numbers. Most of the computers you access through a web browser have a domain name. You will only need to know about IP numbers when you encounter a computer which does not have a name assigned.

The DNS system is organized in a tree - like structure based loosely on the organization of the ARPANet. All the computers in the Internet are thought of as belonging to a specific wide domain. Each domain might have a number of subdomains, which might have a number of computers in it. Finally, each computer may have a number of users who own or regularly use the computer.

Part of the DNS tree structure is shown here:

There are two main ways of organizing the highest level domains. The ARPANet defined domains with three character abbreviations based on the type of organization which owns the computers. The most common of these names is summarized in the table below:

Domain Type of Organization
.edu  Educational institution
.com  Commercial or business
.gov  Government organization
.org  Non-profit organization

You might also find two character domain abbreviations, like .fr or .au. These are international domains, which represent the country of the computer. .fr stands for France, and .au stands for Australia.

1.2.3 Subdomains

Each domain is broken down into a series of subdomains. Subdomains are generally large organizations. In the .edu domain, for example, indiana is a subdomain representing Indiana University, and iupui is another subdomain representing IUPUI.

Q. 2 Why do we have indiana and iupui in lowercase letters?

(Answer on page 8-25.)

Within a subdomain, individual computers are also frequently given names. In one computer lab, all the computers are given names of ships or planets from a popular science fiction series.

A computer might have the following complete DNS address: klingon.cs.iupui.edu

From right to left, we can interpret the address in this way:

edu = educational institution This computer belongs to some type of school or other educational institution.

iupui = Indiana University / Purdue University / Indiana This is the name of a particular university. If we did not recognize IUPUI as a university name, we might be stuck here. It would still be reasonable to assume that IUPUI was the name of a school, though, because of the .edu extension.

8-5 cs = Computer Science Again, we might have to just guess that cs means computer science. Organizations might abbreviate departments as part of the internal naming structure they choose. CS is a very common abbreviation in universities for computer science.

klingon = the name of the particular computer. The only reason we know this is because it is at the very left hand part of the complete name.

As you can see, there is a lot of guesswork involved in interpreting a domain name, but the letters are not random. There is usually some kind of organization to the name.

Organizations apply to InterNIC for a particular subdomain name. Once they receive that name, they can create subdomains however they want.

To make things a little easier, many subdomain owners have followed a special convention: Since most transactions are done via the worldwide web, a special subdomain is often designated specifically to hold the main documents that organization wants distributed via the web. That subdomain is usually something like: www.orgname.com where orgname is the name of the organization (or some other catchy word) and .com is replaced by whichever domain type is appropriate.

Q. 3 What might be the domain names for the following organizations?

• The White House

• Microsoft

• National Public Radio

• Indiana University Computer Science Department

(Answer on page 8-25.)

1.2.4 Userids

In the Internet world, you see that computers have names. Individual users also have names. The names are usually given to users when they are given account on a Internet connected computer. Most local area networks require each user to have a name. Most mainframe computers have a similar requirement The user’s name is often called a login or userid. Frequently these names are based on the user’s actual name, but it is often abbreviated and put only in all lower case letters. A user named “Georgia W. Wilson” might be assigned userids like gwilson or gwwilson. The advantage of this is that if we can combine the userid with the domain name of her system to get a complete address. If Georgia had an account on the klingon computer described above, her complete Internet address would be “gwwilson@klingon.cs.iupui.edu”. Other Internet users anywhere in the world could send messages to her by using that address.

8-6 1.2.5 Passwords

Security is an important consideration in the Internet world. The computer has know way of knowing who you are. Most LANs or mainframes require each user to log in, or sign on to the system. To do this, you type in your userid at a prompt. You are then prompted for a password.

passwords are special codes you use to ’lock’ your account. Obviously you need to be careful about protecting your password if you are building nuclear power plants or something, but what about the rest of us?

A student recently got some help from her friend on email. She gave him her password to a class account, and he wrote it down. Apparently some of his buddies found the password and logged in using the student’s userid and password, and sent a very obscene message to the class. The student nearly lost her account, because she had been sloppy with her password.

Change your password regularly!

Some hints:

• Don’t use your dog’s name. People will guess it

• Don’t use words in English, people can hook up spell checkers

• Consider combining words and numbers

1.3 How it all works

This large collection of computers all over the world is much too large an entity to understand without some type of organization. As you have seen, computer scientists like to take large entities and break them into tree - like structures that are easier to comprehend and deal with. The Internet is put together in exactly the same way. We will start by thinking about the smallest units, and see how they are attached to form the entire Internet.

1.3.1 The local computers and the LAN

The smallest unit on the Internet is the individual user. In many offices and homes, each person has her own personal computer. In other organizations, there may be a very large computer that each member of the organization has an individual account on. In any case, it is important to imagine that each individual has a userid within the local organization, and that all the computers within this organization are tied together with some sort of local area network. Often each department or floor in an organization has a LAN. LANs usually consist of up to 100 computers attached together through wires and special software so they can communicate easily. Often, LANs are tied together within a large organization to make WANs, or Wide Area Networks. For our discussion, we will consider LANs and WANs to be pretty much the same thing.

8-7 1.3.2 Lans and Routers

The LAN makes communication between members of the same organization much easier, but The Internet is a MUCH larger unit, and LANs need some help in order to make an Internet connection possible. LANs are attached to special computers called routers. A router is designed with one job in mind; directing traffic between the LAN and the rest of the Internet. In essence, when you send a message anywhere outside your LAN, you send it to the router, which takes care of distributing the message to the rest of the Internet. Likewise, any messages or documents you get from anywhere on the Internet have gotten to your machine through your router, and your LAN.

1.3.3 Routers and The Internet Backbone

The router takes the information you give it, and uses TCP/IP to send the packet to other routers. Eventually, the packet will get to a high - speed communication system called the Internet Backbone. The ’Information Super-highway’ we keep hearing about is really a reference to the high-speed connections between a number of National Science Foundation sites. In the Indiana area, most packets make their way to the Internet backbone through the University of Illinois site. From here, packets are transferred to other routers via the IP addresses, until the packets eventually find the correct destination. All this often happens in seconds. The next time you get frustrated about how long it takes to view a web page, reflect on the process it took to get to your computer!

1.3.4 The Client - Server Approach

Often in Internet computing, you will encounter the terms “client” and “server.” The Internet uses what is called a client / server model of communication. This is how it works:

Tim goes into a drive - through restaurant. He sees a big menu full of choices. He chooses a “big fun cool wacky meal,” and informs the little speaker of his decision. He hears a tinny little voice confirm his request, then tell him how much it will cost, then tell him with a slightly bored expression to drive up to the first window. Presumably as he drives around the restaurant, some kind of food preparation is happening inside. He gets to the window and exchanges his cash for the food, then drives off.

In this illustration, Tim is the Client. He makes requests and gets stuff back. the restaurant is the server. It sits around waiting for requests from clients, processes them, and gives the results to the clients.

Most of the software that is designed to be used via the Internet is classified as client software or server software. Client software is designed to be used by ordinary users. Web browsers, email programs, ftp programs, and most of the other Internet programs you will interact with as a user are clients. The servers are the big Internet computers and programs which are set up to interact with clients. They generally have information designed to be read by various clients. For example, the web browser program you interacted with earlier was a web client (to be more precise, an HTTP client.) Let’s say you used this program to go to the WhiteHouse at http://www.whitehouse.gov. When you place the url in the little box and tell the browser to go there, it tries to find a server at that address. The white house has a computer (sadly, it might not really be in the White house,

8-8 but let’s just pretend it is!!) with all the pages of the white house web site, and the appropriate programs to communicate those pages to your browser. The white house is acting as a server. (I guess that is somehow appropriate!)

2 Levels of Connectivity

One area that frequently confuses people about the Internet is the fact that it is possible to Interact with the Internet on many different levels. Each of these different levels of connectivity implies different compromises between speed, expense, and capability. The connection we are concerned with here is the personal computer or LAN to the router. there are also differing ways of connecting the router to the Internet beyond, but that is beyond the scope of this course.

2.1 Direct connection

The most powerful type of connection is a direct connection. A computer with a direct connection is always attached to the router, usually with some type of high-speed phone line or fiber - optic cable. A direct connection is VERY expensive, but it is powerful and fast. Most computers that work as servers have some kind of direct connection, but such a connection is often too expensive for a typical user who is not interested in SERVING information as much as being a CLIENT.

2.2 Dial - in connection

There are a number of compromises we can make so that a computer that does not have a direct connection can still have some type of relationship with the Internet. Many companies and most universities have one or more mainframes or other large computers with direct connections to the Internet. Members of that organization are give accounts on those huge machines, with a small amount of hard drive space dedicated to that individual. These large computers are also frequently attached to a bank of modems. People with modem - equipped computers at home and accounts on these large computers can use special software to have their home computer call the larger machine. Once the communication is established, the home computer becomes a terminal to the large one. Note that this is functionally very similar to telnet. The only difference is in the type of connection. Telnet is between two computers which BOTH have IP numbers and connections to the Internet. In a dial - in connection, only the large computer has an IP number, and the home computer does not exist as far as the Internet is concerned. All transactions happen in the CPU and drive space of the LARGE computer. The home computer is nothing more than a terminal. If you used such a connection to download a specific piece of software, for example, that software would be stored in your drive space on the LARGE computer. You would need to use other strategies to copy it from that large computer to your computer at home. Obviously, this is a bit of a disadvantage. Another disadvantage of this type of connection is that a dial in connection usually implies only command - line interfaces, which are a bit ugly and difficult to work with. No matter how nice the graphics and sound capabilities of your home computer might be, they are tied to your own CPU and will not be utilized when you are using a dial - in style connection. Still, dial in connections are very popular because they are extremely inexpensive to

8-9 maintain, provide the most important Internet services, and work with even very limited home computers. Most universities give all students at least limited dial - in service.

2.3 Slip - PPP connection

Another approach is becoming more popular, because it offers many of the benefits of direct connection, but can still be done at a home without a permanent dedicated Internet phone line. This approach is called PPP (Point to Point Protocol). A related protocol is called SLIP (Serial Line Interface Protocol). PPP is replacing SLIP. For our purposes, we will consider them the same thing. An organization with PPP capability may be set up the same way as the dial in service model. There is a large computer with a permanent direct connection, and a number of people with smaller home computers that want to connect to the larger machine through cables or phone lines. When these machines are connected via PPP, the larger machine has its own IP number, and a bank of temporary IP numbers it is allowed to “check out,” like library books. Your home computer must have a special program that knows how to hook up to the large computer and “check out” an IP number. You activate this software, and it makes the connection to the large computer through your modem. As long as this connection is open, your computer has its own albeit temporary IP number. In effect, you have ’faked out’ the Internet into believing you have a direct connection.

With a PPP connection, it is really your computer at home with the Internet connection. You can run programs that take advantages of your graphics and sound capabilities (like most web browser programs), and anything that you save will be saved to your own computer, not the large one. When you break off the connection, the IP number you borrowed will be returned to the pool. The next time you utilize this service, you may get a different number.

This approach is not terribly expensive to maintain, and it allows people to take advantages of their own computer’s capabilities. The user has to set up the PPP program as well as setting up and installing any client software he wants to use. This can be intimidating, but it gives the user a great deal of power.

A PPP connection is not appropriate for server programs or information. For example, if you wanted to make a web page and make it available to everyone on the Internet, you couldn’t do it with a PPP account alone.

Q. 4 Why?

(Answer on page 8-25.)

2.4 Commercial Service providers

The most popular way for people to get started on the Internet and related issues is through commercial service providers. If shirts with little alligators were the icon of the ’80s, floppy disks in the mailbox promising 10 free hours of Internet access may well be the icon of the 90s. The number and type of such providers has changed dramatically in the last few years, and it is easy

8-10 to be confused about them.

2.4.1 Proprietary Networks

Before the Internet became popular with the general public (Waaaaaay back in....say, 1990!) there were a number of privately owned corporations which provided services much like the Internet. The most prominent of these are Compuserve, Prodigy, and America Online, although there are many others. These ’private networks’ have some significant differences from the Internet at large. They are generally placed on one large computer or network with many many modem ports. The information on the system is privately owned or contracted. Such systems might have extra controls that the Internet does not have, such as ’censoring software’ that automatically rejects any messages which contain objectionable words or phrases. (who decides what is objectionable?) The materials on such networks can be much more clearly defined and organized, because they are not created as randomly as the Internet at large. Originally, each of these services was an independent ’information island.’ If you belonged to one service and your sister to another, you were pretty much out of luck. These days, the proprietary networks all have some kind of link to the Internet, and allow you to exchange email and web pages with anyone in the world who has any kind of Internet access. The down side is the cost. Once your free hours are over, you pay the service by the hour. There are many stories of people racking up horrible on-line bills by losing track of the time. This is especially troublesome if you spend all this time using the service provider as a gateway to the Internet, because the Internet stuff cost the provider almost nothing! If what you really want is Internet access, and you will want to be online more than a few hours a month, these providers may not be the most cost - effective technique for you.

2.4.2 Internet Service Providers

Internet Service Providers (ISPs) are a new class of business that suddenly came into being within the last few years. These providers are simply folks who own large computers with direct connections and hard drive space for rent. When you sign up with one of these providers, you can get varying levels of service. Most people get some kind of PPP access and drive space for email and other permanent document storage. In this way, you always have an Internet presence online, for a relatively small amount of money. Many of the ISPs offer programming services and business accounts, so you can get a web page for your small business, for example. The ISP approach is probably the best bet if you plan to be connected to the Internet for more than a few hours a month, and want to experiment with other Internet ideas such as building homepages and doing business online.

The problem with ISPs is that the business is so new that there are very few controls. Check around with any of the computer types you know to see which are the most trustworthy ISPs in your area. This field is bound to change as telephone companies and other large corporations get into the fray.

8-11

3 Email

Email, which stands for electronic mail, is a tool used to send text messages between computers and users on the Internet. The key to email is the email address. Each person with an Internet account has such an address. As we have discussed, this address is usually a combination of the userid and the domain name of the computer or system that user’s account is on. For example, president@whitehouse.gov is the email address of the US president, and the VP is vicepresident@whitehouse.gov. Georgia Wilson (remember her from earlier in this chapter?) has an address of : gwwilson@klingon.cs.iupui.edu.

Email uses the mail /news protocol. You would generally have a client program to help you with email. These programs are referred to as mail readers or email clients.

3.1 The problems you can solve with Email

Email is a communication tool, so the problems Email are best at are communications problems. Email is very inexpensive, and relatively quick. It is just as easy to send an email message across the world as it is to the office next door. Any time you want to communicate with another person who has an email account, it is an alternative. Just as a fax number has become a requisite part of a business card, an email address is becoming a critical part of being connected in business. The course you are taking now was developed by a team from eight different campuses. Most of our communication was via email. Such cooperation was one of the earliest goals of the Internet. Email helps to break down geographic barriers.

3.2 Tools common to Email programs

There are many email readers available. The particular program you use may vary based on what type of connection to the Internet you have, what kind of computer you are using, and what specific needs you may have. Regardless of this diversity, there are certain tools you can expect to find in nearly any email client.

3.2.1 Customized Text Editor

The heart and soul of email is writing messages, so it is not surprising that you would have some kind of editor built into an email program. Generally, email programs include text editors that are simpler than most word processors. this is really not much of a problem, because email sends essentially ASCII text, which is what text editors are best at. There are email programs with a spell - checker built into the program. This is an especially handy feature, because it is very embarrassing to send an email to someone with misspellings in it. Many email programs also give you the option to use some other text editor you really like and import the document into the email program for mailing.

8-12 3.2.2 Send Command

Once the message is done, you obviously need some kind of command for sending the message to its destination. Somewhere on the document, you will be given a place to put the email address of the recipient. Be very careful when typing in this address! If you make a mistake or misspell the email address, your mail will not go through. The post office can guess when your address is a little sloppy, but the DNS system cannot! Check carefully before sending your message. Once it is sent, you cannot get it back! Be especially aware of this if you are sending an angry message you may regret later. Once you activate the send command, your letter will be broken into TCP/IP packets and sent to the recipient, where she will use her email program to read it.

3.2.3 Address Book

Email addresses can be obscure and difficult to remember. Most email programs have some sort of address book that allows you to store the addresses you frequently mail to under a nick name. Rather than having to remember your mother’s address as dxdg05a@prodigy.com, for example, you could store her address in the address book and give her a nickname like ’mom’. When you are ready to send your mom a message, you can just type mom in the recipient spot, and the program will replace that with her actual address. Much of the time, you can also use such features to group a number of addresses under one name. If for example, you were a manager and wanted to frequently send messages to all members of your department, you could store all such names with a nickname of ’department.’ When you send a message to ’department’ everyone in the list gets the message automatically.

3.2.4 Storage area for incoming mail

After you send all this mail, you will probably be getting mail from others as well. One of the jobs of the mail program is to keep track of the mail you receive when you are not online. When you start up the mail program, it should tell you about any mail you have received since the last time you checked.

3.2.5 Mail reader

Email programs will have some way of allowing you to read any of the mail you have gotten. It will look a lot like the editor you use to send mail, but you cannot usually write in a message you are receiving. There are usually a number of commands built into such a system which allow you some special flexibility:

reply Allows you to reply to the person who sent you that message. Usually asks you if you want to include the message you are replying to. It will then send you to the editor part of the program, automatically addressed to the person who sent you the mail you were reading. If you chose to include original message, you will see that message in the editor as well. This is especially handy if somebody asked you a number of questions in an email and you want to respond to them individually. You can edit a copy of their message and put the appropriate response after each question.

8-13 forward Allows you to send a message on to another person. If you received an email which

somebody else should see, you can use a forward command to copy the mail to the new person. There are ’chain emails’ which have been forwarded thousands of times across the Internet. They are just as annoying as the paper kind, but easier to delete.

save Lets you save the message permanently. This is very useful when the document contains information you will need later. The document is saved as a plain text file you can manipulate with a text editor.

delete This command is very important. Once you become active with email, you will receive many messages. It is important to do a little housekeeping now and then so the number of messages in your account does not become completely out of hand.

3.3 Email etiquette

As with any form of communication, there are certain rules of behavior which should be considered when using email.

Email is written communication, but it does not have the formality of earlier written forms. It has a much more immediate, less formal feel than paper, pen, and stamp mail. Email is also essentially one - way communication. There is no immediate feedback and interaction. Also, written communication by definition allows far fewer context clues to its meaning as face - to -face and telephone conversation. Any written communication must be carefully considered so that it is not misunderstood, but email lends itself to casual interaction. The potential for real misunderstanding is clear.

When you compose an email message, pause and read over it again before you send it. Once it is sent, you can’t get it back. Remember that your grammar, spelling, and vocabulary send a message as clear as the words. If your writing is sloppy, your message may not get through to your recipient.

Be very careful about using humor in email. Without the context cues of other forms of communication, humor can very easily be misconstrued. Often something you think is funny will insult the recipient. One student thought he was entertaining his classmates by sending a series of jokes over email. The jokes became gradually more vulgar, until a classmate was finally insulted, and the jokester nearly had his email privileges revoked. If in doubt, save the humor for less risky types of communication.

Email is not a secure form of communication. By nature, the Internet is not a very private place. Messages float all over the place. It is hard to know who will see your messages, and where they may be forwarded. It would be very poor judgment to use your office email account to send a message to your friend complaining about what a fink your boss is.

DO NOT USE ALL CAPITAL LETTERS!!! By convention, capital letters in an email message are considered shouting. If you write all in caps by habit, all the people you email will think you are shouting at them. It is considered a bit rude.

Consider using emotion symbols. In order to make email (especially jokes) more readable without requiring people to become master writers, some special conventions have appeared. Often, people

8-14 will interject little parenthetic comments in their writing to help you understand the meaning. The following example will illustrate the principle.

The boss is a PIG.

The boss is a (wink) PIG (grin!).

Obviously, the second sentence was meant in fun. It is not so obvious that the first one was intended to be humorous. Of course, the boss may not find either one particularly funny.

Another way people try to interject little emotion hints in email messages is through smileys (sometimes called emoticons). These are special combinations of ASCII symbols that are supposed to convey emotion. :-) stands for happy. :-( is sad. Don’t worry, you won’t have to memorize them. Turn the page sideways and you will understand how they work. Of course smileys get far more complex. People have made entire dictionaries of smiley symbols. Some of my personal favorites ;-P (winking and sticking out tongue), broken), ¡¡¡¡¡ :- o— (Marge Simpson eating a lollipop).

There is a school of thought that says smileys are shortcuts, and no substitute for carefully composed writing. The best guideline is to remember who you are writing to, and what your message is supposed to be. this will help you decide if smileys are appropriate.

Email users have also developed a number of abbreviations that are used to shorten common sayings.

Q. 5 How many of these can you guess?

• imho

• fyi

• btw

• rotfl

• rtfm

• cul8r

(Answer on page 8-25.)

Remember that you are a person talking to another person. Your reader is not an account or a computer; neither are you. Address your messages to the person’s real name, not just her userid. Likewise, sign your messages with your real name.

3.4 Disadvantages of Email

As we have seen, one of the biggest disadvantages of email is the capability for misunderstanding. Email has some other disadvantages as well. It can be used to talk to more than one person at a time, but the means for doing so can be a bit cumbersome. At its core, email is a one - to - one

8-15 communication medium. Email requires active participation. You have to check your email to get messages. If you do not check your email, you will never know that somebody has contacted you.

3.5 Common Email Programs

Which email program you use depends a lot on your type of connection, type of computer, and personal preferences. Here are a few of the main ones:

• mail

This is kind of the mother of all mail programs. It is built into most unix systems. Since unix is the foundation of many ISP systems, it is the program you are almost guaranteed to have access to on a unix account. Mail uses a command line interface, so it is very clumsy for beginners. Still, it has a lot of power if you are willing to learn how to use it.

• pine Pine is another email program found largely on unix systems, although it is also found on the PC. Pine is easier to use than mail, because it uses a limited system of menus. pine is the most popular mail program on ISP or university unix systems.

• Eudora

Eudora is a program designed for use on PCs with direct or PPP connections. It takes advantages of the Windows GUI, so it has the buttons, drop down menus, and other features you would expect in a Windows program. It also has features built in to grab messages from a mainframe account if you are attached via a PPP account.

• Netscape

Netscape is a web browser, but the later versions also have a built in mail program. The mail program is similar to Eudora. It takes advantage of the GUI environment. It is available for a number of platforms.

There are of course many others.

4 Talk and Chat

Email is good for deliberate long - term conversations, but if both parties are currently attached to the Internet, there must be a way for them to connect a little more immediately. There are a number of protocols and programs designed exactly for that purpose. In general, talk programs are those that are used between two people. There is another related class of programs which is designed to allow many people (even hundreds) to communicate simultaneously.

New forms of these programs are coming along all the time, as transmission speeds increase and technology improves. Current chat programs allow real - time sound transmission, drawing on remote screens with a mouse, and even real - time video!

8-16 4.1 The problems they are good at solving

If Heather is sitting at her computer, and wants to invite Chris to lunch, she could send email to him, but he may not get the message in time. If she has a talk program, she can invoke it and tell it to notify him she is calling. If he is online, he will get a message that Heather is trying to reach him. If he chooses to make the connection, they will both get a screen on which they can type simultaneously. They can interact directly and determine where they will meet.

Chat programs illustrated their relevance during several recent world emergencies. Notably, during the war in Chechneya there were few formal communication channels open. There were, however, people sending messages worldwide on chat lines. Similar communication occurred during the Russian coups attempt and other major crises. Less dramatic uses of the technology have been used to have on-line conversations about sporting events and political debates as they occurred, and simply to waste long evenings. There have been a number of romances over chat groups, and at least one wedding which occurred on a chat line.

4.2 The tools such programs usually give you

Talk programs are a little bit less complex, so we will start with them. All they really need to have is a way of contacting the recipient, a way of answering when you are called, and a way of tracking the conversation as it is going on. Most talk programs divide the screen in two windows. One window represents the local machine, the other window is the remote machine. As you type, you see your comments in the top window, and your recipient simultaneously sees that message in his bottom window.

Chat programs are pretty much the same, except there may be many more people on at the same times. Usually you will connect to the name or location of a group, rather than a specific individual. Once you are connected to the group, you will see a screen with the conversation scrolling along, and often you will have some way of determining who else is taking part in the conversation.

4.3 Disadvantages of chat programs

Unlike email, chat offers no record of the transaction. If you say something profound, it will not be automatically recorded.

Chat requires that both parties be using Internet connected computers at the same time.

There are a number of distinct protocols being used for chatting and talking. If all interested parties are not using the same protocol, they may not be able to connect.

4.4 Common Chat or Talk programs

As usual, your selection of programs depends on the type of computer and connection you are using. Most of the relevant programs will contain the term chat or talk in the title. Some talk programs are integrated into web pages, so you do not need a separate program. Many of the web

8-17 browsers have a real - time talk feature built in so you don’t have to get a separate program, but they often require that both parties have exactly the same type of software installed.

5 Mailing lists

Mailing lists are special programs that help automate email communication within a group.

5.1 Historical context of mailing lists

When email became available, it was very popular, but people soon found that it had some shortcomings. Often, a group of people with similar interests wanted to simplify the process of communicating via email. At first, if you had five people around the world who were interested in your research topic, you would simply send the email five times, once to each colleague. This quickly became unwieldy if you shared an interest with a larger group. The solution was to use the distribution list feature built into many email programs. You could learn the email addresses of all the people with similar interests, and store them as one name in your address book. This worked fine as long as the list of people stayed relatively short, and the people on the list didn’t change too frequently. This kind of approach had some setbacks, though. If a person no longer wanted on the list, every other member of the list had to remove that person from their own personal copy of the list.List management became a messy job, so computer scientists developed a program that could automate the mailing lists.

5.2 How mailing lists work

The idea of these programs is very simple. The program has an email address, usually with the term listserv or majordomo in the name. (Listserv and Majordomo are the two main types of programs used to do mailing lists). A person who wants to join the list could send a command to the majordomo program through his email client asking to sign on. All members of the list is given another email address for the actual list, which is also controlled by the majordomo program. When a member sent a message to the list, the controlling program would automatically send it to each member of the list.

5.3 Example: Fran and the Pygmy Hippos

Fran has always had a lifelong fascination with pygmy hippos. she could talk about them for days. Unfortunately, she has a very difficult time finding people who will listen to her that long. She was beginning to feel she was the only pygmy hippo fan in the world. Fran took a class that introduced her to the Internet and mailing lists. She knew this would be her chance to find other hippophiles (yep, my spell-checker blew a gasket on that one! I hit the ignore button.). She found a mailing list called hippos by searching around the world wide web for mailing lists indexes. The instructions told her the hippo mailing list had two different addresses. The first one was majordomo@nml.zoo.org She knew by the majordomo part that this address was the majordomo / listserv program, and that she would have to send a message to it so she could be part of the

8-18 list. By following the instructions she found on the index page, she knew she had to start up her email program. She did so, and composed a message to majordomo@nml.zoo.org Her message contained only one line, which again she got from the instructions. It was: subscribe hippos She sent the message, and in a few minutes she got back a response! It welcomed her to the mailing list, and told her she would start getting mails soon from other members of the list. It also told her how to sign off of the list if she found it was not to her liking. She carefully saved this message, in case she ever needed it later.

Fran waited for a couple of days, and got some wonderful email about pygmy hippos. After watching for a few days, she wanted to send a message to the group introducing herself and asking questions about one particular family of hippos she knew about.

To send the mail, she went to her email program, and composed a message to the list itself. She knew the address, because it had been in the instructions she saw on the web, and it was also in the first message she got from the group. She addressed her message to hippo@nml.zoo.org. She sent the message, and in a few days, got a number of greetings and responses from fellow hippo lovers. Fran found newfound happiness and a group of fellow hippophiles (had to use that word again!) all over the world.

5.4 The problems you can solve with a Mailing List

Mailing lists are ideal solutions for problems like Fran’s. They are easy and inexpensive to set up and maintain, so you will see mailing lists on just about any topic there is. Many college courses now have a dedicated mailing list, intended to encourage student interaction and group - problem solving. Mailing lists are also used inside corporations so that groups within the organization can communicate more easily through email.

5.5 The program and the list

The most difficult aspect of working with mailing lists is the distinction between the list itself and the program that controls the list. Both have email addresses, and both are usually on the same machine, but they have very different purposes. When you look at a mailing list index (there are a number of them on the www.) you will see something like this.

THE HIPPO LIST

• To Join: email: majordomo@nml.zoo.org

• message body: subscribe hippo

• List address: hippo@nml.zoo.org

The controlling program usually has a name like majordomo or listserv. You will probably only send mail to this address twice, once to join the list, and once to leave. Any mail sent to this address is NOT sent to a human, but to a program. The program can only handle very specific input, so you must type exactly what you are told, or the program will reject your request. If you say “Please subscribe me to the hippo list” the program will not understand and will reject you. Majordomo (or listserv) is a PROGRAM, not a PERSON.

8-19 The address you will use more often is hippo@nml.zoo.org. This address is the common address for the group. It is also sent to the majordomo program, but it is ’bounced’ from there to the address of every other member of the group. Anything you send to the list address will be read by human members of the group. (and maybe hippos, but they are pretty tough on keyboards)

5.6 Mailing List Etiquette

This leads us to the major faux paus of mailing list members. Once you join a mailing list, you will undoubtably run across messages that read: “Unsubscribe me” or something else similar. The person who sent the message has told you two things:

1) They don’t like the list anymore or the people on it

2) They don’t know how to use mailing lists, because they sent a command to the list, not the program.

If you are a mean-spirited person, you could send that errant soul a scathing message decrying their ignorance and lack of manners. Such a message is called a “flame” in Internet parlance. An exchange of angry emails is called a “flame war.”

Be very careful when using a mailing list that you track which messages go to the controlling program and which ones go to the list. You don’t want people to flame you.

Mailing lists are related to email, so many of the same rules apply, but there are a few new ones:

Any mailing list or other place that people gather together is bound to have its own sociology. As a group of people exchanges ideas, there will be friendships, rivalries, in- jokes, and recurring themes. Many mailing lists also develop their own codes and shorthand. For example, one mailing list that discusses flight simulators uses abbreviations for all the major flight simulators. FS5 stands for Microsoft Flight Simulator version 5, WC3 is another flight simulator, and so on. This can be very intimidating if you are new to the group. Different groups also have different expectations in terms of how much they expect members to stay on the group topic, whether they allow name - calling and other uncivil behavior, and the kinds of language and discussions that are allowed. If you do not follow the norms of the group, you will certainly be flamed, and may be kicked out of the group.

It is a very good idea to learn about the group before you get too involved. Just stay quiet and read without sending messages until you get a feel for how the group interacts. This behavior is called ’lurking’ and is quite acceptable, even polite. Once you feel you can participate in the spirit of the group, feel free to do so. If you find you do not like the group, quietly unsubscribe through the controlling program, and no one will know you were even there.

In general, try to stick to the topic the group is supposed to be addressing. If you have comments that fall outside the group’s topic, send private emails.

Once you develop some relationships within the group, carefully consider what should be sent through private email, and what the entire group should know. For example, two students decided to cheat on an exam, and discussed their plans over the class mailing list. They neglected to notice that the teacher was also a member of the group, and knew exactly what they were planning. He sent the students a private email explaining how mailing lists worked, and asked for an extra homework assignment about security, ethics, and the Internet, and there was a happy ending. It

8-20 might not have turned out that way. Some information is best kept private.

5.7 Disadvantages of Mailing Lists

Mailing lists can get out of hand quickly. If you belong to a very active list, or to many lists, you could easily pile up several hundred messages in a day. This becomes a lot of information to sift through.

Mailing lists are very easy to create, but they are also easy to destroy. That really cool mailing list you saw last week may not exist this week. There is absolutely no central control of mailing lists, so they come and go with amazing frequency.

It is impossible to know which mailing lists are available. There is no organizational scheme or structure to them. It can be difficult finding exactly the list you want.

5.8 Common Mailing List Programs

As mentioned, the two most common mailing list server programs are majordomo and listserv. Mailing lists do not require special client programs, because they use the email protocol, and exactly the same programs you would use for email.

6 Newsgroups

Mailing lists are very good for certain kinds of communication, but their lack of organization can be a serious drawback. Early in the history of the Internet, a more systematic system was developed called usenet. This system organized the major topics of conversation into a number of large domains. Each domain was then split into subdomains and subsubdomains. (There’s that darn tree structure again!) Some of the main domains were

• alt: alternative topics

• comp: computers and computing

• sci: science topics

• rec: recreation

The idea was a user could find exactly what topic she was looking for by navigating the hierarchical structure.

The ideas were expanded when the Internet grew, but the basic structure remains the same.

6.1 How newsgroups work

Newsgroups are a lot like mailing lists, but the mechanics are a bit different. There are thousands of lists in the newsgroup system. When your system administrator sets up your account, he

8-21 subscribes to a number of lists. You can read and submit messages to any group that your site is subscribed to. Every so often, (usually late in the night) all the newsgroups are exchanged and compiled. If you send a message to a newsgroup, the message will be stored on your system computer until the next exchange occurs, then it will be distributed to every other system in the world which subscribes to that particular newsgroup.

Generally you need a special news reader program to read and write to newsgroups, but most web browsers have this capability, so many people read email through them. Many email programs are also capable of reading newsgroups, so they are commonly used as well.

6.2 The problems Newsgroups help you solve

Newsgroups help you solve many of the same problems that mailing lists are good for, but newsgroups have some additional advantages. Newsgroups are generally a bit more structured, so they are likely to be around longer. They are also easier to find, and more likely to have a moderator (person or program in charge, who keeps the group civil and on - track) Newsgroups often have a FAQ document. FAQ stands for Frequently asked Questions. In any newsgroup, there are usually a number of questions that are asked all the time. In order to avoid answering the same questions all the time, experienced members of the group post a FAQ with the most common questions and answers. If you ask a FAQ before reading the FAQ document, you are likely to get flamed.

6.3 Newsgroup Etiquette

The rules of behavior on Newsgroups are very similar to email and mailing list etiquette. In addition, be sure to read the FAQ before asking obvious questions. Lurking is a good idea!

6.4 Disadvantages of Newsgroups

Newsgroups are not as quick as mailing lists or email. It will almost always take a day or two to get a response.

Just because you saw something in print on the Internet does not mean it is true. Anybody in the world can say anything they want on the Internet, and they don’t have to know what they are talking about. Use judgment when reading messages, and consider how well you know the source.

Newsgroups are home to many of the least savory parts of the Internet. If you are concerned about your children’s access to the Internet, this is an area you should monitor. The alt groups can be especially troublesome, because there is very little control of the content that goes there. There is software you can buy which will password - protect such groups so children cannot go there.

7 Laboratory Assignment

Find an appropriate email program. Your instructor will show you which ones are available on your system

8-22 Change your password. Be careful that your password cannot be easily guessed.

Get the email addresses of five of your classmates. Add them to the address book of your email program. Send them each an email

Subscribe to the class mailing list. Your instructor will tell you the controlling program address as well as the list address.

Use a newsgroup reader to find answers to the following questions: Write down enough to prove you have found an answer. You will email it to the class list later.

• Find a joke

• Tell about a rumor you found

• Anything interesting for sale lately?

Send a short letter to the class mailing list. In the subject area, put your name and the section number of the class. Write your answers to the newsgroup questions in the message area of the test. Your instructor will grade the emails

Protocols A set of agreements about how information will be transferred among Internet - connected computers

TCPIP Transfer control protocol / Internet protocol The underlying protocol of the internet.

Telnet A protocol that allows one computer to be a terminal of another. Both computers must have active Internet conne ctions to use Telnet.

FTP File Transfer Protocol A protocol for sharing files between internet - connected computers.

HTTP Hypertext transfer protocol The protocol which makes the world wide web possible

DNS Domain Name System (or Server) The system of hierarchical organization that gives names to computers and domains on the internet.

IP Number The number assigned to each computer on the Internet. IP numbers are used much like zip codes to help each packet find the right recipient.

Domain Names A system of names used to represent IP numbers. Domain names are easier to remember than IP numbers.

UserID The name each individual is given on his / her LAN or mainframe.

LAN Local Area Network A number of personal computers connected by cables and software.

Routers Specialized computers which handle TCPIP packets. Routers hand off the messages to other routers.

The Internet Backbone A series of high-speed computers and cables designed to facillitate Internet communication throughout the world. In the US, the NSF backbone is the Internet backbone.

8-23 Client - Server approach A description of the way the Internet handles messages.

Client Software that is designed to ask for information from a server program. Most users use only client software.

Server Hardware or software that is set up to distribute information to clients all over the world.

Direct connection A computer that has a direct line to a router. Very expensive, but gives great control. Generally only servers have direct connections.

Dial - In Connection Uses a communication to make one computer act as a terminal of the other. The terminal computer does not exist as far as the internet is concerned.

SLIP - PPP Serial Line Internet Protocol - Point to Point Protocol. Protocols which allow the server to ’loan out’ temporary IP numbers to clients.

ISP Internet Service Providers Usually small businesses that rent out space on computers with a direct connection.

Email Address The address used to find a particular person on the Internet. Combines the userid with the domain name of their system with an @ sign.

Talk A protocol that allows two users to type simultaneously in real - time.

Chat A program or protocol that allows many people to type simultaneously in the same conversation.

Mailing Lists A protocol which uses programs such as majordomo or listserv to automate email to multiple parties.

Newsgroups A protocol or program that allows users to exchange messages world wide. Newsgroups are a bit more formal than mailing lists.

8 Summary

The Internet has the potential to change society completely within the next few years. It is such an important new advance that we must understand at least the basic structures and tools it provides. In this unit, we expanded upon the ideas we learned about the world wide web, and investigated some of the other protocols that the Internet provides.

We examined how the Internet is organized, how the DNS system works, and how computers and individual users get names. We also talked about levels of connectivity to the Internet, and finally we looked more carefully at email, mailing lists, and newsgroups.

The Internet is no doubt a toolbox of major proportions. If we understand how it works and where it is going, we should be able to learn the new tools it provides us with relative ease.

Internet tools are about communication, and communication is central to the human condition. Perhaps some of the tools we learned about in this section can be used to help people communicate with each other.

8-24

Answers to Questions

1. Because URLs are addresses or paths. They begin with the protocol name. The most common protocol you will activate is an HTTP document. Thus, most of the addresses on the worldwide web begin with http:// Occasionally you will find an address that begins with another protocol such as ftp:// or telnet://. As you might have guessed, these are references to documents encoded for use with those particular protocols.

2. One of the most common operating systems on the Internet is called Unix. Unix is case - sensitive, meaning that INDIANA is not the same as indiana. To avoid confusion, most domain names are almost entirely made up of lower case letters. (even if they are not on unix - based computers!)

3. • The White House : www.whitehouse.gov

• Microsoft : www.microsoft.com

• National Public Radio : www.npr.org

• Indiana University Computer Science : www.cs.indiana.edu

Note all lower case, no spaces, and abbreviations.

4. The problem is that you would not have a consistent address! A PPP account gives your computer temporary access to the Internet, but if you stored a web page on your computer, people couldn’t reach it when you are not attached! Also, your IP number would be constantly changing!

The common way around this problem is this: When you are given a PPP account, you frequently are given a dial - in account as well. All your email goes to that account, and if you want to have a web page, you put it in that account as well. Then you can either use dial - in connections to modify that dial - in account, or use PPP and a telnet client to attach to that account and modify it.

5. • imho = in my humble opinion

• fyi = for your information

• btw = by the way

• rotfl = rolling on the floor laughing

• rtfm = read the flipping manual (that’s the PG-13 version.)

• cul8r = see you later

8-25 Module #8: Communication and Internet Protocols

8-26