Author |
Message
|
arielb |
Posted: Mon Dec 27, 2010 7:11 am Post subject: Question about keepalive interval, don't understand it. |
|
|
Newbie
Joined: 08 Dec 2008 Posts: 9
|
hey experts.
as far as i know:
HBINT - when MQGET is issued with wait, this kicks in.
KAINT - for all other calls.
keepalive should kick in when no messages are flowed, then after configured time, the channel should disconnect.
but i tried it and it doesnt happen.
maybe i'm a bit confuse about the heartbeat, keepalive and disconnect intervals.
can anyone clear that to me?
thanks.
Ariel. |
|
Back to top |
|
 |
fjb_saper |
Posted: Mon Dec 27, 2010 9:56 am Post subject: |
|
|
 Grand High Poobah
Joined: 18 Nov 2003 Posts: 20756 Location: LI,NY
|
KAINT is used for mainframes only. On distributed it has no effect.
Keep Alive is a mixture between OS (TCP/IP keep alive values) and qmgr where you tell the qmgr to take advantage of this OS feature.
Have fun  _________________ MQ & Broker admin |
|
Back to top |
|
 |
bruce2359 |
Posted: Mon Dec 27, 2010 10:31 am Post subject: |
|
|
 Poobah
Joined: 05 Jan 2008 Posts: 9469 Location: US: west coast, almost. Otherwise, enroute.
|
Quote: |
maybe i'm a bit confuse about the heartbeat, |
When you search for HBINT or heartbeat in the WMQ Intercommunications manual AND the WMQ MQRC manuals, what did you discover?
Both of these docs are fairly clear about HBINT _________________ I like deadlines. I like to wave as they pass by.
ב''ה
Lex Orandi, Lex Credendi, Lex Vivendi. As we Worship, So we Believe, So we Live. |
|
Back to top |
|
 |
shashivarungupta |
Posted: Mon Dec 27, 2010 11:26 am Post subject: Re: Question about keepalive interval, don't understand it. |
|
|
 Grand Master
Joined: 24 Feb 2009 Posts: 1343 Location: Floating in space on a round rock.
|
arielb wrote: |
maybe i'm a bit confuse about the heartbeat, keepalive and disconnect intervals. |
HeartBeat interval which controls how often the sending end of the Channel should check that the receiver is okey when there are no messages to send.
These are short msgs sent to receiving mca.
TCP/IP has its own heartbeat protocol which is called keepalive, allows it to recognize the n/w failures.
Disconnect interval used to control how long a channel should remain running even though there are no messages to send.
happy new year  _________________ *Life will beat you down, you need to decide to fight back or leave it. |
|
Back to top |
|
 |
arielb |
Posted: Mon Dec 27, 2010 3:11 pm Post subject: |
|
|
Newbie
Joined: 08 Dec 2008 Posts: 9
|
well, i've checked disconnect interval for the xmit part, and its ok. it disconnects after the disc expires.
shashivarungupta,
Quote: |
HeartBeat interval which controls how often the sending end of the Channel should check that the receiver is okey when there are no messages to send |
I knew that it sends those heartbeats, but what is a bad receiver?
further that, how do those values work in client side? (via svrconn)?
any of those interval can find out that a client didn't send/receive any MQ Messages during X period of time?
Many thanks
Ariel |
|
Back to top |
|
 |
bruce2359 |
Posted: Mon Dec 27, 2010 3:15 pm Post subject: |
|
|
 Poobah
Joined: 05 Jan 2008 Posts: 9469 Location: US: west coast, almost. Otherwise, enroute.
|
Quote: |
I knew that it sends those heartbeats, but what is a bad receiver? |
Where did you find the term bad receiver? _________________ I like deadlines. I like to wave as they pass by.
ב''ה
Lex Orandi, Lex Credendi, Lex Vivendi. As we Worship, So we Believe, So we Live. |
|
Back to top |
|
 |
HubertKleinmanns |
Posted: Mon Dec 27, 2010 10:17 pm Post subject: Re: Question about keepalive interval, don't understand it. |
|
|
 Shaman
Joined: 24 Feb 2004 Posts: 732 Location: Germany
|
Ariel,
arielb wrote: |
keepalive should kick in when no messages are flowed, then after configured time, the channel should disconnect. |
No, that's wrong. Switching on the keep-alive attribute means (on distributed platforms): "Advise the operating system, to keep the network line alive".
This means, the MQ itself does nothing. Instead the operating system will send IP packages through the network, to keep the line active. If the keep-alive packages do not come back, the operating system will close the network socket. The keep-alive interval depends on the configuration of the operating system - and is mainly quite big (an hour or so).
I hope, this answers aour question. _________________ Regards
Hubert |
|
Back to top |
|
 |
shashivarungupta |
Posted: Mon Dec 27, 2010 11:00 pm Post subject: |
|
|
 Grand Master
Joined: 24 Feb 2009 Posts: 1343 Location: Floating in space on a round rock.
|
arielb wrote: |
well, i've checked disconnect interval for the xmit part, and its ok. it disconnects after the disc expires.
shashivarungupta,
Quote: |
HeartBeat interval which controls how often the sending end of the Channel should check that the receiver is okey when there are no messages to send |
I knew that it sends those heartbeats, but what is a bad receiver? |
Bad Receiver
anyways.. i assume you mean that the receiver end is not able to respond/check its end in affect of short msgs sent by sender msg.
Let me ask you a question here..as you said you know 'it sends those hearbeats'.... what the receiver mca do once it receives the short msgs from sender mca ?
arielb wrote: |
any of those interval can find out that a client didn't send/receive any MQ Messages during X period of time? |
Answer above asked question...you'll get the hint/ans for what you are asking !
 _________________ *Life will beat you down, you need to decide to fight back or leave it. |
|
Back to top |
|
 |
arielb |
Posted: Tue Dec 28, 2010 12:31 am Post subject: |
|
|
Newbie
Joined: 08 Dec 2008 Posts: 9
|
ok, hold it , i'm getting lost again.
lets say this:
KeepAlive - is an attribute only in Z/OS, the info center says: "The KeepAlive Interval parameter is used to specify a time-out value for a channel. ".
allright, so it specifies a timeout on z/os, so how does MQ there uses it?
Heartbeat Interval - those are flows between 2 ends, every X seconds, the heartbeats are issued only if the XMIT q is empty, or in a client/server pattern, if a client is "stuck" on MQGET.
those intervals allow to tell the other end that the connection is still alive, to, for example, not allowing a firewall to disconnect the clients.
disconnect interval - when a XMIT q is empty, then it kicks in, after this period of time, it disconnects the channel.
did i get it? |
|
Back to top |
|
 |
bruce2359 |
Posted: Tue Dec 28, 2010 7:33 am Post subject: |
|
|
 Poobah
Joined: 05 Jan 2008 Posts: 9469 Location: US: west coast, almost. Otherwise, enroute.
|
Quote: |
so how does MQ there uses it? |
WMQ makes no explicit use of it, as it is an TCPIP setting.
TCPIP has a variety of setting that can and do affect TCPIP clients. WMQ is only one of those clients.
Simply, yet subtly, keepalive can be used to keep the TCP/IP network up and functioning even though there are no tcp end-user packets flowing (network inactivity).
HBINT is used by WMQ to test/verify that the other end of a channel up and in RUNNING state.
DISCINT is used by WMQ to allow an inactive channel to go into inactive state - historically to release system (processor, RAM) resources. _________________ I like deadlines. I like to wave as they pass by.
ב''ה
Lex Orandi, Lex Credendi, Lex Vivendi. As we Worship, So we Believe, So we Live.
Last edited by bruce2359 on Tue Dec 28, 2010 8:00 am; edited 1 time in total |
|
Back to top |
|
 |
HubertKleinmanns |
Posted: Tue Dec 28, 2010 7:53 am Post subject: |
|
|
 Shaman
Joined: 24 Feb 2004 Posts: 732 Location: Germany
|
arielb wrote: |
KeepAlive - is an attribute only in Z/OS, the info center says: "The KeepAlive Interval parameter is used to specify a time-out value for a channel. ".
allright, so it specifies a timeout on z/os, so how does MQ there uses it? |
KeepAlive exists also on distributed platforms. But you cannot specify a time-out value, because this is handled by the IP stack of the operating system. You may set "KeepAlive=YES" in the "Channels" stanza in the file "qm.ini" (Unix) or in the registry (Windows).
On z/OS this is an attribute of the QMgr itself. There you also may specifiy some time-out values. _________________ Regards
Hubert |
|
Back to top |
|
 |
bruce2359 |
Posted: Tue Dec 28, 2010 8:28 am Post subject: |
|
|
 Poobah
Joined: 05 Jan 2008 Posts: 9469 Location: US: west coast, almost. Otherwise, enroute.
|
Quote: |
On z/OS this is an attribute of the QMgr itself. |
The keepalive timer value for z/OS Communications Server: IP is controlled by the KEEPALIVEOPTIONS statement in the TCP/IP configuration data set. _________________ I like deadlines. I like to wave as they pass by.
ב''ה
Lex Orandi, Lex Credendi, Lex Vivendi. As we Worship, So we Believe, So we Live. |
|
Back to top |
|
 |
HubertKleinmanns |
Posted: Tue Dec 28, 2010 11:46 pm Post subject: |
|
|
 Shaman
Joined: 24 Feb 2004 Posts: 732 Location: Germany
|
bruce2359 wrote: |
Quote: |
On z/OS this is an attribute of the QMgr itself. |
The keepalive timer value for z/OS Communications Server: IP is controlled by the KEEPALIVEOPTIONS statement in the TCP/IP configuration data set. |
But switching on the KeepAlive is controlled by a QMgr attribute on z/OS - on distributed systems via qm.ini or registry - and requires a restart. _________________ Regards
Hubert |
|
Back to top |
|
 |
zpat |
Posted: Wed Dec 29, 2010 1:42 am Post subject: |
|
|
 Jedi Council
Joined: 19 May 2001 Posts: 5866 Location: UK
|
Quote: |
no -o attributename=value
tcp_keepidle
The tcp_keepidle parameter specifies the interval, measured in half seconds, of inactivity that causes TCP to generate a KEEPALIVE transmission for an application that requests them. tcp_keepidle defaults to 14400 (two hours). This is the parameter that controls the keep alive interval for AIX.
Reduce tcp_keepidle to be less than the firewall's connection timeout. If unsure, set tcp_keepidle to 240 (2 minutes).
tcp_keepintvl
The tcp_keepintvl parameter specifies the interval, measured in half seconds, between the nine retries that are attempted if a KEEPALIVE transmission is not acknowledged. tcp_keepidle defaults to 150 (75 seconds). This parameter is related to the keep alive interval, but does not typically need to be modified.
For operating systems other than AIX, refer to the operating system documentation for information on setting the network keep alive interval.
|
|
|
Back to top |
|
 |
|