nanog mailing list archives

Re: Latency, TCP ACKs and upload needs


From: Jared Mauch <jared () puck nether net>
Date: Tue, 19 Apr 2016 21:44:23 -0400


On Apr 19, 2016, at 9:29 PM, Jean-Francois Mezei <jfmezei_nanog () vaxination ca> wrote:

As part of the ongoing CRTC hearings, the incumbents' claim that
continued implementation of the current 5/1 standard would make Canada a
world leader for broadband in the future.

A satellite company who currently can't even deliver its advertised 5/1
now brags its next satellite will deliver 25/1.

So I have a few questions:

Considering a single download TCP connection. I am aware that modern TCP
stacks will rationalize ACKs and send 1 ACK for every x packets
received, thus reducing upload bandwidth requirements. Is this basically
widespread and assumed that everyone has that ?

Also, as you split available bandwidth between multiple streams, won't
ack upload requirements increase because ACK rationalisation happens far
less often sicne each TCP connection has its own context for ACKs?

There’s a lot of dynamics here, including how long lived the TCP session
is, the windowing behavior of the host/servers and any acceleration done
in the path.  There is also TCP Selective ACK which means you don’t need
to explicitly ACK each frame.

I’m not specifically knowledgeable about how this performs with earth to
orbit and back dynamics, and hope to never personally need to debug it :)
I have used satellite based internet over the atlantic ocean before and
it didn’t seem that bad aside from the pricing involved.

I would expect that if all endpoints are doing the right TCP options you
will see reasonable performance.  Make sure nobody is masking the window
scaling options and such.  (I have heard some carriers do this to prevent
the window from getting too large).

- Jared

Current thread: