TN3270E Support in VM TCP/IP 310
TN3270E is an extension to the Telnet 3270 protocol and is described in RFC 1647. In VM TCP/IP Level 310, we have added support for some aspects of the protocol extensions. In particular, we support 328x printers using 3270 data streams. We do not support TN3270E for display terminals.
Essentially, we negotiate to support a subset of TN3270E for printers, define a logical 3287 device to represent the printer, invoke an exit to attach the device to the appropriate service machine (for example, RSCS) and handle the data streams that flow between the server and the printer.
Allowable TN3270E printer connections are defined by the TN3270E and EndTN3270E statements in the TCP/IP configuration file. Each printer definition gives an IP address, LU name, user identifier, and virtual address. The LU name may be used by the IP address to establish a TN3270E session and is associated with the user identifier and virtual address.
|Implications for TN3270E Clients|
When a TN3270E server receives a connection, it goes through negotiation with the client to determine the characteristics of the session. Because it supports TN3270E printer sessions, the VM Telnet server must start its negotiation by asking the client if it wants to use TN3270E protocol. A client that accepts this offer eventually supplies a terminal type to the server. If the type is not associated with a printer, the server backs out of the original TN3270E negotiation and attempts to negotiate a regular TN3270 session.
Some clients do not support this part of the TN3270 negotiation protocol properly. That is, they do not recognize that the server might change its mind. Instead, they usually respond to the protocol back-out in one of three inappropriate ways, as follows:
- They terminate the connection with the server.
- They ignore the negotiation and try to use TN3270E protocols anyway .
- They crash.
In all cases, the connection is unusable.
Some clients have a settable option to control their use of TN3270E. For a VM terminal session, this option should (or, might as well) be off, since it adds no function to the environment.
Some clients that claim to support TN3270E for printing do not support them in 3270 data stream mode. Instead, they assume that SCS data streams will be acceptable to the server and fail in some inconvenient way when that assumption turns out to be incorrect.
If clients do not have the ability to disable their own use of TN3270E, the NoTN3270E option of the InternalClientParms statement can be specified in the TCPIP stack machine configuration file (PROFILE TCPIP). This option disables TN3270E for all clients. Unfortunately, it also prevents using printers via TN3270E, although they can be used (as they can be with previous levels of VM TCP/IP) via LPR, either directly or through RSCS.
IBM cannot recommend or even comment about TN3270 clients offered by other companies. While we have tested some of these clients with our server, reported any problems we have found, and provided diagnostic assistance when asked, repairing the problems and verifying correct operation is up to the individual client product owners. We have successfully used IBM Personal Communications on OS/2, Windows 95, and other platforms together with our server, both for printer and terminal sessions. It does not require any special configuration settings to work properly, although installing the most current level of the package for your platform is advisable.
Using selective trace features introduced in TCP/IP FL310 (via the TraceOnly and EndTraceOnly statements) you can use the statements:
- Trace Telnet
- MoreTrace Telnet
to collect diagnostic information for sessions originating from a particular IP address. This trace information is sufficient to determine where a negotiation or protocol problem exists. If you need assistance to collect, interpret, or explain a trace, call the IBM Support Center and ask for TCP/IP Level 2 support.
For information on configuring RSCS TN3270E support see RSCS Common Problems and Solutions