[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20111130.231903.333204297403823043.davem@davemloft.net>
Date: Wed, 30 Nov 2011 23:19:03 -0500 (EST)
From: David Miller <davem@...emloft.net>
To: hagen@...u.net
Cc: netdev@...r.kernel.org, eric.dumazet@...il.com,
shemminger@...tta.com
Subject: Re: [PATCH v3 net-next 1/2] netem: rate extension
From: Hagen Paul Pfeifer <hagen@...u.net>
Date: Wed, 30 Nov 2011 23:20:26 +0100
> Currently netem is not in the ability to emulate channel bandwidth. Only static
> delay (and optional random jitter) can be configured.
>
> To emulate the channel rate the token bucket filter (sch_tbf) can be used. But
> TBF has some major emulation flaws. The buffer (token bucket depth/rate) cannot
> be 0. Also the idea behind TBF is that the credit (token in buckets) fills if
> no packet is transmitted. So that there is always a "positive" credit for new
> packets. In real life this behavior contradicts the law of nature where
> nothing can travel faster as speed of light. E.g.: on an emulated 1000 byte/s
> link a small IPv4/TCP SYN packet with ~50 byte require ~0.05 seconds - not 0
> seconds.
>
> Netem is an excellent place to implement a rate limiting feature: static
> delay is already implemented, tfifo already has time information and the
> user can skip TBF configuration completely.
>
> This patch implement rate feature which can be configured via tc. e.g:
>
> tc qdisc add dev eth0 root netem rate 10kbit
>
> To emulate a link of 5000byte/s and add an additional static delay of 10ms:
>
> tc qdisc add dev eth0 root netem delay 10ms rate 5KBps
>
> Note: similar to TBF the rate extension is bounded to the kernel timing
> system. Depending on the architecture timer granularity, higher rates (e.g.
> 10mbit/s and higher) tend to transmission bursts. Also note: further queues
> living in network adaptors; see ethtool(8).
>
> Signed-off-by: Hagen Paul Pfeifer <hagen@...u.net>
> Acked-by: Eric Dumazet <eric.dumazet@...il.com>
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