Hi, I have been using asio tcp socket on desktop Ubuntu for years, but I have never seriously run interface connections in a LTE embedded system, here is what I have observed wired thing: - Client initialized TCP socket connection to remote server, the connection was established. - Client sent data to server via Internet every one minute, all good. - Somehow, the LTE connection dropped, there was no any network connection available, but the client keep sent messages, there was no error about the network connection, the message obvious could not go Internet, it accumulated in the RAM, the original each message size was 79 bytes, the size was accumulated became 52790 bytes, it kept going for ever until I terminate the client program. ....... Send message size: 52790 Send message size: 52869 Send message size: 52948 ..... Is it normal behavior of ASIO socket or what I did wrong here? Appreciate your insight tips to fix this problem to trig client socket error not keeping sending message going no way. Thank you. Kind regards, - jupiter
On 2019-08-03 1:10 PM, JH via Boost wrote:
Hi,
I have been using asio tcp socket on desktop Ubuntu for years, but I have never seriously run interface connections in a LTE embedded system, here is what I have observed wired thing:
- Client initialized TCP socket connection to remote server, the connection was established.
- Client sent data to server via Internet every one minute, all good.
- Somehow, the LTE connection dropped, there was no any network connection available, but the client keep sent messages, there was no error about the network connection, the message obvious could not go Internet, it accumulated in the RAM, the original each message size was 79 bytes, the size was accumulated became 52790 bytes, it kept going for ever until I terminate the client program. ....... Send message size: 52790 Send message size: 52869 Send message size: 52948 .....
Is it normal behavior of ASIO socket or what I did wrong here? Appreciate your insight tips to fix this problem to trig client socket error not keeping sending message going no way.
Thank you.
Kind regards,
- jupiter
This is pretty much how cell networks behave, the system itself is never really sure if the connection is truly down or just momentarily disrupted. What you can do is notice the timestamp of last incoming packet (perhaps using keep-alive packets) and then decide that the network is "down" when you haven't received a packet in a particular period of time. -- Scapix Language Bridge Automatically generated C++ bindings for|Java|,|Objective-C|,|Swift|,|Python and ||JavaScript (Emscripten)| https://www.scapix.com https://github.com/scapix-com/scapix
participants (2)
-
Boris
-
JH