We are running Openfire 3.6.4 on solaris environment. We have XMPP clients connected to Openfire 3.6.4 using TLS on port 5222. After the TLS sessions are established, clients keep on sending every minute to Openfire server to do the heart-beat to prevent being closed out for being idle too long.
However, we found that Openfire server randomly sended </stream:stream> to some of the clients. We noticed on wireshark trace that server side ended socket by sending out" RST" packet.
The Openfire server is NOT under heavy load at all. We have only around 10 users connected to the server at that time. ( extra info: All clients are connected to server via a loadbalancer (VIP)).
Does anyone have the similar problems and know any answers to this issue?
Thanks in advance.
-xbw
Here is the decoded SSL stream, which at the end indicated that server closed client connection by sending out </stream:stream>
c -> s <stream:stream to=“xmpp.company.net” version=“1.0” xmlns=“jabber:client” xmlns:stream=“http://etherx.jabber.org/streams”>
s -> c <?xml version='1.0' encoding='UTF-8'?><stream:stream xmlns:stream=“http://etherx.jabber.org/streams” xmlns=“jabber:client” from=“xmpp.company.net” id=“d2ac258e” xml:lang=“en” version=“1.0”>stream:featuresPLAINANONYMOUSzlib</stream:features>
c -> s MTQwNDcxMzQ2MDBAZW5jb3JleG1wcC5hdHQubmV0ADE0MDQ3MTM0NjAwAHJpVktnTkVCS0Z6VTV3
d3U1WGZzWnBMRElEekRSNDFOS2RFdmN5YjFyK2xLUTFnMnlmTUxkZ0wrVEVnTmIwdks3WjBWbmpo
UnpWdTVUYTA0MjMyZUZ6S1VxbjBhQjJBNDVVak5wRmtGNnJKUS9KaHZEdnphWGc9PQ==
s -> c
c -> s <stream:stream to=“xmpp.company.net” version=“1.0” xmlns=“jabber:client” xmlns:stream=“http://etherx.jabber.org/streams”>
s -> c <?xml version='1.0' encoding='UTF-8'?><stream:stream xmlns:stream=“http://etherx.jabber.org/streams” xmlns=“jabber:client” from=“xmpp.company.net” id=“d2ac258e” xml:lang=“en” version=“1.0”>stream:featureszlib</stream:features>
c -> s encore_AE5IH5jL
s -> c 14047134600@xmpp.company.net/encore_AE5IH5jL
c -> s
s -> c
c -> s Available 1 chat
c -> s
s -> c
…
c -> s
s -> c </stream:stream>
c -> s
end of the follow SSL stream in wireshark