nanog mailing list archives

Re: Testing 1gbps bandwidth


From: Graham Beneke <graham () apolix co za>
Date: Wed, 15 Aug 2012 07:23:57 +0200

On 14/08/2012 22:22, Fred Baker (fred) wrote:
Let me put hands and feet on what Valdis points out. With a gigabit interface, you are able to carry about 83,333 
1500 byte packets per second. If you're trying to download a file from, say, an Akamai server, TCP will allow you to 
move one window per round trip. If you are using standard window scaling (e.g., your window is in the neighborhood of 
65,000 bytes), you can achieve 1 GBPS only if your round trip time is in the neighborhood of half a millisecond. 
Outside of a data center, such an RTT is Really Unusual. The obvious alternative is to use a larger window scaling 
value: if your RTT is 20 ms, scale up by at least 40 times, which is to say a shift of 6 bits for a multiplier of 64. 
Even with that, TCP's normal way of operating will prevent it from using the entire gigabit until quite a way into 
the session. You'll need a Really Long File.

I come up against TCP window challenges rather often due to the fact
that RTTs between eyeball and content are still between 200ms and 1000ms
for large portions of what eyeballs in Africa would like to consume.

I was trying to quantify these limitations the other day and my
Google-fu was lacking.

Can anyone point me at some resources showing default TCP windows for
the various OSes/platforms, which of them do auto scaling and what the
upper bounds are for scaled windows.

-- 
Graham Beneke


Current thread: