[e2e] a question about the deployment of SACK TCP

Gil Jose-josegil1 josegil1 at motorola.com
Mon Jul 12 14:30:43 PDT 2004


Has anybody investigated if the SACK-based loss recovery mechanism as specified in RFC 3517 is actually implemented and what is its performance in the live Internet? I believe to have read that the fact that SACK information is exchanged does not imply that a SACK-based loss recovery mechanism is in use, and if it is it might not follow RFC3517.

I haven't finished reading the papers proposed in this thread but please advise if these or other papers contain such investigation.

Jose

-----Original Message-----
From: end2end-interest-bounces at postel.org [mailto:end2end-interest-bounces at postel.org] On Behalf Of Mark Allman
Sent: 12 July 2004 14:23
To: Kostas Pentikousis
Cc: Mark Claypool; ron.lee at samsung.com; end2end-interest at postel.org
Subject: Re: [e2e] a question about the deployment of SACK TCP



> | > there an up-to-date answer to this? What fraction of the 
> | > bytes/packets/TCP-flows in the Internet are SACK-capable?
> 
> "in the Internet" is quite difficult to say.  Padhye & Floyd used TBIT 
> in "Identifying the TCP Behavior of Web Servers" to determine what TCP 
> flavors are deployed "out there". (Ignore for a moment the fact the 
> study is limited to web servers.) They found that a large percentage 
> of hosts (more than half) advertize SACK, but only 6% of hosts use 
> SACK correctly (see also their NANOG
> presentation: http://www.nanog.org/mtg-0010/tcp.html)

I agree, it's difficult to precisely quantify.  But, a couple of quick results from our recent measurements ....

  * The fraction of web servers that advertise SACK capability is
    approximately 68%.

  * The fraction of web servers that do not use SACK in some way is
    quite low (~3%).  That is not to say that the web servers always use
    SACK in the best possible way --- just that they use some SACK info
    at some point.

  * The fraction of clients at one particular site we traced was about
    88%.  (This agrees with some rough analysis we have done of a couple
    of other sites.)

  * Of the connections we observed whereby the client and server agreed
    to use SACK nearly all of the clients generated SACK blocks in
    connections with retransmitted packets.  While it is difficult to
    make a one-sided analysis terribly conclusive in this area this
    result seems to indicate that clients are, in fact, generating SACK
    information when needed.  And, further, the SACK information we
    observed nearly always falls along segment boundaries --- further
    suggesting its accuracy.

The details on all of this (except the rough hand-wave about corroborating sites) is available in:

    Alberto Medina, Mark Allman, Sally Floyd. Measuring the Evolution of
    Transport Protocols in the Internet. May 2004.
    http://www.icir.org/mallman/papers/tcp-evo-submit.ps

Comments welcome and appreciated!

allman





More information about the end2end-interest mailing list