Show TOC

Timeout Options for ICM and Web DispatcherLocate this document in the navigation structure

Use

The ICM and Web Dispatcher have different timeouts, which are controlled by profile parameters:

Caution

The timeouts described here are valid only for HTTP(S), not for other protocols (P4, IIOP, etc).

Timeout while setting up connection: Parameter icm/conn_timeout

This parameter is used to set the timeout when the connection is opened. By default, if the timeout is exceeded, an error page with the message “404 Resource not found: Partner not reached” is displayed.

Exceeding this timeout does not therefore result in the error message “500 Connection timed out”.

Network Timeout: Parameter icm/traffic_control

You use this parameter you can control the network timeout during a request: If the request has not yet been fully transferred and this time span has passed without the data having been sent across the network, the connection is closed.

Keepalive Timeout: Option TIMEOUT or Profile Parameter icm/keepalive_timeout

The keep-alive timeout specifies how long the network connection remains open once the request has been successfully processed. This means that the TCP/IP connection may not have to be set up again for further requests that may arrive.

The keepalive timeout can be defined globally for all ICM services by parameter icm/keep_alive_timeout. It can also be defined for individual services by parameter icm/server_port_ <xx>= ...,TIMEOUT= <s>. This overrides parameter icm/keep_alive_timeout for the individual service.

Recommendation

The keep-alive timeout should be set high enough so that new connections do not have to be set up for requests arriving in quick succession, but low enough that the number of unused, open TCP/IP connections is not unnecessarily high.

The time period is set in parameter icm/server_port_ <xx> with option TIMEOUT (in seconds).

Value -1 deactivates the timeout.

If option TIMEOUT is not set, the value is determined by parameter icm/keep_alive_timeout.

Value range

Unit

Standard Setting

-1, 0, 10 - 32000

Seconds

60

The time limit applies in the following cases:

  • In the case of requests, the time between receipt of the TCP packets

  • The time between responses to TCP packets sent by the server.

Depending on the type of network connection (internal, LAN, WAN, it may be best to increase the parameter value. The value should not be less than 10 seconds. If, on the other hand, a value is too high, the network connections will be very slow and the performance of the server will suffer.

Caution

Requests to AS ABAP: After the timeout interval has expired, the user context in the work process is not closed. The user context is closed only after the time interval specified in the profile parameter rdisp/plugin_auto_logout. If rdisp/plugin_auto_logout = 0 is set, the context in the work process is not deleted at all.

Processing Timeout: Option PROCTIMEOUT

The processing timeout specifies the timeout between sending an HTTP request and receiving an HTTP response.

  • ICM as HTTP Server: If the ICM receives a request and has forwarded it for processing (to AS ABAP or AS Java), the ICM waits for the server response until the timeout has expired. The work process context is then closed, the client is notified with a Connection Timeout message (error ETIMEOUT, refer toError Handling).

  • ICM as HTTP Client: If the ICM for the HTTP request concerned is used as a client, and forwards an outbound request from the SAP NetWeaver AS, the processing timeout specifies the time the ICM waits for until there is a response from the network. This can also be exceeded if there are long-running applications in the network.

The value is specified with the parameter <proctimeout> in seconds. Value -1 deactivates the timeout.

Value range

Unit

Standard Setting

-1, 1 - 32000

Seconds

Depending on system type:

  • ABAP-only system: 60

  • AS Java and dual-stack systems: 600

Note

If the PROCTIMEOUT parameter is not specified, TIMEOUT (or icm/keepalive_timeout) defines the keep-alive timeout as well as the processing timeout. Moreover, the keep-alive timeout is restricted to a maximum of 60 seconds.

Recommendation

In systems where the standard timeout setting of 60 seconds for the keep-alive and processing timeouts is not sufficient due to long-running applications, SAP recommends that both the TIMEOUT and PROCTIMEOUT parameters are set for the services concerned so that they can be configured independently of each other. The TIMEOUT value should not be set unnecessarily high.

We recommend you set this parameter as follows:

icm/server_port_0 = PROT=HTTP,PORT=1080,TIMEOUT=60,PROCTIMEOUT=600

in order to allow a maximum processing time of 10 minutes.

Timeout Parameter in the SAP Web Dispatcher

The same timeout parameters are available for the SAP Web Dispatcher as for the ICM. They can be changed in the profile file of the SAP Web Dispatcher (for instance,sapwebdisp.pfl)

Recommendation

SAP recommends that the parameters are set the same in the SAP Web Dispatcher and in the ICM.

Exception: You have configured connection pooling in the Web Dispatcher using wdisp/HTTP/use_pool_for_new_conn = 1.

Troubleshooting

Note 824554 Information published on SAP site describes the timeouts and configuration in detail.