Open source P2P projects
|
|
|||
|
|
Sign up to receive this and other networking newsletters in your inbox.
Several readers of this column recently wrote me asking for pointers to a tutorial or source code for writing P2P software. For starters, check out CodeCon, an upcoming conference on open source coding that will take place in San Francisco Feb. 15-17. Some interesting P2P projects will be presented there - check out the CodeCon Web site (link below).
You could also look into the giFT project on SourceForge.net. The project was initially conceived as an effort to create a Linux client for KaZaA.
After a period of reverse engineering and packet sniffing by the original developers, a group of other developers, known as "the givers," stumbled upon the project known at the time as "kazaatux."
Within a few weeks, this unified band of developers had a working daemon that could connect to and search the KaZaA network.
KaZaA then released a new version of its client which eventually led to the breaking of what was by then known as giFT (which stands for "giFT isn't FastTrack.") According to its developers, giFT is a modular daemon able to load multiple back-end protocols to the user via an XML-like interface protocol.
The developers say they are using a daemon "to create an easy way for people to focus their time on front ends instead of all of so much networking code." They also point out that if the daemon changes, all of the front ends will still function the same as they had before. They also want to ensure that they don't end up with 20 incompatible protocols as stand-alone clients.
When Version 1.3.3 of KaZaA was released, it contained a "Security Update" which broke all versions of giFT by changing the encryption on the network. The latest release of giFT (0.9.7) does not work with FastTrack - the company that licenses the library used by KaZaA, Morpheus and Grokster.
Although the giFT folks say quite a few people attempted to reverse engineer the new encryption, nobody has succeeded and they claim that nobody is working on it at the moment. But they contend that the current KaZaA's Linux client stinks.
After "the givers" departed, the giFT team started moving development into a new direction. They say that their foremost desire is to have a completely open, completely free P2P network modeled in the image of FastTrack. giFT was moved to a new architecture which would allow the creation of plug-ins that would make it easy for one client to be compatible with any number of networks.
The first of these plug-ins is OpenFT, and a re-implementation of a working FastTrack client.
For now, OpenFT is the only network you can use with giFT and it is likely pretty tiny. The developers say this is an effort to provide "an extensible, modular back end for file sharing networking protocols."
According to their Web site, the concurrent versioning system of giFT/OpenFT is working "but only usable for testers and developers, not for leechers." Uh huh.
But the giFT developers insist that if you would like to experiment with the current code, you're more than welcome. They ask that you report it to their IRC channel if you are successful. I may give it a spin on my Linux machine. Once the system is stable on Linux/x86, the developers say they will port it elsewhere.
Here are some stats from the giFT site.
Development Status: 3 - Alpha, 4 - Beta
Environment: Console (Text Based), No I/O (Daemon), X11
Applications
Intended Audience: Developers, End Users/Desktop, System Administrators
License: GNU General Public License (GPL), MIT License
Natural Language: English
Operating System: OS Independent, Linux
Programming Language: C
Topic: File Sharing
RELATED LINKS
Ann Harrison is a technology reporter in San Francisco. She can be reached at ah@well.com.
Peer-to-Peer archive
Past newsletters.
