Corruption of Received Data

Device errors can result in corrupted data being placed in receive buffers.
Such corruption is indistinguishable from corruption that occurs beyond the
domain of the device—for example, within a network. Typically, existing
software is already in place to handle such corruption; for example, through
integrity checks at the transport layer of a protocol stack or within the
application using the device.

If the received data will not be checked for integrity at a higher layer—as
in the case of a disk driver, for example—it can be integrity-checked
within the driver itself. Methods of detecting corruption in received data
are typically device-specific (checksums, CRC, and so forth).