Hey guys. I haven't been around for a while, so if this has already been
discussed, I apologize. The major performance consideration with freenet
is network lag. I think it would be beneficial to integrate zlib
compression into the freenet protocols, just like in HTTP 1.1.
Specifically, I suggest adding an optional field named Compression to the
DataFound message. Acceptable values for this field would initially be
zlib and none, with none being the default if no Compression field is
present. Then of course if zlib compression were specified, the data
sections of following DataChunk messages would be zlib compressed. Other
compression algorithms could be added in later versions.
An alternative would be to have the Compression field in each DataChunk
message instead, but this would create additional overhead.
The problem of backwards compatibility with older clients that do not
support compression or only support some of the compression algorithms,
could be solved by having the ClientGet message also contain a Compression
field with a comma separated list of supported compression algorithms:
Compression=zlib,none
For inserts the ClientInsert message could also have a Compression field.
If the node receiving the insert does not support the compression being
used, it could return a CompressionError. Unfortunately, current clients
would not know to return this error. We could wait to implement insert
compression until some other non backwards compatible change is made and
implement them at the same time.
It we decide to add this feature, I would like to do it.
l8r
Aaron
_______________________________________________
Devl mailing list
[EMAIL PROTECTED]
http://lists.freenetproject.org/mailman/listinfo/devl