On Thu, Sep 12, 2002 at 07:37:32PM +1000, fish wrote:
> 
> Most of this sounds pretty good.
> 
> Firstly, a stupid question - is there any reason to seperate "data blocks"
> and "check blocks"?  As far as the FEC encoder/decoder knows, they're just
> blocks, right?  I mean, that's the whole *point* of it (you need any k
> blocks of n in order to decode a file).  Would make things simpler,
> conceptually, I think.  This of course is based on assumptions from FEC
> implentations that I have seen, where the block size is
> constant... obviously, if your FEC implentation makes the distinction,
> then I guess it makes sense (translation from fishish: yeah, we need to
> support checkblocks for certain algorythms, but they don't make sense for
> onion's)
> 
> Anyhow, the other point I wished to make, is that from looking at your
> information, it seems like it would be far more convinent still to just
> call the onionnetworks library direclty - okay, yeah, I see the usefulness
> of this for providing access to people who don't have/don't want to have
> bindings to this, but it just seems like an unnessesary layer of
> abstraction to me.  But perhaps I am on crack.
Hmmm, maybe. It's not well documented afaics? Anyway, higher level
commands (with reasonable status reporting, and some sort of keepalives
or a way to reconnect to a running command, and it only terminate when
explicitly told to), would make clients easier to write, but this looks
useful.
> 
> > III. Changes to SplitFile metadata format.
> > 
> > 0) Deprecate the BlockSize field, since check blocks are not necessarily the
> > same size as data blocks and blocks may be different sizes across segments.
> 
> I strongly disagree with this - if we want to support this case, it is
> better to then have a seperate set of metadata for each segment and
> specify the block/check size in each one.  This information is very useful
> to have for reasons of memory allocation and the like.
> 
> Other than that, however, All of that being said, this all looks okay to
> me on my initial reading.
> 
>       - fish
> 
> p.s. I included the following in the original draft of this email, but
> considered it offtopic and hence seperated it out from the main
> email.  However, I include it here because it is interesting and
> semi-relevent:
> 
> > For a given maximum block size, some FEC algorithms can only
> > practically handle files up to a certain maximum size.  The design
> > uses segmentation to handle this case.  Large files are divided into
> > smaller segments and FEC is only done on a per segment basis.  This
> > compromise provides a least limited redundancy for large files.
> 
> Should we be perhaps looking for a library which doens't suffer from these
> problems as much as onion's library, however?  The thing is, the whole
> usefulness of FEC is for big files, you know... I know that we do have to
> deal with reality instead of would-be-nice's, however, but it is something
> to think about.
> 
> The other problem is, that as you stripe like this, the amount of
> redundancy is, of course, reduced significantly, however you already knew
> that.  However, people writing bad algorythms for downloading files (block
> 1,2,3,4.... etc in order) could make this problem even worse.  (As a side
> note to this, I have been wondering if an AWT based freenet download
> manager would be a useful thing to code/have... any thoughts on
> this?  Heh, of course, this would require me to learn how to communicate
> with freenet from java, but i can't be that hard, can it? :-p)
Please do. Do NOT use swing. And include more detail on the status of
the individual blocks, eg bytes downloaded/total progress bar, time this
block idle for etc. Would be very cool.
> 
> Anyhow, I'm sure you knew all of this... just restating it for my own
> benefit, don't mind me :).  I'll look into the alternative libraries
> myself over the next few days... there's nothing to stop us having two
> encoders, given that the facilities are there, and let the best codec win
> :-p.
> 
> 
> 

-- 
Matthew Toseland
mtoseland at blueyonder.co.uk
amphibian at sourceforge.net
Freenet/Coldstore open source hacker.
Employed full time by Freenet Project Inc. from 11/9/02 to 11/11/02.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: not available
URL: 
<https://emu.freenetproject.org/pipermail/devl/attachments/20020912/fa75bf71/attachment.pgp>

Reply via email to