Platform SDK: SNA Server

Sessions and Connections

An application using the FMI can communicate with the host on two SNA sessions:

The local node communicates directly with the host on the PU-SSCP session.

The three sessions are illustrated in the following figure:

The application can communicate with the local node by means of two LPI connections. Rather than specifying the session on which a message is to flow, the application sends the message to the local node on one of these connections; the local node then routes it to the appropriate SNA session.

The connections are used as follows:

The connections are illustrated in the following figure.

These connections are specific to the local node and the application. Data and status messages passed across a connection result in SNA data and SNA control requests being sent on the appropriate SNA session. Similarly, SNA data and SNA control responses received on an SNA session result in data and control messages being passed to the application on the appropriate connection.

The relationship between the three SNA sessions and the two connections is as follows:

Note the distinction between these SNA sessions and 3270 emulation sessions. A 3270 emulator can have more than one 3270 emulation session; for each emulation session, there are separate SSCP and PLU sessions.

Each connection between the application and the local node is opened, managed, and closed separately. This means that an application must maintain a separate internal control block containing the LPI pair, message keys, and state of the connection for each of the SNA sessions associated with each 3270 emulation session; for example, an application using three 3270 emulation sessions, each with an SSCP session and a PLU session, will require six control blocks.

An application identifies the connection (and hence the session) to which a particular message belongs using the LPI pair present in the message. On a received message, the destination index (I) value contains the application's identifier for the connection, and the source I value contains the local node's identifier for the connection. These are reversed for messages sent by the application.

The application selects the LU within the local node that it can use for communications by the relationship in the configuration table between the LU and APPL records (see Opening the SSCP Connection). The application may be unaware of which LU it accesses if the LUs are arranged within LU groups.