HTTP transport custom properties

 

Set custom properties for an HTTP transports on either the Web Container or HTTP Transport.

When set on the Web container, all transports inherit the properties. Setting the same properties on a transport overrides like settings defined for a Web container.

To specify custom properties for a specific transport on the HTTP Transport:

  1. In the console navigation tree, click...

    Servers | Application Servers | server | Web Container | HTTP Transport | host | Custom Properties | New

  2. On the settings page, enter the property you want to configure in the Name field and the value you want to set it to in the Value field.

  3. Click Apply or OK.

  4. Click Save on the console taskbar to save your configuration changes.

  5. Restart the server.

Following is a list of custom properties provided with the Application Server. These properties are not shown on the settings page for an HTTP transport.

 

ConnectionIOTimeOut

Maximum number of seconds to wait when trying to read or process data during a request.

Data type Integer
Default 5 seconds 120 seconds

ConnectionKeepAliveTimeout

Maximum number of seconds to wait for the next request on a keep alive connection.

Data type Integer

ConnectionResponseTimeout

This property is only valid in a z/OS environment. Use the ConnectionResponseTimeout property to specify the maximum number of seconds to wait when trying to read data during a response. For WAS and WAS for Network Deployment, this also applies to writing data during a response.

Data type Integer
Default 300 seconds

MaxConnectBacklog

This property is only valid in a WAS for Distributed Platforms environment. Use the MaxConnectBacklog property to specify the maximum number of outstanding connect requests that the operating system will buffer while it waits for the appserver to accept the connections. If a client attempts to connect when this operating system buffer is full, the connect request will be rejected.

Set this value to the number of concurrent connections that you would like to allow. Keep in mind that a single client browser might need to open multiple concurrent connections (perhaps 4 or 5); however, also keep in mind that increasing this value consumes more kernel resources. The value of this property is specific to each transport.

Data type Integer
Default 511

MaxKeepAliveConnections

This property is only valid in a WAS for Distributed Platforms environment. It is ignored in a z/OS environment because asynchronous I/O sockets are used to maintain connections in that environment.

Use the MaxKeepAliveConnections property to specify the maximum number of concurrent keep alive (persistent) connections across all HTTP transports. To make a particular transport close connections after a request, you can set MaxKeepAliveConnections to 0 (zero) or you can set KeepAliveEnabled to false on that transport.

The Web server plug-in keeps connections open to the appserver as long as it can. However, if the value of this property is too small, performance is negatively impacted because the plug-in has to open a new connection for each request instead of sending multiple requests through one connection.

If socket states other than ESTABLISHED are in effect for many connections, appserver connections might be impacted because of a lack of available TCP memory. If this situation does not occur, the Application Server should be able to continue handling connections until the operating system has reached its limits.

  • The client request was an HTTP 1.0 request when the Web server plug-in always sends HTTP 1.1 requests.

  • The maximum number of concurrent keep-alives was reached. A keep-alive must be obtained only once for the life of a connection, that is, after the first request is completed, but before the second request can be read.

  • The maximum number of requests for a connection was reached, preventing denial of service attacks in which a client tries to hold on to a keep-alive connection forever.

  • A time out occurred while waiting to read the next request or to read the remainder of the current request.

Data type Integer
Default If you are not using a Web server plug-in, 90% of the maximum number of threads in the Web container thread pool. This prevents all of the threads from being held by keep alive connections so that there are threads available to handle new incoming connect requests.

If you are using a Web server plug-in, the plug-in maintains controls the connections between the plug-in and the appserver. The connection in KeepAlive state that was established between the plug-in and the appserver can be reused by any client.

MaxKeepAliveRequests

Use the MaxKeepAliveRequests property to specify the maximum number of requests which can be processed on a single keep alive connection. This parameter can help prevent denial of service attacks when a client tries to hold on to a keep-alive connection. The Web server plug-in keeps connections open to the appserver as long as it can, providing optimum performance.

If this property is set to 0 (zero), the connection stays open as long as the appserver is running.

Data type Integer
Default 100 requests 50 requests

KeepAliveEnabled

This property is only valid in a WAS for Distributed Platforms environment. Use the KeepAliveEnabled property to specify whether or not to keep connections alive

Data type string
Default true

MutualAuthCBindCheck

This property is only valid in a z/OS environment. Use the MutualAuthCBindCheck property to specify whether or not a client certificate should be resolved to a SAF principal. If this property is set to true, all SSL connections from a browser must have a client certificate, and the user ID associated with that client certificate must have RACF CONTROL authority for CB.BIND.servername. If these conditions are not met, the connection will be closed. Issue the following RACF command to give the user ID associated with that client certificate RACF CONTROL authority:

PERMIT CB.BIND.servername CLASS(CBIND) ID(clientCertUserid) ACCESS(CONTROL)

Data type String
Default false

Trusted

This property is only valid in a WAS for Distributed Platforms environment. Use the Trusted property to indicate that the appserver can use the private headers that the Web server plug-in adds to requests.

Data type String
Default false

TrustedProxy

This property is only valid in a z/OS environment. Use the TrustedProxy property to indicate that the appserver can use the private headers that the Web server plug-in adds to requests.

Data type String
Default false

ServerHeader

This property is only valid in a z/OS environment. Use the ServerHeader property to suppress the server HTTP header (Server:) in responses. When the server header custom property is not specified, the default is equal to a setting of true and the server header is included in the HTTP response. Set this property to false if you want to prevent the inclusion of the server header.

Data type String
Default true

ResponseBufferSize

This property is only valid in a z/OS environment. It is used to specify, in bytes, the default size of the initial buffer allocation for the response buffer. When the buffer fills up, a flush for this buffer space will automatically occur. If a value is not specified for this property, the default response buffer size of 32K bytes is used.

The setBufferSize() API method can be used to override the value specified for this custom property at the individual servlet level.

Data type Integer
Default 32000 bytes

Related tasks
Configuring transports
Modifying the default Web container configuration
Tuning performance parameter index
Related reference
HTTP transport settings
Administrative console buttons
Administrative console page features
Web container custom properties