The problem:
Freenet is slow. Loading a freesite from an activelink takes a long
time, and when you finally get the HTML file, it takes even longer
before you see the graphics (assuming you get to see all of them). If
you then navigate to a secondary page of that freesite, odds are that
it won't even load.
The problem isn't one of bandwidth, but one of latency. For each file
that is needed, one or more key(s) must be retrieved, and for each key
that is needed, a little "roamer" is sent out on the net to visit each
and every node (within a radius) one by one, hoping to run into the
sought after key and come home with it. This takes a long time. I
therefore submit that, because of this, it takes much longer to
retrieve ten 10KB files than it takes to retrieve one 100KB file, it's
the nature of the beast. Furthermore, since it takes ten little roamers
to retrieve the ten keys and only one to retrieve the one key, it
causes ten times the traffic on the net, compounding the problem.
A solution:
JAR files. Take the few HTML files and the few graphic files that make
a freesite, pack them in a .jar file and insert it at a "/site//" type
URI. URI's like "/site//index.html" and "/site//images/activelink.gif"
would retrieve the .jar file and extract the target file.
The advantages:
1. you only need to retrieve one file to render a complete freesite
(including secondary pages).
2. by doing so, you replicate the whole site, not just the page(s) you
visited.
3. activelinks replicate the whole site as well.
4. the .jar files are compressed, improving DS usage and transmission
times.
5. insertions are faster and more efficient.
6. chatter on the net is reduced dramatically.
7. using real .jar files leverages existing technology in the JDK.
8. users could even use the jar tool to create them (until insertion
tools get smarter).
A few things to keep in mind:
1. the .jar files should be kept under 1MB to keep them from splitting
(and for practical reasons).
2. freesites should not include files for download in the .jar files,
instead they should be inserted separately and linked to by CHK.
3. .jar files not accessed through a "//" URI should simply be
retrieved.
4. users can still use other methods if they prefer (maps/manifests).
This simple feature has the potential to greatly improve Freenet's
worst perceived shortcoming.
Yves Lempereur
_______________________________________________
Tech mailing list
[EMAIL PROTECTED]
http://hawk.freenetproject.org/cgi-bin/mailman/listinfo/tech
- [Tech] remove Yves Lempereur
- [Tech] remove guetali
- Re: [Tech] New Freenet feature proposal Timm Murray
