📄 rfc2355.txt
字号:
Agreement to support this function requires that the party support the following TN3270E header values: Header field Value ------------ ----- DATA-TYPE 3270-DATA DATA-TYPE PRINT-EOJ A client representing a printer device uses this function to indicate its willingness to accept a data stream that includes 3270 orders and attributes. When a printer device-type has been negotiated, either the SCS-CTL- CODES function or the DATA-STREAM-CTL function, or both, must be negotiated. This enables the server to know when it should and should not accept a session with a host application on behalf of the client. If only the DATA-STREAM-CTL function is agreed to, then the server will not establish sessions with host applications that would send SCS control codes in a data stream. If both SCS-CTL-CODES and DATA-STREAM-CTL are agreed to, then the server will establish sessions both with host applications that would send SCS control codes and with those that would send 3270 orders. The server should send a TN3270E message with DATA-TYPE set to PRINT-EOJ at the end of each print job to indicate to the client that it may now take whatever action is appropriate for its environment (e.g., close a disk or spool file, etc.). The server may have multiple criteria for determining when it should send a PRINT-EOJ, such as receipt of SNA End Bracket from the host application, or expiration of a pre-defined timeout value.Kelly Standards Track [Page 23]RFC 2355 TN3270 Enhancements June 199810.3 The BIND-IMAGE Function This function can only be supported when the TN3270E server represents SNA terminals and printers. Agreement to support this function requires that the party support the following TN3270E header values: Header field Value ------------ ----- DATA-TYPE BIND-IMAGE DATA-TYPE UNBIND DATA-TYPE SSCP-LU-DATA When BIND-IMAGE is in effect, the server must inform the client when an SNA session has been established with a host application, and when such a session has been terminated. It uses DATA-TYPE values of BIND-IMAGE and UNBIND to convey this information. When establishing an SNA session on behalf of a client, the server will receive a Bind RU from the host application. It will also receive a Start Data Traffic RU. Once both of these have been responded to positively by the server, it must then inform the client of the presence of this session by sending it a data message with the DATA-TYPE flag set to BIND-IMAGE. The data portion of this message must contain the bind image exactly as it was received in the Bind RU that the server accepted on behalf of the client. The format and maximum length of this bind image are defined in [6]. When an SNA session between the server and a host application is terminated, the server must send a data message to the client with the DATA-TYPE flag set to UNBIND. If the server was notified of the session termination via an SNA Unbind RU, it should include the Unbind reason code in the data portion of the message it sends to the client. If the server itself requested the SNA session termination (for example, as part of SYSREQ key processing), it should set the data portion of the UNBIND message to 0x01, indicating "normal end of session". Another aspect of the BIND-IMAGE function alters the allowable DATA- TYPE flag values slightly from the behavior described in the section entitled "Basic TN3270E". When BIND-IMAGE is in effect, data messages with DATA-TYPE set to 3270-DATA or SCS-DATA are not allowed before the first BIND-IMAGE is received by the client; only SSCP-LU- DATA or NVT-DATA can be used to transmit user- oriented data. The same applies to data messages exchanged after an UNBIND is sent and before another BIND-IMAGE is received by the client. Once the client receives a BIND-IMAGE data message, the allowable DATA-TYPE values,Kelly Standards Track [Page 24]RFC 2355 TN3270 Enhancements June 1998 in addition to SSCP-LU-DATA, now include 3270-DATA and/or SCS-DATA, depending on whether a terminal or printer device-type was negotiated, and whether a printer client agreed to DATA-STREAM-CTL or SCS-CTL-CODES, or both. (See the section entitled "The SYSREQ Function" for further discussion of the SSCP-LU session in an SNA environment.)10.4 The RESPONSES Function This function can be supported for both terminal and printer sessions connected to both SNA and non-SNA servers. Agreement to support this function requires that the party support the following TN3270E header values: Header field Value ------------ ----- DATA-TYPE RESPONSE DATA-TYPE REQUEST RESPONSE-FLAG -all values- REQUEST-FLAG ERR-COND-CLEARED SEQ-NUMBER binary values from 0-32767 Whenever a data message is sent with a DATA-TYPE of either SCS-DATA or 3270-DATA, the sender must set the RESPONSE-FLAG field to either NO-RESPONSE, ERROR-RESPONSE, or ALWAYS-RESPONSE. It is anticipated that the client side will normally set RESPONSE-FLAG to NO-RESPONSE. The server, if it represents an SNA device, should set RESPONSE-FLAG to reflect the response value set in the RH of the RU that generated this data message - Definite Response resulting in a RESPONSE-FLAG value of ALWAYS-RESPONSE, Exception Response resulting in ERROR- RESPONSE being set, and No Response causing a setting of NO-RESPONSE. A non-SNA server should set RESPONSE-FLAG to ERROR-RESPONSE. In addition, the sender must keep a count of the messages with a DATA-TYPE of 3270-DATA or SCS-DATA that it sends on a given TN3270E session. This counter should start at zero for the first such message, and be incremented by one for each subsequent message. Note that this counter is independent of any SNA sequence numbers, and should not be reset to zero as a result of Bind or Unbind. If the counter reaches the maximum of 32767, it should be restarted at zero. The sender must place this value in the SEQ-NUMBER field of the TN3270E header before it sends the message. Note that the SEQ-NUMBER field must be set regardless of the value of the RESPONSE-FLAG field.Kelly Standards Track [Page 25]RFC 2355 TN3270 Enhancements June 199810.4.1 Response Messages Whenever a data message with a DATA-TYPE of either SCS-DATA or 3270- DATA is received, the receiver must attempt to process the data in the data portion of the message, then determine whether or not it should send a data message with a DATA-TYPE of RESPONSE. If the data message it has just processed had a RESPONSE-FLAG value of NO- RESPONSE, or if it had a value of ERROR-RESPONSE and there were no errors encountered while processing the data, then no RESPONSE type message should be sent. Otherwise, a data message should be sent in which the header DATA-TYPE field is set to RESPONSE, and in which the SEQ-NUMBER field is a copy of the SEQ-NUMBER field from the message to which this response corresponds. The RESPONSE-FLAG field in this header must have a value of either POSITIVE-RESPONSE or NEGATIVE- RESPONSE. A POSITIVE-RESPONSE should be sent if the previously processed message's header specified ALWAYS-RESPONSE and no errors were encountered in processing the data. A NEGATIVE-RESPONSE should be sent when 1) the previously processed message specified ERROR-RESPONSE or ALWAYS-RESPONSE and 2) some kind of error occurred while processing the data. Normally only the client will be constructing and sending these RESPONSE messages. A negative response sent by the client to the server is the equivalent of a Unit Check Status [7]. All references to device status and sense codes in this section rely on [7]. The data portion of a RESPONSE message must consist of one byte of binary data. The value of this byte gives a more detailed account of the results of having processed the previously received data message. The possible values for this byte are: For a RESPONSE-FLAG value of POSITIVE-RESPONSE - Value Meaning ----- ------- 0x00 Successful completion (when sent by the client, this is equivalent to "Device End"). For a RESPONSE-FLAG value of NEGATIVE-RESPONSE - Value Meaning ----- ------- 0x00 An invalid 3270 command was received (equivalent to "Command Reject").Kelly Standards Track [Page 26]RFC 2355 TN3270 Enhancements June 1998 0x01 Printer is not ready (equivalent to "Intervention Required"). 0x02 An illegal 3270 buffer address or order sequence was received (equivalent to "Operation Check"). 0x03 Printer is powered off or not connected (equivalent to "Component Disconnected"). When the server receives any of the above responses, it should pass along the appropriate information to the host application. The appropriate information is determined by whether the server represents an SNA or a non-SNA device. An SNA server should pass along a POSITIVE-RESPONSE from the client as an SNA positive Response Unit to the host application. It should translate a NEGATIVE-RESPONSE from the client into an SNA negative Response Unit in which the Sense Data Indicator bit is on and which contains one of the following sense codes: RESPONSE-FLAG Equivalent SNA Sense Code ------------- ---------- -------------- 0x00 Command Reject 0x10030000 0x01 Intervention Required 0x08020000 0x02 Operation Check 0x10050000 0x03 Component Disconnected 0x08310000 A non-SNA server should pass along a POSITIVE-RESPONSE from the client by setting the Device End Status bit on. It should reflect a NEGATIVE-RESPONSE from the client by setting the Unit Check Status Bit on, and setting either the Command Reject, Intervention Required, or Operation Check Sense bit on when responding to the Sense command. In the case of Intervention Required or Component Disconnected being passed by the server to the host application, the host would normally refrain from sending any further data to the printer. If and when the error condition at the client has been resolved, the client must send to the server a data message whose header DATA-TYPE field is set to REQUEST, and whose REQUEST-FLAG is set to ERR-COND-CLEARED. Note that this message has no data portion. Upon receipt of this message, the server should pass along the appropriate information to the host application so that it may resume sending printer output. Again, the form of this information depends on whether the server represents an SNA or a non-SNA device.Kelly Standards Track [Page 27]RFC 2355 TN3270 Enhancements June 1998 An SNA server should reflect an ERR-COND-CLEARED to the host application by sending an SNA LUSTAT RU with one of the following sense codes: - if the previous error condition was an Intervention Required, the server should send sense code 0x00010000 - if the previous error condition was Component Disconnected, the server should send sense code 0x082B0000 A non-SNA server should set the corresponding bits in the Ending Status and Sense Condition bytes.10.5 The SYSREQ Function This function can only be supported when the TN3270E server represents SNA devices. Agreement to support this function requires that the party support the following TN3270E header values: Header field Value ------------ ----- DATA-TYPE SSCP-LU-DATA The 3270 SYSREQ key can be useful in an SNA environment when the ATTN key is not sufficient to terminate a process. (See the section entitled "The 3270 ATTN Key" for more information.)10.5.1 Background In SNA, there is a session between the host application (the PLU, or Primary Logical Unit) and the TN3270E server representing the client (the SLU, or Secondary Logical Unit). This is referred to as the PLU-SLU
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -