Table Of Contents
Cisco Transaction Connection Keepalive Timer
Supported Standards, MIBs, and RFCs
Configuring the Keepalive Timer for DB2 Communications
Configuring the Keepalive Timer for CICS Communications
Verifying the Keepalive Timer Configuration
Example of Configuring Keepalive for DB2 Communications
Example of Configuring Keepalive for CICS Communications
Cisco Transaction Connection Keepalive Timer
This feature module describes the Cisco Transaction Connection (CTRC) keepalive timer. It discusses the benefits of the new feature, the supported platforms, and the commands that have been modified to configure the feature.
This feature module includes the following sections:
•
Supported Standards, MIBs, and RFCs
Feature Overview
In environments where there is heavy network traffic or limited processing capability, TCP/IP connections can time out before transactions are completed. The keepalive timer enables CTRC servers to send acknowledgment messages to clients at specific intervals to maintain the TCP/IP connection. CTRC servers that support direct TCP/IP connections to a DB2 host also can be configured to send keepalive messages to the host. The keepalive timer keeps TCP/IP connections active so they will not timeout from inactivity.
Benefits
The ability to configure the keepalive timer provides another method for tuning a network to meet specific needs. Prior to the release of this feature, CTRC servers attempted up to three keepalive messages every 120 seconds to maintain TCP/IP connections. With the new keepalive command keywords, administrators can specify the number of attempts and the interval in which keepalive messages are sent.
Related Documents
•
Cisco IOS Bridging and IBM Networking Configuration Guide, Volume I, Cisco IOS Release 12.1
•
Cisco IOS Bridging and IBM Networking Command Reference, Volume II, Cisco IOS Release 12.1
•
Cisco Transaction Connection Planning Guide, Cisco IOS Release 12.1
Supported Platforms
CTRC is available for the following platforms:
•
Cisco 7200 Series routers
•
Cisco 7500 Series routers
CTRC consists of a system image and a microcode image, virtually bundled as one image. Within the Cisco IOS software listings, look for a software feature called ENTERPRISE/SNASW PLUS. The keepalive timer is available in Cisco IOS 12.1(4) and later.
Supported Standards, MIBs, and RFCs
•
CISCO-DATABASE-CONNECTION-MIB
•
CISCO-TRANSACTION-CONNECTION-MIB
For descriptions of supported MIBs and how to use MIBs, see the Cisco MIB Web site on Cisco Connection Online (CCO) at http://www.cisco.com/public/sw-center/netmgmt/cmtk/mibs.shtml.
Configuration Tasks
See the following sections for configuration tasks for the keepalive timer:
•
Configuring the Keepalive Timer for DB2 Communications
•
Configuring the Keepalive Timer for CICS Communications
Configuring the Keepalive Timer for DB2 Communications
By default, the keepalive timer attempts an acknowledgment message every 120 seconds, for up to three times.
To disable the keepalive messages, enter a value of 0 for either the keepalive attempts or the keepalive interval. If the CTRC server supports direct TCP/IP communications with a DB2 host, you can disable keepalive messages by setting the remote-keepalive attempt or interval to 0 (zero).
To re-enable the keepalive messages, enter a value of 1 to 100 for the keepalive attempts and a value of 1 to 3600 for the keepalive interval.
Configuring the Keepalive Timer for CICS Communications
By default, the keepalive timer attempts to send an acknowledgment message every 120 seconds, for up to three times.
To disable the keepalive messages, enter a value of 0 for either the keepalive attempts or the keepalive interval.
Command PurposeRouter(config)# txconn server server-name keepalive attempts 0
Disables keepalive messages between the CTRC server and client for servers supporting CICS communications.
To re-enable the keepalive messages, enter a value of 1 to 100 for the keepalive attempts and a value of 1 to 3600 for the keepalive interval.
Verifying the Keepalive Timer Configuration
Use the show commands to verify the keepalive configuration settings.
To verify the keepalive configuration settings for a CTRC server that supports DB2 communications, enter the show dbconn server command. The settings for the client keepalive messages appear next to the "keepalives" field in the format of attempts, interval. If the server is configured to send keepalive messages to a DB2 host that supports direct TCP/IP connections, the settings for the host keepalive messages appear next to the "remote-keepalives" field in the format of attempts, interval.
Router> show dbconn server server-nameRouter> show dbconn server BUDDYserver: BUDDYserver state: enabled (accepting connections)ip-address: 0.0.0.0port: 446keepalives: 5,300rdbname: DB2510connection type: TCP/IPremote hostname: STARW.DSNV510remote ip-address: 198.147.235.39remote port: 446remote keepalives: 5,300idle-timeout: 0 (none)window-size: 4096 bytesdatabase server name: (unknown)database product id: (unknown)PEM: not configurednumber of connections: 0RDB server: activeWLM: inactive-enabledTo verify the keepalive configuration settings for a CTRC server that supports CICS communications, enter the show txconn server command. The settings for the client keepalive messages appear next to the "keepalives" field in the format of attempts, interval.
Router# show txconn server server-nameRouter> show txconn server CICSBserver: CICSBdestination: CICSBserver state: enabled (accepting connections)ip address: 0.0.0.0port: 1444keepalives: 5,300client timeout: 0 (none)host timeout: 1 minutewindow size: 4096 bytesfold program name: onccsid: 273number of connections: 178number of transactions: 20client type: cicshost type: cics
Note
For a description of each output display field, refer to the show dbconn server and show txconn server command reference pages.
Troubleshooting Tips
Use the show tcp statistics command to determine if connections are timing out during the keepalive process:
Router# show tcp statisticsRcvd: 8825 Total, 5 no port 0 checksum error, 0 bad offset, 0 too short 2072 packets (8307 bytes) in sequence 28 dup packets (511 bytes) 108 partially dup packets (162 bytes) 32 out-of-order packets (162 bytes) 0 packets (0 bytes) with data after window 0 packets after close 0 window probe packets, 0 window update packets 104 dup ack packets, 0 ack packets with unsend data 5110 ack packets (57568 bytes) Sent: 53711 Total, 0 urgent packets 48729 control packets (including 34464 retransmitted) 3353 data packets (55859 bytes) 171 data packets (2597 bytes) retransmitted 1459 ack only packets (56 delayed) 0 window probe packets, 0 window update packets 11500 Connections initiated, 1302 connections accepted, 1309 connections established 12807 Connections closed (including 4 dropped, 11494 embryonic dropped) 34635 Total rxmt timeout, 0 connections dropped in rxmt timeout 2 Keepalive timeout, 2 keepalive probe, 0 Connections dropped in keepaliveIf "Connections dropped in keepalive" shows a high number of connections being dropped, the client or host may not be responding quickly enough to the keepalive acknowledgment messages. Enable the keepalive messages if they are disabled. If keepalive is already enabled, increase the keepalive interval or keepalive attempts to give the client or host more time to respond before the connection times out.
Configuration Examples
The examples in this section show how to use the new keepalive command keywords to specify the number of attempts and the interval at which keepalive messages are sent.
Example of Configuring Keepalive for DB2 Communications
The following example shows configuration statements for a CTRC server named BUDDY, managing communications to a DB2 database named DB2510, using the IBMRDB APPC mode to allocate the conversation, and attempting up to five acknowledgment messages every 300 seconds:
dbconn server BUDDY rdbname DB2510 rlu STARW.BUDDY idle-timeout 20 keepalive attempts 5 keepalive interval 300 mode IBMRDBThe following example shows configuration statements for a tcpserver named BUDDTCP, managing connections to a DB2 database named DB2510, attempting up to five keepalive messages to the client every 300 seconds and up to five keepalive messages to the host every 300 seconds:
dbconn tcpserver BUDDTCP keepalive attempts 5 keepalive interval 300 port 446 rdbname DB2510 remote-ip 198.147.235.39 remote-keepalive attempts 5 remote-keepalive interval 300 remote-port 446Example of Configuring Keepalive for CICS Communications
The following example defines the CTRC server NEWSVR on the current router attempting up to five acknowledgment messages every 300 seconds:
txconn server NEWSVR destination GEN keepalive attempts 5 keepalive interval 300 port 1438Command Reference
This section documents the CTRC commands that have new keywords for configuring the keepalive timer. All other commands used with CTRC are documented in the Cisco IOS Release 12.1 command reference publications.
dbconn server
To configure a CTRC server process for APPC communications with DB2, use the dbconn server global configuration command. To disable the server and remove its configuration, use the no form of this command.
dbconn server server-name [idle-timeout minutes] [ipaddress ip-address] [keepalive attempts number] [keepalive interval seconds] [mode mode] [port port-number] [rdbname rdbname] [rlu remote-lu] [tpname tp-name] [window-size bytes] [wlm {off | on}]
no dbconn server server-name
Syntax Description
Defaults
If you do not specify an idle timeout, client connections can continue regardless of how long they have been idle.
If you do not specify an IP address, the current server can handle DB2 connectivity requests sent to any IP address on the local router.
If you do not specify a keepalive attempt or a keepalive interval, the server makes up to three attempts to send an acknowledgment message every 120 seconds.
If you do not specify an APPC mode, the default value is #INTER. If you specify a mode that does not already exist, CTRC creates it.
If you do not specify a port number, the current server uses the default value of 446.
If you do not specify an rdbname, the server is configured to serve any remote database.
If you do not specify a remote LU, the default is the configured server name, set to uppercase and truncated to eight characters. An RLU need not be qualified with a NET ID. If you omit the NET ID, the NET ID of the router's SNA Switching Services control point is used to fully qualify the LU name.
If you do not specify an APPC transaction program name, the default value is the architected DRDA TP name \x076DB.
If you do not specify a TCP receive window size, the default value is 4096 bytes.
The Workload Manager load balancing default is "inactive-enabled."
Command Modes
Global configuration
Command History
Usage Guidelines
You can configure more than one CTRC server per router for communications with DB2 or CICS. There is no limit on the number of CTRC servers. For each DB2 database system in your network, you can configure a CTRC server in the router configuration. Servers that are configured on the same router can share a port. CTRC txconn servers should use a different port.
Set keepalive attempts or keepalive interval to zero (0) to disable the keepalive messages.
Examples
The following example shows configuring a CTRC server named BUDDY to manage communications to a DB2 database named DB2510, using the IBMRDB APPC mode to allocate the conversation, and attempting five acknowledgment messages every 300 seconds:
dbconn server BUDDY rdbname DB2510 rlu STARW.BUDDY idle-timeout 20 keepalive attempts 5 keepalive interval 300 mode IBMRDBRelated Commands
dbconn tcpserver
To configure a CTRC server process to communicate with IP-enabled DB2 databases, use the dbconn tcpserver global configuration command. To disable a server and remove its configuration, use the no form of this command.
dbconn tcpserver server-name [idle-timeout minutes] [ip ip-address] [keepalive attempts number] [keepalive interval seconds] [port port-number] [rdbname rdbname] remote-hostname remote-hostname | remote-ip remote-ip-address [remote-keepalive attempts number] [remote-keepalive interval seconds] [remote-port port-number] [window-size bytes] [wlm {off | on}]
no dbconn tcpserver server-name
Syntax Description
Defaults
If you do not specify an IP address for the tcpserver, it can receive requests on any IP address configured for the router.
If you do not specify a keepalive attempt or a keepalive interval, the server makes three attempts to send an acknowledgment message to the client every 120 seconds. If you do not specify a remote-keepalive attempt or a remote-keepalive interval, the server makes three attempts to send an acknowledgment message to the host ever 120 seconds.
If you do not specify a port for the tcpserver, the default port is 446.
If you do not specify a remote database name for the DB2 system, the tcpserver can communicate with any rdbname.
If you do not specify a port for the remote DB2 system, the tcpserver uses the default value of 446.
If you do not specify an idle timeout period, the default value is 0 (zero), for no timeout.
If you do not specify a TCP/IP receive window size, the default value is 4096 bytes.
Command Modes
Global configuration
Command History
Usage Guidelines
Configure a separate tcpserver for each DB2 system IP address. A dbconn server and a dbconn tcpserver can share the same port.
A dbconn tcpserver has two TCP/IP connections—one each for the client and the host—which you can separately configure for keepalive messages. Set keepalive attempts or keepalive interval to zero (0) to disable sending keepalive messages to the client. Set remote-keepalive attempts or remote-keepalive interval to zero (0) to disable sending keepalive messages to the host.
Examples
The following example shows configuration statements for a tcpserver named BUDDTCP, managing connections to a DB2 database named DB2510, attempting up to five keepalive messages to the client and up to five keepalive messages to the host every 300 seconds:
dbconn tcpserver BUDDTCP keepalive attempts 5 keepalive interval 300 port 446 rdbname DB2510 remote-ip 198.147.235.39 remote-keepalive attempts 5 remote-keepalive interval 300 remote-port 446Related Commands
txconn server
To configure a CTRC server for communications with CICS, use the txconn server global configuration command. To disable a CTRC server, use the no form of this command.
txconn server server-name destination destination-name [access {cics | comti}] [ccsid number] [client-timeout minutes] [fold {on | off}] [host-timeout minutes] [ipaddress ip-address] [keepalive attempts number] [keepalive interval seconds] [port port-number] [target
{cics | ims-tm}] [window-size bytes]no txconn server server-name
Syntax Description
Defaults
If the CTRC server's IP address is not configured, the server accepts connections for any IP address that is configured for the router.
If you do not specify a keepalive attempt or a keepalive interval, the server makes up to three attempts to send an acknowledgment message every 120 seconds.
If the port number is not configured, the server listens on port 1435.
If you do not specify a client timeout, CICS client connections can continue regardless of how long they have been idle.
If you do not specify a host timeout, host connections can continue regardless of how long they have been idle.
If you do not specify a target, the server uses a default of cics.
If you do not specify a TCP/IP window size, the default value is 4096 bytes.
Command Modes
Global configuration
Command History
Usage Guidelines
You can configure more than one CTRC server per router for communication with DB2 or CICS. There is no limit on the number of CTRC servers. However, be sure that CTRC txconn servers and CTRC dbconn servers are configured to use different ports, and that each txconn server is configured to use a unique combination of port number and IP address, or a unique port number with no IP address. Set keepalive attempts or keepalive interval to zero (0) to disable the keepalive messages.
Examples
The following example defines the CTRC server NEWSVR on the current router attempting up to five acknowledgment messages every 300 seconds:
txconn server NEWSVR destination GEN keepalive attempts 5 keepalive interval 300 port 1438Related Commands
Command Descriptionshow txconn destination
Displays information about CICS destinations for CTRC.
show txconn server
Displays information about CTRC servers that communicate with CICS.

