WebSphere MQ Telemetry Transport Keep Alive timer

The Keep Alive timer is present in the variable header of a WebSphere MQ Telemetry Transport CONNECT message.

The Keep Alive timer, measured in seconds, defines the maximum time interval between messages received from a client. It enables the broker to detect that the network connection to a client has dropped, without having to wait for the long TCP/IP timeout. The client has a responsibility to send a message within each Keep Alive time period. In the absence of a data-related message during the time period, the client sends a PINGREQ message, which the broker acknowledges with a PINGRESP message.

If the broker does not receive a message from the client within one and a half times the Keep Alive time period (the client is allowed "grace" of half a time period), it disconnects the client as if the client had sent a DISCONNECT message. This action does not impact any of the client's subscriptions. See DISCONNECT Disconnect notification for more details.

The Keep Alive timer is a 16-bit value that represents the number of seconds for the time period. The actual value is application-specific, but a typical value is a few minutes. The maximum value is approximately 18 hours. A value of zero (0) means the client is not disconnected.

The format of the Keep Alive timer is shown in the table below. The ordering of the 2 bytes of the Keep Alive Timer is MSB, then LSB (big-endian).

bit 7 6 5 4 3 2 1 0
  Keep Alive MSB
  Keep Alive LSB
Related concepts
WebSphere MQ Telemetry Transport
Related reference
CONNECT Client requests a connection to a broker
PINGREQ PING request
PINGRESP PING response
WebSphere MQ Telemetry Transport protocol name
WebSphere MQ Telemetry Transport protocol version
WebSphere MQ Telemetry Transport connect flags
WebSphere MQ Telemetry Transport connect return code
WebSphere MQ Telemetry Transport topic name
WebSphere MQ Telemetry Transport message identifier