doc/dev/rbd-export.rst
This is a file format of an RBD image or snapshot. It's a sparse format for the full image. There are three recording sections in the file.
(1) Header. (2) Metadata. (3) Diffs.
Header
"rbd image v2\\n"
Metadata records
Every record has a one byte "tag" that identifies the record type, followed by length of data, and then some other data.
Metadata records come in the first part of the image. Order is not important, as long as all the metadata records come before the data records.
In v2, we have the following metadata in each section: (1 Bytes) tag. (8 Bytes) length. (n Bytes) data.
In this way, we can skip the unrecognized tag.
Final Record
End
---
- u8: 'E'
Diffs records
Record the all snapshots and the HEAD in this section.
Record the snapshot's protection status if --export-format=2.
Detail please refer to rbd-diff.rst