Hi,

[snippage - whole at bottom]
>Nah, not much good.
>What do you do if you want to put an application on top of freenet ?
>like for example usenet over freenet ? The "application" part should
>certainly be kept unused for now for such future usages.
>

An application - those things that talk to freenetlib - should sit on top
of the freenet protocol. Freenet should not be telling applications what
the application's data is, the applications should just figure it out. You
can encode virtually any protocol treating freenet as just a
data-dictionary (a set of key-data pairs). 

I hope shortly to be demonstrating an encoding system that allows html
reading and an interactive BBS sitting directly on top of freenet protocol.
But that's just one example. For maximum flexibility, there should be
unlimited range of possible applications using freenet protocol, so
specifying the application type in the header would be a mistake. It would
imply an extra maintenance and centralization headache, be unnecessary or
both.  (Java - what version of java? - etc.). 
A separate usenet application could just scan the keys starting with
Usenet+datestring+0, then Usenet+datestring+0, and going as far as posters
had added sequential values. 

I strongly agree with the general sentiment of making freenet a black box
with as few in-arrows and out-arrows as possible. This actually makes it
more extensible since then applications and transports can put on the top
and bottom knowing very little about the basic item. 

**** Remember, a key thing is that an application on top of freenet always
has to be ready to toss-out garbage values anyway - the whole freenet model
is based on the idea that garbage can/will be inserted at various points
and that application will have filter it out (why it would be very useful
to be able to shut-off easily the transmission of a single document). So no
matter what, each application will have to parse a document to see if they
are really getting what they want - so giving a 'hint' will essentially
have no value here. 

We wouldn't get any increase in functionality even if we gave the
application access a database with arbitrary fields and subfields - after
all, any set of database value could mapped to the basic freenet data model
by setting a document with the value of field1.field2 at the key
"field1.field2" 

Joe 

At 09:09 AM 5/15/2000 +0000, you wrote:
>
>Theodore Hong wrote:
>> 
>> 
>> If I remember my ISO model correctly, it should be:
>> 
>> Application     Freenet protocol
>> Presentation    Encryption, serialization
>> Session         unused
>> Transport       TCP
>> Network         IP
>> Datalink        don't care
>> Physical        ...
>> 
>> theo
>> 
>Nah, not much good.
>What do you do if you want to put an application on top of freenet ?
>like for example usenet over freenet ? The "application" part should
>certainly be kept unused for now for such future usages.
>
>CU,
>  Philipp
>
>_______________________________________________
>Freenet-dev mailing list
>Freenet-dev at lists.sourceforge.net
>http://lists.sourceforge.net/mailman/listinfo/freenet-dev
>
>


_______________________________________________
Freenet-dev mailing list
Freenet-dev at lists.sourceforge.net
http://lists.sourceforge.net/mailman/listinfo/freenet-dev

Reply via email to