mldonkey-users
[Top][All Lists]
Advanced

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

[Mldonkey-users] [patch #5596] EDK: New option upload_full_chunks


From: spiralvoice
Subject: [Mldonkey-users] [patch #5596] EDK: New option upload_full_chunks
Date: Tue, 28 Nov 2006 22:02:51 +0000
User-agent: Mozilla/5.0 (X11; U; Linux i686; de; rv:1.8.0.7) Gecko/20060830 Firefox/1.5.0.7 (Debian-1.5.dfsg+1.5.0.7-2)

URL:
  <http://savannah.nongnu.org/patch/?5596>

                 Summary: EDK: New option upload_full_chunks
                 Project: mldonkey, a multi-networks file-sharing client
            Submitted by: spiralvoice
            Submitted on: Dienstag 28.11.2006 um 23:02
                Category: Bug fixes
                Priority: 5 - Normal
                  Status: Ready For Test
             Assigned to: None
        Originator Email: 
             Open/Closed: Open
         Discussion Lock: Any

    _______________________________________________________

Details:

This new option makes it necessary to distinguish between overall
data transfered to/from the client and the data from the current
session. Unpatched MLDonkey only stores overall values of all
sessions during which the client transfered data, this lead to
the fact that an uploader which had a slot for less than a minute
was displayed having transfered several MB.

This patch implements new data structures to store up- and download
both as total and session values and displays them in HTML interface.
Session values instead of total values are sent to GUIs.

If the new option upload_full_chunks is set to true, each client is
allowed to receive one chunk, this setting overrides upload_lifetime.

Well, not exactly one chunk. eMule has this code in opcode.h
#define SESSIONMAXTRANS (PARTSIZE+20*1024) // "Try to send complete chunks"
always sends this amount of data

MLdonkey does the same, if client A got 9728000+20*1024 bytes
during the current session its upload slot will be revoked unless
pending slots are empty. It makes no sense to remove a client
from an upload slot if no new client is present to use it.
Client A will then get another data block and this situation is
logged. The check is done before every block is sent. If client B
is present in pending slots when the next block should be sent to
client A, client A is removed from upload slots and client B is
given a slot.

I removed lots of code from disconnect_client to remove_client_slot,
because client A in the above example, after revoking the upload
slot, will not be disconnected anymore. Its allowed to re-enter
pending slots immediatly, also we may download from it at the
same time, disconnecting would be a bad idea.

Please test behaviour of this patch if its consistent. Also
please report if seperated columns for overall/session data
are still missing somewhere.



    _______________________________________________________

File Attachments:


-------------------------------------------------------
Date: Dienstag 28.11.2006 um 23:02  Name: edk_full_chunks.patch  Size: 52kB  
By: spiralvoice

<http://savannah.nongnu.org/patch/download.php?file_id=11393>

    _______________________________________________________

Reply to this item at:

  <http://savannah.nongnu.org/patch/?5596>

_______________________________________________
  Nachricht geschickt von/durch Savannah
  http://savannah.nongnu.org/





reply via email to

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