资源描述:
《BT和eMule协议的比较和分析.doc》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、BT和eMule协议的比较和分析ComparisonandanalysisofBTandeMu1edownloadprotocolsEDonkeywasfoundedin2000byJedMcCaleb・The(MFTPMultisourceFileTransferProtocol)isadopted・TheeDonkeyindexserversarenottogether,buteachprivate,allovertheworld,everyonecanruneDonkeyserver,whilesharingtheindexfilecalled,zed2k-quicklinkz,w
2、iththeprefix〃ED2K://file〃・Eachfileismarkedwithahyperlinktomd5-hash,whichmakesthefileuniqueandcanbetrackedacrossthenetwork.EDonkeycanretrievefilesfrommultipleusersbyretrievingsegments,andeventuallyfragmentthedownloadedfilesintotheentirefile.In2002,05/3,MerkurwasdissatisfiedwiththeeDonkey2000client
3、andwasconvincedthathecoulddoabetterjobofP2Psoftware,sohestarteddeveloping.Agroupofprogrammerswhohavedonewe11inotherfieldshavebeenborn,andtheeMu1eprojecthasbeenborn.ThegoalistopreservethestrengthsandtalentsofeDonkey,addnewfeaturesandmakethegraphicalinterfacebetter.ThelatestversionofeMulenowis0.48A
4、(releasedinMay20,2007)・EMu1eisanupgradedversionofeDonkey,anditsuniquefeatureisopensource.ItsbasicprincipleandoperationmodeisalsobasedoneDonkey,andcanlogindirectlytoallkindsofeDonkeyserver.EMu1ealsoprovidedalotofeDonkeyhadnofunctions,suchasautomaticsearchinthenetworkserver,retainthesearchresults,i
5、nconnectionwiththeexchangeserveraddressanduserfiles,downloadthefiletopreviewthetailpartofthepriorityandsoon,allthesemakeeMu1eusemoreconvenient,butalsoletitgetthereputationofemule.P2PapplicationsupportBTprotocol,suchasBitBuddy,FlashBT,BitCometandBitSpirit,usuallyBTconsistsofthefollowingparts:.Torr
6、entfile,providedtheseedsites,thedirectoryserverandthecontentpublisher/download・The.Torrentfileisatextfilethatcontainstwoparts:thetrackerinformationandthefileinformation.TrackerinformationismainlyneedtousetheBTtrackerservertodownloadtheaddressandsettingsforthetrackerfile;informationisprocessedtoca
7、lculatethetargetfileaccordingtotheBencodingrulesofBTprotocolencodingtheinformationnetwork・ThemainprincipleofBTistodividethedownloadedfilesintosmallequalblocks,whichmustbe2TheintegerKbyte(becauseitisavirtualblock,eachbl