Faster end game

From EMule Wiki
(Difference between revisions)
Jump to: navigation, search
(New page: Faster Endgame aka Dynamic Block Requests This describes techniques which shall speed up the file completion. == Netfinitys Dynamic Block Requests == Faster endgame by not requesting ...)
 
(creation)
Line 1: Line 1:
  Faster Endgame aka Dynamic Block Requests
+
  Faster Endgame aka ''Dynamic Block Requests'' is a technique which shall speed up the file completion.
 
+
This describes techniques which shall speed up the file completion.
+
  
  
Line 20: Line 18:
 
== Morph Approach ==
 
== Morph Approach ==
  
 +
TODO:
 
I've seen that Morph includes an own version of DBR, though I hadn't have any time to check it in detail... if anyone knows more, please add it --WiZaRd 21:34, 15 Jun 2006 (CEST)
 
I've seen that Morph includes an own version of DBR, though I hadn't have any time to check it in detail... if anyone knows more, please add it --WiZaRd 21:34, 15 Jun 2006 (CEST)
  
Line 27: Line 26:
 
The official client partially adapted Netfinitys feature by introducing 2 new features:
 
The official client partially adapted Netfinitys feature by introducing 2 new features:
  
    * if a file is near completion and downloadspeed of a source is pretty low then less block requests will be created
+
* if a file is near completion and downloadspeed of a source is pretty low then less block requests will be created
    * block requests are shrunk now to avoid "already requested ranges"  
+
* block requests are shrunk now to avoid "already requested ranges"  
  
  

Revision as of 22:23, 16 March 2007

Faster Endgame aka Dynamic Block Requests is a technique which shall speed up the file completion.


Contents

Netfinitys Dynamic Block Requests

Faster endgame by not requesting many blocks if the downloading file is near completion. A requested data range is blocked for downloading, you cannot download a certain datarange from multiple clients (by design of emule, the protocol would allows this). So by requesting less blocks from slower clients we can request more blocks from faster uploading clients which results in a speedup and faster file completion.

This feature only makes sense if only a small size of a file is left to download.

An earlier implementation included "dropping" of too slow sources to allow faster clients to take over. Dropping sources is not always a good idea since sources that are slow now might become fast sources in a while (e.g. if you're on a trickle slot)


Dazzles Faster Endgame

Another implementation is "Dazzles faster endgame" feature which simply drops the slowest source from a file if no more block requests can be created. This is bad because block requesting might also fail if a client simply has no more blocks for us (No Needed Part Source) thus dropping a source would be very bad in such a situation and won't help at all.


Morph Approach

TODO: I've seen that Morph includes an own version of DBR, though I hadn't have any time to check it in detail... if anyone knows more, please add it --WiZaRd 21:34, 15 Jun 2006 (CEST)


Official Approach

The official client partially adapted Netfinitys feature by introducing 2 new features:

  • if a file is near completion and downloadspeed of a source is pretty low then less block requests will be created
  • block requests are shrunk now to avoid "already requested ranges"


Conclusion

Netfinitys original implementation () is by far superior to any present implementation as it combines better dynamic block requests than the version in ESE mod plus better/more intelligent slow source dropping than Dazzles version

Personal tools