WIP TCP connection issue


we are established connection from wave COM chip to server (WIP-TCP), we try to close connection in client side it is not reflecting in server side and server is always saying the client is connected even after closing the client . How to close client side socket properly so the server can recognized the corresponding socket could be closed in server side. could you advise me on the same.

Also we tried to close socket using following API

  1. wip_shutdown
  2. wip_close
  3. wip_bearerStop
  4. wip_bearerClose


in wavecom side you can get know that peer closed the connection by WIP_CEV_PEER_CLOSE event. and if you close the connection you may get WIP_CEV_CLOSE event.

and what are you using at server side? i mean WaveCom -> windows application or what?

Does this help: viewtopic.php?f=16&t=1207&p=5816&hilit=WIP_CEV_PEER_CLOSE#p5816 :question:

I have had this problem as well. Theoretically TCP socket is physical connection. That means both sides of TCP channel (server and WAVECOM terminal) should know when other side close connection. But this is only in theory. When terminal closes connection, server don’t have any indication about that. I have tested it many times.
Maybe it is caused by GSM network architecture. I mean first of all (in really big simplification) your terminal is connected with GSM operator “router”. This “router” is kind of mediator between GSM network and Internet. Probably when you close the connection by terminal channel between “router” and your server isn’t closed. Sometimes also terminal don’t know about server disconnection.
The only solution I have found is to check the connection periodically. You can send a packet of data and wait for response. If you will not have for example three responses one after another you find the connection is lost.