Hi,

I'm aware of the fact that SOAP has come into discussion back in February.
However, I don't think there's any SOAP code in Freenet at this point.
(Correct me if I'm wrong). And I'd like to bring this up again.

I recently registered a project on sourceforge, called P2P Common Service
Framework.

http://pcos.sourceforge.net

Basically, I want to take existing P2P systems and expose them as local web
services, so that P2P systems can be used as components and I hope to reduce
re-inventing the wheel in the P2P world that way. Freenet and Gnutella is my
first 2 targets.

What I have in mind is actually the same concept as FCP and XML-RPC clients.
The only difference is that I'm going to use standard web service facility,
ie. SOAP, WSDL. I don't think it makes sense to have so many client
protocols in Freenet, so here, I'm asking for people's opinions on moving to
SOAL/WSDL. (If opinions are positive, I'd be more than happy to do the
implementation. PCOS will need a Freenet client anyway.)

I noticed that people's reluctance to use SOAL/WSDL is largely based on 2
reasons:

1) size of the library
2) complexity

The first concern is already addressed. There are web service
implementations which are pretty small:

GLUE - http://www.themindelectric.com/products/glue/glue.html
SoapRMI - http://www.extreme.indiana.edu/soap/

GLUE's jar file is only 360K. SoapRMI is in the same order, in terms of
size. (I can't really tell because SoapRMI isn't a full impl yet. From its
existing code, I don't see it getting very big.) GLUE is not open-source,
but at least it gives you an impression of how small it can be.

The second concern isn't really a concern when you have a WS toolkit, like
those 2 above. Actually, it's much simpler to implement the protocol using
the standard and the toolkit. Look at GLUE's documentation and you'll know
how simple it can be to use.

Ok, so here's my arguments for moving to SOAP. Below is some philosophical
points.

When you expose Freenet as a web service, there's no reason you can't let
people access it remotely. That's the whole point about web service anyway.
However, PCOS's initial intention is just to do local web services. First,
it's simpler this way. No security concerns, no nothing. Second, I'd like to
argue that a P2P system, when allowed to be accessed remotely, is not
healthy for the system itself (in general).

In general, a P2P system should encourage people to participate. People
participating is how the network comes into being in the first place.
Exposing a node to remote access means that someone can take advantage of
the P2P system, without being part of the system. That is, they can have the
benefit of the system, but they don't contribute. Allow remote access
encourages free-riding.

Don't get me wrong. I'm NOT totally against remote access. If there are
benefits offseting this seeming "unhealthiness", I'm all for it. I'm just
saying that is the reason why PCOS only does local service initially.


I'm eager to hear your opionions on SOAP,
Nick


_______________________________________________
Devl mailing list
Devl at freenetproject.org
http://lists.freenetproject.org/mailman/listinfo/devl

Reply via email to