The TCP Server communication point listens for connections on the port specified by the Local Port property. It can be bound to a specific interface (Ethernet card) by supplying the hostname/IP address bound to that interface in the Local Address property. The Listen Backlog property is used to specify the number of connections that can be waiting in the accept queue before new connections are actively refused.
Messages on a TCP stream must be wrapped with a header and/or trailer because TCP has no way of knowing when a message starts or ends. The input and output Wrapper, Header, Trailer, and Endian-ness properties are used to configure the message wrapping.
Supported Operational Modes: All.
In order to make this server communication point more tolerant to connection failures from clients or misconfigured clients, we recommend that its connection retry count be set to infinite. Refer to Connection Retries for details.
Input Mode Properties
Property |
Description |
---|---|
Local Port |
The port number to bind the local socket to. |
Local Address |
The hostname or IP address of the local interface to which to bind the socket connection (all interfaces if empty). |
Listen Backlog |
The maximum number of connections that the OS kernel queues for the underlying TCP socket. TCP connections which have been established after completing a three-way TCP handshake are queued on this queue until a Rhapsody server communication point accept them A Rhapsody communication point can only accept a number of connections equal to its maximum configured connections. Any additional connections will remain on the kernel queue and will not be processed by Rhapsody – client applications will be unaware that their connection is not being processed and may continue to send data. As such, it is imperative that Rhapsody TCP server communication points have the number of connections configured to adequately service all client connections. The listen backlog parameter is only intended to serve as a temporary queue for client connections prior to being accepted by the server communication point. The specified backlog parameter must be a positive number greater than |
Use SSL |
Whether to use SSL:
It is strongly recommended that SSL be enabled for TCP Server communication points. Refer to TLS/SSL Support in Rhapsody for details. |
SSL Protocol Mode |
Refer to SSL Protocol Versions for details. |
SSL Cipher Suites |
Refer to SSL Cipher Suites for details. |
Use SSL Client Mode |
Whether to use SSL client mode:
Note that enabling SSL client mode is not the same as enabling client authentication: TLS client authentication is enabled by configuring one or more trusted certificates for the connection. The Secure Keys property configures the private key that each client-server side uses to authenticate itself to the other side; the Trusted Certificates property configures how each client-server side authenticates the other side. |
Secure Keys |
The list of private keys to choose from when selecting a private key to use in the communication with the client. If the Secure Keys configuration property is not configured with the SSL server's private key, then this SSL server operates in anonymous server authentication mode, and so enables the appropriate anonymous cipher suites. However, it is highly recommended that the server's private key always be provided here to allow server authentication to be performed. If the server does not have a private key, then one can be generated from Rhapsody's certificate manager. Refer to Server Authentication for details. |
Trusted Certificates |
Identifies the trusted certificates used at the non-Rhapsody end of the SSL connection. If it is configured with one or more certificates, then the SSL server requires client authentication as part of the SSL protocol negotiation, and will reject clients that do not present either the configured certificate, or a certificate directly or indirectly issued by the configured certificate. It is highly recommended that client authentication be enabled whenever possible. Refer to Client Authentication for details. |
Stale Connection Recovery |
Whether Stale Connection Recovery is enabled:
This configuration property only takes effect if the Number of Connections for this communication point is set to |
Stale Connection Timeout | The idle timeout in seconds after which a connection is regarded as stale and so replaceable if a new connection is established. |
Log Connections |
Whether to log connections and disconnections:
|
Log Data |
Whether to log data:
|
Log Data As Hex |
Whether to log data in hexadecimal form:
|
Connection Log File |
The full file name (path and file name) of the file on the server to which to log the information. |
Extra Information |
Whether to include extra information:
|
Incoming Wrapper |
Message wrapping around messages received over the socket connection.
Refer to Wrapper Options for details. |
Strip Wrapping |
Whether or not to strip the wrapping off received messages:
Refer to Strip Wrapping for details. |
Incoming Header |
This property defines the header that identifies the start of a message on the socket connection. Only available when the Incoming Wrapper property is set to |
Incoming Trailer |
This property defines the trailer that identifies the end of a message on the socket connection. Only available when the Incoming Wrapper property is set to |
Incoming Endian-ness |
Determines the incoming endian-ness:
Only available when the Incoming Wrapper property is set to |
In->Out Timeout Action |
Determines the action to take when a timeout occurs while waiting for a response in In->Out mode. This property has no effect in any other mode.
|
In->Out Timeout Response |
The static response to send if a timeout occurs while waiting for a response in In->Out mode. Click ... to select an auxiliary file containing the static response. |
Output Mode Properties
Property |
Description |
---|---|
Local Port |
The port number which to bind the local socket to. |
Local Address |
The hostname or IP address of the local interface to which to bind the socket connection (all interfaces if empty). |
ListenBacklog |
The maximum number of connections that the OS kernel queues for the underlying TCP socket. TCP connections which have been established after completing a three-way TCP handshake are queued on this queue until a Rhapsody server communication point accept them. A Rhapsody communication point can only accept a number of connections equal to its maximum configured connections. Any additional connections will remain on the kernel queue and will not be processed by Rhapsody – client applications will be unaware that their connection is not being processed and may continue to send data. As such, it is imperative that Rhapsody TCP server communication points have the number of connections configured to adequately service all client connections. The listen backlog parameter is only intended to serve as a temporary queue for client connections prior to being accepted by the server communication point. The specified backlog parameter must be a positive number greater than |
Use SSL |
Whether to use SSL:
It is strongly recommended that SSL be enabled for TCP Server communication points. Refer to TLS/SSL Support in Rhapsody for details. |
SSL Protocol Mode |
Refer to SSL Protocol Versions for details. |
SSL Cipher Suites |
Refer to SSL Cipher Suites for details. |
Use SSL Client Mode |
Whether to use SSL client mode:
Note that enabling SSL client mode is not the same as enabling client authentication: TLS client authentication is enabled by configuring one or more trusted certificates for the connection. The Secure Keys property configures the private key that each client-server side uses to authenticate itself to the other side; the Trusted Certificates property configures how each client-server side authenticates the other side. |
Secure Keys |
The list of private keys to choose from when selecting a private key to use in the communication with the client. If the Secure Keys configuration property is not configured with the SSL server's private key, then this SSL server operates in anonymous server authentication mode, and so enables the appropriate anonymous cipher suites. However, it is highly recommended that the server's private key always be provided here to allow server authentication to be performed. If the server does not have a private key, then one can be generated from Rhapsody's certificate manager. Refer to Server Authentication for details. |
Trusted Certificates |
Identifies the trusted certificates used at the non-Rhapsody end of the SSL connection. If it is configured with one or more certificates, then the SSL server requires client authentication as part of the SSL protocol negotiation, and will reject clients that do not present either the configured certificate, or a certificate directly or indirectly issued by the configured certificate. It is highly recommended that client authentication be enabled whenever possible. Refer to Client Authentication for details. |
Stale Connection Recovery |
Whether Stale Connection Recovery is enabled:
This configuration property only takes effect if the Number of Connections for this communication point is set to |
Stale Connection Timeout | The idle timeout in seconds after which a connection is regarded as stale and so replaceable if a new connection is established. |
Log Connections |
Whether to log connections and disconnections:
|
Log Data |
Whether to log data:
|
Log Data As Hex |
Whether to log data in hexadecimal form:
|
Connection Log File |
The full file name (path and file name) of the file on the server to which to log the information. |
Extra Information |
Whether to include extra information:
|
Outgoing Wrapper |
Message wrapping around messages received over the socket connection.
Refer to Wrapper Options for details. |
Outgoing Header |
Defines the header that is written to the socket connection before each message. Only available when the Outgoing Wrapper property is set to |
Outgoing Trailer |
Defines the trailer that is written to the socket connection after each message. Only available when the Outgoing Wrapper property is set to |
Outgoing Endian-ness |
Determines the outgoing endian-ness:
Only available when the Outgoing Wrapper property is set to |
Outgoing TCP Packets | Determines whether to include the wrapper in the same TCP packet:
This option is only applied when the Outgoing Wrapper property is not set to |
Bidirectional, In->Out and Out->In Mode
The configuration properties for the TCP Server communication point in Bidirectional, In->Out and Out->In modes is a combination of the properties described above.
Refer to Out->In and In->Out Properties for general details on a communication point's In->Out and Out->In modes.
Connection Monitoring
Refer to Connection Monitoring or details.
Published Properties
Multiple clients can connect to a single TCP Server communication point. After the TLS handshake, the TCP Server communication point sets the following message properties identifying which client sent the message:
IncomingSubjectFromCertificate
- the Subject DN.IncomingIssuerFromCertificate
- the Issuer DN.IncomingSerialNumberFromCertificate
- the Issuer serial number (formatted as a decimal number).IncomingSubjectKeyIdentifierFromCertificate
- the hex-encoded subject key identifier (if that optional extension is present).