What is the difference between asynchronous and synchronous volume replication?
The main difference between synchronous and asynchronous volume replication is that synchronous replication needs to wait for the destination server's response to every write operation.
1. Write data is buffered on the source system.
2. The Source system sends the data to the destination system and awaits a response.
3. The destination system writes the data to disk.
4. When the data is on the disk (if RAID has cache enabled then when the RAID cached it) the destination informs the source server about it.
5. The source server writes the buffered data to the disk.
As a result, synchronous volume replication limits the write speed by speed of the network and both source and destination disk speeds.
In the case of asynchronous replication, the data is directly written to the source server disk and sent to the destination system right away and it does not wait for the destination's response. As result, the writing is limited only by the speed of the source disk but the replication itself is still limited by network speed and the destination disks.
Asynchronous replication also gives the possibility to set up a start/stop schedule. For example, if you have limited network speed and you don't want to overload it with the replication you can set a schedule for nights and/or weekends. Please exercise caution with such schedules, make sure sufficient time is allowed for the replication process to complete, otherwise, inconsistencies between the source and the destination can occur.
Both of the replication modes are based on the DRBD mechanism with synchronous replication using DRBD Protocol C and the asynchronous replication using DRBD Protocol A.
The main drawback of the asynchronous volume replication is the size of the TCP send buffer size which is only 2MB and cannot be increased. If the buffer becomes overloaded the asynchronous volume replication starts to work in a very similar way to the synchronous volume replications. As a result, the write speed is limited by the replication link and the speed of the secondary node.
For more details about DRDB Protocols take a look at the following webpage:
Starting from DSS V6 b5087 we abandoned the idea of using asynchronous volume replication, however, if asynchronous volume replication tasks were created in build b4786 and then the system was updated, that task will still run as asynchronous. But there is NO possibility to create any new asynchronous volume replication tasks with versions after build b4786.