Results 1 to 10 of 41

Thread: HOWTO: Tweak aMule for great performance

Threaded View

  1. #1
    Join Date
    Jan 2007
    Beans
    Hidden!

    HOWTO: Tweak aMule for great performance

    1. What is aMule
    aMule is a p2p, or peer-to-peer, client for the eD2k network, commonly known as eDonkey network or eD2k network (eDonkey2000).

    2. Sharing Files with aMule

    First off, note the eDonkey2000 network is not meant to share small files such as audio clips and small mp3s, but instead is optimized for distribution of larger files. The current stable version of aMule is 2.2.x, and has a lot of exciting features, like large file support, UPnP and protocol encryption. If aMule for some reason doesn`t work properly or you like the most popular client on Windows better, aMule`s Windows "cousin" eMule runs well in Wine. It is however recommended to use native applications when possible.

    The ed2k-network is huge and with an enormous amount of users and shared files. The typical user shares hundreds of files and have queue sizes from a few hundred users to several thousand. The ed2k-network is excellent for finding rare content and for sharing many large files. If you are patient, you will be rewarded with material not found anywhere else.

    3. Installing aMule.
    If you haven't installed aMule yet, do so by launching a terminal (Applications-> Accessories->Terminal and type

    Code:
    sudo apt-get install amule
    If you can`t find it, you may need to enable the universe and multiverse repositories. (Click Applications->Add/Remove in the main menu of Ubuntu and tick «Show unsupported applications» and «Show commercial applications»)
    (You may also install aMule from Applications ->Add/remove. enter amule in the search box, tick aMule and click apply).

    4. Running aMule for the first time
    First, launch aMule. This can be done by executing the command amule in the terminal or by launching aMule from the main menu. You should find aMule in Applications->Internet. Running aMule from a terminal can be useful in cases of crashes to find out what is wrong.
    Once started, aMule will display a notification telling you that you are running it for the first time.
    Please note that aMule makes extensive use of right-click menus, so if you can't find a function, try right-clicking on the item you wish to manipulate.

    5. Configuring aMule
    Before you begin file sharing, you will need to properly configure aMule. This includes connection speeds and limits, directories to be used, proxies, port settings and other settings. You can access aMule preferences by clicking on the Preferences icon at the top of the aMule window.
    Here are some settings under Preferences you might want to look at::

    General: -Type a nickname in the box if you want to. This will be visible to all users downloading from or uploading to you.

    Connection: This is important. You don`t want to set the upload limit too high or too low. Setting it too high will choke your connections and decrease performance, and setting it too low will make you lose credits from other filesharers. Other clients will remember the clients who upload data to them, and will give them a better position in their queue. Therefore, high upload means faster download. I recommend setting the upload limit to something like 60-80% of your upload capacity.

    Slot allocation means how fast aMule should upload to each client. I recommend dividing the upload bandwidth by a factor of 5-6, so that an upload of 100 kB/s gives some 16-20kB/s per client. Too many open connections may also decrease performance (slightly). (Bear in mind that the values for speed given by ISPs are usually given in kilo Bits per second [kb/s] but the values to be entered in the text fields 'Download', 'Upload' and 'Slot Allocation' contained in "Bandwith Limits" are in kilo Bytes per second [kB/s]. To convert to kilo Bytes simply divide the kilo Bits value by 8.

    As for TCP and UDP ports, just use the standard ports unless you have trouble. Some ISPs will throttle certain common P2P ports, so changing them might work in some cases. Try any non-standard p2p port first. If that doesn`t work, use a port usually restricted for "important" traffic, like 554, 443 or 1755.

    The TCP and UDP port will have to be open from aMule to the internet. The first obstacle is iptables in Ubuntu. Iptables will cause aMule to receive firewalled status – or low id. Being firewalled will drastically decrease performance. To open the ports you can either install Firestarter, the GUI for iptables by typing the following in the terminal:

    Code:
    sudo apt-get install firestarter
    From Firestarter, open the ports in Preferences->Connection in aMule.
    Or, you can just open the ports using the terminal. Type, e,g,

    Code:
    sudo iptables -A INPUT -p tcp --dport 4711 -j ACCEPT
    to open tcp port 4711, and

    Code:
    sudo iptables -A INPUT -p udp --dport 4712 -j ACCEPT
    to open udp port 4712. (To close the ports again, use the same parameters, except replace «ACCEPT» with «DROP».)

    To acieve maximim performance, it is also a good idea to open a UDP-port for extended server requests. This means the port through which all non-core packets are sent to the server. That is data such as file rates, extended file descriptions (encoding, audio length, video resolution, etc), and other trivial but very handy data. The UDP port for extended server requests is always TCP-port +3, so in this case we open it with

    Code:
    sudo iptables -A INPUT -p udp --dport 4714 -j ACCEPT
    If you have a router, you also need to open the above mentioned ports and forward them to your computer. If you open the ports but don`t forward them to the right device, you will be firewalled.

    If you don`t know how to open and forward your ports, enter this page: http://portforward.com/routers.htm From this page, select your router. You will now enter a new image with a lot of application names. aMule is unfortunately not on the list, but select eMule instead. You should now get a guide for your router on how to open and forward the ports. (Remember that eMule and aMule uses different default ports.)

    Max sources per file: This all depends on how much your router and modem can handle. The more connections they can handle without problems, the better. I have mine at 500 and 700 respectively. You may want to experiment with these values. If you put the limit too high, you may choke your router and internet becomes unresponsive.

    Networks: Make sure you have both ed2k and Kad ticked.
    Message Filter. This is where you can fill in common spam-messages. Just copy and paste the spam message into the box and separate messages with a «,» (without the «s) and you`ll never see the message again.

    Server. This is important. Some servers are fakes, mainly run by the entertainment industy, and will not give any results. To avoid the bad ones, untick the «update serverlist» boxes, and tick «autoconnect to servers in static list only».

    Directories. Incoming directory is where your finished downloads will be saved. Keep in mind that the default setting is within the hidden .aMule folder, so if you don`t change it you will have to use Ctrl+h to make it visible. I recommend making a folder in your home directory for incoming files, and point towards it from aMule. Tempfiles is reserved for non-complete files, and may well be hidden. Shared directories is the files you share using aMule. (Please be generous. Filesharing is after all about sharing, and not about using aMule as a download machine. Whatever you download has to be uploaded by someone else. Roughly speaking: Total network upload speed = Total network download speed.) By default, you only share your incoming folder, and you can`t unshare it. Double click on a folder to share the contents. This will not share subdirectories! If you have one or more subdirectory within that folder you want to share, right click the folder! Any shared directory will be marked in bold letters.

    Security. Tick «Enable IP-filtering.» The purpose of using an IP-filter is to block the bad guys, mainly the entertainment industry and their lackeys, who are sabotaging the ed2k network. Clients on your ipfilter will not be able to establish a connection to your computer. I use the ipfilter from Bluetack, so you can insert this url http://www.bluetack.co.uk/config/nipfilter.dat.gz and then click «Update now». The ipfilter should then download and install. (A known bug in Feisty may cause aMule to crash while updating the IPfilter.) If you can`t do without an IPfilter, try Moblock. http://ubuntuforums.org/showthread.php?t=192559

    Gui-tweaks contains a few useful settings, like percentage, progress bar and fast ed2k-links handler. You can use the latter for ed2k links found on the internet and click apply, and the file shoud be on your download list.
    That`s it for the Preferences box! Click ok to save the changes.

    The last thing you have to do before starting to use aMule is to add servers. There are no servers by default. Select the Networks icon between the Disconnect and Search button in the main menu. Add this line in the top box and press enter: http://peerates.net/peerates/certifiedservers.met
    You can also add servers manually from e.g. http://gruk.org/list.php and enter name, IP and portnumber in the boxes below. (Avoid servers marked in pink.) Once you have a few servers, right click a couple of large servers with low responsetime (ping) and right click. Select add to static server list. (If you chose to autoconnect only to servers in static serverlist, aMule will only try reconnecting to one of these safe servers if disconnected.) Remember: Do not connect to servers located in the USA, since they almost certainly are fakes.

    6. Using aMule for the first time
    Now, if you are done with all the steps above, it is time to test aMule. You will have to restart aMule to make all the new settings work properly. (All settings are saved in a file called amule.conf in your .aMule directory. Do not change these settings unless you know what you are doing.)

    Once aMule is restarted, you need to connect to a server. Select the Servers-icon on the top menu and try a relatively large one with a low ping number and connect by double clicking it. If everything is normal, the left arrow on the little globe on the bottom right of the screen should turn green instantly. This means you are not firewalled and will enjoy good performance. If you also want to connect to Kad, select Kad right below the disconnect icon on the top of the main menu. Select bootstrap from known clients. (If you have never downloaded a file with aMule before, you will not have any known clients, and the right arrow on the little globe on the bottom right may be yellow. If your left arrow (ed2k) is green, the right arrow should turn green once you have put a few popular files on your download list and Kad is properly bootstrapped.

    7. Searching.

    Click the Searches icon on the main menu. Type allows you to select where to search. On a local server, on all servers or on the serverless Kad network. (Do not use Kad for the first search on a fresh install, since it needs to bootstrap properly first.) Choosing global search will give more results than a single server search. However, for a very popular file, it does not really matter. (Note: Some servers have been forced to filter certain words, if they are identical to names of polular movies, like "king". If you don`t believe me, try searching for "king" on a donkeyserver. Fortunately there is a way around this - just use the Kad search!)

    Click the Extended Parameters box. This is important to narrow down your search and find what you are looking for. Under File Type, select if you want to download a video, archive, cd-image or something else. Specifying a minimum and maximum filesize is also useful to filter out files you are not looking for. If you don`t do this, the file you are looking for may (in a worst case scenario) not show up on your search list. Preferably find a file with plenty of sources. A large file with just a couple of sources may take weeks to download. A file with 200+ sources is very popular and should fly if you upload fast enough.
    When you find something you want to download, right click and select download. Click the Transfers icon in the top menu, and the file should be there.

    8. Fake files and how to avoid them
    Some files out there are misnamed or corrupted. In most cases they are porn files with wrong names and even wrong extensions. To avoid getting these files always check if the file is commented. If other users have commented the file, an icon will turn up next to it. Right click the file and select Show All Comments. You will also see what file name the other user has for the file. This is important if it differs from yours. If you are looking for a movie, and you see someone has marked it as ok, it is a good idea to see if the other user has the same filename as yours or if it is something you were not looking for.
    The second check you can do to avoid fake files is to right click the file on your download list and click Show File Details. In this box you can see what the other users are naming their files. The majority is usually right if there are different names/extensions.

    Thirdly, use the preview function once you have downloaded a few chunks. Select the Preferences icon->Files and tick the box Try to download first and last chunks first. This will make the movie previewable sooner. (Preview only works on movie files in aMule.) Click on to Directories in the Preferences menu and type mplayer or vlc (if you have it installed) in the box. You should now be able to preview a partially downloaded file in Transfers with a right click ->select preview part. If you can`t make it work, you can also enter the tempfiles directory and open it there with a video player.

    (Some files are just garbage made to poison or spread spam to the network, and that goes for most relatively small files with wmv, wma and a few with exe extension.)

    9. Make Firefox accept eD2k links

    eD2k links are available on the web and function pretty much the same way as torrentfiles. It is possible to copy the links, paste them into aMule`s eD2k link handler on the bottom of the screen. But a much easier way is to associate eD2k-links to aMule through Firefox. eD2k links will then be added directly to aMule with a click of a button.

    eD2k links will not launch in a browser of you haven`t got amule-utils installed. Install it with

    Code:
    sudo apt-get install amule-utils
    (1.) Launch Firefox.

    (2.) Then, insert about:config in the address bar. Right click on the list, select New, then Boolean; insert network.protocol-handler.external.ed2k as Preference Name and true as Value.

    (3.) Now another right click, select New and String; insert network.protocol-handler.app.ed2k as Preference Name and /usr/bin/ed2k (or path to where the file is installed on you system) as Value.

    (4.) Restart Firefox.

    Now eD2k links will be captured by aMule

    10. FAQ:
    Just read this: http://www.amule.org/wiki/index.php/FAQ_aMule

    11. Filesharing ethics
    I just have to mention this again, filesharing is about giving and receiving, with emphasis on giving. Always upload at least as much data as you download, since downloading more data than uploading will slow down the network because users with big pipes will have to use their bandwidth to feed the leechers.

    Secondly, share rare files. Especially if you are the only source among millions of users, sharing such a file is a valuable contribution to the ed2k network.
    Click the Statistics icon on the top menu to see how much you have downloaded/uploaded, and always try to keep at least a 1:1 ratio. (Mine is 2:1, meaning that for every GB i have downloaded, I have uploaded two. I even upload when I have no files on my download list, 24/7.)

    12.Reinstalling or removing aMule

    If you want to reset all settings, the easiest is to remove and reinstall amule. Do this with
    Code:
    sudo apt-get remove amule
    From the desktop, press Alt+Home and Ctrl+h and delete the .aMule folder (containing the config file). Then reinstall aMule with

    Code:
    sudo apt-get install amule
    or do these operations from Applications->Add/remove

    Credits: A lot of the text is based on the following:
    http://www.amule.org/wiki/index.php/Getting_Started
    http://www.amule.org/wiki/index.php/...uests_UDP_port
    Opening ports from the commandline is from this Howto: http://ubuntuforums.org/showthread.p...ght=open+ports
    Associate eD2k links with different browsers: http://www.amule.org/wiki/index.php?...links_handling

    Happy sharing!


    Edits:

    18.08.07: Included info about large file support in CVS version of aMule. Thanks to KubuntuKilledMe.
    23.08.07: Included info about last resort ports.
    30.08.07: Included extra info about fake servers and blocked search terms on server searches.
    08.09.07: Included extra info about extended server requests, eD2k links handling, plus crash in Feisty while updating IPfilter. Thanks to KCPokes.
    18.09.07: Removed recommendation of donkeyservers because of suspicious behavior (no search results).
    05.02.08: Included URL for compiled aMule 2.2.0 CVS version.
    06.08.08: Minor edit because of released stable aMule 2.2.x.
    Last edited by Hallvor; August 6th, 2008 at 08:23 AM. Reason: update

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •