Bandwidth Limits to Overhead+Data
(Maximum Transmission Unit)
Socket Buffer Size
Support (Universal plug-and-play)
(Network Adapter Feedback Control)
Upload Slots Sharping With NAFC.
Auto U/D Limits
Minimum Upload Slots
Speed Sense (USS) Configuration.
Source Exchange Between Clients
Reask Sources After LowID<->HighID
Skip Test For CD-Image
Before Hiding Chunks
Selective Chunk Sharing
The purpose of this little
guide is to introduce you to the world of pHoeniX, a modification of the
popular eMule P2P-Application. This guide should help you to understand the
features integrated into pHoeniX and to make use of them. You will find here
mostly basic information. This guide does not cover information about the
features of the official client, because there’s already an excellent document
waiting for you to get an overview of eMule itself at http://emule-project.net. I recommend new users of eMule to first take
a look at the official documentation to have a basic understanding of the
There are not explanations
for every part of the preferences because they are partly self-explaining and
don’t need further explanations in my opinion. From version 1.9 on you can also
get assistance through small tooltips, which describe the various features.
Just let your mouse stay on a button and the tooltip for button will appear.
Note: This document isn’t finished and
probably never will be, so keep an eye on it for updates from time to time.
The download and upload
values calculated by eMule show only the traffic that is caused by the
transfers itself. eMule is able to calculate the
overhead with an option called Show overhead bandwidth which can be found in
the preferences under Connection.
This overhead is quite
important in order to get the maximum out of your upload. Instead of trying to
evaluate the highest possible upload speed you may activate Apply bandwidth
limits to overhead+data. This way you don’t have to
worry about the overhead caused by eMule because it is already taken into
consideration by pHoeniX. Your upload (Show Overhead Bandwidth Limits ... = Data+Overhead) won’t be higher than your connection
limit which you’ve set in the preferences. A saturation of the download is much
more unlikely as long as you’ve set a reasonable number for the connection
Remember: Don’t set your upload limit higher
than ~75% of your upload capacity.
MTU defines the largest
size of a packet that an interface can transmit without needing to fragment the
packet. IP packets larger than the MTU value must go through IP fragmentation
procedures which is uneffective. Instead of just using a default value for MTU
you may enter an optimized value for your connection. It is possible to calculate the most effective
MTU for your PC on http://speedtest.dslreports.com or http://www.speedguide.net.
The data you would like to
send to other clients is first stored in a buffer by eMule. You may change the
size of the buffer in order that the buffer size suits your needs.
Quickstart allows you to
find alot of sources in a short amount of time. You could say that this feature
is turning our beloved eMule for a few minutes into a race horse.
You’ve already entered values for
„Max Connections/5 sec and for Max Connections in the preferences of the official
eMule. All values that
you define for Quickstart will override the other settings at the startup of
eMule for a few seconds. You may enter other values for the Quickstart but they
should be higher than the values in the official eMule.
Quickstart will help you
to find sources more quickly but it achieves this in an aggressive way. That’s
why this feature deactivates itself after a few seconds after the startup.
Remember: This feature isn’t working with routers. Routers can only handle a small amount of
connections. It is likely that Quickstart will crash your router. This feature
should be used only with a modem.
Remember: Not every OS supports a high number
of connections. Windows 98 (SE) for example will only allow 100 Connections/5
sec. It won’t accept a value higher than 100.
„Manage Connections dynamically
adjusts the connection limit. Manage Connections will check if f.ex. your
router is nearly crashing because of too many connection and will then lower
the number of connections. A helpful feature for owners of routers who don’t
know exactly the specifications of their routers.
UPnP NAT Support checks if
you’re connected through a router to the internet. UPnP informs the hardware firewall
which ports to open for eMule. If these eMule ports would be blocked you will would
have a LowID (firewalled). This can be a disadvantage. If there was no UPnP NAT Support in eMule you
would have to open the ports manually. eMule will also send the information to
the router that the ports can be blocked again after eMule has been closed.
The Web Interface and
Mobile Interface need different ports to work properly. If you don’t need these
features you can safely ignore these checkboxes.
With this feature
activated eMule will open a random external port if there are open external ports
at the router. In a LAN this is quite interesting. It allows you to have the same
internal ports f.eg. for two instances of eMule but they will have different
Remember: Your router needs to be UPnP compatible
to make use of this feature.
„NAFC is a dynamic upload
system. It measures the traffic on the network adapter level (Ethernet card).
What’s the idea of NAFC?
If all the traffic of the
Ethernet chip is only exchanged with the modem, then the network adapter knows
exactly of the modem's traffic and can control the upload and download speed
and prevent a saturation of the modem.
NAFC has a few advantages
over other dynamic upload systems such as USS or SUC:
It produces no overhead.
reaction time is very good.
But there also important
every OS supports this system (F.ex. Win 95)
you’re using the Ethernet interface to exchange data with other PC’s in a small
then NAFC won’t work properly. It does not have a 1 to 1 image of
the modems traffic. You should switch back to official upload system when
you’re uploading data to PC’s in your network.
NAFC will try to control
the upload slots of pHoeniX with this option to get the maximum out of your
NAFC will automatically
take the same value that you’ve set for the upload connection limit.
If this feature is activated, NAFC will automatically adjust
the upload and download bandwidth limits of eMule. This will prevent a
saturation of the down or uploadstream.
pHoeniX allows you to set
a minimum for the upload slots. The number
of upload slots will not fall under the entered number.
Remember: The entered value here will be
ignored if you activate Minimize Slots.
USS is uncompatible
with some pHoeniX options. USS is actually
incompatible with Upload Slot sharping and Auto U/D.
More information on USS are to be found here.
This feature is designed to get the
maximum out of your connection limit. It will open as many upload slots as
necessary to achieve the upload bandwidth limit.
„Cumulate Bandwidth will
focus the upload speed on one slot. This will result in a quicker chunk
depriviation because a chunk is completed earlier.
You would like to upload to a smaller number of clients but you
would like to do that much faster. Then Minimize Slots is the right feature for
you. It will try to lower the number of upload slots.
Remember: „Upload Slot Sharping
and „Minimize Slots shouldn’t be activated together because they work totally
different to achieve their goals. The activation of both features at the same time would only
cause a poor upload performance.
eMule has different ways of finding sources. Apart from
Kademlia and Server search there’s Source Exchange. Clients that you’ve found
f.ex. through Kademlia will give you their sources for the files you’re
searching. This process
is called Source Exchange. It’s an effective possibility for finding sources. Unfortunately
Source Exchange is quite memory and processor time consuming especially for
older PC’s. That’s why it could be wise to disable Source Exchange.
Remember: This feature should only be deactivated
for older PC’s which don’t have a lot of ressources.
Don’t contact the sources
after you’re PC has received another IP.
It can happen that you receive corrupt chunks. eMule will try
to repair these chunks with the I.C.H. algorithm. This can be quite memory and
processor consuming and the success is not garantueed. Especially if the data
was corrupted on purpose it is a waste of time to retrieve this data. There are
clients in the ed2k-network who deliberately send corrupted parts. As a
countermeasure there’s Defeat Corrupted
Remember: It can happen that a file won’t
complete for a long time even though there are sources fort this file. Then it is possible that one chunk of
that specific file that’s missing is available but corrupted. Defeat Corrupted Part will not accept this
chunk even though I.C.H. can repair it. In this case just deactivate this
feature untill you’ve completed that file.
Skip Test For CD-Image
It happens frequently that
„Defeat Corrupted Part doesn’t work correctly with CD-Images. That’s why
CD-Images won’t complete with Defeat Corrupted Part activated. That’s why you
can deactivate the Defeat Corrupted Part test for CD-Images.
„S.N.A.F.U. V3 analyzes
the behaviour of the clients in your upload queue. It achieves this through
various methods such as detecting leecher mod-strings f.eg. If there are signs
for leeching and other unfair methods S.N.A.F.U. V3 will filter the specific
client for some time. This way cheaters will not be able to leech from you.
As you may know you can earn
credits for uploading data to other clients. These credits will allow you to
advance faster in the queue of the client you’ve uploaded data to. In order to identify you as the
owner of your credits at the other client you have to show the userhash and
another key kombination (http://emule-project.net
for more detailed information). The userhash
works like an ID.
Unfortunately leecher clients have found a way to steal the
userhashes. This allows them to profit from your credits which are gone
afterwards. Anti-Credit Theft
will prevent this from happening.
Community Mods identify themselves through strings
in the nickname. Very often community members don’t have to wait until they get
an upload slot when they’re connected to another community member. There are
also mods that upload only to community members. This behaviour breaks basic
network rules and should be punished.
Why should this bother
you? These Mods are still able to download from but it’s unlikely that you will
ever receive data from them. They leech from you.
Mods to be sure to upload only to mods
who behave correctly.
pHoeniX gives you the possibility to make
backup’s of the important eMule files. These backups can be very handy when
eMule crashed and the original files are gone or corrupt.
The Invisible Mode allows
you to hide pHoeniX for whatsoever reason. Bear in mind
that pHoeniX can still be recognized as a process. Other users will also recognize while surfing
that a programme is working that needs alot of bandwidth.
This feature is especially interesting for releaser. It allows
them to say how many times a chunk should be uploaded. When a chunk has been
uploaded as often as specified it will be hidden for other users. This behaviour results in an
efficient spreading of chunks in the network.
This feature analyzes for
every file which chunks are popular in the network and which are rare. It will priorize the rare chunks as long as they are considered
rare and upload them more often than popular chunks.
eMule user has only one queue for
all his files. Multi-queue creates now for
every file a queue. This gives
every file the same chance
to be uploaded.
In connection with Reserve one slot
for release this can be very effective for releasers. Every file that has release
priority is uploaded through a special release slot. This way you can ensure
that rare files don’t disappear from the network.
Powershare was designed
for releasing files. If one file is being powershared it will be the only file
that is being uploaded. Like that a releaser of a new file doesn’t have to
unshare all other files to achieve the same behaviour.
PS is a powerful tool but
it should be used correctly to avoid problems. That’s why there are several
modes in pHoeniX for PS.
If PS is deactivaed by
default it is still possible to powershare some files in the Shared Files
section through the context menu.
PS is activated by
In this mode pHoeniX will
decide itself if there are enough sources around or if the file should be
You can set a limit for
PS. You can do this also in the Shared Files section. If pHoeniX detects as
much complete sources as you’ve entered as limit then it will deactivate PS for
Remember: Powershare should be used carefully.
handling of PS can result in incomplete files in the network.
If you have had a crash
with pHoeniX and you’ve got a *.dmp
file of that crash please send it to email@example.com.
We will try to track down the error.
Team [TPT] consists of these members:
If you think, some parts of this
document should be changed because there are missconceptions,
please send me an e-mail to Skyw4lker@freenet.de.