JMS API no message returned

I was wondering if anyone has experienced this:
We are using the JMS API to access the WM JMS Provider (6.1) (not the JMS adapter). It works fine except that occasionally, a ‘receive’ does not come back with a message (when there are definitely messages/events lodged with the Broker). This is more noticeable when we do the ‘receive’ with no receive timeout period. If we up the timeout period, it happens less frequently, and with inifinite timeout, it never happens. I suspect that is is down to the network and the client timing oout before the Brokers reply can get back to it - or something of that ilk.
Can anyone confirm this (it just looks funny to others who think the code is at fault!!) or suggest another (real) reason.