PDA

View Full Version : P2P Services Speak Out Against Gnutella2


View Full Version : P2P Services Speak Out Against Gnutella2


wessman
March 6th, 2003, 03:19 AM
P2P Services Speak Out Against Gnutella2
from the i-want-my-p2p dept.
posted by CmdrTaco on Sunday March 02, @11:31 (internet)
http://slashdot.org/article.pl?sid=03/03/02/1551251

An anonymous reader writes "Three leading Gnultella services voice their opinions on Gnutella2 or Mike's Protocol as they refer to it as. None of the three recognize Gnutella2 as true Gnutella and worry its propritary protocol will divide the Gnutella community. In the [0]first interview Vincent Falco of BearShare contributes his thoughts. The [1]second interview gets input from Greg Blidson of LimeWire, and Arno Steenbekkers from XoloX."

Links:
0. http://www.mp3newswire.net/stories/2003/gnutella.html
1. http://www.mp3newswire.net/stories/2003/gnutella2.html


Gnutella vs. Gnutella2, Part 1
By Thomas Mennecke 2/25/03

Much dissent has been generated by the Gnutella community regarding Shareaza's implementation of Gnutella2. This community has been referred as “Mike’s Protocol” (MP) to those who do not recognize the use of the term “Gnutella.” While many have become dissatisfied with Shareaza, the BearShare camp has been most vocal. In this interview, we spoke to Vincent Falco, President of FreePeers, Inc., creators of BearShare. We would like to thank him for participating in this extended interview.

Slyck.com: There's been a lot of talk on the GDF about how Shareaza has been overqueerying the Gnutella network. How significant is this? Did this occur before or after the implementation of "Gnutella2" (or MP)?

BearShare: Currently, the end user is able to specify the frequency of the query; this is inappropriate. The user has the ability to set the query rate to give a DoS (Denial of Service) attack effect on the network. The download-retry interval is additionally adjustable, which causes a DoS attack effect on individual hosts. These are hostile actions. Additionally this constant hammering gives an unfair advantage in that the client using friendly querying does not receive the same attention as the client using hostile querying which uses up all available network resources.

Network resources are things like, CPU, memory and bandwidth capacity. The most precious of the three is bandwidth, no single user/client should be allowed to consume more than their fair share. Gnutella developers with a significant share understand this paradox and have designed their clients to be bandwidth friendly. Each Gnutella vendor has a share of the Gnutella network based on the popularity of their client. It is understood by responsible developers that network resources must be used fairly and only when appropriate in order to achieve the best possible experience for the user while maintaining a healthy network.

The current stance taken by Mike on this issue is troublesome, in that he feels it's their (the user’s) computer so they should be able to do whatever they want. What apparently isn't taken into account is the health and well being of the Gnutella Network, which is the primary concern for all Gnutella developers, not to mention the effect it has on the computer (on the receiving end) being over-queried.

Shareaza currently has a smaller share of the peer to peer market than other clients such as Limewire, Xolox or BearShare. If one of the larger clients had incorporated this "feature", the Gnutella Network would be slowed to a crawl; however, a developer with a small share like Shareaza's, can get away with these tactics in order to gain a perceived advantage for its own client without the rest of the network feeling the full effect immediately.

There is no need to allow for such frequent querying, unless the intent is to perform a DoS attack on Gnutella clients (unlikely), or to gain an advantage over other servents at the expense of network health (likely).

Shareaza had shown this behavior even before the introduction of MP and continues to show this behavior after the introduction of MP. The problem was brought to the attention of the Shareaza developers by the GDF and currently the issue is still withstanding with no apparent action taken toward resolution by Shareaza developers. Well, actually they did do something; they developed a proprietary protocol, wrapped in an open protocol name, made a lot of promises about specs and documentation which has yet to be seen by the GDF. I guess Shareaza developers figured out that the best way to protect a network from aggressive querying is by keeping the specs and true nature of the newly introduced proprietary protocol secret.

Slyck.com: What are some of the major problems facing the Gnutella network today? What is being done to confront these issues?

BearShare: Currently there are two major problems facing Gnutella today, the first is of technical nature the second is of communicatory nature.Technically, the biggest problem facing the Gnutella network today is the nature of broadcast queries. Gnutella is fantastic at getting the search out quickly. The downside is if you are searching for popular content, there is no way to throttle the flood of responses. Fortunately, by working through the GDF with the other Gnutella developers, dynamic querying combined with a high out-degree network topology will solve this problem. We have already incorporated support for both high out-degree and dynamic querying in the publicly available current beta of BearShare 4.3.0; this feature uses the implementation that came about through GDF discussion.

Gnutella’s biggest strength is an open community, which unfortunately can also be its biggest weakness as seen recently. The Gnutella’s strength comes from it being an open protocol, anyone can contribute, and anyone can study it. I would venture to say that more University papers deal with Gnutella or are based on Gnutella than any other P2P protocol. However, that open-ness is a double edged sword, since development takes place in the open, greedy developers can take advantage of other developers and their contributions. The Gnutella developers essentially have an open playbook, anyone can look anyone can know what the next move will be and how to counteract that move or how to put that move in their own playbook. Without this type of open-ness the Gnutella Network would cease to function. The Gnutella Network is for everyone. It is disheartening to see anyone take pieces developed by the GDF then market it as their own or even to go so far as to take the pieces, then begin an anti-Gnutella marketing scheme based around technology provided by the GDF.

With the introduction of anti-Gnutella marketing and school ground type arguing, the Gnutella Network is facing its biggest challenge. Private conversations and attempts at civil discussion have failed, which unfortunately has forcibly caused the block of a hostile Gnutella client. This is an unprecedented move, however so is a closed protocol on the Gnutella Network and anti-Gnutella marketing by a Gnutella client.

Developing a client on the Gnutella Network takes a considerable amount of time and dedication. When creating a Gnutella client, you are not only making changes to your program, but you are also possibly making changes to the network as a whole which impacts all clients. Anything which globally impacts the Gnutella Network is discussed in the GDF prior to implementation. If something is incorporated into a client which globally impacts the Gnutella Network without previous discussion in the GDF, heated discussion will of course ensue. This is common even with features that are discussed prior to implementation. Each developer feels strongly about his or her contributions and the contributions of other developers. With any open discussions also comes open arguments, profanities, reactions, ideas, positive feedback and resolution. This is the nature of creativity and programming. You cannot have a new feature without discussion, disagreement, refinement and thought. If you are on the outside looking in on this group of developers you may become entangled in a single aspect of the overall process – the disagreement portion. There are some users who feel very passionately about their client of choice and will defend it at all costs. This is not always helpful to the development process; however the GDF is an open discussion format because Gnutella is for everyone. Lately a chasm has been created in the GDF, one side versus another. This is not the intent or purpose of the GDF; disagreements are frequent and short lived on the GDF because a resolution is quick to follow. All disagreements on the GDF find resolution between developers; however a resolution was not met due to a complete communication break down. If a developer on the GDF decides to place harmful “features” in their client and become unresponsive to the rest of the GDF and/or does not resolve the issue in a timely manner, problems will occur. The GDF has gotten stuck in the client vs. client discussion and needs to move forward for the betterment of the entire Network.

We hope that with the split, the spirit of brotherhood will return to the Gnutella Development community. There is of course backlash to our decision, however it is justified based on several factors which have been discussed ad nauseum. In the upcoming months there will be significant and exciting changes to the Gnutella network, we look forward to further developing this rich technology in an open and friendly environment. We additionally look forward to moving past this current obstacle and continue working to create a positive atmosphere in the Gnutella community.

Slyck.com: Tell us a bit more about GUESS and how it works. Will this be implemented into BearShare?

BearShare: GUESS is a UDP based querying mechanism that allows the querier to iteratively search Ultrapeers one or more at a time. The idea is that the client can stop when it reaches a desired number of results. It is NOT supposed to be a global search mechanism - it is made very clear in the GUESS documentation that the client MUST stop after it reaches a certain number of Ultrapeers. Another issue with UDP is that it doesn't work on all systems. Some providers (like AOL) block UDP traffic except on specific ports. In other environments, system administrators block external UDP traffic entirely, since that is the default configuration on most hardware.

We hope to avoid the implementation of GUESS entirely, since it is UDP based. UDP implementations suffer from two major problems: 1) Inability to apply flow control to incoming datagrams, and 2) Problems with firewalls and configuration. By switching to UDP, we also eliminate the possibilities of compressing host connections, or leveraging existing TCP/IP based protocols (like SSL).

We are continually working with fellow Gnutella developers and hope to have a vastly improved system implemented very soon, whether or not it will ultimately be GUESS or a hybrid version is still up for debate.

Slyck.com: What exactly happened between the Gnutella developers and Shareaza? Many individuals feel that Mike Stokes played a very positive role and contributed many helpful ideas to the Gnutella community.

BearShare: Mike started off as a respected new member of the Gnutella developers’ community, and then things began to go very very wrong. Many new developers implement new features which end up being harmful to the Gnutella Network, they are contacted then a resolution is met. Mike went beyond what is considered acceptable when he created an entirely new closed protocol without the guidance and support of fellow Gnutella developers then released it on the Gnutella community. Mike was included in discussions of GUESS, the proposed evolution of the existing Gnutella protocol, as were all Gnutella developers.

Mike adopted Gnutella and implemented some proposals that were brought to the GDF by others, for example: Gordon Mohr's MAGNETS. There is this myth that he contributed something to Gnutella, while in reality he contributed nothing, he implemented others proposals while leaving the heavy lifting of network health to the established players. Had there been no GDF, he would have had no sources for his work. Even his own MP protocol is a derivative of work of many ideas that lead up to GUESS, with the big difference being that the GUESS specs were discussed openly in the GDF and its specs are available to everyone, while the MP specs are his and his alone.

Currently, if we (the Gnutella Network) decided we wanted to name the next generation of Gnutella "Gnutella2", we couldn't, because the name has been wrongly stolen out from under the community. There was never any need to register Gnutella2.com because everyone involved was working toward a common goal, except apparently one person. The Gnutella developers cannot sit idly by as a once upstanding Gnutella developer takes it upon himself to introduce a hostile client, hostile marketing and go on to give it the apparent stamp of approval by placing the Gnutella name on a product which was not created, tested and refined by the Gnutella developers community. Mike's actions are at best questionable.

The incorporation of hostile “features” in Shareaza such as:

Configurable query rates to the point of DoS attack effects on the network and host

Configurable User-Agent string, which allows users to configure their Shareaza to impersonate any existing or fabricated client

The ability to block specific user agents

The incorporation of hostile marketing in Shareaza such as:

Anenga’s website endorsing and providing instruction on how to block Gnutella, or as he referred to it “G1 support”.

Continued harassment of fellow Gnutella developers and their users on various websites and forums including BearShare’s listing on www.download.com where false accusations proliferated followed by a link to Shareaza’s website.

Mike’s encouragement of his users to spam various sites with false information and tout “G2” as the newest Gnutella innovation, when in fact it has nothing to do with Gnutella nor with the developers of Gnutella
.

Hijacking of the “gnutella2.com” domain name and so far no expressions of remorse or any attempts to give the domain name to the GDF.

As you can see from the above, Shareaza has done everything possible to act as a hostile client and team. Only after the above actions and repeated failed attempts at discussion did BearShare finally block the hostile client in order to help keep the Gnutella network safe.

Slyck.com: Has the dust settled between Gnutella (BearShare, LimeWire) and Shareaza? What communications, if any, exist between the Gnutella camp and Shareaza?

BearShare: The dust will not settle for so long as Shareaza's hostile marketing continues and communication is absent. The GDF is the established means of communications for Gnutella developers. The Shareaza developers are welcome to participate, but they have decided not to. The only Shareaza participants in the GDF are users and testers, the actual developers are absent. If you don't participate in the GDF, then you're not contributing, just leeching.

The Gnutella developers’ community has and is attempting to move on and introduce some great new features which we have scheduled for release quite soon.

Slyck.com: With all the proposed improvements, how long do you feel it will take for Gnutella to perform as well as some of the top P2P networks?

BearShare: Performance depends on what you are measuring. Although the bottom line as far as users are concerned is how quickly and reliably the file they see in their search results will be delivered to their systems and the answer to that is within the next 3-6 months you will see Gnutella performing substantially better than some of the currently top P2P networks.

I believe that the Gnutella is currently performing as well as or even better than some of the other top p2p networks. Gnutella is a proven and growing network, it's a very exciting time for Gnutella -- there are many exciting changes scheduled and currently being developed. I believe the rest of the p2p community will be very impressed once the new changes are rolled out. The Gnutella network has a very powerful ace up its sleeve, it's an open protocol so the more developers there are, the stronger the network. As long as the Gnutella network retains this ace, it will be unstoppable.

Slyck.com: How do you envision the future of Gnutella in 6 months? A year?

BearShare: Stronger, more innovative, stable. The longer Gnutella is around, the better it gets. In six months, see above. In a year, our intention is to make Gnutella the premier content delivery network. If you were to compare the Gnutella of today to the Gnutella of 6 months or a year ago, there really is no comparison. The Gnutella has implemented quite a few new features and there are no signs of stopping any time soon. It will be a great year for Gnutella based on the planned features which are up and coming. The buzz word will be "revolutionary".

Slyck.com: Since the deployment of Gnutella2 (MP), what effect, if any has it had on the Gnutella network? Do you feel it has drawn users away?

BearShare: The current effect on the network is minimal as MP is used by a very small percentage of users. The overall effect of MP on the development community has been one of disappointment. We all saw a great light in Mike Stokes and watched as it became tainted when he put his desires ahead of the Gnutella network.

If you are asking if it has drawn users away from BearShare, the answer is no. Unbiased user experiences of Shareaza include reports of instability, inability to locate content, and a poor user interface.
Shareaza doesn't have a solid foothold in the p2p market (BearShare currently has at least 50 times more users (a very conservative estimate) and its current slander campaign has done nothing to help its numbers, it has instead hurt it and Mike's reputation. Most Gnutella users don't participate in forums and websites associated with peer to peer clients. There are several million Gnutella users; there are only a few hundred or even a few thousand active voices in the peer to peer online world. The voices have already made their choice, so nothing that's been said will change their opinion. The bottom line is you're either a Gnutella client user or a future Gnutella client user because there aren't any other open protocol networks. Open protocol networks are the way of the future; it is folly to consider creating or even implementing a closed protocol in today’s atmosphere.

Slyck.com: Vinnie made this post to the BearShare forums, "Mike Stokes, author of Shareaza, is nothing more than a common thug and deserves a thorough beating." There are other negative comments from Vinnie regarding Mike Stokes in the GDF. Please justify these comments, and do you still believe this about Mike?

BearShare: The GDF is a place for very open (and often blunt) conversation. When you're working in a community environment where each client has its own voice and yet must continue to comply with the rest of the network, discussion can get heated because we all feel strongly about our individual clients and the network as a whole. There's a fine line between giving your client an edge and harming the rest of the network. Mike leapt over this line and in turn I voiced my opinion of his actions. The difference between me and Mike is my words are sometimes hasty, whereas his actions are hasty. The link you've provided and the quote you give do not harm the Gnutella Network and its performance, Mike's recent actions do.

These comments are completely justifiable. Mike has allowed his users to deprecate other developers, other applications (like BearShare), and the Gnutella protocol itself. He unjustifiably calls Gnutella "a crappy, outdated, inflexible protocol". How can someone whose client is based on Gnutella technology turn around and issue such false statements?

Slyck.com: It seems many in the P2P community have taken a dislike to BearShare. Do you believe that comments as mentioned in Q9 have helped BearShare's public relations? What is being done, if FreePeers believes there's a problem, to resolve much of the negative feelings towards BearShare?

BearShare: You will need to define "P2P community". If you intend for it to mean the user base of the Gnutella Network, then you are very incorrect in assuming that there has been any type of dislike taken to BearShare. Quite the contrary. We have received numerous emails letting us know how pleased they are with our product and to "keep up the good work". We have not experienced any type of drop in downloads or anything else which would indicate displeasure with BearShare. If anything we have experienced an increase in downloads and an influx of emails complimenting our newest version of BearShare. The free version of BearShare now has only one bundled product - this high quality advertising product doesn't send user information out and of course respects privacy. In fact, a few weeks ago we removed the banner advertisements from the BearShare application and replaced it with the message "In appreciation of our loyal users, we have removed the advertising from this space". One week later, we replaced the message with free content. Instead of advertising banners, we now provide information and MAGNET style downloads to independent artists, with pages hosted by our own servers on our own bandwidth. The artists that we worked with have been overwhelmed, and have sent us numerous emails proclaiming their appreciation of the massive boost in exposure.
If you intend "P2P community" to mean the vocal 1% of p2p users who visit and take part in p2p discussion online they are basing their arguments and opinions on the slander campaign launched by Shareaza. You will also notice that most if not all persons voicing their dislike of BearShare have based it not on the technical performance, but rather because they are fanatics of Shareaza or of other networks such as Fast Track. Their opinion has not changed, instead they have found a reason to be vocal about their current and previous opinion of BearShare (no matter how long ago or if ever they have used BearShare). With this having been said, it's irrelevant what was said and what was not said, their opinion would have been the same.

Some of the recent hostilities in the GDF and in other forums have brought issues to the forefront. For example, BearShare has been criticized for its "island effect" and for our Secure Channels feature, which provided a way to download from other servents, but not allow uploads to them. The latest round of Gnutella vs. Shareaza elicited negative comments regarding these BearShare "features", and we have responded by adjusting the way our application behaves and the features it presents.

We have redesigned our Secure Channels feature so that it is either entirely on or entirely off. We have also made changes to reduce the unintentional island effect which was created during security improvements. These changes are evident in the latest BearShare 4.2.4 release.

We appreciate and encourage constructive feedback, which is why we have a BearShare Labs forum, a BearShare Feature Request forum, a 10 things I hate about BearShare forum and so forth. We encourage feedback, then analyze the overall effect each proposal will have on the client and network then we incorporate/redesign/improve them as appropriate.

As the founder and CEO of BearShare, I will continue to be an outspoken member of the Gnutella developers’ community for so long as the ideals of the Gnutella community are not being upheld. It is my job and every other developer's job to ensure that Gnutella remains Gnutella.

Slyck.com: Assuming FreePeers believes they have an image problem, what do you feel caused this situation?

BearShare: If upholding the ideals of the Gnutella developers’ community and including fellow developers on any globally impacting features is considered an image problem, it's a problem BearShare is happy to have. Any other "image problems" are the cause of Shareaza zealots visiting download.com or our forum and trolling or posting negative marketing. At no point did BearShare, its representatives, or our user base go to our competitors (Gnutella or otherwise) and promote bearshare.com. Shareaza was the first to introduce this underhanded behavior. Mike never went out of his way to stop it.

Slyck.com: Shareaza seems to be developing a strong userbase, with many expert users stating that it out performs Gnutella. Will FreePeers implement some of Gnutella2s attributes? If not, why?

BearShare: Shareaza is not developing a strong user base if you view the numbers; it is instead remaining a very small percentage of the Gnutella Network. Their recent slander campaign has done nothing to help promote their product; it has instead left a bad taste in the mouth of Gnutella developers and leads them to question the motives of the developer of Shareaza. The "expert users" you are referring to can only be the very young Shareaza fanatics which are quite vocal in slandering other Gnutella clients while giving false information about their own client in order to receive more users. If you look at truly unbiased opinions, you will see many responses such as "I couldn't connect at all", "this program is very unstable", etc.

These self proclaimed “expert users” are under the illusion that it performs better, unfortunately you cannot compare its performance to Gnutella’s, nor can you evaluate the protocol. Their test environment is skewed. A network of a couple of thousand cannot be compared to a network of hundreds of thousands. If Gnutella were just 10,000 nodes it would not have any query and result traffic issues to deal with, and by the way at 10,000 nodes, all searches would be universal and almost instant. Anyone tested how long a “universal” search takes on Shareaza?

These self proclaimed “experts" flock to Shareaza because it is highly customizable. So customizable, that you can alter the programs behavior on Gnutella to take advantage of network resources at the expense of reducing everyone else's user experience. If all programs behaved this way, Gnutella would never work. I would also like to point out that Shareaza offers little to NO controls for the MP protocol behaviors, probably because Mike doesn't want his proprietary network to be vulnerable to degradation.

MP is a closed and undocumented protocol which is not supported by the Gnutella developers’ community. Free Peers incorporating anything related to MP would be similar to incorporating anything from Fast Track or any other network using a closed protocol. Free Peers upholds what Gnutella stands for and a closed protocol is very much the opposite.

Slyck.com: It was obvious that FreePeers was dissatisfied when Mike registered Gnutella2.com. Was it the intention of FreePeers to register this domain alone or coordinate the purchase among the major developers? If it was FreePeers intention, why wasn't it registered much earlier? Is Mike not free to register any domain that is available?

BearShare: Gnutella.com is not owned by a single individual, Gnutella2.com is. Gnutella.com does not promote a single client, Gnutella2.com does. Gnutella.com is a symbol of community and the combined hard work of several developers. Gnutella2.com is one developer's domain. It was never the intention of Free Peers, Inc. to register Gnutella2.com , to do so would be a slap in the face to fellow developers. Yes, the domain was available which gives one the ability to register it, however ethically the domain was not available and to register it and use it would be wrong. The Gnutella development community was not involved in the creation of MP, therefore the name "Gnutella" should not be applied to the new closed protocol. If the Gnutella Network were a closed protocol, this would have never been an issue because Shareaza would never have been created, nor would BearShare for that matter. The fact is Gnutella is for everyone, no matter who you are. If any person attempts to close off that opportunity, they are no longer following the ideals of the Gnutella Network. There is one recognized protocol on the Gnutella Network, not two.

If Fast Track were to create a Gnutella client then test out a new closed protocol incorporated into the new Gnutella client, it would be a very cut and dry case of banning. If they were to go on further to name the new closed protocol "G3" and register the domain name of Gnutella3.com and insist the protocol used (and created) by all other Gnutella clients is outdated and inferior, there would be an immediate reaction. What is different between Mike's closed protocol vs. one made by a competing network? Nothing. There is not proper documentation of the new closed protocol, there was never discussion of the new protocol between developers prior to the implementation and launch of the new protocol, there was not any type of approval given to use the new name and register the domain name, there was nothing communal about this new protocol except that it affects all other clients on the Gnutella Network whether they like it or not.

Slyck.com: Gnutella has stayed off the RIAA/MPAA radar for now. Do you feel Gnutella developers may become a target in the future? What has protected you up until now? What contingency plans exist in order to combat a potential RIAA/MPAA onslaught?

BearShare: Gnutella is based on community involvement and participation with a combined goal to see the Gnutella Network improve and grow. Gnutella is more like a family than a development group, each voice is heard and new members become involved every day. Currently, all clients on the Gnutella Network use an open protocol, this allows for a hydra effect. The RIAA/MPAA can cut off one head/client and a new one (or two) will grow in its place. As long as the Gnutella community continues to stand for open protocols and community involvement, Gnutella will continue to thrive.

Slyck.com: Have you used Shareaza since its implementation of Gnutela2? Please give us an honest assessment. How do you feel it compares against BearShare/LimeWire/XoloX?

BearShare: Yes. MP is based on UDP, although it boasts the ability to "search globally", this is not true. It can search Shareaza users that are using MP, which is unimpressive but it cannot search the entire Gnutella Network. This global search ability was available in previous versions of BearShare, prior to the introduction of UltraPeers -- the difference of course being that you were searching the Gnutella network. If this "feature" remains in Shareaza and they have a substantial increase in users, the protocol will collapse. It is impossible to design a system that allows for global keyword searches that scales infinitely. Even the GUESS specification makes it *extremely clear* that the algorithm must stop after visiting a certain number of Ultrapeers (10,000 I believe). Even if there are 50,000 Ultrapeers in the global network, GUESS requires stopping after a fixed number. This is made very clear, and the supporting research explaining why global keyword searching can never scale is given in the GUESS document and relevant GDF postings. Anyone with p2p development experience or mathematical skills can easily see through this “global search” ruse. Shareaza is nothing more than a hobby for Mike, currently there is absolutely no incentive for him to avoid abusing the Gnutella Network in order to give his client a perceived advantage, and he does in fact have everything to gain by abusing and badmouthing the Gnutella Network.

Currently MP and Gnutella are both parts of Shareaza, if Shareaza were to suddenly stop using Gnutella, Shareaza users would disappear because the content is simply not there. MP added to Shareaza is simply a means of testing out a new proprietary network and as such should never have entered the Gnutella network.

Slyck.com: Give us an assessment of the current and potential impact of Gnutella2 on the Gnutella community. How great or small is the threat? Is the current campaign against it necessary?

BearShare:Gnutella2 does not exist as of yet, however MP does. The Gnutella developers’ community is working on the evolution of Gnutella as we currently know it; we cannot name it Gnutella2 as that name is already taken. The "threat" is the same of any other closed protocol -- minimal. The current "campaign" is very justified, MP goes against every ideal that the GDF upholds. Negotiations failed, actions were then taken to forcibly fix the issues which the creator was either unable to or simply did not want to fix. The same actions would have been taken on any hostile client.

Slyck.com: I understand that the Gnutella community is concerned that Shareaza has not released the G2 specs. Please elaborate on this.

BearShare: In the Gnutella developers’ community, communication is everything. It is imperative that anything which globally affects the Gnutella Network (positively or negatively) be discussed amongst all developers prior to implementation. Mike took it upon himself to avoid this standard practice and introduce a globally effecting closed protocol on the Gnutella Network. He did not remove the offending closed protocol until such time as proper documentation and discussion may have a chance to take place; he instead released it in a final version (non beta) of Shareaza and promptly went on vacation. There have been many excuses and very little action, the longer the excuses went on the more frustrated and concerned the Gnutella developers community got. Mike has lost the trust of the Gnutella developers’ community and it will take a very long time (if ever) for him to regain that trust.


Gnutella vs. Gnutella2, Part 2
By Thomas Mennecke 2/25/03

In December 2002, we ran our interview with Mike Stokes, lead programmer and developer of Shareaza. This community quickly gained notoriety within some segments of the Gnutella community for spearheading the Gnutella2 movement. While Gnutella2 found support from the Gnucleus camp, many others, specifically LimeWire, XoloX and BearShare, have been very open about their discontent.

The dissatisfaction among the major Gnutella developers stems from several key issues. Initial dissent surrounds the fact Gnutella2.com was registered without conference and many other key issues were not communicated. The issue has now evolved to include the fact that Gnutella2 remains a closed protocol, a situation many feel defeats the Gnutella name.

In this interview, we spoke with Greg Blidson of LimeWire, and Arno Steenbekkers from XoloX. We would like to thank both of them for contributing to this article. The questions asked to both developers are identical.

Slyck.com: Gnutella2, or Mike's Protocol has become presence in the P2P community. Any chance we'll seee LimeWire/XoloX support this protocol?

LimeWire:The protocol that you refer to as "Gnutella2" is really not Gnutella at all. I truly don't mean to sound insulting or anything but it is really a somewhat amateurish attempt by Mike at Shareaza to create his own protocol. Other Gnutella developers call it the "Mike Protocol" or MP for short. At the binary level, this protocol is radically different from the existing Gnutella protocol for no particular reason.

Don't get me wrong here. Mike has been great at trying to implement all of the cutting edge ideas that have been suggested in the GDF and P2P community. His MP protocol makes use of some good ideas as well. Some similar ideas that go into the MP protocol will be seen in the next round of Gnutella upgrades made by LimeWire and other Gnutella clients. However, due to the non-standard nature of large parts of MP, I'm pretty sure that clients (other than Gnucleus) will not adopt Mike's ideas as is.

What is happening is that the true Gnutella protocol and GDF are implementing Gnutella compatible technology such as GUESS and other features that encompass very similar ideas. I'd love to call this updated Gnutella standard Gnutella2 but we really can't because Mike has inappropriately commandeered the Gnutella2 domain and the name. Anger and frustration over Mike's incompatible protocol and his use of the Gnutella2 name is what has been causing GDF members stress recently. The new features of the true Gnutella clients will blow users away when they roll out.

XoloX: First, Team XoloX wishes to thank Tom and everyone at Slyck.com for their support throughout the past year and asking us to participate in this story. As Gnutella has had its ups and downs, so has XoloX. We are working hard at delivering a great P2P client and we know we still have much work ahead of us to achieve our goals. That is why we feel somewhat awkward in commenting on another developer's efforts, especially one that has demonstrated a blistering pace of development and has shown rapid progress in delivering an excellent client.

For those efforts, Team XoloX applauds the innovative efforts of Mike and Shareaza. We also applaud the strong Shareaza community that has developed because, more than anything else, the real strength of P2P is community. As more users make peer-to-peer technologies a part of their daily lives, the better it is for the entire community of developers and users, no matter which client a user chooses as their favorite.

Perhaps, this is why we are so disappointed in the recent actions taken by Mike, Shareaza, and his supporters. Instead of helping to bring the community together, their actions have done the opposite and appear to be further dividing it. We hope that this is unintentional and that they just don't see the big picture. At worse, they are selfish and have ulterior motives that will eventually come to light.

If indeed it is the former, than there is still the opportunity for Mike and Shareaza to become part of the solution. If it is the latter, than it poses a challenge to the entire Gnutella developer community to decide as a group how to respond to the possible threat it poses. As far arguing the technical merits of "G2" besides it breaking compatibility
and attempting to impose a new protocol on Gnutella at its leisure, we can't give any more insight until the specs are published, as promised. Until then all we can do is try to remain open-minded.

Gnutella has always stood for freedom. Its opens access has enabled developers, researchers, and the community to add its vision for the collective benefit of the community and in return take advantage of the gathered knowledge and user base that Gnutella provides...truly a "win-win" situation. We may all have individual clients, however to us, Gnutella means unity and community and working together to keep it
strong in the face of adversity. The market is big enough for everyone to participate, grow and prosper-whether financially or spiritually. There is no need for the type of backstabbing and infighting that Shareaza has recently brought to the party. It is downright ugly.

You asked if XoloX would support this new protocol. There is no real thing as a "Shareaza Protocol", simply because not enough information on it has been released. There are also dangers in supporting a closed protocol as we have all seen the road that FastTrack has taken. As stated, until more information has been released about this protocol, it is impossible to understand its consequences.

Slyck.com: What kind of communications exist between you and the Shareaza camp?

LimeWire: LimeWire has had very good communication in the past with Mike. We continue to carry on communication. As we developed the UDP based search in the GUESS proposal, we consulted with all Gnutella developers. Mike liked the ideas we presented but then released this new, incompatible implementation of a UDP based search. Some developers took it as a slap on the face when we had worked so closely to build a consensus on how best to incorporate UDP into Gnutella.

XoloX: We are closely following the developments on GDF and our communication is limited to the forum. Calling Shareaza "Gnutella 2" is just a cheap shot and shows the type of selfishness and greed that causes all Gnutella developers to question the real motivation behind this, as it appears nothing more than a blatant attempt of self-promotion with the destructive results of purposely confusing the general public. Obviously his network cannot be considered to be Gnutella. Essential to Gnutella is its openness in an effort to improve the network.

Slyck.com: What are your thoughts on Gnutella2? Can it revitalize the Gnutella community? Would you consider this network to be "Gnutella"?

LimeWire: As I have said, I do not consider the Mike Protocol to be Gnutella. The use of the name Gnutella2 is unfortunate because it is not even Gnutella compatible. Running two different protocols is a waste. Mike is essentially bridging a new untested protocol into the Gnutella network. He is trying to use the existing Gnutella to bootstrap his new protocol.

At the same time, there are major improvements coming to Gnutella. Multiple GDF members are working on the GUESS protocol. The server-side of GUESS is in the LimeWire 2.8 beta right now. We are going to continue testing before releasing the client side of that along with broadcast query improvements that will really make Gnutella much better. The specifications for GUESS are already available on the GDF. In contrast, the specifications for the Mike protocol are still not fully available.

XoloX: Shareaza has the opportunity to be a strong and important influence in helping to revitalize Gnutella. Unfortunately, its actions to date show that they have chosen a different path.... a selfish path. Instead of using the name "Gnutella2, " Shareaza should have used a different name and most of the current animosity and tension would never have occurred. Their tactics go against all that Gnutella stands for. We regret that so little information about their motives has been made available. This is feeding the animosity that does not exist with Blubster, WinMX , eDonkey or others. Our battle is not with them...Shareaza's battle should not be with the other Gnutella developers, either. There is a much greater foe that all P2P technology developers are up against and unless everyone works together, no one will be victorious in the end.

Slyck.com: Why do you feel there's hostility to the idea of re-creating Gnutella? Do you agree with this sentiment?

LimeWire: There really isn't hostility to recreating Gnutella. LimeWire has been trying to achieve this for quite a long time. All the GDF members have been working towards the major improvements that we know are possible. Don't forget that there have been major improvements already such as Ultrapeers,QRP, HUGE, Download Meshes, Remote Queuing, PFSP, GUESS. These are still being fine tuned with the full payoff somewhat clouded to date due to problems such as greedy clients massively over querying. LimeWire and others have had to waste time trying to defend the network from stupid greedy clients that shall remain nameless. Now that this problem is mostly out of the way, we are finishing powerful new features and open specifications.

The hostility that you mention is due to the incompatible protocol that was introduced by Mike and by the abuse of the name Gnutella2. Mike should not have the right to steal the name Gnutella for something that is clearly not Gnutella. This is ethically wrong. Mike can't just pick some new arbitrary protocol and define it as Gnutella2. Not only this but making use of the name Gnutella2 for what is essentially a bridge into the Gnutella network sets a bad precedent for other protocol developers that might like to leach off the Gnutella network.

XoloX: We don't believe there's any hostility in "re-creating" or improving Gnutella, on the contrary this is what Gnutella developer and research contributors are constantly striving for. With Gnutella user numbers dropping, all Gnutella clients would happily accept a boost. Certainly all the Gnutella developers have an incentive to develop a better network, which we feel companies such as LimeWire with their GUESS proposal is well on the way to doing.

However, the fact that a new closed protocol is being imposed on the network using the "Gnutella2" name in self-promotion, when previous proposals of the very same nature were already methodically being worked on openly among developers, is what is causing these bad sentiments. We realize that Shareaza's developers are eager to move up with their client instead of waiting what the GDF comes up with and pooling the ideas to make "G2" on its own. In fact, in the past, XoloX implemented many features in our client while the GDF were still debating its merits. On hindsight, we should have shared more with the community and we don't intend to make that mistake again. Every client, while also helping Gnutella grow as a community, naturally wants to give it's program an edge, but it is important to understand that a new protocol that effects all versus new client features that effects only one's users are absolutely two different things.

Slyck.com: Summarize the current problems are with Gnutella. What steps are being taken to resolve this situation?

LimeWire:There are still lots of problems with Gnutella that we are working on fixing:

a) Broadcast queries are still wasting bandwidth and not being as effective
as possible.
b) Greedy clients are still spamming the network.
c) Download meshes have not reached a critical mass.
d) The best candidates are not being made Ultrapeers.
e) There are many powerful applications of Gnutella that are not being realized.
f) Gnutella gets a bum rap.

Answers to these questions are becoming pretty clear:

a) GUESS is one method of selective querying that will allow the broadcast nature of Gnutella to be reduced or controlled. Look for some hybrid solutions that employ selective broadcasts in the future as well. We have some upcoming proposals to allow the replication of Ultrapeer QRP tables to their neighbors that could allow up to 90% of query traffic to be routed at little cost.

b) This is actually the toughest problem to solve. It is always a moving target but if we make the basic protocol work as well as we believe, the motivation to spam should be dramatically reduced.

c) Download meshes are very interesting ways that you can now get multiple sources for content from one download source. There is essentially a web of alternate locations that clients are maintaining and communicating to each other. LimeWire just improved this by caching and randomly accessing 10 of 100 of these. We believe that the meshes are reaching the tipping point where they become better and better and tie large numbers of alternate locations together. If not, there are new algorithms to employ. If this mechanism doesn't totally work, we can add a chord or kademlia lookup for the content.

d) We are working on a change to the specification of Ultrapeers to communicate ratings for Ultrapeers and ensure that tbe best hosts are elected to be Ultrapeers.

e) LimeWire has implemented MAGNET URI to allow some integration of Gnutella and the web. There are many more interesting features that would make Gnutella more useful. Private adhoc networks are one that we are working on. I have some plans for other interesting ideas hidden away for a rainy day.

f) Once upon a time, Gnutella downloads had a 10% success rate. That has gone up immensely since LimeWire and BearShare came on the scene in late 2000 and started making improvements. This next generation of improvements that are being rolled out over the next three months should make Gnutella as good or better than any other P2P network and make users forget the last downturn in performance, which was mainly due to greedy clients overloading the network.

XoloX: The problems that exist with Gnutella have been well documented and technical solutions will soon be unveiled in an open forum so that all Gnutella clients can implement them.

The bottom-line is that we would prefer to be inviting towards Shareaza and hope that they do not misconstrue our response as attacking them. More than most, we do see parallels with XoloX when we first appeared on the scene a year ago. We resented the negative feedback and the war talk we got from other established Gnutella developers. It made us drift away from the GDF more than it brought us closer. We do not want this to happen to Shareaza and hope they view this as an opportunity to bring everyone closer together and become part of the solution. If they choose to go down their own path, then more power to them, but we urge them not to do so at the expense of rest of the Gnutella developer and user community. Mike may not understand it now, but the day will come when he will need the support of others beyond his own users. No man is an island and no company a nation.


Tom from Slyck.com is a regular contributer to MP3 Newswire. Tom's insights on other digital music issues can be read on his site and we encourage you to check it out.

almanzo
March 6th, 2003, 03:47 AM
Nice info. It was even more interesting when I read it on the zeropaid newsline 2 weeks ago (it's still there, too).

isus
March 6th, 2003, 05:01 AM
holy crap, that is probly the longest single post in the history of this forum. i might open up office later and give ya a word count. gah :mellow

i (obviously) didnt read it all, but everybody out there who has a commercial gnutella client (meaning, they install adware/spyware or you have to pay to get them out) is offended by shareaza bc it provides a better service for free.