[DRBD-user] rate vs c-min-rate

Łukasz Oleś lukaszoles at gmail.com
Thu Aug 18 14:43:57 CEST 2011

Note: "permalinks" may not be as permanent as we would like,
direct links of old sources may well be a few messages off.


Thank you for fast reply.

2011/8/18 Lars Ellenberg <lars.ellenberg at linbit.com>:
> On Thu, Aug 18, 2011 at 11:18:52AM +0200, Łukasz Oleś wrote:
>> Hello,
>> Can someone explain me what is the difference between those two
>> parameters(rate and c-min-rate)?
>> Is it good idea to set same value to them?
> rate (sync-rate, resync-rate) is the upper limit for the rate the resync
> process tries to achieve, when NOT using the "dynamic resync rate
> controller", introduced in recent drbd versions (recomended: >= 8.3.11
> respectively 8.4)
> To enable the dynamic resync rate controller, set c-plan-ahead to some
> non zero value; defaults to 0 (off) in 8.3, and to 20 (enabled) in 8.4.
> If enabled, the resync-rate parameter is only used as initial guess
> value, and otherwise pretty much ignored.
> This controller basically tries to use as much as c-max-rate bandwidth,
> but will automatically throttle, if
>  - application IO on the device is detected (READ or WRITE),
>   AND the estimated current resync speed is above c-min-rate
>   (where c-min-rate = 0 disables this particular throttling condition)
>  - the amount of in-flight resync requests exceeds c-fill-target
>  - the estimated peer response latency exceeds c-delay-target
> Where only one of the conditions of c-fill-target and c-delay-target is
> used. If c-fill-target is non-zero, it will be used. If c-fill-target is
> set to 0, c-delay-target is used.
> c-plan-ahead gives something like the "dampening interval" of the controller,
> that is how fast it will ramp up/down.
> This is all to try to get as much as possible out of the way of
> application IO, to lessen the impact of the resync on
> application IO latencies, while still trying to use up as much
> "idle bandwidth" as possible.
> There is a short paragraph about it in the drbdsetup man page,
> and an example use case in the DRBD User's Guide.

I already read documentation. I'm using drbd 8.3.10. Dynamic resync
rate controller is disabled. I configured rate option to 40MB but when
application started writing data resync speed droped to 4MB. To change
it I had to set c-min-rate to 40MB as well.

It looks like c-min-rate works even if dynamic resync rate controller
is disabled. This is why  I'm asking about diffrences. I should
clarify it in first e-mail, sorry for that.


Łukasz Oleś

More information about the drbd-user mailing list