[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-Id: <20130129.160308.2201480856831722159.davem@davemloft.net>
Date: Tue, 29 Jan 2013 16:03:08 -0500 (EST)
From: David Miller <davem@...emloft.net>
To: jn@...sta.de
Cc: netdev@...r.kernel.org, hagen@...u.net
Subject: Re: [PATCH] netem: fix delay calculation in rate extension
From: Johannes Naab <jn@...sta.de>
Date: Wed, 23 Jan 2013 22:36:51 +0100
> From: Johannes Naab <jn@...sta.de>
>
> The delay calculation with the rate extension introduces in v3.3 does
> not properly work, if other packets are still queued for transmission.
> For the delay calculation to work, both delay types (latency and delay
> introduces by rate limitation) have to be handled differently. The
> latency delay for a packet can overlap with the delay of other packets.
> The delay introduced by the rate however is separate, and can only
> start, once all other rate-introduced delays finished.
>
> Latency delay is from same distribution for each packet, rate delay
> depends on the packet size.
>
> .: latency delay
> -: rate delay
> x: additional delay we have to wait since another packet is currently
> transmitted
>
> .....---- Packet 1
> .....xx------ Packet 2
> .....------ Packet 3
> ^^^^^
> latency stacks
> ^^
> rate delay doesn't stack
> ^^
> latency stacks
>
> -----> time
>
> When a packet is enqueued, we first consider the latency delay. If other
> packets are already queued, we can reduce the latency delay until the
> last packet in the queue is send, however the latency delay cannot be
> <0, since this would mean that the rate is overcommitted. The new
> reference point is the time at which the last packet will be send. To
> find the time, when the packet should be send, the rate introduces delay
> has to be added on top of that.
>
> Signed-off-by: Johannes Naab <jn@...sta.de>
> Acked-by: Hagen Paul Pfeifer <hagen@...u.net>
Applied, thanks.
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists