On 1/30/2015 7:20 AM, Wolfgang Beck wrote:
Would it make sense to include statements about latency?

Yes, but I'm not sure what at this point.

Latency is a multidimensional property; it depends on the interaction of a variety of factors, so even if you wanted to have the application say "I want low latency", that's not well-defined.

We recently had a discussion with one of our suppliers about application
layer timeouts that fired while the request was still stuck in the send
queue.

There were statements like 'UDP never queues' or 'we can't control the
TCP send buffer size'.

UDP doesn't queue, but UDP implementations do. The interface between applications and UDP does too.

Maybe some general discussion of the interactions between application
layer timers and transport layer retransmission strategies (like Nagle)
would be useful.

That's a really good example of how poorly understood this problem is.

Nagle should be off for multi-byte transaction protocols using TCP, but TCP isn't a low-latency protocol to start with. Nagle is as much about minimizing short packets as it is about the effect on transaction interaction delay.

However, it's also well-understood that Nagle should be off for transactions involving multiple bytes - whether that's because the transaction itself is larger (e.g., web transactions) or because the character encoding is larger (e.g., telnet using Unicode rather than ASCII). (J. Heidemann, K. Obraczka, J. Touch, “Modeling the Performance of HTTP Over Several Transport Protocols,” IEEE/ACM Transactions on Networking, V5, N5, Oct. 1997, pp.616-630.)

The fact that TCP doesn't have a way for the application to signal a transaction boundary (it's a byte stream model) means that the entire issue of latency of transactions over TCP is questionable.

--

So, in summary, yes, an API from transport to the service layer should have an indication of latency, but this is a very complex, *bidirectional* interface. So other than saying that this should be addressed in the future, anything said now will be at best woefully incomplete, and at worst, wrong.

Joe

_______________________________________________
Taps mailing list
[email protected]
https://www.ietf.org/mailman/listinfo/taps

Reply via email to