Difference between revisions of "CH"

From AMule Project FAQ
Jump to: navigation, search
m (one left)
m (corrupt links, again xP)
Line 1: Line 1:
The [[FAQ_eD2k-Kademlia#What_is_ED2K?|eD2k]] protocol is one of the most advanced in corruption handling methods.
+
The [[FAQ_eD2k-Kademlia#What_is_ED2K?|eD2k]] protocol is one of the most advanced in [[corrupt]]ion handling methods.
  
The propper protocol defines two basic corruption handling designs, while further evolution has taken new methods into it. A description follows:
+
The propper protocol defines two basic [[corrupt]]ion handling designs, while further evolution has taken new methods into it. A description follows:
  
 
== Basic hash checking ==
 
== Basic hash checking ==
  
Any file in the [[FAQ_eD2k-Kademlia#What_is_ED2K?|eD2k]] network is identified by a unique value, which is known as the ''file hash''. Up to here, this should be already known (check info on this in the [[FAQ_eD2k-Kademlia|eD2k FAQ]]). But this hash also allows to know if a completly downloaded file is corrupt. Check the [[FAQ_eD2k-Kademlia#What_is_a_chunk|documentation about hashes]] and the [[FAQ_eD2k-Kademlia#What_is_a_hash?|documentation about chunks]] for further information.
+
Any file in the [[FAQ_eD2k-Kademlia#What_is_ED2K?|eD2k]] network is identified by a unique value, which is known as the ''file hash''. Up to here, this should be already known (check info on this in the [[FAQ_eD2k-Kademlia|eD2k FAQ]]). But this hash also allows to know if a completly downloaded file is [[corrupt]]. Check the [[FAQ_eD2k-Kademlia#What_is_a_chunk|documentation about hashes]] and the [[FAQ_eD2k-Kademlia#What_is_a_hash?|documentation about chunks]] for further information.
  
'''NOTE:''' This corruption handling method requires [[CH#Part hash checking|Part hash checking]].
+
'''NOTE:''' This [[corrupt]]ion handling method requires [[CH#Part hash checking|Part hash checking]].
  
 
== Part hash checking ==
 
== Part hash checking ==
  
Since a file might be really big, the original [[FAQ_eD2k-Kademlia#What_is_ED2K?|eD2k]] protocol designers decided to devide all files into 9.28MB parts and hash each of them, so that it is possible to know which 9.28 part of a file is corrupt and re-download onyl the corrupted parts instead of the whole file.
+
Since a file might be really big, the original [[FAQ_eD2k-Kademlia#What_is_ED2K?|eD2k]] protocol designers decided to devide all files into 9.28MB parts and hash each of them, so that it is possible to know which 9.28 part of a file is [[corrupt]] and re-download onyl the [[corrupt]]ed parts instead of the whole file.
  
 
For more information on this, read the the [[FAQ_eD2k-Kademlia#What_is_a_chunk|documentation about hashes]] and the [[FAQ_eD2k-Kademlia#What_is_a_hash?|documentation about chunks]].
 
For more information on this, read the the [[FAQ_eD2k-Kademlia#What_is_a_chunk|documentation about hashes]] and the [[FAQ_eD2k-Kademlia#What_is_a_hash?|documentation about chunks]].
Line 26: Line 26:
  
 
This time, an improvement was made into the [[FAQ_eD2k-Kademlia#What_is_ED2K?|eD2k]] protocol, which is [[AICH]]. For further information, read the [[AICH|AICH documentation]].
 
This time, an improvement was made into the [[FAQ_eD2k-Kademlia#What_is_ED2K?|eD2k]] protocol, which is [[AICH]]. For further information, read the [[AICH|AICH documentation]].
 +
corrupt

Revision as of 02:26, 20 October 2004

The eD2k protocol is one of the most advanced in corruption handling methods.

The propper protocol defines two basic corruption handling designs, while further evolution has taken new methods into it. A description follows:

Basic hash checking

Any file in the eD2k network is identified by a unique value, which is known as the file hash. Up to here, this should be already known (check info on this in the eD2k FAQ). But this hash also allows to know if a completly downloaded file is corrupt. Check the documentation about hashes and the documentation about chunks for further information.

NOTE: This corruption handling method requires Part hash checking.

Part hash checking

Since a file might be really big, the original eD2k protocol designers decided to devide all files into 9.28MB parts and hash each of them, so that it is possible to know which 9.28 part of a file is corrupt and re-download onyl the corrupted parts instead of the whole file.

For more information on this, read the the documentation about hashes and the documentation about chunks.

ICH

Nevertheless, loosing 9.28MB might be a lot for some files, which either are rare so are hard to find sources, or are so little that 9.28MB might be mostly the whole of them, if not th whole or even, for slow connections, it might take several minutes/hours/days to download 9.28MB.

Having that in mind and in an attempt to lower the internet's load traffic with unnecessary data, a new implementation was taken into some eD2k clients, known as ICH. Read the ICH documentation for further information.

AICH

But ICH is an improvement on the client side, not a protocol feature, so it is not enough, since it's just a sort of walkaround. With ICH it may happen that only 180KB have to be redownloaded, but it might also happen that a whole 9.28MB part has to be redownloaded.

This time, an improvement was made into the eD2k protocol, which is AICH. For further information, read the AICH documentation. corrupt