Login: ______________




CS4830-010, The Internet for Everyone

Lab 12, Exploring the Internet; Choosing an ISP


Individual, Do April 17, 18 and 21
Due April 24, 25, and 28, respectively

Last Week's Post-Mortem

Some folks handed in their buying a pc lab at the end of lab period. Must have teleported to the computer store to gather data there. You have a week to do the lab, so that things like visiting a computer store and being subjected to the sales hype or calling around can happen.

The Goal

This lab has two parts, first exploring the Internet with some UNIX tools and then the steps involved in choosing an Internet Service Provider (ISP) for the office that you computerized last week.

Description

The first half of the lab will explore the growth of the Internet, via the Internet Monthly Reports, the connectivity of the Internet via the traceroute and ping commands, people on the Internet via the finger and talk commands, and then some funny services on the Internet using telnet.

The second half of the lab will explore getting connected to the Internet via a local or national Internet Service Provider.


Lab Report Questions

1. To explore the growth rate of the Internet, check on the Internet Monthly Reports (IMRs) at http://www.isi.edu/in-notes/imr/. They are filed by date, going back to about 1991. The IMRs start out with a list of standards documents that have been published since the last month, and then give a statistics page for the month. It's listed under the heading INTERNIC registration services. For example, in the January 1997 report, they say there were 91,758 domain names (like xxx.com) registered. So the Internet has grown by almost 92,000 sites in a month. Look at a few of these reports and try to get a feel for the growth trends. Is the growth about constant from month to month or is the growth rate increasing or maybe decreasing. Show the numbers of registrations by month to see how much the Internet has grown since you started this class. Also take a look at March 1994. This is the month when the program mosaic, the pre-cursor to netscape was released. Look at the growth rate a couple of months before March 94 and a couple of months after. List the numbers and comment on the trends.



















2. To explore how the Internet is connected, the UNIX tool traceroute is used. It shows the route that packets take to get from here to there. For example to go from rintintin here at CU to a small company in Boulder, a mile away, my packets go through 10 different computers going from Boulder to Denver and back to Boulder again. It used to go thru 17 hops and all the way to Stockton, California before coming back to Boulder. Here is the output of the traceroute command now:
rintintin.Colorado.EDU 1 % traceroute xor.com   
traceroute to xor.com (192.225.33.1), 30 hops max, 40 byte packets
 1  128.138.129.1 (128.138.129.1)  1.968 ms  0.931 ms  1.034 ms
 2  cuatm-gw (128.138.138.10)  1.457 ms  1.527 ms  1.543 ms
 3  205.169.250.5 (205.169.250.5)  10.875 ms  7.162 ms  6.488 ms
 4  204.131.250.42 (204.131.250.42)  7.187 ms  8.868 ms  7.295 ms
 5  csnden7001.csn.net (205.169.130.250)  12.191 ms  6.834 ms  9.390 ms
 6  denver-cr1.bbnplanet.net (4.0.208.253)  7.798 ms  25.693 ms  28.259 ms
 7  denver-cr2.bbnplanet.net (4.0.52.22)  10.137 ms  7.511 ms  7.786 ms
 8  cointcorp.bbnplanet.net (4.0.212.250)  8.297 ms  11.751 ms  8.761 ms
 9  gw16.boulder.co.coop.net (199.45.132.2)  9.834 ms  10.667 ms  9.426 ms
10  xor.com (192.225.33.1)  9.548 ms  9.478 ms  9.281 ms
The number in parentheses is the IP address of the computer that the packet gets forwarded through. The numbers at the end are the times that it took for packets to get from me to each of those middle-man computers and back again. ms stands for milliseconds, so you can see that my packets get to xor.com pretty speedily. Here is a traceroute to the Computer Science Department at the University of California, Berkeley. The times are longer and you can see the route is not very direct geographically. Packets go to Denver, then to Willow Springs (in New Jersey or maybe near Washington DC) then Chicago (chi), then to Stockton, California (stk) and finally on to Berkeley.
rintintin.Colorado.EDU 2 % traceroute cs.berkeley.edu
traceroute to cs.berkeley.edu (128.32.35.123), 30 hops max, 40 byte packets
 1  128.138.129.1 (128.138.129.1)  2.554 ms  1.333 ms  2.464 ms
 2  cuatm-gw (128.138.138.10)  2.680 ms  1.752 ms  1.895 ms
 3  ncaratm-cuatm.co.westnet.net (204.131.62.14)  11.401 ms  261.111 ms  9.278 ms
 4  border2-hssi1-0.Denver.mci.net (204.70.29.5)  148.422 ms  95.682 ms  6.962 ms
 5  core1-fddi-1.Denver.mci.net (204.70.3.113)  4.106 ms  5.022 ms  4.475 ms
 6  core4.WillowSprings.mci.net (204.70.4.73)  28.230 ms  28.970 ms  28.644 ms
 7  sl-chi-15-H1/0-T3.sprintlink.net (206.157.77.90)  36.790 ms  35.915 ms  39.205 ms
 8  sl-chi-1-P0/0/0-155M.sprintlink.net (144.232.0.142)  36.634 ms  37.127 ms  40.553 ms
 9  sl-stk-20-H5/0-T3.sprintlink.net (144.228.10.54)  56.758 ms  55.098 ms  56.037 ms
10  sl-stk-16-F0/0.sprintlink.net (144.228.40.16)  56.300 ms  59.743 ms  59.714 ms
11  * sl-csuberk-1-H1/0-T3.sprintlink.net (144.228.146.50)  63.412 ms  62.538 ms
12  inr-666-dmz.berkeley.edu (198.128.16.21)  58.981 ms  57.452 ms  58.134 ms
13  inr-107-styx.Berkeley.EDU (128.32.2.1)  52.521 ms  55.276 ms  51.877 ms
14  inr-180.Berkeley.EDU (128.32.120.180)  86.798 ms  56.894 ms  61.456 ms
15  hofmann.CS.Berkeley.EDU (128.32.35.123)  62.485 ms  65.437 ms  64.039 ms
Sometimes you will get a host that just doesn't answer in time for the traceroute program (he is impatient) and it will print a * instead of a time. Sometimes you will get a middle-man host (called a router) who is very busy and so the time to get to him and back is very long compared to the other times in the traceroute. If this occurs, try the ping program to see more detail about how that slow machine is doing. Here is an example of using ping to check on the CS machine at Berkeley. If i just do ping without any options it just tells me the Berkeley machine is alive:
rintintin.Colorado.EDU 16 % /usr/sbin/ping cs.berkeley.edu
cs.berkeley.edu is alive
But if I use ping -s then it sends a packet every few seconds and shows me both the time it took, and the sequence number of the packet. If the sequence numbers are in a row the machine at the other end is healthy; if they skip values that means that the packet with the missing value got lost or dropped because something on the way to the final host was too busy. Here is that same example, but with the -s option included:
rintintin.Colorado.EDU 15 % /usr/sbin/ping -s cs.berkeley.edu
PING cs.berkeley.edu: 56 data bytes
64 bytes from hofmann.CS.Berkeley.EDU (128.32.35.123): icmp_seq=0. time=62. ms
64 bytes from hofmann.CS.Berkeley.EDU (128.32.35.123): icmp_seq=1. time=59. ms
64 bytes from hofmann.CS.Berkeley.EDU (128.32.35.123): icmp_seq=2. time=56. ms
64 bytes from hofmann.CS.Berkeley.EDU (128.32.35.123): icmp_seq=3. time=58. ms
64 bytes from hofmann.CS.Berkeley.EDU (128.32.35.123): icmp_seq=4. time=59. ms
64 bytes from hofmann.CS.Berkeley.EDU (128.32.35.123): icmp_seq=5. time=65. ms
64 bytes from hofmann.CS.Berkeley.EDU (128.32.35.123): ^C
----cs.berkeley.edu PING Statistics----
7 packets transmitted, 7 packets received, 0% packet loss
round-trip (ms)  min/avg/max = 56/59/65

NOTE: to stop the ping -s I had to type control-c (listed in the output above as ^C). Hold down the control key, like you do the shift key and then type a c. Otherwise you will ping forever. ALSO NOTE: that ping typed without the /usr/sbin/ in front of it will say "Command not found:. This is because the ping command lives in the directory /usr/sbin and we mere mortals don't usually have that directory in our "path" (the place where using looks for things). If you want to add /usr/sbin to your path you would change the line in your file called .profile that looks like:

PATH=$HOME/bin:/usr/local/bin:/usr/ucb:/bin:/usr/bin
to look like:
PATH=$HOME/bin:/usr/local/bin:/usr/ucb:/bin:/usr/bin:/usr/sbin
If you decide to do this, to make this lab easier and to always have the ping command at your fingertips, and if you didn't add ~evi/bin to your path in lab 3 or 4 where we introduced the showgrades command, now would be a fine time to do it. Just add :~evi/bin to the end of that line.

Use traceroute and ping to find some busy hosts or convoluted routes. I just tried the IRS's computer that has all the tax forms on it and after about 12 hops it said !X which according to the man page for traceroute, means that access is administratively prohibited. Hmmm. The address i used was irs.ustreas.gov. List the hosts you targetted, how many hops it took to reach them and describe either the wierd geographical route or the bottleneck machine. If you find a bottleneck, use ping to explore which machine along the path is the baddie.



























3. The finger command allows you to find who is logged into a computer, when they came to work, how long they have been idle (might be days if they forgot to logout). It has two forms, one where you tell it which user you want it to look up and theo other were you just tell it the machine and it gives you all the users. For example, finger evi@cs gives:

 % finger evi@cs
[cs.Colorado.EDU] 
<>

To access the campus directory service, telnet cs.colorado.edu
and login as 'da'.  On-campus may use the 'da' or '411' commands.

Fingering evi@rupertsberg.cs.colorado.edu
------------------------------------------

[rupertsberg.cs.colorado.edu] 
Login name: evi                         In real life: Evi Nemeth
Directory: /home/columbine/evi          Shell: /bin/tcsh
On since Apr 16 09:34:46 on console 
No unread mail
Plan:

Evi Nemeth, ECOT 824 (used to be 8-3)
        492-5385        office at CU
        440-6093 x29    office at XOR
        443-9832        home, OK till midnight

spring '97: teaching csci 4830-010, "the internet for everyone"
            monday/wednesday at 4pm in duane g030, labs at various
            other times in eccr 244.

out of town:    feb 24 - mar 1  nluug conference, antwerpen
                mar 7 - 8       kentucky education meeting, louisville
                mar 11          uniforum conference, san francisco
                apr 6 - 11      ietf, memphis
                apr 24 - 25     sans conference, baltimore
                may 11 - 25     vacation, colorado river thru the grand canyon

office hours:   tues, wed noon-2pm
                and by appt.

note:  i am often in my office in the evening, feel free to stop by.
also, reaching me by email usually works better than by phone.



Login name: evi                         In real life: Evi Nemeth
Directory: /home/columbine/evi          Shell: /bin/tcsh
On since Apr 16 09:35:13 on ttyp0 from :0.0
1 hour 48 minutes Idle Time

Login name: evi                         In real life: Evi Nemeth
Directory: /home/columbine/evi          Shell: /bin/tcsh
On since Apr 16 09:35:15 on ttyp2 from :0.0

Login name: evi                         In real life: Evi Nemeth
Directory: /home/columbine/evi          Shell: /bin/tcsh
On since Apr 16 09:35:17 on ttyp3 from :0.0
1 hour 49 minutes Idle Time

Login name: evi                         In real life: Evi Nemeth
Directory: /home/columbine/evi          Shell: /bin/tcsh
On since Apr 16 09:35:18 on ttyp4 from :0.0
This is a lot of information. Some of it, such as the office data and office hours, I put in my file called .plan in my home directory. The information at the bottom show me logged on 4 times, one for each of the windows on my screen. It does tattle that I didn't make it in until 9:35 this morning and that two of my windows have been idle a long while. And it lies and says I have no unread mail (because my mail reader moves the mail out of the public area and into my home directory as soon as the mail arrives, so it always looks like I am caught up on mail). Use finger to check on your TA, to check on yourself, and to check on another faculty member you have for a class this semester. If you don't have a .plan file make one with the pico program. List something from your own "finger" info, from your TAs, and from one of your friends at another University.

You:









Your TA:









Someone you know from another University:











4. finger can also be used with just a machine name; finger @machinename will show you all users logged in there. For example, finger @ucsu would show you everyone who is currently logged in there. Try it. How many students are logged into it now? And to ucsub? (Don't count them, use the UNIX tool wc to do it for you.) When i just tried it I got

rintintin.Colorado.EDU 29 % finger @ucsu
[ucsu.Colorado.EDU] 
Login       Name              TTY Idle    When            Office
rc2                   ???
dukeb                            duke ben              pt   3d Sat 01:28 
hansens                          HANSEN  SALLY LORRAI *pt    1 Wed 11:42 
girmusor                         GIRMUS-ORFORD  ANNET *pt   1d Mon 14:59 
goodrics                         goodrich stephanie   *pt      Wed 11:31 
and about 300 other students listed. The number toward the right shows how long they have been idle (3d, 1, 1d, and blank means 3 days for ben duke, 1 minute for sally hansen, 1 day for annet, and no idle time for stephanie). The day of the week and time are when they logged in. So we can figure out that ben logged in on Saturday in the wee hours but must have used the computer after that since it's more than 3 days since Saturday or really late Friday nite.

ucsu:





ucsub:






Now try it to the student machine (yoyo.cc.monash.edu.au) at the Monash University in Melbourne Australia. There are fewer students but it's probably the middle of the night for them. And notice that it's tomorrow there too. How many students are logged into yoyo?

yoyo:






5. talk is a UNIX program that lets you have a conversation with someone at the next machine in the lab or across the world. If I wanted to "talk" to the TA David Owens (owensd) I would type talk owensd and the system would interrupt him and tell him that I wanted to talk to him and to respond with talk evi to answer. Once we have both typed this, the screen splits and what I type shows on his screen and what he types shows on mine. To talk to one of those australian students you would just add the name of their computer to the talk line, like:
	talk student-name@yoyo.cc.monash.edu.au
To exit talk you must type control-c. "talk" to someone local and to someone far away. Look at idle times to see who is really there. Who did you talk to?












6. Our final Internet exploration chore will be to run a couple of commands that give a totally different kind of information. Try each of these and tell us briefly what they said.



thermhost:










chez:








wetterhorn:









7. Choosing an ISP is a bit like choosing which computer to buy -- it depends on how you want to use it. For example, what you need in an ISP for home, and what you need for your mythical company, and what the University needs are different. Here is a list of services usually offered by the ISPs:

Some ISP's offer flat rate services, so you pay a fixed monthly fee and can use the Internet whenever you want for as long as you want. Others charge a lower rate for the right to access it and then charge for each hour or part of an hour that you are connected. Assume that your company that you bought computers for in the last lab wants to get on the Internet. There are several local providers and well as places like America OnLine, Compuserv, and Microsoft Network. Local providers The Colorado Internet Coop (coop.net), SuperNet Inc (sni.net), and Rocky Mountain Internet (rmi.net) offer service in Colorado. The coop.net site is a wholesale ISP but their web page shows lots of local providers who are connected through them; click on "Member Resellers". Between this resellers list and sni.net and rmi.net, you have quite a variety of local providers and sevices. Colorado is third among the 50 states in Internet presence and availability. Decide what services your mythical company needs and then research both the national folks like AOL and the local folks to find the provider with the best service for your needs and also the provider with the best prices for your needs.

Providers you checked (must be at least 3) and how you found them:




















Provider with the best service for your needs:









Provider with the cheapest prices for services you need:










8. Compare and contrast the 3 local providers: coop.net, sni.net, and rmi.net based on information you can glean from their web pages. Present your data in outline or tabular form so we can grade it more easily.























9. Use the UNIX tools (traceroute and ping for example) of the first section of the lab to attempt to evaluate the quality of the ISP that you are selecting from for your business. What is the round-trip time to them from rintintin.