文章引用
Stone J, Greenwald M, Partridge C, et al. Performance of checksums and CRCs over real data[J]. Networking, IEEE/ACM Transactions on, 1998, 6(5): 529-543.
文章链接
ftp://ftp.cis.upenn.edu/pub/mbgreen/papers/ton98.pdf
文章主要分析了在实际应用场景下,因为数据的分布并非随即分布(比如大量文本信息以及大量存在的0比特流),导致部分校验信息出现的频率明显增加,进而降低了CRC和校验和的有效性。
理论上随即分布的数据出现corruption而通过校验和的概率为0.0015%,但在某些情况下,该数字可能上升到0.1%.
但是,即使这样,该数字也并不很高;其次,对于压缩过的数据,校验和对corruption的表现会明显提升;
除此之外,对数据要求非常高的应用场景,可以自行定义应用层的校验。
注:
- 文章的测试在ATM下进行,并非IP网络。
- 本文的很多理论分析和《When the CRC and TCP checksum disagree》比较相似,在此不做介绍