Zu Ashs Vorschlag: Die Idee fände ich gut, mehr Kompression = mehr DL in der gleichen Zeit.
Die Kompression als zusätzliches Feature einzubauen (für Clients die das können) ist denke ich auch ok, es muß sich halt nur mal ein Modder dazu entschliessen, die zLib (normale Zip Kompression) geht ja nicht verloren, die kann 7z ja auch.
--> Verlieren kann man meiner Meinung nach nichts außer am Anfang einer Session ein paar Packets um das Kompressionsformat festzulegen (ala: ich biete dir an 7z zip oder unkomprimiert, wähle dein Schicksal!)
Zu Ashs weiterer Idee: man kann IMHO schlecht On the Fly komprimieren, da die endgültige Datei (das komprimierte Ding) erst nach der Komprimierung feststeht, also nix mit wir komprimieren so schnell wie wir senden.. wir können erst senden, wenn alles fertig gepackt ist.
Sourcen gibts bei SourceForge.
Ein kurzes googlen nach Vergleichstest sagt mir: 7z packt im schnitt um 10% besser als Winzip (Textdokumente deutlich besser, aber wer tauscht .txt?), ist aber um den Factor 8 langsamer als zip.
Allerdings sollte man bedenken das es mittlerweile ne 3.09 beta gibt und die womöglich etwas schneller ist als die alte.
edit: ab beta 3 unterstützt er auch HT, was vielleicht einigen zu neuen boosts verhilft..
Meine Meinung: kleine Blocks behalten und 7z wäre für mich völlig ok, wenn ich dann vor jedem verschickten Block 0.3 Secs warten muß.. na und? ich hab die CPU Power..
Nachlesen:
http://www.rojakpot.com/showarticle.aspx?artno=4&pgno=1
andere Tests:
http://compression.graphicon.ru/ybs/e&exes.htm http://www.compression.ca/act-win.html