[Cerowrt-devel] happy 4th!
Mikael Abrahamsson
swmike at swm.pp.se
Thu Jul 4 11:48:23 EDT 2013
On Thu, 4 Jul 2013, Michael Richardson wrote:
> huh? The end points might need more buffers to receive more packets (some of
> which might be out of order), but the intermediate routers need nothing.
> None of the bufferbloat stuff reduces the receive buffers of an end-point.
I never talked about the end-points receive buffers. I was talking about
intermediate routers buffering. With long-latency links, TCP traditionally
sends packets at fairly big bursts sent at wirespeed of the end system,
and when this burst arrives at a router doing speed conversion
(1gige->1megabit/s WAN link), it will need to buffer some of this burst.
This is why buffers are large on routers, because of this traditional
thinking that TCP works best when routers in between never drops packets.
> So, who is saying this to you, and what exactly do they think
> bufferbloat is about?
They say if you reduce the buffer size in routers, TCP performance on long
latency paths will suffer due to packet loss and long recovery times due
to the end-to-end high latency.
Traditional thinking (I've had this quoted to me by several old-timers who
have been involved in core router design since the 90ties) is that you
need buffers who can accept 2*RTT amount of packets at the speed you're
trying to send.
So if we want to reduce the buffers, we need to prove that TCP goodput on
a 200ms link doesn't suffer because there are now less buffers.
So my suggestion is the following:
When doing the tests, set up the following:
[host1] - (GE/FE/E) - [fq_codel router] - [100ms adding latency router] (GE) [host2]
The link between CODEL-router and the router adding latency should be 1/10
and 1/100 of the [host1] - [CODEL-router] link speed.
If it can be shown that fq_codel keeps the goodput performance the same as
FIFO with large buffers, then we hopefully could answer people with the
concerns I mentioned before.
--
Mikael Abrahamsson email: swmike at swm.pp.se
More information about the Cerowrt-devel
mailing list