After discussing with Ian and Nextgens, these are the priorities for the near 
future:

DB4O:
This is mostly working ... but it's been mostly working for quite a while now, 
and the bits that break are often quite serious. One problem is we tend to 
get constant garbage collection for long periods, and even OOMs. And that's 
just for requests. Inserts are harder, because the current insert code sucks; 
I may end up rewriting that. Inserts also mostly work. Freesite inserts 
haven't been tested; and there are a small number of vital features still to 
implement (e.g. deleting stuff when it's finished with!). Most work at the 
moment is on optimisation and on debugging the catastrophic results of 
optimisations. :) There are some "heavy" optimisations (i.e. optimisations 
which will take a lot of work but may be major improvements), which I have 
mentioned on the list recently, but hopefully they won't be necessary at 
least not in the near future. All in all, it should be feasible. If it is 
feasible, it should be merge quality within at most a couple of weeks.

AUTOMATED TESTING:
Before we enable FOAF routing, or even before we merge the branches, we should 
have some regular testing on the real-world network going on. This would mean 
running a node-based tester every day, and recording the results (probably 
reporting them to a mailing list). The 3 tests currently proposed:
- Attempt to connect to all the current seednodes. Report which are online, 
along with ping times. Nextgens has done most of the work for this.
- Bootstrap a new node. Measure the time taken to reach some number of peers.
- Insert random data to a node. Bootstrap a new node, measure the time taken 
to fetch the data from the new node.

FOAF ROUTING:
Friend-of-a-friend routing should dramatically improve performance: in theory 
it should give us a gain on the order of halving average request path 
lengths. However, we need to be able to quantify this in practice, so the 
code (which nextgens has written) cannot be enabled until we have regular 
testing going on. Also, some major security issues have been raised: because 
an attacker can spoof any number of bogus locations, and because he knows our 
peers' locations and can find out our peers' peers' locations, he can divert 
either all traffic to himself, or most local traffic plus some remote 
traffic. Several possible solutions have been proposed, I will elaborate them 
on the other thread.

The above, plus merging sdiz's new datastore, plus randomized splitfile 
encryption, sorting out the current seednodes problems, some more work on 
streamlining installation and bandwidth limiting, plus a hell of a lot of 
debugging, should put us in a good position for 0.8.0 late this year or early 
next year.
-------------- 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/20080722/681a98ac/attachment.pgp>

Reply via email to