[Standards-JIG] Re: proto-JEP: Stream Acking
justin-keyword-jabber.093179 at affinix.com
Fri Oct 29 05:22:50 UTC 2004
On Thursday 28 October 2004 09:09 pm, Nolan Eakins wrote:
> Well, if the prefix must be included in the <stream> it would be possible
> to completely forgo feature negotiation. The client (or server for s2s)
> would specify the prefix for JEP-Ack's namespace. The server would notice
> it, and send back a <stream> w/ the prefix specified too. Both parties
> would know that they're going to be acking from the start. The initiating
> party would only send acks if and only if the receiving party specified a
> prefix for JEP-Ack.
I don't think we should have mandatory namespace prefixes. Implementations
can use them if they want.
> The second is the process flow for determining why an ack wasn't sent back.
> A reason for the second one is what do you do if an ack is not received,
> send again, wait, or ping? This is presumably why pinging is included, but
> the use of pings is not explicit in the proto-JEP. That would also explain
> why pings get responded to even if the server is refusing to accept
> anything from the sender due to karma or what not.
Without pings, the only way to test for a dead connection would be to use a
real stanza. Pings are there to make this test simpler and more optimized.
Pinging is not directly related to stanza acking, and I suspect clients will
ping at regular intervals, regardless of whether or not there are pending
The reason why a server should always respond to pings immediately is so that
a client doesn't consider a penalized connection to be a dead connection.
However, I later realized that this is completely dependent on how the server
implementation works. For example, a server might just stop reading from the
TCP socket during the penalty period, which eliminates the ability to use
pings. My only answer to this is that a server can't implement penalties
this way if it wants to support JEP-Ack simlutaneously.
> That, or something more accurate, should probably be noted some where in
> the JEP. Most likely in the implementation notes.
Yes, perhaps these intents should be listed.
More information about the Standards