mldonkey-users
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Mldonkey-users] speedup distribution of rare files [Was: Re: How t


From: Goswin Brederlow
Subject: Re: [Mldonkey-users] speedup distribution of rare files [Was: Re: How to fight abuse of mldonkey]
Date: 05 Sep 2002 05:55:57 +0200
User-agent: Gnus/5.0808 (Gnus v5.8.8) XEmacs/21.4 (Honest Recruiter)

Christian Brandt <address@hidden> writes:

> Am Mittwoch, 4. September 2002 22:32 schrieben Sie:
> 
> > Full Ack. But how about going one step further:  If you could give
> > priority to some files you are sharing you would speedup the spreeding
> > of rare files.
> 
>  There is a simpler approach to this:
> 
>  Instead of one big queue for all requests use one queue for each file
> 
>  Files on Disk:
> 
>  Very-Rare.rar
>  Highavailable.avi
> 
>  Single-Queue:
>  Highavailable.avi Highavailable.avi Highavailable.avi Highavailable.avi 
> Highavailable.avi Very-Rare.rar Highavailable.aviHighavailable.avi
> 
>  So Rare gets done very late.
> 
>  Multi-Queue for Very-Rare.rar: Very-Rare.rar
>  Multi-Queue for Highavailable.avi: Highavailable.avi Highavailable.avi 
> Highavailable.avi Highavailable.avi Highavailable.avi Highavailable.avi
> 
>  So the single requestor of Very-Rare.rar gets the same bandwidth like all 
> requestors of Highavailable.avi.
> 
>  One may tweak here and there but basically its possible to make Rare Files 
> behave different, e.g. spead MUCH better than Highavailable or just 
> alittebit better...

Thats on my TODO list.

My approach uses prioritised buckets to distribute the bandwith.

The total bandwith is distributed to server connects, queries with
clients and file transferes.

Those bandwith is then again distributed across files and clients and
such.


Currently if a client connects mldonkey queries the client for files
which fills up the send buffer. My approach adds the client into the
bucked of clients that need to be queried with a list of files to be
queried aout. The bucket picks a client to query according to some
prioritising and then waits for enough bandwith to send the
request. Only then is the request send. That way a client can easily
be queried about 1000 files without clogging the upstream. It will
only recieve a request every now and then when the bucket has enough
bandwith and its that clients turn again.

Similar for querying server and requesting files.

MfG
        Goswin




reply via email to

[Prev in Thread] Current Thread [Next in Thread]