[Standards-JIG] Re: WHACK
vinod.p at gmail.com
Sat Apr 29 06:08:13 UTC 2006
Lots of mails exchanged on this subject. Just taking a step backwards
to analyse the problem statements once again -
1. 100% reliable message delivery
2. Usually reliable message delivery
3. Problems associated with clients that keep getting disconnected (GPRS)
IMO, ACK's on a per hop basis solve problem 1. Agreed that it is
overkill for standard usage, but in some situations it may be
For problem 2, we need something lightweight but something that sits
between whing and per-hop ack's. Maybe whacks are the answer.
For problem 3, which is an extremely common problem when a client is
using a GPRS like connection, just letting the other party know that
the message was NOT delivered is not really a great user experience.
What the person would want is automatic delivery of messages that were
"lost in transit", when the client moved from one cell site to
another, in the process getting a new public ip and port.
Reconnection is a time consuming activity, and there is usually
heartburn due to lost messages and manual synchronization.
For this purpose, we could introduce a buffering proxy that such
clients can use. The gprs client would use such a proxy to connect to
the xmpp server. The proxy would hang on to the server connection
even in case of a client disconnection for a matter of a few seconds.
The client would usually come back with a different public ip/port and
re-negotiate with the proxy. Once that is successful, it would resume
sending data to the server. The proxy would buffer any data received
from the server to the client after the re-connection. If the client
never comes back, the proxy replies to the server with errors and
closes the stream.
WDYAT? We could start a new thread for problem 3.
More information about the Standards