Official eMule-Board: Emule0.60d/broadband - Official eMule-Board

Jump to content


  • (3 Pages)
  • +
  • 1
  • 2
  • 3

Emule0.60d/broadband

#1 User is offline   brand33d 

  • Member
  • PipPip
  • Group: Members
  • Posts: 17
  • Joined: 10-June 22

Posted 16 June 2022 - 09:58 AM

Hello,
for a number of reasons I wanted a refreshed build with one specific capability that is: set an upper limit to the number of upload slots.
The debate is vast and vigorous, my take on the matter is that it is best to upload at a higher speed to fewer clients, rather than uploading to tenths of clients at lower speeds. But you are free to choose, as you can configure it. So if your setup allows 50+ upload slots, so be it. My own hardware/network setup works best with a limit of 5 to 8. The objective is really to maximise seeding, based on each individual's setup. A bit of logic has been added to prioritize high-speed downloaders, so to fill upload bandwidth at all times.
In addition to that, I refreshed external dependencies and published all of them in github, with build scripts that are ready to go for posterity. You can take the base "build" branch which is the community version with no changes, or follow my changes in the "dev" branch. The focus is as well to introduce the least amount of changes to preserve the original quality and stability of the client, it doesn't want to be a fancy mod.

The branch is published here https://github.com/itlezy/eMule with some other change that you can see in the README on the home page and in the commit history.
Binary Windows x64 release is published as well, be aware this is a snapshot build and can change very often on any schedule https://github.com/i.../eMule/releases






All details available at the project home, but here the main part:

Max upload slots are configurable from ini file. Just launch the eMule exe once, close it, and then edit the ini file:

%LOCALAPPDATA%\eMule\config\preferences.ini


The key to edit is the following:

MaxUpClientsAllowed=8


You can adjust this limit according to your bandwitdh and I/O preferences, suggested ranges are 5, 8, 12, 24, 36
This setting allows to set a maximum amount of upload slots that will never be surpassed, to reduce I/O contention in both disk and network.




Enjoy and share feedback, negative or positive

This post has been edited by brand33d: 16 June 2022 - 10:03 AM

2

#2 User is offline   QICKV8 

  • Advanced Member
  • PipPipPip
  • Group: Members
  • Posts: 82
  • Joined: 13-October 20

Posted 17 June 2022 - 08:16 PM

Can you put in shared folders auto reload please.
0

#3 User is offline   QICKV8 

  • Advanced Member
  • PipPipPip
  • Group: Members
  • Posts: 82
  • Joined: 13-October 20

Posted 20 June 2022 - 03:21 AM

h tps://i.postimg.cc/DyvqJ4pd/0034.jpg
h tps://i.postimg.cc/y8z2ZHSz/0035.jpg
h tps://i.postimg.cc/VL6nYrNS/0036.jpg

upload percentage goes past 100% sometimes

it seems that if the same client downloads another file/s percentage keeps on going

This post has been edited by QICKV8: 20 June 2022 - 04:27 AM

0

#4 User is offline   holysmoker 

  • Advanced Member
  • PipPipPip
  • Group: Members
  • Posts: 92
  • Joined: 23-August 03

Posted 22 June 2022 - 03:53 PM

Something is moving in emule mods, finally :thumbup:
Following your project and future versions :thumbup:
2

#5 User is offline   oldfart 

  • Advanced Member
  • PipPipPip
  • Group: Members
  • Posts: 60
  • Joined: 08-March 03

Posted 16 July 2022 - 07:20 AM

Glad I decided to check back in, nice to see forward movement. 2 points:

1. I don't see any indication of a low-id work around/fix. I believe it's eMule's biggest flaw that needs correcting.

2.

Quote

UploadQueue
With the philosophy of keeping changes to a minimum:

Added a bit of logic to remove from the upload slots clients that have been below a download rate for a certain period of time, so to give more priority to fast downloaders, which should also be fast uploaders to an extent so then they can propagate files quicker if they get it first. The slower clients will be able to be back in the slots once the fastest have been served
...
While configurable, this seems detrimental to the network. Like punishment to those that may not have a great connection. It already takes "you" longer to download a file because of your connection, but now it's going to take even more time because after waiting all that time in queue for a chunk, you're going to be "bumped" for some one with a better connection. Seems likely to drive off the low-speed users.
I also don't believe that it will work as planned and will become a continuous loop of being bumped in favor of faster users.
That said, I remember similar problems when Mods started using slot-focus, maybe you could find a better solution by researching how they handled it.
0

#6 User is offline   QICKV8 

  • Advanced Member
  • PipPipPip
  • Group: Members
  • Posts: 82
  • Joined: 13-October 20

Posted 16 July 2022 - 11:27 AM

Low ID download from me as normal because my upload is 50MB/s and very seldom gets saturated but I still agree something needs to be done as 75% are low ID in my queue

(v8commodore) on the eMule network.

This post has been edited by QICKV8: 16 July 2022 - 11:34 AM

0

#7 User is offline   Stulle 

  • [Enter Mod] Dev
  • PipPipPipPipPipPipPip
  • Group: Members
  • Posts: 5804
  • Joined: 07-April 04

Posted 17 July 2022 - 05:02 PM

Hi! I skimmed through your commits and I noticed your changes to the MAX_RESULTS opcode definition. That's not a good idea because, IIRC, it will cause excess load on the KAD network. Given the size of the KAD network these days I really advise against any such shenanigans. In fact, if you are not very sure about what you do regarding KAD (and you don't particularly strike me as the sort) I strongly advise against any changes in that general area of the code.
I am an emule-web.de member and fan!

[Imagine there was a sarcasm meter right here!]

No, there will not be a new version of my mods. No, I do not want your PM. No, I am certain, use the board and quit sending PMs. No, I am not kidding, there will not be a new version of my mods just because of YOU asking for it!
1

#8 User is offline   brand33d 

  • Member
  • PipPip
  • Group: Members
  • Posts: 17
  • Joined: 10-June 22

Posted 30 August 2022 - 06:47 PM

Hi thanks all for the feedback.

1. what is the LowID fix ? Do you mean to de-prioritize LowID users ? I see LowIDs uploading to me, as I've working port-forwarding, so what's the issue with them ?
2. no if you let it run you will see that the changes made are actually meant to get a file to be shared entirely to a target user, if you are reasonably fast downloader you'll get the whole file in one session. That is the purpose

to Stulle: MAX_RESULTS is used only in E2DK searches it won't affect KAD. There is no single change that affect KAD in my commits. This whole software was designed and built at 100MHz CPUs, and 56k connection speed. Don't think it is that big of a deal to get 300 results from Global Search


View Postoldfart, on 16 July 2022 - 09:20 AM, said:

1. I don't see any indication of a low-id work around/fix. I believe it's eMule's biggest flaw that needs correcting.

2. I also don't believe that it will work as planned and will become a continuous loop of being bumped in favor of faster users.

0

#9 User is offline   Stulle 

  • [Enter Mod] Dev
  • PipPipPipPipPipPipPip
  • Group: Members
  • Posts: 5804
  • Joined: 07-April 04

Posted 04 September 2022 - 06:53 PM

You are right about the ed2k and not KAD part. Must have been too long. Anyway, if it's for ed2k you are not making things better, either. I know lugdunum and the eMule devs were compromising a lot here and there. Limits like that one were put in place to avoid users from abusing the server resources and that was never about dead old CPUs and slow connections. It was the sheer number of concurrent users at a time when servers were really scarce. lugdunum introduced some safeguards to prevent clients from hammering. You might put your user at risk from being blocked because of said safeguards.

Anyway, you don't strike me as the one who realizes why it's playing nice to not change definitions that are explicitly marked as "do not change". So maybe it's a good thing your client won't find like a huge audience. :-)
I am an emule-web.de member and fan!

[Imagine there was a sarcasm meter right here!]

No, there will not be a new version of my mods. No, I do not want your PM. No, I am certain, use the board and quit sending PMs. No, I am not kidding, there will not be a new version of my mods just because of YOU asking for it!
0

#10 User is offline   QICKV8 

  • Advanced Member
  • PipPipPip
  • Group: Members
  • Posts: 82
  • Joined: 13-October 20

Posted 10 September 2022 - 06:53 PM

Add an option to upload more than one file at a time to a client would be nice to have and an option to automatically update shared files in preferences file.

Your eMule client is stable so far.
1

#11 User is offline   brand33d 

  • Member
  • PipPip
  • Group: Members
  • Posts: 17
  • Joined: 10-June 22

Posted 13 September 2022 - 08:09 AM

Stulle: Point taken. As the sole aim of this development is to improve seeding performance, I have reverted back to 100 the MAX_RESULTS limit, just in case. Indeed the audience is small. This is a seeder mod, it does not intend to disrupt anything else.

QICKV8: I would like that feature too, but the eMule client is quite convoluted in terms of code and design. It boils down to invoke void CSharedFileList::Reload() through some file system event, but the watch logic should only monitor the shared folders. To make it simpler it could be invoked on a scheduled basis, I can test that to see how it affects performances.

This post has been edited by brand33d: 13 September 2022 - 08:10 AM

0

#12 User is offline   eMulerForLife 

  • Member
  • PipPip
  • Group: Members
  • Posts: 33
  • Joined: 09-January 21

Posted 08 October 2022 - 11:46 AM

Hello everyone:

It would also be convenient to enter in preferences.ini FileBufferSize=9730786 to set the Buffer size per file to 9.28 MB, instead of the 1.5 MB allowed (more in line with current connections).

Greetings.
2

#13 User is offline   QICKV8 

  • Advanced Member
  • PipPipPip
  • Group: Members
  • Posts: 82
  • Joined: 13-October 20

Posted 13 October 2022 - 07:38 PM

Updated on 2022.10.06 - Added auto-friend fast HighIDs feature

Does this mean they get an automatic friend slot?

Feature request- adding clients to friends gives them an automatic friend slot.

This post has been edited by QICKV8: 22 October 2022 - 09:14 AM

0

#14 User is offline   Psykotik 

  • Newbie
  • Pip
  • Group: Members
  • Posts: 11
  • Joined: 26-December 02

Posted 14 October 2022 - 08:19 PM

View PostQICKV8, on 13 October 2022 - 07:38 PM, said:

Updated on 2022.10.06 - Added auto-friend fast HighIDs feature

Does this mean they get an automatic friend slot?


I would have been more than interested. However, nowadays most of these p2p things run on external hard drives (like a synology), not on a computer you'd keep on at night. We must spare energy 😃
Do I understand correctly it works only on Windows and not on linux?
0

#15 User is offline   brand33d 

  • Member
  • PipPip
  • Group: Members
  • Posts: 17
  • Joined: 10-June 22

Posted 24 October 2022 - 09:15 AM

eMulerForLife: you can set FileBufferSize=9437184 by editing the preferences.ini file already, the limit is only in the slide bar in the UI. It won't be overwritten, so it's already available
QICKV8: yes you can do that, see the updated readme Automatically add as Friends the fast High IDs, and remove them if they become slow or LowIDs. Values greater than 0 activates the feature and indicates the threshold of uploaded percentage of the file for when to add the client as friend. In example, set to 10 to auto-friend a fast High ID client when it has downloaded a 10% of the file. Set to a value consistent with BBSessionMaxTrans or leave it off otherwise
Psykotik: also true, but many have the PC on all day for many reasons. If you look for a Linux equivalent have a look at this project that took the same approach as "broadband" mule https://github.com/mercu01/amule

regards all
1

#16 User is offline   QICKV8 

  • Advanced Member
  • PipPipPip
  • Group: Members
  • Posts: 82
  • Joined: 13-October 20

Posted 24 October 2022 - 09:57 AM

Does the friend icon turn on to show the client has been added?
0

#17 User is offline   brand33d 

  • Member
  • PipPip
  • Group: Members
  • Posts: 17
  • Joined: 10-June 22

Posted 24 October 2022 - 12:11 PM

yes it does, it leverages the built-in friends feature, so you should also see them added to the list of friends in the messages section

View PostQICKV8, on 24 October 2022 - 11:57 AM, said:

Does the friend icon turn on to show the client has been added?

0

#18 User is offline   QICKV8 

  • Advanced Member
  • PipPipPip
  • Group: Members
  • Posts: 82
  • Joined: 13-October 20

Posted 24 October 2022 - 06:07 PM

BBMaxUpClientsAllowed=120
BBSessionMaxTrans=100
BBSessionMaxTime=10800000
BBSlowDownloaderSampleDepth=4
BBUploadClientMaxDataRate=1048576
BBBoostLowRatioFiles=2
BBBoostLowRatioFilesBy=400
BBBoostFilesSmallerThan=16
BBDeboostLowIDs=3
BBDeboostHighRatioFiles=3
BBMaxUploadTargetFillPerc=100
BBSlowRateTolerancePerc=133
BBAutoFriendManagement=5

These are my settings for 50MB/s upload.
The icon is not changing or being added to friends list.

BBSessionMaxTrans 68719476736 Values above 100 - Indicates how much data in bytes is allowed for a client to download in a single session. Adjust based on the files you plan to share, default is 64Gb. You can adjust this, based on the upload strategy you want to pursue. In example you can set it to smaller chunks, like 256Mb or so, to rotate more frequently the clients in the queue

BBSessionMaxTrans 1-100 Values in the range of 1 to 100 indicate how much data in percentage of the size of the file being uploaded is allowed for a client to download in a single session. This allows to set upload sessions to in example a third of the entire file, and then pick the next client in queue. In example, set to 33 to allow a third of the file(s) size to be uploaded in a single session

Which above setting is used in the latest version? as you have both listed in the instructions.

This post has been edited by QICKV8: 25 October 2022 - 04:26 AM

1

#19 User is offline   DeadMike 

  • Newbie
  • Pip
  • Group: Members
  • Posts: 2
  • Joined: 24-October 22

Posted 24 October 2022 - 10:54 PM

Can I hope that x86 version for 2003 server will be developed?
0

#20 User is offline   eMulerForLife 

  • Member
  • PipPip
  • Group: Members
  • Posts: 33
  • Joined: 09-January 21

Posted 25 October 2022 - 09:14 AM

View Postbrand33d, on 24 October 2022 - 11:15 AM, said:

eMulerForLife: you can set FileBufferSize=9437184 by editing the preferences.ini file already, the limit is only in the slide bar in the UI. It won't be overwritten, so it's already available

regards all


It is set like this from the beginning in all the eMule's that I use.
0

  • Member Options

  • (3 Pages)
  • +
  • 1
  • 2
  • 3

1 User(s) are reading this topic
0 members, 1 guests, 0 anonymous users