I have a web application that is used in a warehouse. The browser runs in a handheld scanner connected by WiFi. The application runs ok until the user moves from one area of the warehouse to another one. The applications becomes unresponsive for a while and then it becomes responsive again.
My guess is that it has something to do from changing from one access point to another.
When the transition happens, you can ping from the gun to the server without problems.
The IP address remains unchanged.
The webserver access log, doesn't show any activity.
I am not a network specialist. But my guess is that things are ok at the Internet Layer (IP), but they break out at the transport layer. May be there is a conversation going on (open socket?) between the browser and the server and the change in the access point leaves the conversation on an unstable state.
Any suggestions are welcomed. The server runs apache with php. The browser support HTML5 runs on a intermec scanner.
First, this has nothing to PHP, but it happens (as you correctly assume) on the lower levels.
Also, you're right that this is a networking problem, it's commonly refered to as “roaming”. Of course, everybody has heard of it, because we're using it everyday with our cellphones.
Before going deeper into the matter, I'll tell you the solution, it's a piece of hardware called wifi access controller. (More on that later.)
The underlying problem
Your client application has established a TCP connection via the network stack of your OS. Now the client sends packets over the connection. But it does not know if the packets have arrived – until either getting a positive result, or after a certain timeout (usually a few seconds).
When the connection is lost, the client will still continue sending packets for some time. When the client receives timeouts on these packets and realizes that they are lost, it will try to send them again, as soon as a new connection on the other AP is established.
This is the behaviour you're realizing.
What's a WiFi (Access) Controller?
A wifi access controller (or wireless LAN controller) is a device that has control over two or more access points Its job is to manage the handover of mobile clients between the access points. Good ACs will arrange a handover and even forward the packets already sent to the “old” access point to the new one. There are numerous models on the market.
Therefore, my suggestion would be to consider installing a wifi access controller.