You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@mina.apache.org by Eero Nevalainen <ee...@indagon.com> on 2007/05/11 13:30:32 UTC

Re: Session close problem

Hi all,

I've recently deployed a gateway server to mediate communication between 
  clients and remote devices. The gateway works fine in a 'regular' 
network, but now we're experiencing problems when the remote devices are 
  behind a GPRS network.

The gateway sends an application level (TCP) 'PING' message periodically 
to the remote devices. For some reason the PING messages seem to queue 
up in the GPRS connection, without the devices receiving them.

Meanwhile, sending an ICMP request to the same devices gives a much 
smaller roundtrip time (~700ms) and no message losses. Also the messages 
sent by the remote devices to the gateway always arrive properly.

I can't reproduce this problem with an ethernet connection so any help 
with the GPRS network would be most welcome!

-Eero Nevalainen

Dawie Malan wrote:
> You're quite right - there is something in the middle, and it does cause the
> symptoms you are reporting.
> 
> A GPRS network has two essential elements:
> 
> *Serving GPRS Support Node (SGSN)-Sends data to and receives data from mobile
> stations, and maintains information about the location of a mobile station (MS).
> The SGSN communicates between the MS and the GGSN.
> 
> *Gateway GPRS Support Node (GGSN)-A wireless gateway that allows mobile cell
> phone users to access the public data network (PDN) or specified private IP
> networks.
> 
> The GGSN acts like a proxy and is the device that sends the ACKs to the phone
> even though the session is already closed on the server side.
> 
> I hope this answers your question.
> 
> Regards,
> 
> Dawie Malan
> 
> 
> -----Original Message-----
> From: Michael Bauroth [mailto:michael.bauroth@falcom.de] 
> Sent: 22 March 2007 04:40 PM
> To: dev@mina.apache.org
> Subject: Session close problem
> 
> Hi,
> 
> I'm using currently the trunk version of Mina. I use it to communicate 
> with GPRS devices on the other side. In most cases this works very well!
> 
> But sometimes the things become strange. I've collected a bunch of 
> problems where I would need help / advices / ideas.
> 
> 1. I call session.close() from inside my server. It seems, that the 
> session doesn't close as required.
> 
> 2. I close the session. The GPRS device on the other side continues to 
> send data and seems to get ACKs too. It doesn't recognize, that the 
> other side of the connection (the server) has closed the session a while 
> before. It seems that there is something in the middle which responds 
> the ACKs even with not opened server session.
> 
> Knows anybody one of the two (most painful) problems and has an answer 
> for me?
> 
> Best Regards
> Michael
> 
> 
>