[net.sources.mac] MacIP part 1 of 4: User Documentation

tim@cmu-cs-k.ARPA (Tim Maroney) (08/26/85)

MacIP User Manual
Tim Maroney, C-MU (tim@CMU-CS-K.ARPA)
26 August 1985
--------------

This paper describes the programs that have been written to allow Apple
Macintosh computers on an Appletalk network to communicate with computers on
the Internet.

In order to use any of these programs, your Macintosh must be connected to
an Appletalk network that is connected to a router of some sort.  One
example of a router is the Seagate router between Appletalk and Ethernet
that was developed at Stanford University.  Another is the "Butcher Board"
router developed at C-MU.  This is normally an issue for the system
maintenance staff, not a user; it is mentioned here so you won't think that
plugging an Appletalk connector into the back of your Mac magically allows
you to communicate with the Internet.

Three programs are available, CUSTOMIZE, TFTP, and TELNET.  CUSTOMIZE
manages a customization file that contains various information for use by
the other programs; it does not talk to Internet sites directly.  TFTP is a
simple file transfer program: it can be used to retrieve files to the
Macintosh from Internet sites, and vice versa.  TELNET is the Internet
terminal emulator; with TELNET, you can log on and conduct a session at any
Internet site on which you have an account.

In order to run any of these programs, double-click its icon, as is normal
on the Macintosh.

TFTP
----

The TFTP program uses the trivial file transfer protocol running on top of
the user datagram protocol to allow reliable file transfer between a
Macintosh and an Internet site.  The other Internet site may be a Macintosh
or another computer.

There are two possible modes in the TFTP program, server mode and user mode.
The TFTP program can be in one or the other mode, but not both.  Initially
it is in neither mode; the first selection you make from the "File" menu
sets the mode.

Server mode is rarely useful: when a Mac is acting as a server, other
Internet sites can initiate file transfers to and from it, but the Mac is
completely tied up while it is acting as a server.  To select server mode,
select "Server" from the "File" menu.  Once this is selected, the only
"File" menu commands available are "Abort" and "Quit".  You can still use
the commands from the "Show" menu to display information about the status of
the network.

User mode is the one usually used on the Mac.  To select user mode, pick
either "Get" or "Put" from the "File" menu.  This places you in user mode
and begins the file transfer process.  In any file transfer there are two
files, a local file (the file on the Macintosh) and a remote file (the file
on the other Internet site).  To get the local file name, the TFTP program
uses the Macintosh's standard file package, which will be familiar to you if
you have used other Macintosh applications.  To get the remote file name,
the TFTP program uses a special-purpose remote file dialog.  This contains
two fields which you can edit, one for the file's name and the other for the
name or address of the other Internet site.

Both the standard file dialogs and the remote file dialog have buttons
marked "OK" and "CANCEL".  Clicking in the "OK" button (or hitting the
"Return" key on the keyboard) tells the program to go on to the next step of
the file transfer.  Clicking "CANCEL" tells the program not to go ahead with
the file transfer and to return to plain user mode.

To get a file from another site to your Mac, use "Get".  To put a file from
your Macintosh to another site, use "Put".  If something is wrong with your
transfer, use "Abort" to terminate it.  When you are entirely finished with
TFTP, use "Quit" to leave the program and return to the Macintosh Finder.

The trivial file transfer protocol uses "transfer modes" to control file
transfer.  The transfer modes provide information about how the file is to
be transferred.  The Macintosh TFTP provides four transfer modes, which can
be selected from the remote file dialog, which contains a radio button for
each mode, or from the "Settings" menu.  The modes are "ASCII", "IMAGE",
"OCTET", and "MACINTOSH".  The transfer mode must be selected before you
choose "Get" or "Put".  The initial transfer mode is MACINTOSH; usually, you
will change this to "OCTET" or "ASCII".

The first three transfer modes are almost identical, and are the only modes
that will be used with non-Macintosh computers in most cases.  To transfer a
document to or receive a document from a non-Mac computer, you should use
"ASCII" or "IMAGE" modes.  To transfer an application to or receive an
application from a non-Mac computer, you should use "OCTET" mode.  To
exchange a file with a Macintosh, use "MACINTOSH" mode.  Other computers
such as Vaxes and Suns will probably not support MACINTOSH mode transfers;
check with the system support staff for the computer in question.

A Macintosh file actually has two parts or "forks", the data fork and the
resource fork, unlike most other computers, on which files have only one
part.  This was a silly design decision in the Macintosh, since almost all
files have one of the forks empty.  It can also create problems in file
transfer between Macs and other machines.  In MACINTOSH transfer mode, both
forks (as well as a little bit of data known as the "finder information")
are sent, so there is no problem.  In ASCII and IMAGE modes, only the data
fork is sent: that will work for most documents such as MacWrite text files.
In OCTET mode, only the resource fork is sent: this suffices for most
Macintosh applications such as MacPaint or MacWrite.  In those rare cases
when both the resource and data forks are used, and you wish to send the
file to a system that does not support MACINTOSH mode file transfers, you
should first use one of the file compression programs such as BINHEX (not
supplied with the Macintosh Internet programs, but widely available) to
compress both forks into the data fork of another file, and then send the
BINHEXed file's data fork.

After receiving an application in OCTET mode, it will usually be necessary
to run the "Set File" program, distributed separately, to set the bundle bit
and the application's creator.  Note: Over the long-haul networks such as
ARPANET and USENET, applications are usually transferred in "binhex" or some
other converted format, not in the binary form OCTET mode expects.  To get
an application in binhex format to your Mac via TFTP, use an ASCII mode
transfer and then run binhex once the transfer is complete.

During file transfer in either user or server mode, some statistics about
the transfer will be displayed in a window that will appear on your screen.
If you want to get rid of the window, click anywhere in it and it will
vanish, reappearing when there is something else to say.  The same goes for
windows that appear as a result of selecting a command in the "Show" menu.

TELNET
------

With TELNET, you can log in to any computer on the Internet for which you
have an account.  The Macintosh TELNET is different from (and better than)
most other TELNET implementations in that you control the session with menu
commands instead of hard-to-remember and easy-to-screw-up control codes.
The TELNET terminal window emulates a DEC VT100 terminal, a popular type
that most host computers should know how to control.  Note: TELNET will only
work on a "Fat Mac", that is, a Macintosh with 512K or more of memory.

To open a connection to another computer, use the "Open" command from the
"Commands" menu.  You will be asked for the name or address of the remote
computer.  To continue, click "OK"; to abort the attempt to connect, use
"CANCEL".  The TELNET program will then try to establish the connection.  If
it succeeds, the word "Open" will appear in the terminal window and the
remote computer will (in most cases) prompt you for your name and password.
When you are finished, logging out on the remote computer may automatically
close the connection, in which case "Closed" will appear on the screen.  If
this does not happen, then you can yourself close the connection by using
the "Close" command in the "Commands" menu.  You can also do this before you
log out, but you do not usually want to.

It is possible to use TFTP from inside TELNET.  Thus, you can log on to a
remote system, look around in its directories and so forth, and retrieve or
send files without having to leave TELNET.  This assumes that the remote
computer has a TFTP command.  The procedure is to issue a TFTP command on
the remote system that initiates a file transfer back to your Mac.  In order
to do this, you will have to know your Mac's Internet address or name, which
can be discovered using a command in the "Show" menu.  A TFTP server runs
alongside TELNET; the command from the remote system will cause that system
to try to connect to the server on your Mac.  If this succeeds, you will be
asked by your Mac to confirm or refuse the file transfer -- ordinarily you
will confirm it, since you sent the request in the first place, but it is
possible someone else could try to TFTP to or from your machine, in which
case you would probably want to deny the request and report the incident to
the local security staff.  While a file transfer is going on, it is possible
but unwise to type characters to the remote system.  You will be notified
when the transfer is complete.  You can deny all TFTP requests from the
"Commands" menu; "TFTP Service" is checked if TFTP requests will be serviced
as described above.

It is possible to listen for incoming TELNET requests by using the "Listen"
command.  This is usually not useful; it was added for testing.  It could be
used to chat back and forth between two users on different machines: one
user would put his Mac in listening state, the other would TELNET to his
machine.  The two could then type back and forth to each other's terminal
windows.

It is possible to specify that what you type should not be sent until you
type a return, by selecting "Send Immediately" from the "Commands" menu.
This command will be checked if TELNET is in the normal state, in which
characters are sent as soon as you type them, and not checked if characters
will be held until return is typed.  This can be useful because it reduces
the network overhead of the session.  However, it is impossible to see what
you've typed until you hit the return, unless TELNET has been given the
"Local Echo" command.  It is possible to cause data to be sent before typing
a return by using the "Expedite Data" command from the "Send" menu.

Most computers operate in remote echo mode: characters you type are not
immediately printed on the screen, but sent to the remote computer, which
then echoes them back for printing on your terminal.  Computers which
operate in local echo mode can be communicated with by selecting "Local
Echo" from the "Send" menu after the connection is open.

The "Are You There?" command from the "Send" menu checks to see that the
remote computer is still connected.  If no response is received within a few
seconds, TELNET will assume that the remote computer has crashed or
otherwise disconnected, and shut down your side of the connection.

"Abort Output" and "Break" from the "Send" menu cause special TELNET
information to be transmitted.  The remote computer may or may not handle
these commands.  In general, "Abort Output" will keep text that's being sent
from being sent, perhaps while a file is being printed on your screen, but
the program on the remote computer will not be interrupted.  "Break" will do
whatever is appropriate on the system you are connected to, usually
interrupting the program on the remote computer.

As with TFTP, there is a "Show" menu from which various information can be
gotten.  Any windows created when you select a command from the "Show" menu
can be gotten rid of by clicking anywhere in them.

[ NOTES ON AUGUST 1985 RELEASE ]

[The "Get" command of TFTP will not work in Macintosh mode.  Please do not
try to use it.]

[TELNET does not yet have vt100 terminal emulation; instead, it acts as a
very dumb "glass tty" terminal, without even backspacing.]

[There is as yet no support for the "Butcher Board" router, only Seagate.]

[Neither TFTP nor TELNET will run under Switcher.]

[As yet, there is no way to specify that TFTP should sequentially transmit a
set of files or to set a default foreign host directory.  These features
would really help a great deal in backing up with TFTP.]
-=-
Tim Maroney, Carnegie-Mellon University, Networking
ARPA:	Tim.Maroney@CMU-CS-K	uucp:	seismo!cmu-cs-k!tim
CompuServe:	74176,1360	audio:	shout "Hey, Tim!"