On Wed, Nov 01, 2006 at 08:42:08PM +0000, Dave Cridland wrote:
> On Wed Nov  1 17:07:11 2006, Michal 'vorner' Vaner wrote:
> >On Wed, Nov 01, 2006 at 06:07:39PM +0100, Tobias Markmann wrote:
> >> Isn't that a TCP problem since that can happen to any protocol 
> >which is
> >> based to TCP?
> >
> >Well, it is partly implementation problem, many OSes (as I heard) 
> >are
> >able to tell you how much was already delivered and if you remember 
> >what
> >part of data was what stanza, you can resend it after reconnection.
> >
> >But that is bit more work, of course, and alot more data.
> 
> No OS can tell you what's been delivered, but some might be able to 
> tell you what hasn't been sent, and what hasn't been acknowledged.

Yes, but from that, you can deduce what _was_ acknowledged.

And if you loose TCP ack, TCP will take care of it. If you loose
datal-level ack, TCP will take care of it the same, there is no
difference.

> I 
> looked for how to do this on Linux, which usually provides the 
> richest API to the network layer, but I couldn't find anything to 
> tell me either.

I guess it is not much used and documented, I just heard it exists.

> But this isn't quite the same thing anyway - you want to know what 
> stanzas have been accepted - what happens if the ACKs get lost, or 
> the server dies?

If they get lost, they will arrive later. If the server dies, same is if
it did not have enough time to send the data-level one, no?

But anyway, I just said it can be done, but I also said it would be
difficult and wouldn't be the best thing anyway, I think.

> <snip/>

-- 
BOFH Excuse #452:

Somebody ran the operating system through a spelling checker.

Michal 'vorner' Vaner

Attachment: pgpMnJLtagDyt.pgp
Description: PGP signature

Reply via email to