Since arma introduced the format PBO to pack missions and mods, the world evolved.
Files are now bigger, images etc are included inside pbos.
The problem with pbo is, there's no compression at all BY DEFAULT!
All files are concatenated and prefixed by a format identifier, that's all.
Why pbos don't have compression?
Because arma reads them for example while selecting a mission. It would be hard to decompress every pbo every time the game needs information about the content.
What's the idea of compressed pbos?
The idea is to partially compress pbos. There's only the description.ext needed to read without extracting. But inside the description.ext there are includes for example which will break a simple solution.
Introduce a simple metadata file (like description.ext) which has all information needed for the game when it's scanning the mission directory (gametype, respawn-type, mission name, mission description).
This file, i call it metadata, is available uncompressed at the beginning of each compressed-pbo (cpbo). All other data is compressed and appended after that.
That would lead to a big improvement of filesize (up to 60% less). But there may be a small problem you may have noticed: Files need to be extracted, in pbos they are read in memory at a time.
The solution is the deflate algorithm, if you need partial decompression: http://en.wikipedia.org/wiki/DEFLATE
It's used in many compressions today and it's really simple, because it's possible to create tables to map compressed data to uncompressed data, the file could be read and decompressed partially on-fly.