[Bloat] Hey, all, what about bandlength?

Sebastian Moeller moeller0 at gmx.de
Mon Apr 10 07:30:09 EDT 2023


Hi Dave,


> On Apr 10, 2023, at 01:04, David Lang via Bloat <bloat at lists.bufferbloat.net> wrote:
> 
> TCP ramps up it's speed fairly slowly, and backs off fairly drastically when it is told (via ECN or a dropped packet) that it has hit the limit.

	[SM] That is the prevailing narrative, yes. However during slow start most/many TCPs double the congestion window every RTT and since it takes up to a full RTT for a drop or CE mark to be fed back to the sender, TCPs can end up with a congestion window that is up to twice as large as sustainable, so the "classic" halving of the congestion window when dropping out of slow-start seems not like a bad idea... after that the congestion window increase rate will be somewhat slower...


> As a result, a single TCP session is not going to fully utilize a connection.

	[SM] In my experience even single TCP flows can get close to saturation (but I typically do such tests over short paths...)


> There are people who do large, high speed transfers over long distances on a regular basis (think movie studios sending uncompressed movie footage around the world for processing).

	[SM] Yes, that is not me ;)


> To fully utilize their bandwidth, they use protocols that involve lots of connections operating in parallel

	[SM] Or stick to TCP but run a few connections in parallel, if these are not synchronized the aggregate ends up saturating a path pretty well (within reason, over long RTT paths the control loop simply is not as "tight" as over short RTT paths...)

Regards
	Sebastian


> 
> David Lang
> 
> On Sun, 9 Apr 2023, Dave Collier-Brown via Bloat wrote:
> 
>> Date: Sun, 9 Apr 2023 16:06:54 -0400
>> From: Dave Collier-Brown via Bloat <bloat at lists.bufferbloat.net>
>> Reply-To: Dave Collier-Brown <dave.collier-Brown at indexexchange.com>
>> To: bloat at lists.bufferbloat.net
>> Subject: Re: [Bloat] Hey, all, what about bandlength?
>> Consider a connection to my ISP as being an empty water-pipe, and I only want to measure the flow from the waterworks to me. In this case the waterworks is Rogers in Toronto, and the numbers come from me measuring the link with the Waveform bufferbloat tool.
>> 
>> The ISP promises me 1 Gbit/s of water.  OK, there is no such thing, but you get the idea (;-))
>> 
>> Let's consider the no-latency case.
>> 
>> *   The ISP turns on the tap, and it takes half an RTT to get to me, one way.  Let that be 1 millisecond, 0.001s of delay.
>> *   Once the delay is over, I get (1.0s - 0.001s) * 1 Gbit/s = 0.999 Gb/s. The 0.999 seconds is transfer time, and that transfer is at full speed of the pipe, so it adds up to 0.999 Gb/s
>> *   That's pretty good.
>> 
>> Now let's consider the best possible case where there is latency, but only one delay of 0.456s.  That basically means that only one transfer happens in the second, so there is only once change for latency to hurt me.
>> 
>> *   the one-way delay is still 0.001s, but there is also 0.231s of latency, for a delay of 0.232s
>> *   (1.0s - (0.001s + 0.231s) ) * 1 Gbit/s =
>> *   1.0s - 0.232s = 0.549s  * 1 Gbit/s = 0.768 GB/s
>> *   Cut by a quarter, by one packet's delay
>> 
>> What about the worst case?
>> 
>> *   It's not worst, but a pretty common case is a busy link with 1500-byte packets
>> *   One packet is 12,000 bits
>> *   In one second we can transfer 1,000,000,000 bits / 12,000bits/packet = 83,333.3 packets
>> *   Maybe that many delays, too?
>> *   Fortunately, no
>> 
>> I personally observed 456.2 Mbit/s, about 54% of a gigabit at home, so it's more like the latency cut my bandwidth in half
>> 
>> --dave
>> 
>> 
>> On 4/8/23 22:32, Michael Richardson via Bloat wrote:
>> 
>> 
>> Dave Collier-Brown <dave.collier-Brown at indexexchange.com><mailto:dave.collier-Brown at indexexchange.com> wrote:
>>  >> Dave Collier-Brown via Bloat<bloat at lists.bufferbloat.net><mailto:bloat at lists.bufferbloat.net> wrote: 
>>> 
>>  >> They he said "bandlength"
>>  >>
>>  >> > That sounded like an odd name, but the idea was cool:
>>  >>
>>  >> > If I have a bandwidth of 1 Mbit/S, but it takes 2 seconds to deliver
>>  >> 1 > Mbit, do I have a bandlength of only 1/2 Mbit/S?
>>  >>
>>  >> Is that because there is 2seconds of delay?
>> 
>>  > Well, 2 seconds elapsed time, 1 of which is delay.
>> 
>> Ah, would that include the delay to ask for the data?
>> (A DNS request, or an HTTP GET)
>> 
>> 
>> 
>> 
>> CONFIDENTIALITY NOTICE AND DISCLAIMER : This telecommunication, including any and all attachments, contains confidential information intended only for the person(s) to whom it is addressed. Any dissemination, distribution, copying or disclosure is strictly prohibited and is not a waiver of confidentiality. If you have received this telecommunication in error, please notify the sender immediately by return electronic mail and delete the message from your inbox and deleted items folders. This telecommunication does not constitute an express or implied agreement to conduct transactions by electronic means, nor does it constitute a contract offer, a contract amendment or an acceptance of a contract offer. Contract terms contained in this telecommunication are subject to legal review and the completion of formal documentation and are not binding until same is confirmed in writing and has been signed by an authorized signatory.
> _______________________________________________
> Bloat mailing list
> Bloat at lists.bufferbloat.net
> https://lists.bufferbloat.net/listinfo/bloat
> _______________________________________________
> Bloat mailing list
> Bloat at lists.bufferbloat.net
> https://lists.bufferbloat.net/listinfo/bloat



More information about the Bloat mailing list