• E
    tcp: tso: remove tp->tso_deferred · 5f852eb5
    Eric Dumazet 提交于
    TSO relies on ability to defer sending a small amount of packets.
    Heuristic is to wait for future ACKS in hope to send more packets at once.
    Current algorithm uses a per socket tso_deferred field as a pseudo timer.
    
    This pseudo timer relies on future ACK, but there is no guarantee
    we receive them in time.
    
    Fix would be to use a real timer, but cost of such timer is probably too
    expensive for typical cases.
    
    This patch changes the logic to test the time of last transmit,
    because we should not add bursts of more than 1ms for any given flow.
    
    We've used this patch for about two years at Google, before FQ/pacing
    as it would reduce a fair amount of bursts.
    Signed-off-by: NEric Dumazet <edumazet@google.com>
    Signed-off-by: NYuchung Cheng <ycheng@google.com>
    Signed-off-by: NNeal Cardwell <ncardwell@google.com>
    Signed-off-by: NDavid S. Miller <davem@davemloft.net>
    5f852eb5
tcp.h 11.9 KB