Multisource File Transfer Protocol (MFTP) is designed for the purpose of file sharing. It is still under development, and therefore may acquire more features or other improvements in addition to those discussed in this article. This is the communication protocol used by such clients as eMule and eDonkey and, in its extended implementation, by the Overnet network.
In addition to being able to search by filename, MFTP is able to uniquely identify files based on their contents, regardless of how they are named on each individual computer. It also has bandwidth management (a.k.a. leech resistance) built into the protocol, and every known mature client allows the user to tweak file and user upload priorities. It is also possible to share metadata about a given file with links on Web sites (such as: this file is good, this file is corrupted, this file isn't what the name may indicate); in this case, the files are identified with their MD4 hash numbers (which are consistent) rather than their filenames (which will often vary from one computer to the next).
The protocol is still under development, so additional features and other improvements are still possible. There are several unique forks of the protocol: eDonkey2000 implemented what it called "hording" of sources, eMule uses a credit system, and xMule has extended the credit system to facilitate in the transfer of rare files. It has recently been announced that MFTP had been used successfully in Internet2 project, achieving excellent results in terms of speed and reliability when transferring or sharing files.