Core Concepts
単一和チェックサムアルゴリズムを改良し、性能/複雑さ/有効性のトレードオフ空間において新しい点を提供する。単一和チェックサムよりも優れた故障検出特性を持ち、CRCよりも計算が簡単である。
Abstract
本論文では、単一和チェックサムアルゴリズムを改良した新しいチェックサムアルゴリズムを紹介する。このアルゴリズムは、性能/複雑さ/有効性のトレードオフ空間において新しい点を提供する。
主な特徴は以下の通り:
単一和チェックサムアルゴリズムを改良し、ハミング距離3の故障検出性能を長いデータ長まで提供する。ブロックの下位ビットをゼロにすることで、モジュロ演算時の単一ビット故障の伝播を防ぐ。
単一和チェックサムでありながら、デュアル和チェックサムよりも長いハミング距離3の性能を発揮する。これを実現するために、チェックサム値の2倍サイズの整数演算のみを使用する。
無限長のデータに対して効率的にモジュロ演算を行う反復アルゴリズムを提案する。k-bitブロックごとに2*kビット除算と k-bit剰余演算を行う(典型的にk=8, 16, 32)。
以下のモジュラスが良い候補として同定された: Koopman8用253, Koopman16用65519, Koopman32用4294967291。特殊な用途では、Koopman8用の239も有効。
k-1ビットのKoopmanチェックサムにパリティビットを追加したハイブリッド方式を提案した。これにより、k-bitチェックサムのハミング距離4を約半分のデータ長まで実現できる。
CRCに比べると劣るものの、CRCほど複雑ではなく高速に計算できるため、特定の用途では有用なチェックサムアプローチと言える。
Stats
データ長4092バイトまでハミング距離3を実現できる。
データ長134,217,720バイトまでハミング距離3を実現できる32ビットバージョンを提案した。