RFC857 Telnet Echo Option

0857 Telnet Echo Option. J. Postel, J. Reynolds. May 1983. (Format: TXT=10859 bytes) (Obsoletes NIC 15390) (Also STD0028) (Status: STANDARD)

日本語訳
RFC一覧

参照

Network Working Group                                          J. Postel
Request for Comments: 857                                    J. Reynolds
                                                                     ISI
Obsoletes: NIC 15390                                            May 1983

                           TELNET ECHO OPTION


This RFC specifies a standard for the ARPA Internet community.  Hosts on
the ARPA Internet are expected to adopt and implement this standard.

1. Command Name and Code

   ECHO       1

2. Command Meanings

   IAC WILL ECHO

      The sender of this command REQUESTS to begin, or confirms that it
      will now begin, echoing data characters it receives over the
      TELNET connection back to the sender of the data characters.

   IAC WON'T ECHO

      The sender of this command DEMANDS to stop, or refuses to start,
      echoing the data characters it receives over the TELNET connection
      back to the sender of the data characters.

   IAC DO ECHO

      The sender of this command REQUESTS that the receiver of this
      command begin echoing, or confirms that the receiver of this
      command is expected to echo, data characters it receives over the
      TELNET connection back to the sender.

   IAC DON'T ECHO

      The sender of this command DEMANDS the receiver of this command
      stop, or not start, echoing data characters it receives over the
      TELNET connection.

3. Default

   WON'T ECHO

   DON'T ECHO

      No echoing is done over the TELNET connection.

4. Motivation for the Option


Postel & Reynolds                                               [Page 1]



RFC 857                                                         May 1983


   The NVT has a printer and a keyboard which are nominally
   interconnected so that "echoes" need never traverse the network; that
   is to say, the NVT nominally operates in a mode where characters
   typed on the keyboard are (by some means) locally turned around and
   printed on the printer.  In highly interactive situations it is
   appropriate for the remote process (command language interpreter,
   etc.) to which the characters are being sent to control the way they
   are echoed on the printer.  In order to support such interactive
   situations, it is necessary that there be a TELNET option to allow
   the parties at the two ends of the TELNET connection to agree that
   characters typed on an NVT keyboard are to be echoed by the party at
   the other end of the TELNET connection.

5. Description of the Option

   When the echoing option is in effect, the party at the end performing
   the echoing is expected to transmit (echo) data characters it
   receives back to the sender of the data characters.  The option does
   not require that the characters echoed be exactly the characters
   received (for example, a number of systems echo the ASCII ESC
   character with something other than the ESC character).  When the
   echoing option is not in effect, the receiver of data characters
   should not echo them back to the sender; this, of course, does not
   prevent the receiver from responding to data characters received.

   The normal TELNET connection is two way.  That is, data flows in each
   direction on the connection independently; and neither, either, or
   both directions may be operating simultaneously in echo mode.  There
   are five reasonable modes of operation for echoing on a connection
   pair:

      
                <----------------
      
      Process 1                   Process 2
                ---------------->
                 Neither end echoes

      
                <----------------
                   \
      Process 1    /              Process 2
                ---------------->
             One end echoes for itself






Postel & Reynolds                                               [Page 2]



RFC 857                                                         May 1983


      
                <----------------
                             \
      Process 1              /    Process 2
                ---------------->
          One end echoes for the other

      
                <----------------
                   \         /
      Process 1    /         \    Process 2
                ---------------->
          Both ends echo for themselves

      
                <----------------
                   \ /
      Process 1    / \            Process 2
                ---------------->
           One end echoes for both ends

   This option provides the capability to decide on whether or not
   either end will echo for the other.  It does not, however, provide
   any control over whether or not an end echoes for itself;  this
   decision must be left to the sole discretion of the systems at each
   end (although they may use information regarding the state of
   "remote" echoing negotiations in making this decision).

   It should be noted that if BOTH hosts enter the mode of echoing
   characters transmitted by the other host, then any character
   transmitted in either direction will be "echoed" back and forth
   indefinitely.  Therefore, care should be taken in each implementation
   that if one site is echoing, echoing is not permitted to be turned on
   at the other.

   As discussed in the TELNET Protocol Specification, both parties to a
   full-duplex TELNET connection initially assume each direction of the
   connection is being operated in the default mode which is non-echo
   (non-echo is not using this option, and the same as DON'T ECHO, WON'T
   ECHO).

   If either party desires himself to echo characters to the other party
   or for the other party to echo characters to him, that party gives
   the appropriate command (WILL ECHO or DO ECHO) and waits (and hopes)
   for acceptance of the option.  If the request to operate the
   connection in echo mode is refused, then the connection continues to
   operate in non-echo mode.  If the request to operate the connection
   in echo mode is accepted, the connection is operated in echo mode.


Postel & Reynolds                                               [Page 3]



RFC 857                                                         May 1983


   After a connection has been changed to echo mode, either party may
   demand that it revert to non-echo mode by giving the appropriate
   DON'T ECHO or WON'T ECHO command (which the other party must confirm
   thereby allowing the connection to operate in non-echo mode).  Just
   as each direction of the TELNET connection may be put in remote
   echoing mode independently, each direction of the TELNET connection
   must be removed from remote echoing mode separately.

   Implementations of the echo option, as implementations of all other
   TELNET options, must follow the loop preventing rules given in the
   General Considerations section of the TELNET Protocol Specification.
   Also, so that switches between echo and non-echo mode can be made
   with minimal confusion (momentary double echoing, etc.), switches in
   mode of operation should be made at times precisely coordinated with
   the reception and transmission of echo requests and demands.  For
   instance, if one party responds to a DO ECHO with a WILL ECHO, all
   data characters received after the DO ECHO should be echoed and the
   WILL ECHO should immediately precede the first of the echoed
   characters.

   The echoing option alone will normally not be sufficient to effect
   what is commonly understood to be remote computer echoing of
   characters typed on a terminal keyboard--the SUPPRESS-GO AHEAD option
   will normally have to be invoked in conjunction with the ECHO option
   to effect character-at-a-time remote echoing.

6. A Sample Implementation of the Option

   The following is a description of a possible implementation for a
   simple user system called "UHOST".

   A possible implementation could be that for each user terminal, the
   UHOST would keep three state bits: whether the terminal echoes for
   itself (UHOST ECHO always) or not (ECHO mode possible), whether the
   (human) user prefers to operate in ECHO mode or in non-ECHO mode, and
   whether the connection from this terminal to the server is in ECHO or
   non-ECHO mode.  We will call these three bits P(hysical), D(esired),
   and A(ctual).

   When a terminal dials up the UHOST the P-bit is set appropriately,
   the D-bit is set equal to it, and the A-bit is set to non-ECHO.  The
   P-bit and D-bit may be manually reset by direct commands if the user
   so desires.  For example, a user in Hawaii on a "full-duplex"
   terminal, would choose not to operate in ECHO mode, regardless of the
   preference of a mainland server.  He should direct the UHOST to
   change his D-bit from ECHO to non-ECHO.

   When a connection is opened from the UHOST terminal to a server, the


Postel & Reynolds                                               [Page 4]



RFC 857                                                         May 1983


   UHOST would send the server a DO ECHO command if the MIN (with
   non-ECHO less than ECHO) of the P- and D-bits is different from the
   A-bit.  If a WON'T ECHO or WILL ECHO arrives from the server, the
   UHOST will set the A-bit to the MIN of the received request, the
   P-bit, and the D-bit.  If this changes the state of the A-bit, the
   UHOST will send off the appropriate acknowledgment; if it does not,
   then the UHOST will send off the appropriate refusal if not changing
   meant that it had to deny the request (i.e., the MIN of the P-and
   D-bits was less than the received A-request).

   If while a connection is open, the UHOST terminal user changes either
   the P-bit or D-bit, the UHOST will repeat the above tests and send
   off a DO ECHO or DON'T ECHO, if necessary.  When the connection is
   closed, the UHOST would reset the A-bit to indicate UHOST echoing.

   While the UHOST's implementation would not involve DO ECHO or DON'T
   ECHO commands being sent to the server except when the connection is
   opened or the user explicitly changes his echoing mode, bigger hosts
   might invoke such mode switches quite frequently.  For instance,
   while a line-at-a-time system were running, the server might attempt
   to put the user in local echo mode by sending the WON'T ECHO command
   to the user; but while a character-at-a-time system were running, the
   server might attempt to invoke remote echoing for the user by sending
   the WILL ECHO command to the user.  Furthermore, while the UHOST will
   never send a WILL ECHO command and will only send a WON'T ECHO to
   refuse a server sent DO ECHO command, a server host might often send
   the WILL and WON'T ECHO commands.























Postel & Reynolds                                               [Page 5]

一覧

 RFC 1〜100  RFC 1401〜1500  RFC 2801〜2900  RFC 4201〜4300 
 RFC 101〜200  RFC 1501〜1600  RFC 2901〜3000  RFC 4301〜4400 
 RFC 201〜300  RFC 1601〜1700  RFC 3001〜3100  RFC 4401〜4500 
 RFC 301〜400  RFC 1701〜1800  RFC 3101〜3200  RFC 4501〜4600 
 RFC 401〜500  RFC 1801〜1900  RFC 3201〜3300  RFC 4601〜4700 
 RFC 501〜600  RFC 1901〜2000  RFC 3301〜3400  RFC 4701〜4800 
 RFC 601〜700  RFC 2001〜2100  RFC 3401〜3500  RFC 4801〜4900 
 RFC 701〜800  RFC 2101〜2200  RFC 3501〜3600  RFC 4901〜5000 
 RFC 801〜900  RFC 2201〜2300  RFC 3601〜3700  RFC 5001〜5100 
 RFC 901〜1000  RFC 2301〜2400  RFC 3701〜3800  RFC 5101〜5200 
 RFC 1001〜1100  RFC 2401〜2500  RFC 3801〜3900  RFC 5201〜5300 
 RFC 1101〜1200  RFC 2501〜2600  RFC 3901〜4000  RFC 5301〜5400 
 RFC 1201〜1300  RFC 2601〜2700  RFC 4001〜4100  RFC 5401〜5500 
 RFC 1301〜1400  RFC 2701〜2800  RFC 4101〜4200 

スポンサーリンク

TortoiseSVN Subversionクライアント

ホームページ製作・web系アプリ系の製作案件募集中です。

上に戻る