Q. What's another factor that will affect my 33% efficiency gain when downloading 8-bit yEncoded files vs. 6-bit encoded files over a v.90 or v.92 modem?
Funny you should ask. The v.9x transfer protocol used by all modern 56K modems incorporates stream compression.
yEnc gets its efficiency from being smaller (requiring less bits to store the same data) than legacy encoding methods. An attachment that is encoded with 8-bit yEnc requires less bandwidth than an attachment encoded with a legacy 6-bit encoding method.
8-bit streams (yEnc
) are less compressible than 6-bit streams (UUEncode
, MIME, Base64). Compression generally replaces repeating patterns with tokens. Because a 6-bit stream's alphabet is one fourth the size of the 8-bit stream's, the 6-bit stream re-uses the same letters more often. Using less letters yields more repeating characters, which compresses better than 8-bit streams. Therefore, due to v.9x modem compression, you lose some of your 33% savings in bandwidth when using a modem connection with yEnc.
However, because the v.9x protocol's compression is optimized for 8-bit compression and not 6-bit compression, the compression yields less than a 33% savings using v.9x. Therefore, yEnc still provides a benefit when using a modem connection, it's just not quite 33% savings. But when you're dealing with modem speeds, any savings equals good savings.
High-speed connections over an Ethernet port do not utilize compression so the 33% savings when using yEnc equals 33% savings in bandwidth.
yEnc Decoder Efficiency
It's also important to remember that there are other bottlenecks when decoding yEnc
besides bandwidth. yDecoding attachments into their binary format requires memory and processing power. yProxy
is the fastest, most efficient, yEnc proxy
. In addition, yProxy is the only yEnc decoder
that allows the user to set the CPU thread priority for yEnc decoding