Author |
Message
|
Karremans |
Posted: Thu Apr 20, 2006 11:04 pm Post subject: Firewall JMS receiver SAP XI session timeout AMQ9209 |
|
|
Newbie
Joined: 20 Apr 2006 Posts: 3
|
We use MqSeries on AS/400 to connect with SAP XI. Within the adapter channels on SAP side we define both JMS senders and receivers for the same queue manager on AS/400. Everything is up and running. When we put a firewall (checkpoint) in between, we experience problems with ONLY the JMS receiver channels (data from SAP towards AS/400). Reason: session timeout on the firewall. Job AMQRMPPA on AS/400 shows me message AMQ9209
Message . . . . : Connection to host 'xxxxxxxx (xx.xx.xx.xx)' closed.
Cause . . . . . : An error occurred receiving data from 'xxxxxxxx
(xx.xx.xx.xx)' over TCP/IP. The connection to the remote host has
unexpectedly terminated.
Recovery . . . : Tell the systems administrator.
When I use netstat on AS/400 I see every 5 seconds IP traffic on the JMS sender channel. On the JMS receiver channel the connection is idle for 4 hours and then it drop because on the firewall session time out is 4 hours.
How can I avoid this problem? Can I force IP traffic on my JMS receiver channels? |
|
Back to top |
|
 |
fjb_saper |
Posted: Fri Apr 21, 2006 7:49 am Post subject: |
|
|
 Grand High Poobah
Joined: 18 Nov 2003 Posts: 20756 Location: LI,NY
|
Instead of keeping your channels open all the time can you set them to be triggered? This should avoid idle timeout.
Enjoy  _________________ MQ & Broker admin |
|
Back to top |
|
 |
Karremans |
Posted: Mon Apr 24, 2006 2:52 am Post subject: Firewall JMS receiver SAP XI session timeout AMQ9209 |
|
|
Newbie
Joined: 20 Apr 2006 Posts: 3
|
Triggered channel?
We use currently only 1 channel per MqQueueManager for all our queue's (snd / rcv) towards SAP XI. The channel type is *SVRCN.
Perhaps we can define a separate triggered channel for our receivers? How can we do this? Is this a setting or parameter in MqSeries to set channels to be triggered?
Any help or suggestion (documentation) is welcome ! |
|
Back to top |
|
 |
jefflowrey |
Posted: Mon Apr 24, 2006 4:41 am Post subject: |
|
|
Grand Poobah
Joined: 16 Oct 2002 Posts: 19981
|
So your SAP XI system is acting as an MQ Client to the queue manager. fjb_saper thought you were using sender/receiver pairs or other distributed queueing configurations to move messages from one queue manager to another.
Client channels do need to remain open for as long as the client is actively trying to use it.
I seem to remember something in the documentation about using heartbeats during get-with-wait... I also remember a somewhat indepth discussion here about the heartbeat mechanism.
EDIT: (to correct stupidity) Heartbeats should flow during Get-with-waits. The default heartbeat is 300 seconds, so unless you've overridden that with a much higher value, you should see at least some traffic through the channel during a 4 hour interval that is otherwise idle.
Some useful information (although possibly out of date for v6)
http://www-1.ibm.com/support/docview.wss?rs=203&uid=swg24006699&loc=en_US&cs=utf-8&lang=en _________________ I am *not* the model of the modern major general. |
|
Back to top |
|
 |
PeterPotkay |
Posted: Mon Apr 24, 2006 5:50 am Post subject: |
|
|
 Poobah
Joined: 15 May 2001 Posts: 7722
|
jefflowrey wrote: |
The default heartbeat is 300 seconds, so unless you've overridden that with a much higher value, you should see at least some traffic through the channel during a 4 hour interval that is otherwise idle. |
Assuming of course that the app is sitting in a MQGET with Wait. Also, if both side of the client channel are not equal in HB values, the higher of the 2 is used. 0 is considered the highest value here, and means no heartbeats are sent. _________________ Peter Potkay
Keep Calm and MQ On |
|
Back to top |
|
 |
jefflowrey |
Posted: Mon Apr 24, 2006 5:55 am Post subject: |
|
|
Grand Poobah
Joined: 16 Oct 2002 Posts: 19981
|
PeterPotkay wrote: |
Assuming of course that the app is sitting in a MQGET with Wait. |
True, I guess his JMS Receivers could be spending more than four hours trying to process a single message. _________________ I am *not* the model of the modern major general. |
|
Back to top |
|
 |
Karremans |
Posted: Wed Jun 07, 2006 1:04 am Post subject: |
|
|
Newbie
Joined: 20 Apr 2006 Posts: 3
|
Hello all;
I have read the document Keeping Channels Up and Running (WebSphere software) and I have some questions.
Our setup:
QueueManager on iSeries (5724B41 V5R3M0 WebSphere MQ for iSeries )
We use SAP XI as MQ client. (SunOS) WebSphere classes for JMS (com.ibm.mq.jms.MQQueueConnectionFactory)
MQI channel of type server-connection channel.
Transport service TCP/IP.
Problem description:
Within SAP XI we use an Adapter type called JMS. This adapter type supports 2 types of connections:
A) Sender
Transport protocol : WebSphereMQ (non-JMS)
B) Receiver
Transport protocol : WebSphereMQ (MQSeries) JMSprovider
On our iSeries we have 1 QueueManager with only 1 channel (*SRVCN = server-connection) which contains several queue's, queue's of type Sender (defined in SAP XI) and queue's of type Receiver (defined in SAP XI).
Note: Keywords like sender and receiver must be seen from SAP XI as point of view.
queue's of type Sender ==> data is sent from iSeries towards SAP XI.
queue's of type Receiver ==> data is sent from SAP XI towards iSeries.
If we look with NETSTAT command (on iSeries), we see on the ports connected to queue's of type Sender, each 5 seconds network activity. It looks that SAP XI polls every 5 seconds to see if a message is present in the corresponding queue. The result is that that connection is never longer idle than 5 seconds.
For the queue's (ports) of the corresponding Receiver connections, we see that the connection remains idle (if no data is transferred) for 4 hours. After 4 hours, the connection is broken which results is error:
Job AMQRMPPA on AS/400 shows me message AMQ9209
Message . . . . : Connection to host 'xxxxxxxx (xx.xx.xx.xx)' closed.
Cause . . . . . : An error occurred receiving data from 'xxxxxxxx
(xx.xx.xx.xx)' over TCP/IP. The connection to the remote host has
unexpectedly terminated.
Recovery . . . : Tell the systems administrator.
We expect that the firewall give a session-timeout. We can not change that !!!
Questions:
Is there a way (settings) that we can force communication over the "receiver type" connection? I believe the channel remains active. TCP keep-alive and heartbeats are valid for channels. In the document mentioned above I read that values for heartbeats are specified "on both ends of the channel" and needs to be negotiated.
However, I am not able to specify such a value at SAP XI site, at least I don't know how?
Is there ANY documentation which described the use of the SAP XI in combination with MqSeries (like the intercommunication PDF of WebSphere MQ)?
Is there any documentation regarding additional parameters?
Rgds,
Wilbert |
|
Back to top |
|
 |
mrlinux |
Posted: Thu Jun 08, 2006 5:42 am Post subject: |
|
|
 Grand Master
Joined: 14 Feb 2002 Posts: 1261 Location: Detroit,MI USA
|
You need to make sure TCP keep alives are enabled at the OS level also, we had issues with this problem. _________________ Jeff
IBM Certified Developer MQSeries
IBM Certified Specialist MQSeries
IBM Certified Solutions Expert MQSeries |
|
Back to top |
|
 |
|