0cf67ead7bdc95700958b9cfd341b75b4432bb88 |
|
01-Dec-2011 |
Eric Dumazet <eric.dumazet@gmail.com> |
red: give a hint about burst value Check for burst values that are too small. Reported-by: Dave Taht <dave.taht@gmail.com> Signed-off-by: Eric Dumazet <eric.dumazet@gmail.com>
/external/iproute2/tc/tc_red.c
|
bf808cbf84bd96974b5a7d11484e8b0d46a467e8 |
|
20-Jun-2011 |
Stephen Hemminger <shemminger@vyatta.com> |
tc: fix set never used warning in red
/external/iproute2/tc/tc_red.c
|
476daa7278aaf324f6cef27981f81187afce8836 |
|
04-Mar-2007 |
Patrick McHardy <kaber@trash.net> |
Use tc_calc_xmittime() where appropriate [IPROUTE]: Use tc_calc_xmittime() where appropriate Replace expressions of the form "tc_core_usec2tick(1000000 * size/rate)" by tc_calc_xmittime(). The CBQ case deserves an extra comment: when called with bnwd=rate, tc_cbq_calc_maxidle() behaves identical to tc_calc_xmittime(): unsigned tc_cbq_calc_maxidle(...) { double g = 1.0 - 1.0/(1<<ewma_log); double xmt = (double)avpkt/bndw; maxidle = xmt*(1-g); if (bndw != rate && maxburst) { ... } return tc_core_usec2tick(maxidle*(1<<ewma_log)*1000000); } which comes down to: maxidle = xmt * (1 - g) = xmt * (1 - (1.0 - 1.0/(1 << ewma_log)) = xmt * (1.0/(1 << ewma_log)) so: maxidle * (1 << ewma_log) * 1000000 = xmt * (1.0/(1 << ewma_log)) * (1 << ewma_log) * 1000000 = xmt * 1000000 = avpkt/bndw * 1000000 Which means tc_core_usec2tick(maxidle*(1<<ewma_log)*1000000) is identical to tc_calc_xmittime(bndw, avpkt). Use it directly since its a lot easier to understand its limits. Signed-off-by: Patrick McHardy <kaber@trash.net> Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
/external/iproute2/tc/tc_red.c
|
aba5acdfdb347d2c21fc67d613d83d4430ca3937 |
|
15-Apr-2004 |
osdl.org!shemminger <osdl.org!shemminger> |
(Logical change 1.3)
/external/iproute2/tc/tc_red.c
|
86fdf0e47be697587efcf9602cd1f952a1d73170 |
|
15-Apr-2004 |
osdl.org!shemminger <osdl.org!shemminger> |
Initial revision
/external/iproute2/tc/tc_red.c
|