[Drbd-dev] Protocol C

Lars Ellenberg lars.ellenberg at linbit.com
Wed May 28 00:40:53 CEST 2014

On Tue, May 27, 2014 at 05:33:53PM +0200, raulhp wrote:
> Hi all,
> Can someone explain me how the Protocol C operate?, if the receiver
> send an ACK for every block or how ACK works.

It basically goes like this:

  submit to disk
+ send the data,
			remote: receive the data
disk completion			submit to disk
				disk completion
				send ack back
receive ack

complete to upper layers,
once both local disk completion
and remote ack have been seen.

With some more housekeeping to be able to detect failures,
and recover from them as gracefully as possible.

> which exactly is the source code?

exactly "most of it" ;-) sorry.
there is a lot going on, and all those various stages cannot be covered
with "look there, these six lines of code do it".

What are you trying to do?

: Lars Ellenberg
: LINBIT | Your Way to High Availability
: DRBD/HA support and consulting http://www.linbit.com

DRBD® and LINBIT® are registered trademarks of LINBIT, Austria.

More information about the drbd-dev mailing list