Dieter_be
Cadet
- Joined
- Mar 1, 2015
- Messages
- 1
Hi,
I'm interested in http://www.ixsystems.com/storage/freenas/
I'm wondering how to ensure end to end data integrity, in NAS systems in general, and the freenas mini in particular (if there's other reasonably priced systems that are better at integrity, please tell me)
Here's some thoughts:
* ECC memory, what kind is it? simple parity check? or more advanced? it seems that if multiple bits flip, corruption could still pass through undetected
* let's ignore corruption on my client machine (laptop), and assume that the data it transmits on the network is correct.
when I do writes to the NAS (via sshfs, nfs, cifs), and the writes succeed, am i truly guaranteed that the data on disk is the same as what was on the wire?
As far as I understand there's a few opportunities of corruption, despite the ECC memory and zfs checksumming:
-> after the data is in the memory of the NIC (and tcp checksums get verified), data could corrupt on its way from the NIC memory into the ECC RAM. [*] or do the network filesystems do their own checksumming to protect against this?
-> zfs needs the data in the CPU to compute its checksums, so the data could corrupt after (successfully) reading it out of the ECC RAM , when transferring the data over the cirtuit lines on the motherboard or the cpu, before computing the checksums
[*] data could corrupt due to cosmic radiation, interference, and more see http http://en.wikipedia.org/wiki/Data_corruption#Silent_data_corruption , http://research.cs.wisc.edu/adsl/Publications/zfs-corruption-fast10.pdf , http://jforonda.blogspot.com/2007/01/faulty-fc-port-meets-zfs.html
I'ld like to make sure all these cases are covered, as I believe there's room for corruption even with zfs checksumming and ECC memory.
also is it truly required to get an UPS? I will turn on synchronous writes and if my power cuts I don't mind resending files that were "in transit". I just don't want corruption, of course.
thanks!
I'm interested in http://www.ixsystems.com/storage/freenas/
I'm wondering how to ensure end to end data integrity, in NAS systems in general, and the freenas mini in particular (if there's other reasonably priced systems that are better at integrity, please tell me)
Here's some thoughts:
* ECC memory, what kind is it? simple parity check? or more advanced? it seems that if multiple bits flip, corruption could still pass through undetected
* let's ignore corruption on my client machine (laptop), and assume that the data it transmits on the network is correct.
when I do writes to the NAS (via sshfs, nfs, cifs), and the writes succeed, am i truly guaranteed that the data on disk is the same as what was on the wire?
As far as I understand there's a few opportunities of corruption, despite the ECC memory and zfs checksumming:
-> after the data is in the memory of the NIC (and tcp checksums get verified), data could corrupt on its way from the NIC memory into the ECC RAM. [*] or do the network filesystems do their own checksumming to protect against this?
-> zfs needs the data in the CPU to compute its checksums, so the data could corrupt after (successfully) reading it out of the ECC RAM , when transferring the data over the cirtuit lines on the motherboard or the cpu, before computing the checksums
[*] data could corrupt due to cosmic radiation, interference, and more see http http://en.wikipedia.org/wiki/Data_corruption#Silent_data_corruption , http://research.cs.wisc.edu/adsl/Publications/zfs-corruption-fast10.pdf , http://jforonda.blogspot.com/2007/01/faulty-fc-port-meets-zfs.html
I'ld like to make sure all these cases are covered, as I believe there's room for corruption even with zfs checksumming and ECC memory.
also is it truly required to get an UPS? I will turn on synchronous writes and if my power cuts I don't mind resending files that were "in transit". I just don't want corruption, of course.
thanks!