NETWORK WORKING GROUP                                   R.Thomas
REQUEST FOR COMMENTS #339                               BBN
N.I.C. #9932                                            May 5,
1972             MLTNET - A "MULTI-TELNET" SUBSYSTEM FOR TENEX
INTRODUCTION
MLTNET is a TELNET-like facility for TENEX which enables a user to
control a number of jobs, running on different ARPANET hosts. It
multiplexes the user's local console among the remote jobs. MLTNET is
useful in applications which require coordinated behavior of several
network hosts.  In particular, we have found it helpful in debugging
programs which make use of the network. The MLTNET program is designed
to be easy to use and, while used in remote mode, to be as transparent
as possible to the user. It is somewhat less sophisticated than the
TENEX user-TELNET program. MLTNET is currently a subsystem on the BBN-
TENEX host.
USING MLTNET
MLTNET operates in two modes:
1.      Local Mode Operation:
        When in local mode MLTNET interprets input types by the
        user as commands to it. Commands consist of a mnemonic
        command name followed by zero or more parameters.
        Included in the commands recognized by MLTNET are ones
        which enable the user to associate a name of his choice
        with a connection to an ARPANET site, to establish a
        connection with a named site, to list the network status
        as seen from the user's TENEX etc.
2.      Remote Mode Operation
        When operating in remote mode MLTNET makes the user's
        console appear to be directly connected to a remote
        site. It transmits input typed by the user to the
        remote site and prints output recieved from the remote
        site. Output received from a remote site while the user
        is in local mode or is interacting with another remote
        site is buffered for the user by MLTNET.
        MLTNET has been designed to be transparent to the user
        while operating in remote mode. In particular, when in
        remote mode it transmits user-types ^C (CONTROL-C, the
        TENEX "attention" character) and ^T (CONTROL-T, the
        TENEX "time used query" character) to the remote site.
        effect: Prints on the console a breif summary of how to
                use MLTNET.
Remote Mode Commands
In remote mode MLTNET recognizes the escape character "!" as a signal to
interpret the following character as a command.  Currently MLTNET
recognizes the following characters as commands to it:
Q:      (quit) Causes MLTNET to switch from remote mode to local
        mode.
L:      (local echo) Causes MLTNET to echo characters as it
        transmits them to the remote site. ;L is the inverse of
        R. The default case.
R:      (remote echo) Causes MLTNET to transmit characters typed
        to it without echoing them; invers of L.
U:      (upper case) Causes MLTNET to transmit upper case letters
        as typed; the inverse of S. The default case.
S:      (small letters - lower case): Causes MLTNET to transmit
        upper case letters typed to it as lower case letters.
        In this mode of operation "^" acts as a shift key; "^"
        may be transmitted by typing "!^". S is the inverse of        
U.X:      (where X is any character other than Q, L, R, U or S):
        Causes MLTNET to transmit X.
The following is an annotated scenario which illustrates the use of
MLTNET; in it characters typed by  the users are underlined.
       [ This RFC was put into machine readable form for entry ]
        [ into the online RFC archives by Tor Fredrik Aas 1/98 ]