aMule Forum

English => aMule Help => Topic started by: puntloos on May 16, 2004, 04:29:07 PM

Title: Emule Theory 101
Post by: puntloos on May 16, 2004, 04:29:07 PM
OK I have a question about 'how the edonkey system works'. It is as follows:

Obviously the makers of amule have 2 purposes in mind:

1/ Making the 'best' edonkey client out there.
2/ Preserving the edonkey network

Now these 2 might be conflicting interests.. for example Im sure there are 'hacks' out there that will get you better download performance.. Perhaps there's a way to fool the ED2K network making it think you're uploading at 5000K/sec while in reality you're not uploading at all, and therefore sending you stuff at amazing speed.

Since the this is not in the interest of the edonkey net as a whole I understand these hacks won't be implemented in amule.

My question however is:

Are there ways to optimize amule WITHOUT doing immoral things?

For example: I've got a huge pipe (uni network uplink, 100Mbit).. and if I open it up completely amule shoots to a healthy 9 Mbyte/second upload. Wee. But I did notice that my download also went up somewhat. Not enough, of course, the download seemed to peak at 150Kbyte/second.

So I was thinking: I dont think it would be immoral to give great priority to people who have the same file you have (but incomplete) i.e.

- Let them skip the queue
- Give them a larger % of your upload link

etc.

Is this already implemented in amule?
Title: Re: Emule Theory 101
Post by: Kry on May 16, 2004, 06:49:06 PM
This is the same behaviour some leecher mules work, and is not acceptable by the network.


The reason is, if we give that priority to that people, we build a close comunity that do not uploads to people outside it (you can either think about it or simulate it).


Building the best ed2k client doesn't mean downloading faster. Means working better.

Quote
1/ Making the 'best' edonkey client out there.
2/ Preserving the edonkey network

I don't see how that can be conflicting. we work to improve a) the client b) the network.
Title: Re: Emule Theory 101
Post by: puntloos on May 16, 2004, 08:31:23 PM
Quote
Originally posted by Kry
This is the same behaviour some leecher mules work, and is not acceptable by the network.

The reason is, if we give that priority to that people, we build a close comunity that do not uploads to people outside it (you can either think about it or simulate it).

Quote
1/ Making the 'best' edonkey client out there.
2/ Preserving the edonkey network

I don't see how that can be conflicting. we work to improve a) the client b) the network.

You're making my point exactly :) with my #1 I only meant 'which gets the files as fast as possible' of course, I realise there is a lot of work needed to make a good client overall (UI, stability, memory footprint etc..)

But as you agree with me making a client that gets the file fastest ('at all costs') also could mean that you are being anti-social and that is not acceptable.

But here's a thought, then:

- When I tested and opened up my uplink I got 9000K/sec uploads, while my download went up a just little to 150K/sec. Surely this isn't fair either. I understand WHY this happens, most uplinks arent that fast, but I would say that a balance of 'sending 2x the amount of data you receive (2:1)' is about right, and 60:1 isnt. (Im sure there's theories about this).

- Also, your point about sending files into a limited group I agree with, but on the other hand, there is also a lot to say for completing files as quickly as possible, not just from the user standpoint, but also from the network point of view. Often specific parts of files are just totally unavailable on the network, and this is because not enough people have finished the entire download fast enough before the source disappeared. If the few people that have the file 'coordinate' getting the file to them asap, the network can suffer the loss of one of those 'fast-leechers' much better.

Now how's this:

You are allowed to specify a normal and a priority queue, where the priority queue can only be (say) 33% or 50% the size of the normal queue.
That way you DO have a large queue that sends to anyone on a first-come-first-serve basis, but you also have a queue that speeds up a user's own download. Of course, both queues need to be filled, and normal users should be able to go onto the priority queue when it's empty, but I'm sure an acceptable policy can be thought up that gives users who send data to you some advantage here.

Everybody wins, da?
Title: Re: Emule Theory 101
Post by: Jacobo221 on May 16, 2004, 08:33:51 PM
would be immoral to give great priority to people who have the same file you have (but incomplete)

There's a tip on this: Use a friend slot with this guy who has the same file. You'll gain credits on him and get preference in the queue.
Greetings.
Title: Re: Emule Theory 101
Post by: puntloos on May 16, 2004, 08:36:16 PM
Quote
Originally posted by Jacobo221
would be immoral to give great priority to people who have the same file you have (but incomplete)

There's a tip on this: Use a friend slot with this guy who has the same file. You'll gain credits on him and get preference in the queue.
Greetings.

So this is exactly what I (initially) proposed, the only problem is that the user needs to waste time on a job the computer can do a lot ebtter :P

Anyway I suspect your reply is outdated, you probably didn't see my New And Improved (tm) proposal ;)