Rendezvous processing

Start of changeShared Memory Communications (SMC) is enabled by using the GLOBALCONFIG statement in the TCP/IP profile data set.
  • Shared Memory Communications over RDMA (SMC-R) is enabled by specifying one or more Peripheral Component Interconnect Express® (PCIe) function ID (PFID) values on the SMCR parameter of the GLOBALCONFIG statement in the TCP/IP profile data set. Each PFID value represents an IBM® 10 GbE RoCE Express feature that is configured by using the traditional hardware configuration definition (HCD) tools. TCP/IP activates 10 GbE RoCE Express interfaces when the first SMC-R capable interface is started. SMC-R capable interfaces include IPAQENET or IPAQENET6 interfaces with the OSD channel path ID type. Any TCP connections that are routed over SMC-R capable interfaces are eligible for SMC-R communications.
  • Shared Memory Communications - Direct Memory Access (SMC-D) is enabled by specifying the SMCD parameter of the GLOBALCONFIG statement in the TCP/IP profile data set. When SMC-D capable interfaces are activated, z/OS® Communications Server selects an available ISM device that is associated with the same physical network as the SMC-D capable interface. Only one ISM device is activated for each physical network. The ISM device is represented by a Peripheral Component Interconnect Express (PCIe) function ID (PFID) value that is configured by using the traditional hardware configuration definition (HCD) tools. SMC-D capable interfaces include IPAQENET or IPAQENET6 interfaces with the OSD channel path ID type, and IPAQIDIO and IPAQIDIO6 HiperSockets™ interfaces. Any TCP connections that are routed over SMC-D capable interfaces are eligible for SMC-D communications.
End of change

The decision about whether an eligible connection uses Start of changeSMCEnd of change communications is reached during traditional TCP connection establishment. Rendezvous processing is the term that is used to describe the sequence of connection management flows (shown in Figure 1) that are required to establish SMC-R communications between two peers.

Figure 1. Rendezvous processing
The preceding paragraph and the following list describe rendezvous processing.

The exchange of information occurs in different stages:

The TCP/IP stack does not allow the client and server applications to exchange application data during rendezvous processing. Because no application data is exchanged, the TCP connection can revert to IP protocols if there is a failure during the setup of the Start of changeSMCEnd of change communications. However, after the TCP connection is committed to using Start of changeSMCEnd of change protocolsStart of change, the TCP connectionEnd of change cannot fall back to using IP protocols if Start of changeSMCEnd of change communications encounter an error.

Start of changeEnd of change

Both the client and the server nodes maintain a series of rendezvous timers to ensure that the rendezvous processing completes in time. If one of the timed events does not complete as expected, the TCP connection reverts to using IP protocols. However, future TCP connections can still attempt to use Start of changeSMCEnd of change.

Start of changeTo reduce the overhead of persistent rendezvous failures (TCP connections reverting to using IP protocols) to the same destination IP address, you can use the default AUTOCACHE Start of changefunction. This function is controlled by the AUTOCACHE and NOAUTOCACHE subparametersEnd of change of the Start of changeSMCGLOBALEnd of change parameter on the GLOBALCONFIG profile statementStart of change and is set to AUTOCACHE by defaultEnd of change. The AUTOCACHE function caches rendezvous failures per IP address destination. If the AUTOCACHE function detects too many rendezvous failures to a specific IP address, the function prevents additional rendezvous attempts to that IP address. Start of changeThe AUTOCACHE function is started only when you enable SMC. For more information about enabling SMC, see the description of the GLOBALCONFIG SMCR and SMCD parameters in z/OS Communications Server: IP Configuration Reference.End of changeEnd of change

Even though the data is sent out of band with Start of changeSMCEnd of change communications, the TCP connection remains active, primarily to facilitate connection termination processing. If you have TCP server applications that primarily use many short-lived TCP connections, you might want to avoid rendezvous processing. You can prevent these server applications from using Start of changeSMCEnd of changeStart of change in one of the following ways:End of changeStart of change
Use the AUTOSMC monitoring function
The AUTOSMC monitoring function dynamically monitors incoming TCP connections to local TCP server applications and determines whether the use of Start of changeSMCEnd of change is beneficial for the workload. This function Start of changeis configured by the AUTOSMC and NOAUTOSMC subparameters of theEnd of change SMCGLOBAL parameter on the GLOBALCONFIG profile statement and is Start of changeset to AUTOSMCEnd of change by default. Start of changeHowever, the AUTOSMC monitoring function is started only when you enable SMC. For more information about enabling SMC, see the description of the GLOBALCONFIG SMCR and SMCD parameters in z/OS Communications Server: IP Configuration Reference.End of change If the function determines that most of the incoming connections are short-lived and exchange a small amount of data then Start of changeSMCEnd of change processing will be bypassed for all new connections to this server. This monitoring is dynamic in nature so that it can detect changes in workload patterns. You can monitor the results of this dynamic monitoring and Start of changeSMCEnd of change enablement/disablement using the Start of changeNetstat ALL/-AEnd of change command. For more information about the Start of changeNetstat ALL/-AEnd of change command, see z/OS Communications Server: IP System Administrator's Commands.
Disable Start of changeSMCEnd of change eligiblity for the port
Explicitly specify the NOSMC parameter on the PORT or PORTRANGE statements that define the port or ports that the server application uses. For more information, see z/OS Communications Server: IP Configuration Reference.
End of change