[e2e] TCP implementations in various OS's
Detlef Bosau
detlef.bosau at web.de
Wed May 12 13:29:42 PDT 2010
sthaug at nethelp.no wrote:
>> To do this with normal TCP, you need to know the reason for the 35 ms RTT.
>>
>
> Please assume that I am aware of this. The 35 ms I am talking about is
> mostly due to speed of light in optical fiber. 35 ms RTT corresponds
> to a fiber path length of 3000+ km, and a few ms of forwarding delay,
> which is perfectly reasonable in my country (Norway).
>
O.k.
Another consideration is the number of flows. Are those long distance
fibers common for backbone connections or for connections with only some
few flows?
>> That's what my criticism is all about. In order to achieve reasonable
>> fairness, either _all_ competing users use window scaling - or none.
>>
>
> Here again we have different goals. For my *core* network links, one
> of my primary goals is to ensure sufficient capacity. In a normal
> situation there is *no* congestion (throw bandwidth at the problem) -
> and as far as I can see fairness doesn't enter the picture at all.
>
I don't see a conflict here. However, when we enable window scaling for
_all_ competing flows, there may a moderate level of congestion here,
because the flows' windows must achieve an equilibrium somehow.
> For my *customer* network links, the customer is paying for a certain
> capacity. How the customer shares the capacity between different flows
> is none of my business. Fairness is none of my concerns here either.
>
And it's not your business whether or not the customer utilizes or
underutilizes the line, I see.
> However, I *do* care about the customer having the possibility of using
> the capacity he's paying for - and that means the customer needs to be
> told about window scaling if expects decent TCP throughput on high RTT
> paths.
>
>
I admit that I missed the situation of long distance _customer_ lines.
That's an actual shortcoming in my rationale.
However, can we agree that a good measure to prevent misbehaviour (which
_can_ result from a single flow using window scaling while the
competitors don't) is to enable window scaling actually on _all_ flows
or on _no_ flows? Although this might lead to some moderate level of
congestions even in lines with comparably moderate load?
--
Detlef Bosau Galileistraße 30 70565 Stuttgart
phone: +49 711 5208031 mobile: +49 172 6819937 skype: detlef.bosau
ICQ: 566129673 detlef.bosau at web.de http://www.detlef-bosau.de
More information about the end2end-interest
mailing list