Base Definitions of Managed Objects for TN3270E Using SMIv2
Extracted elements (28)
IANATn3270eAddress allows a zero-length octet string whereas TAddress (RFC 1903) does not. This is necessary because some objects using this syntax serve as table indexes where a zero-length string carries a special 'absent address' meaning.
IANATn3270eAddrType (SYNTAX Unsigned32 enumeration) was chosen over the TDomain textual convention (OID syntax) because an integer is far simpler to embed as a component in an SNMP instance identifier. The IANA-administered module placement allows new address type values to be added without revising this RFC.
Row persistence across reIPLs is deliberately not supported via StorageType objects because local, implementation-dependent configuration is expected to define initial persistent TN3270E server configurations; SNMP-created rows are treated as transient operational state.
The tn3270eTcpConnTable places the remote address index components before the local address components so that a Management Station can issue a GET-NEXT operation using only the remote address pair to efficiently retrieve all entries associated with a particular TN3270E client.
A MIB conforming to SMIv1 can be produced by translating this SMIv2 MIB, but Counter64 objects (tn3270eSrvrStatsHCInOctets, tn3270eSrvrStatsHCOutOctets) cannot be translated and must be omitted, with no change to overall MIB semantics per this document.
The tn3270eTcpConnTable does not carry tn3270eSrvrConfIndex as an index, meaning view-based access control policies that restrict access to rows on a per-server basis are not supported by this table's indexing structure.
A TN3270E server that does not restrict a local TCP port to a particular local IP address SHALL use the value unknown(0) for tn3270eSrvrConfPortAddrType and a zero-length octet string for tn3270eSrvrConfPortAddress.
Agents MUST implement the tn3270eConfSpinLock object; however, its use by management applications SHALL NOT be enforced by agents. Management applications SHOULD use this advisory lock when creating or altering entries in the configuration tables to serialize changes.
All entries in the tn3270eTcpConnTable belonging to a deleted TN3270E server MUST also be removed. Deleting a tn3270eSrvrConfEntry cascades to remove associated entries from tn3270eSrvrPortTable, tn3270eSrvrStatsTable, tn3270eClientGroupTable, tn3270eResPoolTable, tn3270eSnaMapTable, tn3270eClientResMapTable, and tn3270eResMapTable.
An implementation of the tn3270eSrvrStatsTable MUST use only one of the three levels of refinement (server-wide, port, or port-and-local-address) for all entries associated with a single TN3270E server.
Entries in other MIB tables MUST NOT exist for a TN3270E server when it does not have a corresponding tn3270eSrvrConfEntry. The tn3270eSrvrConfTable is the primary anchor for all other tables indexed by tn3270eSrvrConfIndex.
For trace data in Tn3270eTraceData, the starting point for SNA data SHOULD be the first byte of the Transmission Header (TH), and for IP data SHOULD be the first byte of the IP header.
Implementations SHOULD NOT retain SNMP-created entries in the tn3270eSrvrConfTable, tn3270eSrvrPortTable, tn3270eClientGroupTable, tn3270eResPoolTable, and tn3270eClientResMapTable across reIPLs of the corresponding TN3270E server, so management applications see consistent behavior.
tn3270eSrvrConfIndex values MUST be unique within the set of MIB objects returned by one SNMP agent, though they need not be contiguous. This allows a single SNMP agent to manage multiple TN3270E servers.
When an SSCP sends an ACTLU with an SLU name already in the tn3270eSnaMapTable associated with a different local LU, the association from the newer ACTLU SHOULD be the one represented in the table.
When both TN3270E-MIB and SYSAPPL-MIB are implemented, the primary index tn3270eSrvrConfIndex SHOULD equal one of the SYSAPPL-MIB's sysApplElmtRunIndex values, enabling the sysApplElmtRunTable to supply additional server information.
tn3270eClientGroupTable and tn3270eResPoolTable define named groupings of client addresses and SNA resource pools respectively. tn3270eClientResMapTable maps client groups to resource pools, optionally restricted by TCP port.
tn3270eSnaMapTable is a read-only table mapping a secondary LU's SSCP-supplied SNA network name to its local name at the TN3270E server. Entries are created on receipt of an ACTLU request and deleted when the SLU is deactivated.
tn3270eSrvrConfTable is the primary table of the TN3270E-MIB, containing configuration and control objects for each TN3270E server, indexed by tn3270eSrvrConfIndex. Key objects include InactivityTimeout, ConnectivityChk (NOP/TIMING-MARK), AdminStatus, OperStatus, SessionTermState, and SrvrType.
tn3270eSrvrPortTable represents the local TCP ports associated with a TN3270E server, supporting multiple ports per server and optionally restricting a port to a specific local IP address via tn3270eSrvrPortAddrType and tn3270eSrvrPortAddress.
tn3270eSrvrStatsTable provides server usage statistics including maximum/in-use/spare terminal and printer LUs, connection counts (successful, resource-rejected, error-rejected, disconnected), and 64-bit octet counters for inbound and outbound traffic.
tn3270eTcpConnTable tracks each active TN3270/TN3270E client session, indexed by remote address type, remote address, remote port, local address type, local address, and local port. It supplements (but is not one-to-one with) the standard tcpConnTable and supports IPv6 addressing.
The IANATn3270eTC-MIB, administered by IANA, contains textual conventions for TN3270E address types (IANATn3270eAddrType, IANATn3270eAddress), client types, function bits (IANATn3270Functions), resource types, device types, and log data. New values can be added without reissuing RFC 2561.
The TN3270E-MIB contains writable objects (e.g., tn3270eSrvrConfAdminStatus with stopImmediate(3)) that can halt servers and disrupt service. Implementations SHOULD use SNMPv3 with authentication and privacy to protect against unauthorized access, eavesdropping, and replay attacks on management traffic.
tn3270eSrvrConfAdminStatus drives the desired server state: up(1) activates the server, down(2) requests graceful shutdown (server SHOULD close all sessions), stopImmediate(3) forces immediate termination. tn3270eSrvrConfOperStatus reflects the actual state: up(1), down(2), busy(3) (active but not accepting new connections), or shuttingDown(4).
tn3270eSrvrConfSessionTermState controls TCP connection behavior when an SNA/TN3270 session terminates: terminate(1) closes the TCP connection, luSessionPend(2) keeps TCP open and redrives session initialization, queueSession(3) holds TCP open awaiting a BIND from a new PLU (VTAM CLSDST PASS scenario).
SnaResourceName is an OCTET STRING (SIZE 0..17) encoding a fully-qualified SNA resource name as NetId.ResName, where each component is 1–8 uppercase ASCII letters or digits with a letter as the first character. The '#', '@', '$' characters SHOULD be accepted for backward compatibility.
Tn3270eTraceData is an OCTET STRING (0 or 3..4096 bytes) encoding a sequence of trace elements. Each element has a 2-octet data length, a 1-octet type code (0x01=Telnet server→client, 0x02=client→server, 0x03=SNA server→host, 0x04=host→server), and the initial bytes of the PDU.