They are PARity files,
generated from the original archive set of RAR files. They are used by
programs such as SmartPAR to complete posts where one or more files is missing
or damaged, at a ratio of 1 to1, where any one PXX file can recreate any
missing RAR file. If you have all the RARs, you don't need any of the PARS, if
you are missing 2 RARs, get the small PAR and any 2 PXX files, if you're
missing 8 RARs, get 8 of the PXX, etc. The rather small PAR file itself
is an index/CRC which isn't absolutely necessary. If you're missing 9 RARs and
there are only 8 PXX (the small PAR doesn't count) then you will need one
fill only. Any one of the RARs you're missing will do.
Get SmartPAR at: http://www.disc-chord.com/smartpar/
or here if the
dis-chord site is down.
(excerpted and slightly
modified from the SmartPAR
website.)
SmartPAR is an
application that handles 'parchive' parity-data files. These data files have
extensions like .PAR, .P01, .P02, ..., .P09, .P10, etc. Throughout this
document, these files are referred to as PAR files, even though the extensions
are not limited to PAR.
PAR files use
Reed-Solomon error-correction codes to create redundant data. In the case of
loss or corruption of data in the original data files, the data may be
reconstructed from the PAR files. The goal of PAR files is to be able to allow
data recovery without requiring excessive redundancy. A great feature of PAR
files is the versatility of the files. In many ways, PAR files are
"chameleon" files, having the ability to reconstruct any
one of the missing files- whether part 1 or part 71 is missing- as long as
you have as many PAR files as missing files, the data can be reconstructed!
Creating PAR files for use with archives that are to be posted is simple with
the program discussed above. The recommended amount of Parity files ranges from
20 percent for smaller archive sets (20 RARS/ZIPS and below) to 10 percent for
very large sets of 100 files or greater. Smaller posts, such as ten (10)
files or less, probably don't really need any PAR files at all, unless the
poster's server is particularly bad about propagating files. The default
setting at this writing is 12 percent, which seems reasonable. The amount
any poster creates depends in part on how good his news server is at propagating
the files. It is up to the poster to use his/her best judgment in the creation
of PAR files.
Starting with version
V3.0 WinRAR has the option to create "recovery volumes" when you are
creating the archive itself. These have the naming format filename.partXXX_Y_Z.rev
and incorporate the same sort of Reed-Solomon redundant data creation as
SmartPAR. This eliminates the need for an extra program, provided the people
doing the un-archiving have a version of WinRAR capable of dealing with it.
If you have trouble
running SmartPAR, especially to create PAR sets, and you are running Windows
XP, get a new version as it is now XP-compatible. http://www.disc-chord.com/smartpar/
( Modified slightly from an explanation by "rampage", posted to ABWI
by "retired" )
The SmartPAR and FastRAID programs generate PARs and recover
missing files using mathematical technology similar to that used in RAID
systems for the past 20-30 years.
The principle of RAID (R)edundant (A)rray of (I)nexpensive (D)rives
Drive 1 - 25% of data
Drive 2 - 25% of data
Drive 3 - 25% of data
Drive 4 - 25% of data
Drive 5 - Parity data ( equal to the PARs )
A VERY simple example:
Drive 1 data = 01
Drive 2 data = 07
Drive 3 data = 05
Drive 4 data = 04
==
Drive 5 data = 17 (Parity data)
So, if any drive is
lost:
Drive 1 data = 01
Drive 2 data = xx <--- bummer
Drive 3 data = 05
Drive 4 data = 04
==
Drive 5 data = 17 (Parity data)
Drive 2 data can be reconstructed by 'simple' math.
01 + X + 05 + 04 = 17
X = 17 - 01 - 05 - 04
X = 07
That is a *very* simple example!
Substitute RARs for the drive data and PARs for the parity data and you've got
the principle.
In essence, each single PAR can be used as a 'wild card' for any single missing
RAR.
*****
Now, let's plug this tool into everyday Usenet.
Frances wants to post a 10 file set. Being kind, she also uses SmartPAR to
generate 2 PARs allowing for 20% file/data redundancy.
The post goes out on a typical Usenet day, and three people download whatever
is complete on their servers as follows:
x = got it
o = busted
|
|
Larry |
Moe |
Curly |
|
r00 |
x |
x |
x |
|
|
|
r01 |
x |
x |
x |
|
|
|
r02 |
o |
o |
o |
<--- |
bummer |
|
r03 |
o |
o |
o |
<--- |
bummer |
|
r04 |
x |
x |
x |
|
|
|
r05 |
x |
x |
x |
|
|
|
r06 |
x |
x |
x |
|
|
|
r07 |
x |
x |
x |
|
|
|
r08 |
x |
x |
x |
|
|
|
rar |
x |
x |
x |
|
|
Seems like the original news server botched a couple of files at the source.
OK, each person needs the same two fills, and Fran can post either r02 and r03,
or post the two PARs, and everyone can complete their download.
On the second day, another 10 part post - same three customers:
x = got it
o = busted
|
|
Larry |
Moe |
Curly |
|
|
|
r00 |
x |
x |
x |
|
|
|
r01 |
x |
x |
x |
|
|
|
r02 |
o |
x |
x |
<--- |
bummer |
|
r03 |
o |
x |
x |
<--- |
bummer |
|
r04 |
x |
o |
x |
<--- |
bummer |
|
r05 |
x |
o |
x |
<--- |
bummer |
|
r06 |
x |
x |
o |
<--- |
bummer |
|
r07 |
x |
x |
o |
<--- |
bummer |
|
r08 |
x |
x |
x |
|
|
|
rar |
x |
x |
x |
|
|
This time, various
propagation errors took their toll.
Each person still needs two files, but they're all different files.
Whatever can she do?
She can re-post six files (r02-r03-r04-r05-r06-r07) so that each one gets their
two files, or she can post two PARs that each person can use as two wild
cards for their two fills!
If you can figure that out for her, you already understand most of the math
you're gonna need.
*****
In past practice, adding up all the different requests for missing and
incomplete files without PARs has often amounted to a virtual re-post, spanning
days (weeks?) of requests and fills.
Today, using PARs, assumptions can be made that the incomplete files and
incomplete PARs are distributed somewhat randomly as they rattle around the
world; that they amount to something less than 20% of the post, and each
downloader will need a few different fills.
If each downloader can get MOST of the complete files and a complete PAR for
each missing file, by using SmartPAR, they can reconstruct the complete set as
soon as they've finished downloading what they can.
If everyone needed the SAME few files, then posting either fills,
or PARs will work.
If everyone needs different files, PARs are the way to go.
http://www.disc-chord.com/smartpar/
http://sourceforge.net/projects/parchive
http://www.fluidstudios.com
Get SmartPAR or Fluid Studios Software RAID Toolkit, and answers to your
more technical questions, along with detailed (but relatively simple)
instructions on using the program(s).
*****
Suggestions for posting with PARs
Prepare your RARs, etc.
Make an SFV.
Make a set of PARs with about 12% or more, of data redundancy. (The default
setting in SmartPAR seems reasonable.)
*****
Downloading with PARs:
Get all the COMPLETE originals you can. Then you won't need any of the PARs.
Get a complete PAR for each missing original. (No! You can't use the
same one over and over!)
Run SmartPAR to recreate the missing RARs from the PARs.
If you have SmartPAR installed, you can simply double-click the small .PAR
file, and SmartPAR will automatically run and check the archive, recreating any
missing RARs if you have the appropriate number of PARs to repair/replace the
damaged/missing RARs .