📄 418.htm
字号:
indicates that any special signal has already occurred and the <br>
recipient can return to normal processing of the data stream. <br>
The Synch is sent via the TCP send operation with the Urgent <br>
flag set and the DM as the last (or only) data octet. <br>
When several Synchs are sent in rapid succession, the Urgent <br>
notifications may be merged. It is not possible to count Urgents <br>
since the number received will be less than or equal the number <br>
sent. When in normal mode, a DM is a no operation; when in urgent <br>
mode, it signals the end of the urgent processing. <br>
If TCP indicates the end of Urgent data before the DM is found, <br>
TELNET should continue the special handling of the data stream <br>
until the DM is found. <br>
If TCP indicates more Urgent data after the DM is found, it can <br>
only be because of a subsequent Synch. TELNET should continue <br>
the special handling of the data stream until another DM is <br>
found. <br>
"Interesting" signals are defined to be: the TELNET standard <br>
representations of IP, AO, and AYT (but not EC or EL); the local <br>
analogs of these standard representations (if any); all other <br>
TELNET commands; other site-defined signals which can be acted on <br>
without delaying the scan of the data stream. <br>
Since one effect of the SYNCH mechanism is the discarding of <br>
essentially all characters (except TELNET commands) between the <br>
sender of the Synch and its recipient, this mechanism is specified <br>
as the standard way to clear the data path when that is desired. <br>
For example, if a user at a terminal causes an AO to be <br>
transmitted, the server which receives the AO (if it provides that <br>
function at all) should return a Synch to the user. <br>
Finally, just as the TCP Urgent notification is needed at the <br>
TELNET level as an out-of-band signal, so other protocols which <br>
make use of TELNET may require a TELNET command which can be <br>
viewed as an out-of-band signal at a different level. <br>
Postel & Reynolds [Page 9] <br>
<br>
RFC 854 May 1983 <br>
By convention the sequence [IP, Synch] is to be used as such a <br>
signal. For example, suppose that some other protocol, which uses <br>
TELNET, defines the character string STOP analogously to the <br>
TELNET command AO. Imagine that a user of this protocol wishes a <br>
server to process the STOP string, but the connection is blocked <br>
because the server is processing other commands. The user should <br>
instruct his system to: <br>
1. Send the TELNET IP character; <br>
2. Send the TELNET SYNC sequence, that is: <br>
Send the Data Mark (DM) as the only character <br>
in a TCP urgent mode send operation. <br>
3. Send the character string STOP; and <br>
4. Send the other protocol's analog of the TELNET DM, if any. <br>
The user (or process acting on his behalf) must transmit the <br>
TELNET SYNCH sequence of step 2 above to ensure that the TELNET IP <br>
gets through to the server's TELNET interpreter. <br>
The Urgent should wake up the TELNET process; the IP should <br>
wake up the next higher level process. <br>
THE NVT PRINTER AND KEYBOARD <br>
The NVT printer has an unspecified carriage width and page length <br>
and can produce representations of all 95 USASCII graphics (codes <br>
32 through 126). Of the 33 USASCII control codes (0 through 31 <br>
and 127), and the 128 uncovered codes (128 through 255), the <br>
following have specified meaning to the NVT printer: <br>
NAME CODE MEANING <br>
NULL (NUL) 0 No Operation <br>
Line Feed (LF) 10 Moves the printer to the <br>
next print line, keeping the <br>
same horizontal position. <br>
Carriage Return (CR) 13 Moves the printer to the left <br>
margin of the current line. <br>
Postel & Reynolds [Page 10] <br>
<br>
RFC 854 May 1983 <br>
In addition, the following codes shall have defined, but not <br>
required, effects on the NVT printer. Neither end of a TELNET <br>
connection may assume that the other party will take, or will <br>
have taken, any particular action upon receipt or transmission <br>
of these: <br>
BELL (BEL) 7 Produces an audible or <br>
visible signal (which does <br>
NOT move the print head). <br>
Back Space (BS) 8 Moves the print head one <br>
character position towards <br>
the left margin. <br>
Horizontal Tab (HT) 9 Moves the printer to the <br>
next horizontal tab stop. <br>
It remains unspecified how <br>
either party determines or <br>
establishes where such tab <br>
stops are located. <br>
Vertical Tab (VT) 11 Moves the printer to the <br>
next vertical tab stop. It <br>
remains unspecified how <br>
either party determines or <br>
establishes where such tab <br>
stops are located. <br>
Form Feed (FF) 12 Moves the printer to the top <br>
of the next page, keeping <br>
the same horizontal position. <br>
All remaining codes do not cause the NVT printer to take any <br>
action. <br>
The sequence "CR LF", as defined, will cause the NVT to be <br>
positioned at the left margin of the next print line (as would, <br>
for example, the sequence "LF CR"). However, many systems and <br>
<br>
terminals do not treat CR and LF independently, and will have to <br>
go to some effort to simulate their effect. (For example, some <br>
terminals do not have a CR independent of the LF, but on such <br>
terminals it may be possible to simulate a CR by backspacing.) <br>
Therefore, the sequence "CR LF" must be treated as a single "new <br>
line" character and used whenever their combined action is <br>
intended; the sequence "CR NUL" must be used where a carriage <br>
return alone is actually desired; and the CR character must be <br>
avoided in other contexts. This rule gives assurance to systems <br>
which must decide whether to perform a "new line" function or a <br>
multiple-backspace that the TELNET stream contains a character <br>
following a CR that will allow a rational decision. <br>
Note that "CR LF" or "CR NUL" is required in both directions <br>
Postel & Reynolds [Page 11] <br>
<br>
RFC 854 May 1983 <br>
(in the default ASCII mode), to preserve the symmetry of the <br>
NVT model. Even though it may be known in some situations <br>
(e.g., with remote echo and suppress go ahead options in <br>
effect) that characters are not being sent to an actual <br>
printer, nonetheless, for the sake of consistency, the protocol <br>
requires that a NUL be inserted following a CR not followed by <br>
a LF in the data stream. The converse of this is that a NUL <br>
received in the data stream after a CR (in the absence of <br>
options negotiations which explicitly specify otherwise) should <br>
be stripped out prior to applying the NVT to local character <br>
set mapping. <br>
The NVT keyboard has keys, or key combinations, or key sequences, <br>
for generating all 128 USASCII codes. Note that although many <br>
have no effect on the NVT printer, the NVT keyboard is capable of <br>
generating them. <br>
In addition to these codes, the NVT keyboard shall be capable of <br>
generating the following additional codes which, except as noted, <br>
have defined, but not reguired, meanings. The actual code <br>
assignments for these "characters" are in the TELNET Command <br>
section, because they are viewed as being, in some sense, generic <br>
and should be available even when the data stream is interpreted <br>
as being some other character set. <br>
Synch <br>
This key allows the user to clear his data path to the other <br>
party. The activation of this key causes a DM (see command <br>
section) to be sent in the data stream and a TCP Urgent <br>
notification is associated with it. The pair DM-Urgent is to <br>
have required meaning as defined previously. <br>
Break (BRK) <br>
This code is provided because it is a signal outside the <br>
USASCII set which is currently given local meaning within many <br>
systems. It is intended to indicate that the Break Key or the <br>
Attention Key was hit. Note, however, that this is intended to <br>
provide a 129th code for systems which require it, not as a <br>
synonym for the IP standard representation. <br>
Interrupt Process (IP) <br>
Suspend, interrupt, abort or terminate the process to which the <br>
NVT is connected. Also, part of the out-of-band signal for <br>
other protocols which use TELNET. <br>
Postel & Reynolds [Page 12] <br>
<br>
RFC 854 May 1983 <br>
Abort Output (AO) <br>
Allow the current process to (appear to) run to completion, but <br>
do not send its output to the user. Also, send a Synch to the <br>
user. <br>
Are You There (AYT) <br>
Send back to the NVT some visible (i.e., printable) evidence <br>
that the AYT was received. <br>
Erase Character (EC) <br>
The recipient should delete the last preceding undeleted <br>
character or "print position" from the data stream. <br>
Erase Line (EL) <br>
The recipient should delete characters from the data stream <br>
back to, but not including, the last "CR LF" sequence sent over <br>
the TELNET connection. <br>
The spirit of these "extra" keys, and also the printer format <br>
effectors, is that they should represent a natural extension of <br>
the mapping that already must be done from "NVT" into "local". <br>
Just as the NVT data byte 68 (104 octal) should be mapped into <br>
whatever the local code for "uppercase D" is, so the EC character <br>
should be mapped into whatever the local "Erase Character" <br>
function is. Further, just as the mapping for 124 (174 octal) is <br>
somewhat arbitrary in an environment that has no "vertical bar" <br>
character, the EL character may have a somewhat arbitrary mapping <br>
(or none at all) if there is no local "Erase Line" facility. <br>
Similarly for format effectors: if the terminal actually does <br>
have a "Vertical Tab", then the mapping for VT is obvious, and <br>
only when the terminal does not have a vertical tab should the <br>
effect of VT be unpredictable. <br>
TELNET COMMAND STRUCTURE <br>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -