- PAR1
-
PAR1/PAR2 sind Checksummenfomate für Dateien. Für die Prüfung wird der Reed-Solomon-Code benutzt, der beim Lesen oder Empfangen der digitalen Daten Fehler erkennen und korrigieren kann.
Die Dateien mit Prüfsummen können aus einer oder mehreren Ausgangsdateien erstellt werden. Diese werden dabei intern virtuell in sogenannte slices gestückelt. Die Prüfsummen werden dann in derselben Weise wie bei PAR1 gebildet, allerdings nicht von den Dateien, sondern von den slices. Anhand dieser Prüfsummen können Programme wie Quickpar prüfen, ob die Dateien fehlerfrei sind und notfalls fehlende Daten reparieren oder auch ersetzen.
Beim erstellen von PAR2 Dateien kann man die Größe der slices und die Redundanz wählen. Bei einem Fehler in einer Datei muss mindestens ein slice ersetzt werden, wozu ein Recoveryblock benötigt wird.
Die Größe einer PAR2-Datei steht in keinem festen Verhältnis zu den dazugehörigen Dateien. Es ist also möglich eine 10 MB große Datei mittels einer nur 100 KB großen PAR2-Datei zu reparieren, vorausgesetzt es sind nur in einem kleinen Bereich der Datei Fehler.
Zur Reparatur wird eine gewisse Anzahl von Recoveryblöcken benötigt. Eine PAR2-Datei enthält üblicherweise mehrere solcher Recoveryblöcke. Die genaue Anzahl kann variieren, so dass man sich die passende Kombination PAR2-Dateien herunterladen kann, die benötigt wird.
Die Dateikonvention einer PAR2-Datei sieht so aus:
dateiname.ext.volFFF+NNN.par2
FFF steht für den Startindex der in dieser Datei vorhandenen Recoveryblöcke, NNN für deren Anzahl. Wenn also 20 Recoveryblöcke benötigt werden, besteht die Möglichkeit, eine PAR2-Datei mit 20 Blöcken, oder zum Beispiel 20 PAR2-Dateien mit 1 Block zu verwenden.
Implementierungen
Quickpar ist ein Windowsprogramm, das die Erstellung, Prüfung und Reparatur von Archiv-Dateien mit PAR2 beherrscht.
par2 ist die OpenSource Implementierung im Paket par2cmdline. Es wird im Projekt parchive für Linux und Windows entwickelt. Eine Version mit multi-threading existiert.
Weblinks
- Quickpar
- par2.net
- Projekt parchive - Implementierung für Linux
- parchive mit multithreading - par2cmdline 0.4 mit Intel Thread Building Blocks 2.0
- phpar2 - par2cmdline Weiterentwicklung mit multithreading und hochoptimiertem Assemblercode
- MacPAR deLuxe - Programm für Mac OSX zur Erstellung, Prüfung und Reparatur von Archiv-Dateien mit PAR2
Wikimedia Foundation.