WinMX World :: Forum

Technical => WinMX Client => Topic started by: Stealth on October 23, 2005, 06:05:06 pm

Title: Making WinMX independent
Post by: Stealth on October 23, 2005, 06:05:06 pm
To continue using WinMX we need to make it independent and not rely on the currently available servers.

I have ideas but with no way to make it happen or if its possible.

Any one else have ideas or would like to see this happen?
Title: Re: Making WinMX independent
Post by: Andre on February 09, 2007, 11:15:49 pm
What about using a system like gnutella/ gnutella2/ mute use.  a gwebcache like cache.
Title: Re: Making WinMX independent
Post by: GhostShip on February 09, 2007, 11:33:52 pm
Those caches are not much different to the sort currently being used.

Obviously we need to explore possible new ways to deliver node information to joining clients.
I think we could all do with seeing some new ideas to discuss, this subjects been on the back burner for a while and as compatibility is an issue some avenues are currently not viable.

Any more ideas to add to those you have expressed ?
Title: Re: Making WinMX independent
Post by: Lagerlout666 on February 10, 2007, 12:13:47 am
i have. what about over the network in network chatter betwen primrys their status being sent between them. as in how long they have been online and how much htey have been online over the last month. The network chatter could send these statistics to each primary etc and each primary can make a list of the top 100 users over the last month. this could be saved and downloaded by the secondries when they connect. this would mean that on conenct the software would scan the 100 ips in a list till it found a primary that it could conect to, this would also work for primarys connecting, then cutting out the need fora peer cache. all that would be needed then is a month by month update on sites advertising that months dated Winmx wid that months statistics saved inside incase a user found that they couldnt connect.

I know obvious protecton would be requiered for the statistics etc to not be easily read and thesaved file but it seems feasable 

                          copywrite tiny4eva lmao



Title: Re: Making WinMX independent
Post by: GhostShip on February 10, 2007, 01:09:02 am
I have expressed the idea of an encrypted cache of say 100 IP,s before and that sounds similar to your idea, of course any ideas like these have flaws and some are able to be overcome, there are some aspects of mx operation that limit the scope of viable solutions, but its great to see interest in these important matters and debate taking place, lets see some more ideas  :)
Title: Re: Making WinMX independent
Post by: Lagerlout666 on February 10, 2007, 04:59:42 am
Never head you mention that quicks, i seen somethin about it when looking at the ares source code not so long ago and reading up on how that works and idea that had been put forward to that. but hay great minds think alike
Title: Re: Making WinMX independent
Post by: GhostShip on February 10, 2007, 08:52:09 am
I,m sure I could fill books with all the strange ideas I come up with.  :lol:
Title: Re: Making WinMX independent
Post by: J a M e S on February 10, 2007, 10:57:39 am
whats wrong with the servers..
i see no need to change something tat works perfectly well..

winmx will allways be alive as long as people are willing to run peer caches.... and thers alot of people that would jump at the opertunity to do so (i myself would do, but router wont lemme open required ports)
Title: Re: Making WinMX independent
Post by: KM on February 10, 2007, 02:14:22 pm
your proposition to give macrovision control over the caches (which *is* what you are suggesting) is not exactly ideal

5 legitimate caches 5000 macrovision ones returning messed up results, each time you hit a macrovision cache it gives a list of offline primaries and you need to wait ages for it to time out before moving on to the next, say a 30 second delay per query, 1 query in 1000 actually gets to a legitimate cache and can connect, so that's over an 8 hour connect time on average

yeh, I'm sure i wouldn't be alone in sticking to the current system which works perfectly well and has no problems

(btw some sort of system of relying on information of known primaries from last time won't work as the vast majority of primaries have dynamic IPs, and of course macrovision can easily have just as much influence over the results as a legitimate user - multiplied by a few hundred thousand)
Title: Re: Making WinMX independent
Post by: Lagerlout666 on February 10, 2007, 06:11:50 pm
Well i was thinking along the lines of tryig to make a decentralised network. you not got any idea's of your own on this KM. I said that making such ways would need to be heavily security taged to stop corruption by said macrovision but wouldnt a blocklist as we have now in every single programme stop the connecting to bad primarys if coded correctly. Seen as we have no issue of any struggle of finding these morons so why what we do cant just be continued. I understand your concerns i have them also an im sure their is a hell of alot more to think about tat what i come up with but if that part of the programme can just be a called dll like we have a te mo that would be a very private dll that would just be used for conencting as secondry and primary, at the end of the day once that is made their should be no need to modify that part of the programme again.
Title: Re: Making WinMX independent
Post by: Lagerlout666 on February 10, 2007, 06:28:26 pm
And as for dynamic ips. it wouldnt be hard to make the prorame store the lst ip it ws using and check on next restart if it has changed. it then could activate the reporting process or disable it. pretty much the same as the auto dns updater works. if that can call the ip surely mx coded could.
Title: Re: Making WinMX independent
Post by: KM on February 10, 2007, 07:13:14 pm
if you have a list of 10 primaries (all winmx knows about) and you save it, then open MX even a day later then most if not all are now invalid and offline, if you go offline for a week then you are basically screwed

as for a block list for it, you'd be better off with a list of good caches rather than trying to locate all bad caches and blocking them all... and you'd then still have to have some central control for that list... kinda like, well, in fact exactly like the current cache system

we don't need a completely decentralised cache system - it's not actually required, it's more of a "it would be nice to have" feature... and the risks of such a system are very real and impossible to overcome, a system is either centralised to allow some central authority to control caches to a point (in which case it's like now) or it isn't in which case macrovision can do whatever they want and nobody else can do anything about it

as i said, i'd much rather a system that works perfectly fine instead of something that might be nice to have but doesn't work

and yes, i had looked in to several ideas to reduce the dependence on a central source for locating primaries, but ultimately they all had major flaws, and none actually could provide the same level of service as we have at the moment, let alone trying to improve it
Title: Re: Making WinMX independent
Post by: Lagerlout666 on February 10, 2007, 07:30:04 pm
Well ok, ya meanie lol.
I thought it was a good idea, ill go back under me stone and think some more lol
Title: Re: Making WinMX independent
Post by: sIrMoOn on June 21, 2007, 12:54:08 pm
While we're talking about changing the peer cache mechanism - what is the overhead (time, cache usage) from secondary clients trying to connect to primaries that are really just chat servers?  Would it be worthwhile to implement some system of advertising a primary's capabilities to the peer cache?

1) chat server connects to cache, advertises its capabilities MXP_CHAT and what primaries it's seeking MXP_ANY

2) other third party programs?  (i can't think of any others that use primary connections, but if there are they coudl benefit)

3) winmx primary or legacy third-party program connects to cache, assume capabilities MXP_CHAT + MXP_FILES + MXP_SECSERVER (so current behavior, it gets registered for everything)

4) secondary client connects, capabilities MXP_NONE (doesn't get registered), it's seeking MXP_SECSERVER, which causes it to not pull down chat server ip's (#1) since they don't have the proper capability.

maybe it'd be helpful?  and with such a generalized matching system, maybe new programs with new capabilities could be developed?
Title: Re: Making WinMX independent
Post by: KM on June 22, 2007, 02:21:42 am
a client is either a primary server meaning they are accepting connections, or they aren't, meaning they aren't... if they aren't then the cache doesn't return them because nobody would want that information, and if they are then it returns them because that is the information every client wants
Title: Re: Making WinMX independent
Post by: GhostShip on June 22, 2007, 07:03:40 am
I'm not sure if your aware of this sIrMoOn but winmx uses a system of client ID,s that specify what crypt table to be used for what type of client, this is something broadly similar to what your describing.

My concern is with the peer cache acting in any increased information gathering role as its likely to then become a target for illegal information gathering attacks that the cartels pay for, the current system is fast has virtually zero logging and stores the latest transactions in ram only while its dealing with a joining client, to offer filtering / logging at the cache for client facility types introduces a potentiall method of filtering file-sharing clients that could be then implemented under a possible future court ruling, we have to look ahead in view of the deteriorating legal climate in the US.
Title: Re: Making WinMX independent
Post by: SamSeeSam on June 22, 2007, 02:50:13 pm
About the primary ip gathering thingy...
Is it possible to make a provision for setting up static dns addresses?
That way, active primaries could be found quickly.

Cheers :P
Title: Re: Making WinMX independent
Post by: sIrMoOn on June 23, 2007, 12:21:59 am
My concern is with the peer cache acting in any increased information gathering role as its likely to then become a target for illegal information gathering attacks that the cartels pay for, the current system is fast has virtually zero logging and stores the latest transactions in ram only while its dealing with a joining client, to offer filtering / logging at the cache for client facility types introduces a potentiall method of filtering file-sharing clients that could be then implemented under a possible future court ruling, we have to look ahead in view of the deteriorating legal climate in the US.

Fair enough - a very valid point.

a client is either a primary server meaning they are accepting connections, or they aren't, meaning they aren't... if they aren't then the cache doesn't return them because nobody would want that information, and if they are then it returns them because that is the information every client wants

Although you didn't directly address the fundamental error in my post, I think you've helped me fill in a logic gap anyway, something that hadn't ocurred to me but perhaps should have - that chat servers use the peer cache the same way secondary clients do, even though they use those addresses to make primary connections.  That makes a lot of sense and makes capability tracking at the peer cache rather redundant for that specific purpose.  In the extremely hypothetical example I gave of new types of programs trying to use this peer mechanism, the capability tracking would still make sense, but in reality a new program's more likely to use an entirely different connection mechanism independent of WinMX.

I definitely retract my suggestion = )

Still I do wonder if there's any kind of improvements to the WinMX network or client that _are_ being considered.  A lot of people still love and use WinMX, me included, but it really shows its age with things like (for example) no UPnP.  And there are other obvious improvements - like being able to associate a chatroom with a DNS name instead of an IP address.  The advantages of DNS over raw IP addresses are much hyped when it comes to the peer cache - have you considered any way of giving ordinary chat hosts those advantages?
Title: Re: Making WinMX independent
Post by: KM on June 23, 2007, 12:58:08 am
hostnames for channels might be useful (although not possible to add to winmx it could easily be added as an extension for third party clients) however to verify that the hostname given is correct (so you can't just type www.google.com as the rooms hostname for example) would mean looking them all up, which would be problematic... of course it wouldn't be too much hassle to allow you to manually give a name using a hostname (in the same way you can use Name_IP:Port currently), however the advantages of that would be limited to say the least
Title: Re: Making WinMX independent
Post by: Bearded Blunder on June 23, 2007, 01:04:55 am
i know uPnP has been looked at, there was a whole beta series of patches including it, i suspect any new patch versions are likely to....

the subject of hosting & use of dns has been discussed many times by many people, my understanding is that the protocol doesn't allow for it, so either you live without, or have to replace every chat server & client out there (including winmx itself) with something using a new protocol... which isn't very feasible & certainly wouldn't be wort the effort just to add this for chat... especially considering the vast majority of chat hosts have dynamic hostnames directly related to their dynamic ip address rendering the feature useless unless they go set up no-ip accounts or similar....
Title: Re: Making WinMX independent
Post by: sIrMoOn on June 23, 2007, 03:21:31 pm
Well, here's a possible implementation mechanism for WinMX...

Let the dynamic-host chatrooms register themself like this:

My Chatroom@me.no-ip.org_000000001A2B

If the patch could somehow determine what room was being requested each time WinMX tries to open 0.0.0.0, then could do a DNS lookup and connect WinMX to the right host.  Not that much different from how the patch already maps peer cache access attempts to the right host?
Title: Re: Making WinMX independent
Post by: SamSeeSam on June 23, 2007, 05:09:21 pm
That has kind of defeated the purpose of looking up the dns...
You hvae both ip and dns, why not use ip and forget about the dns? lol

Cheers :P
Title: Re: Making WinMX independent
Post by: KM on June 23, 2007, 07:42:14 pm
then you hit channel name length limit, it also looks rather ugly

with your mention of that idea however it did bring up another idea which would solve 2 issues, firstly dynamic IP Addresses and secondly name cloning, although i'm not sure how practical it would be to set up the general idea is:

have a server that channel hosts can (optionally of course) register with, then clients get the list of registered channels from that server (probably update on startup and every 48 hours or so to reduce load, fast updates aren't essential...), that list contains a list along the lines of:
1=My Great Channel=chat.mygreat.com:1234
2=Some Other Channel=room.other.com:4321
etc
when a client sees a listing for "My Great Channel" with any IP/Port it changes the listing to 0.0.0.1:1234, then when the client tries to connect to 0.0.0.1:1234 it does a lookup for chat.mygreat.com and diverts the connection to there

that would prevent name cloning issues as if someone else listed the channel name it would still go to you anyway, and for users who didn't have support for that feature it would still work just as before (with them still receiving the same listings) and would need no changes to the servers (and would also not have issues such as listing a room that doesn't exist any more or worrying about keeping user counts updated etc)

however it would mean some form of central database of channels registered to use the feature, and that of course opens a whole load of issues with regards to someone trying to register someone elses channel name... so it's probably not a viable option
Title: Re: Making WinMX independent
Post by: sIrMoOn on June 23, 2007, 08:19:49 pm
For any type of DNS scheme to work, while still keeping the channel ability decentralized, the @ would be essential - there can be no "authority" for channelnames other than the server itself.  This is the same way email works and the same way Jabber IM works - i don't register my name "sirmoon", i give my address + authority as "sirmoon@someserver.com".  So if we're unable to accept adding a server name to the name of a chatroom, then we might as well give up the DNS idea altogether.  I'm not convinced it's such a terrible idea to use the same @ syntax for invoking DNS as pretty much every other system that uses DNS; I don't buy the "ugly" argument.  I do see a minor annoyance in that sorting the list by name might be less effective, as the important part of the chatroom name would probably be after the @.  For example, I host a room called "Anime Root Town"; under this system I'd probably call it "chat@AnimeRootTown.com_000000001A1A" or more likely (to keep it with the other anime rooms) "Anime@AnimeRootTown.com" or some such.  So you do have the issues of redundancy or less effective sorting.  It's not perfect.  But hell, if you don't like it, you could always just call it "AnimeRootTown_ABCDEF012345" like you can now.  The only reason I could see for not doing this would be if you thought that a better solution to the problem might come up - but do you think we can really solve it better than SMTP and Jabber did?

Channels could even have seemless redundancy through round-robin DNS and load sharing, but of course that kind of stuff is going to be way above most if not all of the network (certainly you won't get that from no-ip) and probably many of the chat server programmers as well.  It'd be great if we could somehow make that type of feature more accessible, but I'm not sure yet how we could.
Title: Re: Making WinMX independent
Post by: KM on June 23, 2007, 09:56:15 pm
and I'm sure homer introduces himself as "hi, my name is Homer Simpson@123 Evergreen Terrace, Springfield" - after all names are useless and people should use addresses...

the channel name is just that it is a name not a URL, what good is a URL? people want the name of something not the URL, that's why search engines list the title of a page as the big bold text on the result and not the URL with little text below it saying the name

if you give a channel a URL instead of a name, people will still want a name next to it, and will preferably want the URL completely hidden... the fact winmx shows the hash on the end of the name is not ideal but at least it's out of the way on the end as an apparent short cryptic number/letter combination that they can easily ignore

of course shoving it on the end of the topic in some form (for example if it ends in "[validhostname]" then take that as the rooms hostname) might work, but people are already complaining about topic lengths, heh (and compatible clients could hide it from the list, and it doesn't need to be included on the topic sent when you join for compatible servers)

but any implementation like that would be problematic at best so is extremely unlikely to happen

the only way it could be done well is by modifications to the channel name, and those modifications couldn't add any extra information to the name because 1. the channel name is already limited enough, and 2. users simply don't want a URL they want a name, which is the entire reason channels give a name instead of just it listing IP Addresses hosting rooms for you to search through
Title: Re: Making WinMX independent
Post by: sIrMoOn on June 26, 2007, 12:35:59 pm
Even in real life, if Homer wants you to come visit his room/apartment/house, he sure does give out his address.  It'd be foolish of him to assume you knew where it was.

I don't understand the argument that this will be a problem with users - they can all use email can't they?

And if anything, the use of DNS would help _prevent_ spoofing.  Because right now you can give a channel the same way as another, and the only distinguishing factor is the numbers at the end - which most of the users don't understand, and which those of us who do understand probably don't remember, and which are apt to change anyway.  But if the name is associated with a DNS registration, it can't be spoofed like that.  You can't list a channel @WinMXWorld.com without it actually _being_ on a WinMXWorld server.  Right?

URL's are a bit different in that there is a lot of extra complicating information - the protocol, colon, slashes, paths.  This isn't nearly that complicated.  And again, users handle this type of name everyday when they use email.

As far as the name length limitation, the whole point of DNS is that the address is a _name_ not a bunch of numbers.  So logically it's part of the name of the room, can be used in a descriptive fashion, and just generally isn't the huge drag you're making it out to be.
Title: Re: Making WinMX independent
Post by: sIrMoOn on June 26, 2007, 12:38:36 pm
If it's "ugly" KM have your server send a "channel renamed" packet when the user enters the room so the hostname is removed from the window title.  But ideally you'll give chat hosts the choice of whether to do that or not, since as I said the server is likely to be part of the chatroom's name and thus important.
Title: Re: Making WinMX independent
Post by: GhostShip on June 26, 2007, 04:13:29 pm
Has it not occured to you sIrMoOn that many users like the apparent anonimity that the current system can provide, some rooms thrive on being pseudo anonymous, allowing the users of such rooms to be content to utter the words they choose without fear of public denouncement.

I most certainly do not use email, why ?  Perhaps after the first few thousand junk mails it becomes less of a useful tool, thats something else your likely to have to address should such a system be implemented.

All the above withstanding, using the methods decribed so far I forsee a immediate decline of the decentralised properties of the current system.

What the system really needs is an update to the current search mechanisms and a method to provide folks with a selectable persistant hotlist, many have asked for this feature and I,m sure its within the realms of the possible.

Title: Re: Making WinMX independent
Post by: sIrMoOn on June 26, 2007, 05:28:54 pm
Has it not occured to you sIrMoOn that many users like the apparent anonimity that the current system can provide, some rooms thrive on being pseudo anonymous, allowing the users of such rooms to be content to utter the words they choose without fear of public denouncement.

You can still host a web site at http://23.1.3.32/, and you can still host a room at My Room_123456789090.  DNS is an optional service, not a commandment to overhaul your life.

I most certainly do not use email, why ?  Perhaps after the first few thousand junk mails it becomes less of a useful tool, thats something else your likely to have to address should such a system be implemented.

That's an odd argument to make - spam is largely a product of the pseudo-anonymity you're afraid of losing.  If anything, you might expect spam to decrease - but I imagine it's more likely it'll stay the same, and hosts will continue dealing with it as they do now.

All the above withstanding, using the methods decribed so far I forsee a immediate decline of the decentralised properties of the current system.

I don't.  Rooms will be as decentralized as ever.  Are you decrying the centralized addressing mechanism?  Surely you know that the IP addresses we use are equally centralized?  Or do you think you can just make up your own IP address?

What the system really needs is an update to the current search mechanisms and a method to provide folks with a selectable persistant hotlist, many have asked for this feature and I,m sure its within the realms of the possible.

Agreed and agreed - which brings us back to my original posts.  Are there any plans to attempt to improve WinMX beyond the current peer cache and fake-filtering mechanisms?
Title: Re: Making WinMX independent
Post by: Bearded Blunder on June 26, 2007, 07:04:07 pm
Undoubtedly there are plans for improvements, not that they're particularly easy without the source for winmx..
so far as i'm aware they don't include such ornamentation as addressing rooms via dns, which would be useful to only a FEW hosts.. & the default DNS hostname given by the majority of ISPs is not only just as dynamic as the IP addresses they give out.. but also TOO LONG to fit in the roomname length limits imposed by the chat protocol, EVEN WITHOUT adding a recognisable roomname to it.. try to add even a SHORT no-ip hostname along with the std room hash & you'll struggle to name your chatroom anything longer than "CHT_host.name.no-ip.org_123456781234"

Most hosts i encounter have sufficient difficulty forwarding a port for their chatserver & the transient nature of uPnP forwarding makes it unsuited to room hosting.. i hope you aren't suggesting these hosts should also have to jump through the hoops of setting up accounts with the likes of no-ip in addition to the task of getting a room set up? as well as naming their room "Fred" because nothing longer will fit...
Title: Re: Making WinMX independent
Post by: sIrMoOn on June 27, 2007, 02:31:16 am
I already have a hostname.  WinMXWorld already has a hostname.  I imagine that there are others.  And I imagine that there are some who'd sign up to no-ip, too.

You make the same point about length that KM made, so I'll repeat my answer:  the hostname is _part_ of the name.  That's the whole point of DNS.  Actually, come to think of it, it may be useful to allow hosts to omit the @ and everything before it and just use the hostname, if they want.  That's more the way I see this being used.  If Billy Bob hosts "Billy Bob's Wonderful Chatroom", they're not going to register aweg23652l3asefasdf.no-ip.org; they're going to register BillyBobsWonderfulChatroom.no-ip.org.  So screw what I said about the @ - just call the room Billy Bob's Wonderful Chatroom.no-ip.org_000000001A2B.  When WinMX tries to connect to 0.0.0.0, strip all the characters that aren't allowed in DNS and do a name lookup.  The @ seemed like a good idea at the time, but on second thought the problem of email is a bit different - every chat host is likely to register their own name, with only one chatroom, so might as well just use that.  If they want to host another, they can use a sub-domain.
Title: Re: Making WinMX independent
Post by: Bearded Blunder on June 27, 2007, 03:16:43 am
i could see clients being built with the ability to do a dns lookup if supplied with Roomname_hostname:port in the same way that Roomname_IP:Port is currently converted to a room hash, & this *may* be useful for favourites in some situations, however in many others there's little advantage, for instance typically when the hash of my room changes it's typically because i'm hosting temporarily on a LAN workstation to accomodate rebooting for updates.. in this situation the client would still need to get the hash from channel listing as it's the port that changes....

easy enough to incoporate into a chat client, but you can't make it list that way, not least because you need to preserve compatibility with existing chat clients which can't do the dns lookup & even those would still need the port specified..
Title: Re: Making WinMX independent
Post by: bughunter on July 11, 2007, 02:28:57 pm
easy enough to incoporate into a chat client, but you can't make it list that way, not least because you need to preserve compatibility with existing chat clients which can't do the dns lookup & even those would still need the port specified

thats always going to be the problem making anything compatable with existing clients.............
since theres no way to force people to upgrade to the latest any improvements have to try and incorporate whats already around.........im sure theres some clever programmer out there who can make it work, i just see a migrain for the poor soul who takes this on.............
Title: Re: Making WinMX independent
Post by: ale5000 on January 12, 2016, 12:32:51 am
What about using a system like gnutella/ gnutella2/ mute use.  a gwebcache like cache.
I have just read this thread and I think it wouldn't be too hard to use GWebCaches for WinMX.

I'm the developer of Skulls! Multi-Network WebCache, it is just born multi-network, it just need one line of code to enable a new network and the clients just need to follow the specs.
It support all specs but I suggest GWC specification 2.1 currently.
It support both http and https (who host the GWC must choose) and include also an IP blocklist so hosts are filtered.
Title: Re: Making WinMX independent
Post by: GhostShip on January 12, 2016, 07:17:47 am
We already have cache software Ale5000, the post you are replying to is very old and we worked our way past the bottlenecks of the time, we did look at gnutella based caches as a starting point but due to the key differences still utilised by WinMx in its connection routines that are hardcoded into it it has to be specific to the WinMx client and thus the cache software would require a serious rewrite, little point in undertaking this until we know where the community is headed in terms of the wider network problems we are facing at the moment.
Title: Re: Making WinMX independent
Post by: ale5000 on January 12, 2016, 05:40:53 pm
Ok but since I'm already into updating the GWC I can make every type of change, since I'm the only developer of Skulls I can make every change that I want in a short time (well it depend by my free time).
The GWC already store things like uptime, connected peers, maximum peers for every host if provided, it basically can do anything you want.

If you need something specific just ask, also if the WinMX won't use it, it still may be a good idea for other networks or for a future WinMX alternative client.
So if it is needed in the future it is already ready.
Title: Re: Making WinMX independent
Post by: GhostShip on January 12, 2016, 06:09:15 pm
I agree with most of what you have posted and its great to see some positive folks here for a change, I'll converse with you further in PM and perhaps we can add WPN compatibility  :)
Title: Re: Making WinMX independent
Post by: White Stripes on January 13, 2016, 01:36:55 am
can we have a link to this 'Skulls' program plz?
Title: Re: Making WinMX independent
Post by: ale5000 on January 13, 2016, 01:47:12 am
The forum do not allow me to post links but it is on sourceforge => Skulls! Multi-Network WebCache
Title: Re: Making WinMX independent
Post by: wonderer on January 13, 2016, 06:54:52 am
skulls
https://www.openhub.net/p/skulls
http://sourceforge.net/projects/skulls/

another Multi-Network WebCache

http://sourceforge.net/projects/beaconcache/

both php