Subject: Re: [PATCH 1/2] sch_netem: Remove classful functionality

From: Patrick McHardy <[email-masked]>
Date: Tue, 04 Nov 2008 12:04:24 +0100

Stephen Hemminger wrote:
> On Mon, 03 Nov 2008 12:20:25 +0100
> Patrick McHardy <[email-masked]> wrote:
> 
>> Whats wrong with simply using TBF as parent qdisc of netem?
> 
> It works but does something slightly different.
> 
>    netem inside TBF is like long delay network followed by choke on last hop
>    TBF inside netem was like choke on uplink followed by long delay network.

The behaviour visible on either side is identical though.

TBF only affects the ->dequeue path, in which netem only handles delays.
In both cases the total delay is the maximum of the absolute delay
imposed by netem + the delay resulting from rate-limiting (the maximum
because TBF can recharge while netem is delaying). Both values are
independant from each other, so the maximum is always the same.