3 ms·
Both ZFS and modern btrfs support a large set of checksums. Both implement sha256, which does impose a heavy speed penalty. ZFS allows you to adjust the check
by chasil 11d ago
Both ZFS and modern btrfs support a large set of checksums.
Both implement sha256, which does impose a heavy speed penalty.
ZFS allows you to adjust the checksum on the fly, using something faster (Fletcher) if desired.
In btrfs, a global checksum is set at filesystem creation; xxhash is the best modern option.
There is a website: https://xxhash.com https://xxhash.com
Deduplication adds concerns for a strong hash free of collisions.
- ThePowerOfFuet 11d agoFletcher has been the default for quite some time.
- throw0101a 11d agoSpecifically "fletcher4": * https://openzfs.github.io/openzfs-docs/man/master/7/zfsprops.7.html#checksum https://openzfs.github.io/openzfs-docs/man/master/7/zfsprops... * https://openzfs.github.io/openzfs-docs/Basic%20Concepts/Data%20Storage/Checksums.html https://openzfs.github.io/openzfs-docs/Basic%20Concepts/Data... * https://en.wikipedia.org/wiki/Fletcher%27s_checksum https://en.wikipedia.org/wiki/Fletcher%27s_checksum * https://people.freebsd.org/~asomers/fletcher.pdf https://people.freebsd.org/~asomers/fletcher.pdf * https://www.intel.com/content/www/us/en/developer/articles/technical/fast-computation-of-fletcher-checksums.html https://www.intel.com/content/www/us/en/developer/articles/t... Originally documented in the paper "An Arithmetic Checksum for Serial Transmissions" (referenced also in RFC 1146, in the context of TCP).