Par und Par2 Files in Usenet Posts
Zuletzt aktualisiert am Dienstag, den 29. Dezember 2009 um 15:56 Uhr Geschrieben von: Michael Bäcker Dienstag, den 29. Dezember 2009 um 14:21 Uhr
Es ist immer beliebter geworden, Dateien über UseNet Newsgroups zu verschicken. Doch je größer die Dateien geworden sind desto komplizierter ist es geworden, die Dateien erfolgreich herunterzuladen.
Zeitweise konnte man sich gut damit behelfen, die großen Dateien in kleinere Dateien zu zerlegen. Doch auf dauer wurde es für viele nervig, immer wieder Dateien nochmals zu posten, wenn es nicht angekommen ist.
Mittlerweile behilft man sich mittels sogenannter Parity Files. Davon gibt zwei verschiedene Arten.
PAR Dateien / Files
par Files sind einfache Checksummenergebnisse. Das wird am einfachsten klar mit folgendem vereinfachtem Beispiel:

Um ein PAR File zu Erzeugen, beginnt man damit, alle ersten Bits aller Archive (Spalte 1) zu addieren. Wenn das Ergeniss gleich ist, ist das erste Bit im PAR File 0, ist das Ergebniss ungleich, dann ist das erste Bit im PAR File 1. Diese Vorgehensweise wird analog dazu für alle anderen folgenden Bits wiederholt.

Um nun aus einem PAR File und, in unserem Beispiel, den drei vorhanden Archivdateien (1,2 und 4) die fehlende Archivdatei (3) zu erzeugen, muss man die ersten Bits der Archive (Spalte 1) addieren und ermitteln, ob das Ergebniss ungleich oder gleich ist. Dann vergleicht man das Ergebniss (gleich oder ungleich) mit dem ersten Bit der PAR Datei und man weiss nun, ob das erste Bit der fehlenden Datei 1 oder 0 ist. Dieser Vorgang wird wiederrum für alle folgenden Bits wiederholt.

Das ist wie bereits erwähnt ein vereinfachtes Beispiel um die Funktionsweise zu verdeutlichen. Das ganze wird komplizierter, wenn mehrere Dateien aus mehreren Archivdateien und PAR Dateien erzeugt werden.
PAR Dateien erkennt man an der Dateiendung (.par .p01 .p02) . Für jede fehlende Archivdatei braucht man ein PAR File. D.h. wenn 2 Archivdateien fehlen, braucht man 2 PAR Dateien um diese zu rekonstruieren.
PAR2 Dateien / Files
Um sämtliche Vorteile von PAR2 Dateien zu nutzen, muss der Newsreader so konfiguriert sein, dass er auch unvollständige Dateien herunterlädt. PAR2 funktioniert trotzdem noch, auch wenn der Newsreader dies nicht unterstützt. Aber man muss mehr PAR2 Dateien herunterladen und es dauert länger, bis die Dateien repariert oder auch rekonstruiert sind. Eine vollständige Datei mit PAR2 zu rekonstruieren dauert länger als mit PAR1. Die Reparatur einer Datei geht mit PAR2 deutlich schneller als mit PAR1.
PAR2 schlägt PAR1 unter folgenden Bedingungen:
- Kaputte Dateien können repariert werden. Ein einzelner Byte Fehler in einer 10 MB großen Datei benötigt meistens nur eine 100KByte "große" PAR2 Datei
- Es gibt keine Beziehung zwischen der Größe der Daten Dateien und der größe der Par Dateien. Normalerweise haben die unterschiedlichen PAR Dateien unterschiedliche Größe, um sich die entsprechende Größe herauszusuchen, die benötigt wird, um die Reparatur durchzuführen.
PAR2 funktioniert im Gegensatz zu PAR1 nicht Dateibasiert, sondern arbeitet mit sogenannten virtuellen Slices. Die Datei / Dateien werden in Slices unterteilt und dann mit der PAR1 Methodik abgearbeitet. Die dabei entstehenden PAR Slices werden dann zusammengefasst in PAR2 Dateien.
Das dazu benötigte Programm Quickbar, dass mit den PAR2 Dateien arbeiten kann sagt dann, dass es z.B. 20 recovery Blöcke benötigt. Das heisst aber nicht, dass man sich 20 PAR2 Dateien herunterladen muss.
PAR2 Dateien enthalten normalerweise mehr als einen recovery Block and die Größe der PAR2 Dateien variiert, damit man sich die exakte Kombination herunterladen kann, die man braucht. Dazu gibt es eine entsprechende Dateinamenkonvention:
dateiname.ext.volFFF+NNN.par2
Die Zahl NNN steht für die Anzahl der Recovery Blöcke, die in dieser PAR2 Datei enthalten sind. Hier ein Beispiel für einen Satz PAR2 Dateien:
dateiname.ext.vol000+01.par2
dateiname.ext.vol001+02.par2
dateiname.ext.vol003+04.par2
dateiname.ext.vol007+08.par2
dateiname.ext.vol015+15.par2
dateiname.ext.vol030+28.par2
dateiname.ext.vol058+40.par2
dateiname.ext.vol098+40.par2
dateiname.ext.vol138+40.par2
Im ungünstigen Fall, wenn Quickbar sagt, dass man 60 Recovery Blöcke benötigt, kann man entweder 2 "+40" Dateien herunterladen (das sind dann 20 Blöcke zu viel) oder ein +40 und ein +28, oder +40 und +15 und +04 und +01 (das ergibt exakt 60 Recovery Blöcke).
Das Programm Quickpar ist kostenlos zu erhalten unter folgender Adresse: http://www.quickpar.org.uk/