The connector, the runtime component of the TCP/IP Adapter, is capable of serving as either a TCP server (in inbound, or event processing, mode) or a TCP client (in outbound, or service request, mode). The module in the connector that implements the actual TCP protocol is called the Connection Manager.
The Connection Manager has two parts: the Protocol Listener Framework and the Protocol Handler Framework. The Protocol Listener Framework serves as a TCP server, based on properties set in the ServerConfiguration section of the connector configuration file, the CFG. See Appendix B, Connector Specific Properties And Required Business Object Properties for more information on the CFG. The Framework listens for incoming requests and provides for parallel processing of multiple requests through a thread management component called the Request Pool. Every new incoming request becomes a new Request object in the Request Pool. The size of the Pool is set by the configuration property, MaxRequestPoolSize. Requests in the Pool are processed by worker threads, up to the number configured by the MaxRequestProcessors property in the CFG. At any given moment, the connector can process at most (MaxRequestPoolSize + MaxRequestProcessors) requests. Thread management and load balancing are also taken care of here. The worker threads package the incoming requests into byte arrays and hand them off to the Message Processing Framework.
The Protocol Handler Framework serves as the TCP client, taking service call request data and sending it to remote hosts based on properties set in the ClientConfiguration part of the CFG.