I have a server running 2.3.6 on NetBSD.  It has been basically working
fine.

I connect to it with Conversations on Android, and the nature of phones
is that they switch from wifi to cellular a lot, and I think this leads
to dangling connections.

keepalive is apparently not default on NetBSD, which seems legit.  I
have seen large numbers (50?) of connections to some combination a cell
IP address and wifi networks I am often at.  These seem to persist.
After a while the server is troubled, I think because it has hit its
open file descriptors limit.

So (without reading the code):

  should jabberd2 force TCP keepalive on?

  should c2s (and s2s probably, but less likely to be an issue) close
  client connections if it has not seen anything from the client in some
  time period, like 8h?

  is there any expectation in the protocol that clients should be doing
  any application-level keep-alive?

I am inclined to patch my server to turn on tcp keepalive.   I don't
think NetBSD has an option to force keepalive on if the program doesn't,
although I have seen this option in OS X.

Attachment: signature.asc
Description: PGP signature

Reply via email to