Knowledge Base
linbit.com Toggle Dark/Light/Auto mode Toggle Dark/Light/Auto mode Toggle Dark/Light/Auto mode Back to homepage

Mitigate Not Sending and No Receive Window Messages When Using DRBD with RDMA

This article will briefly explain and mitigate the “Not sending flow control mgs, no receive window!” messages that you might see in your logs when using the DRBD® RDMA transport module.

Unlike TCP, the Linux kernel cannot auto-tune buffer sizes for RDMA transports. DRBD by default uses the kernel’s auto-tuning of snd/rcv buffers, so you need to manually set the size DRBD should use when communicating with its peer to avoid these messages. To do so, configure the following options in the net stanza of your DRBD configuration:

[...]
net {
  sndbuf-size 10M;
  rcvbuf-size 10M;
  max-buffers 4k;
}

rcvbuf-size is configured in bytes, while max_buffers is configured in pages. For optimal performance max_buffers should be big enough to hold all of rcvbuf-size and the amount of data that might be in flight to the back-end device at any point in time. So, set max-buffers > 4000


Updated 2021/03/09 – DJV