Re: $100 reward for socket disconnection help



Here's more details on my situation:

I'm running Java 1.4.1 as an applet on the client side, under Windows 98,
with a DSL connection through a Linksys Wireless-B Router. In test mode,
after my applet makes a socket connection to my server application, it
listens for intermittent notifications from the server to know that the
client-server connection still exists, and if the notifications stop, it
loops through attempts to make a new connection to the server, and when a
new connection is made it goes back to listening for the intermittent
notifications from the server.

Fairly frequently, about once an hour, the client-server connection is lost.
This is probably due to some issue with the router, because if I remove the
router, client-server disconnects while I run my application are very rare.
(A search on "BEFW11S4", my router model number, and "disconnection" gets a
lot of hits.)

Running AOL Instant Messenger (IM) while running my test application has no
effect on the disconnection rate of my application, but if IM is running, IM
disconnects at the same time my application does ("AOL Instant Messenger
Error: Connection lost. Check your internet connection").

After disconnect my client starts trying to make a new connection with my
server. It always succeeds in reconnecting, sometimes within a minute but
often taking up to 30 minutes. Each time it fails to make a new connection
the IOException message is "java.net.ConnectException: Connection timed out:
connect".

Interestingly, if I re-start IM (click on "Sign On") while my application is
still trying to reconnect, IM is always able to immediately reconnect, and
right after IM reconnects my application always immediately reconnects.

The fact that my application and IM are tightly coupled in both disconnect
and reconnect behavior indicates that my problem has nothing to do with my
server. It's some sort of local client issue.

I don't know exactly what the problem is with my router, but since other
people may be using the same router or another with a similar problem, I'd
like my application to be able to recover gracefully from these disconnects.
A thirty minute wait for reconnection is not graceful, nor is asking my
application users to start up IM anytime my application disconnects.

IM is doing something that my applet isn't doing to reconnect to its server
that seems to break down some barrier in my local client, and once that
barrier is broken then my applet can also reconnect. Perhaps IM is accessing
some system resource that's not available in the java virtual machine, but
more likely I'm overlooking something.

The $100 reward will go to any suggestion that helps me understand and deal
with this problem, including the suggestions that have already been made
when I get a chance to do some more testing. Thanks.

Denny


.



Relevant Pages

  • Re: $100 reward for socket disconnection help
    ... > I'm running Java 1.4.1 as an applet on the client side, under Windows 98, ... > with a DSL connection through a Linksys Wireless-B Router. ... > disconnects at the same time my application does ("AOL Instant Messenger ... > still trying to reconnect, IM is always able to immediately reconnect, and ...
    (comp.lang.java.programmer)
  • [PATCH 0/5] [RFC] AF_RXRPC socket family implementation [try #3]
    ... These patches together supply secure client-side RxRPC connectivity as a Linux ... kernel socket family. ... presentation side is left to the client. ... Each connection goes to a particular "service". ...
    (Linux-Kernel)
  • [PATCH 0/5] [RFC] AF_RXRPC socket family implementation
    ... These patches together supply secure client-side RxRPC connectivity as a Linux ... Make it possible for the client socket to be used to go to more than one ... Each connection goes to a particular "service". ...
    (Linux-Kernel)
  • [PATCH 0/5] [RFC] AF_RXRPC socket family implementation [try #2]
    ... These patches together supply secure client-side RxRPC connectivity as a Linux ... Make it possible for the client socket to be used to go to more than one ... Each connection goes to a particular "service". ...
    (Linux-Kernel)
  • Re: Able to detect disconnect, except one weird case...
    ... Only problem is when my client sits silent with no data being ... at that point the server knows the connection has ... FD_READ) like it does when the server disconnects. ... On other projects I've sent keep-alive packets (just small packets ...
    (microsoft.public.win32.programmer.networks)