directory-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
Subject Re: [Mina] 'messageSent' semantic
Date Wed, 11 Jan 2006 18:38:02 GMT
Quoting David Boreham <>:

>> I am surprised it is stated that TCP does not guarantee that message is
>> received. It does so. It guarantees packet delivery and packet order.
> TCP does not guarantee packet delivery. Yes it will retransmit an
> unacknowledged packet but that's quite a bit short of guaranteed delivery.
>> I guess they meant that with sockets, reception at TCP/IP level does 
>> not imply
>> consumption of the buffer by the receiving program.
> This true, but I think they meant that when an application sends data on
> a socket, the fact that the system call has returned tells you _nothing_
> about where the data has arrived. It might still be sitting in a buffer
> on sending node. Its ethernet cable might be yanked the next milisecond
> and the packet would go exactly nowhere, ever.

Thanks for clarifications.

On the other hand, TCP knows that packet is delivered or not.

And it seems socket API does not do anything with this info (no exception)

This mandates application acknowledge if you really want to be sure messages
have been delivered. In this case, why does bring TCP over UDP? Only ordering?


View raw message