← Back to team overview

dhis2-devs team mailing list archive

Client connects to itself - is this possible in DHIS especially through mobile clients?

 

Hi All,
I came across an interesting article at this link
http://www.feedspot.com/?dadi=1#feed/f_93941/article/3110429817?dd=43114917050607
and was wondering whether this could be applicable to DHIS2 as well,
particularly when connecting via mobile devices? Below just an extract of
the main point.
Regards



Client connected to itself...Isn't it Strange (effect of TCP Simultaneous
Connect)
Yes I observed this strange behavior during one of my work, which I would
like to share. The symptom of the issue was that client was getting some
unexpected junk response, which server never sent.

*Background*
While working on a system, where client application has logic to keep
reconnecting to server till connection becomes successful. At one point of
time it was observed that the client connection has been established
successfully even though server has not yet come up. Later when Server was
brought up, it failed to start saying "Address already in use". Which gave
us hint that client must have connected to any other application running on
same address as the server.

Then we saw the result of netstat command at this point of time and below
were the result:

*    netstat -nA inet | fgrep :32246*
*    tcp        0      0 127.0.0.1:32246 <http://127.0.0.1:32246>
127.0.0.1:32246 <http://127.0.0.1:32246>         ESTABLISHED*

Which shows client has connected to itself (source and destination IP:Port
is same). Also there is no additional application listening on 32246 port.
Address 127.0.0.1:32246 was the address on which client was trying to
connect.

*Cause Analysis*
In our case we were trying to reconnect to server repetitively and every
time it keeps failing as server was still down. As per TCP, every time
client tries to re-connect it is assigned one new source port in increasing
order from the range of ephemeral ports(Its range is defined in file
/proc/sys/net/ipv4/ip_local_port_range). So at one point of time, it may
use the same source port as used for destination (if destination port is
also in the range of ephemeral ports).

*Ant Snyman*

*Cell: 0824910449*

*Landline: 028 2713242*


Health Information Systems Program - SA

-- 


*This message and any attachments are subject to a disclaimer published at 
http://www.hisp.org/policies.html#comms_disclaimer 
<http://www.hisp.org/policies.html#comms_disclaimer>.  Please read the 
disclaimer before opening any attachment or taking any other action in 
terms of this electronic transmission.  If you cannot access the 
disclaimer, kindly send an email to disclaimer@xxxxxxxx 
<disclaimer@xxxxxxxx> and a copy will be provided to you. By replying to 
this e-mail or opening any attachment you agree to be bound by the 
provisions of the disclaimer.*