| ²é¿´: 445 | »Ø¸´: 0 | |||
| µ±Ç°Ö÷ÌâÒѾ´æµµ¡£ | |||
Сµ¶¶ù¾èÖú¹ó±ö (ÕýʽдÊÖ)
|
[½»Á÷]
[תÌù]BitTorrent ÐÔÄÜ׿ԽµÄÔÒò
|
||
|
¶¼ÔÚBT°É,Á˽âÒ»ÏÂ×Ó¹¤×÷ÔÀí,bitcomet¾ÍÊÇ»ùÓÚBitTorrentºËÐÄÍê³ÉµÄ... Bram Cohenbram@bitconjurer.org 2003Äê5ÔÂ22ÈÕ ·Ò룺СÂí¸ç ÈÕÆÚ£º2004-6-1 ¸ÅÒª BitTorrent Îļþ·¢²¼ÏµÍ³²ÉÓÃÕë·æÏà¶Ô£¨tit_for_tat£©µÄ·½·¨À´´ïµ½ÅÁÀÛÍÐÓÐЧ£¬Ó뵱ǰÒÑÖªµÄÐ×÷¼¼ÊõÏà±È£¬Ëü¾ßÓиü¸ßµÄ»îÁ¦¡£±¾ÎĽ«½âÊÍBitTorrent µÄÓÃ;£¬ÒÔ¼°ÊÇÔõÑùÓþ¼ÃѧµÄ·½·¨À´´ïµ½Õâ¸öÄ¿±êµÄ¡£ 1¡¢BitTorrent ÓÃÀ´×öʲô£¿ µ±Í¨¹ýHTTPÐÒéÀ´ÏÂÔØÒ»¸öÎļþµÄʱºò£¬ËùÓеÄÉÏÔØ¿ªÏú¶¼ÔÚÖ÷»úÉÏ¡£¶øÊ¹Óà BitTorrent£¬µ±¶à¸öÈËͬʱÏÂÔØÍ¬Ò»¸öÎļþµÄʱºò£¬ËûÃÇÖ®¼äÒ²Ï໥Ϊ¶Ô·½ÌṩÎļþµÄ²¿·ÖƬ¶ÏµÄÏÂÔØ¡£ÕâÑù£¬¾Í°ÑÉÏÔØµÄ¿ªÏú·Ö̯µ½Ã¿¸öÏÂÔØÕßÄÇÀҲ¾Í¿ÉÒÔÔÚÀíÂÛÉÏÖ§³ÖÎÞÏÞ¶à¸öÏÂÔØÕßÀ´ÏÂÔØÍ¬Ò»¸öÎļþ¡£ Ñо¿ÈËÔ±ÒÔǰҲÔÚѰÕÒÒ»ÖÖ´ïµ½ÕâÖÖЧ¹ûµÄ¿ÉʵÓõļ¼Êõ[3]¡£ÕâÖÖ¼¼ÊõÔÀ´²¢Ã»ÓÐÔÚ´óµÄ·¶Î§ÄÚÔËÓùý£¬ÒòΪÂß¼ºÍµÄÎÊÌâ·Ç³£¼¬ÊÖ¡£Èç¹û½ö½ö¼ÆËãÄÄЩ peers ÓµÓÐÎļþµÄÄÄЩƬ¶ÏÒÔ¼°ÕâЩƬ¶ÏÓ¦¸Ã±»·¢Ë͸øË£¬ÄÇôºÜÄÑÖ»²úÉú±È½ÏСµÄϵͳ¿ªÏú¡£PeersÖ®¼äµÄÁ¬½ÓºÜÉٻᳬ¹ý¼¸¸öСʱ£¬Í¨³£ÊǼ¸·ÖÖÓ¶øÒÑ¡£×îºó£¬ÓÐÒ»¸öÆÕ±éµÄÎÊÌ⣬¾ÍÊǹ«Æ½ÐÔ¡£ ÎÒÃǽ«½âÊÍBitTorrent ÊÇÈçºÎºÜºÃµÄ½â¾öÕâЩÎÊÌâµÄ¡£ 1.1¡¢BitTorrent½Ó¿Ú BitTorrent µÄ½Ó¿Ú¿ÉÄÜÊÇ×î¼òµ¥µÄ¡£Óû§µã»÷Ï£ÍûÏÂÔØµÄÎļþµÄ³¬¼¶Á´½Ó£¬È»ºó»áµ¯³öÒ»¸ö±ê×¼µÄ¡°±£´æµ½¡±¶Ô»°¿ò¡£´Ëºó£¬³öÏÖÒ»¸öÏÂÔØ½ø¶ÈµÄ´°¿Ú£¬ÔÚÕâ¸ö´°¿ÚÖУ¬³ýÁËÏÔʾÏÂÔØËÙÂÊÍ⣬»¹ÏÔʾһ¸öÉÏÔØËÙÂÊ¡£BTÔÚʹÓÃÉϷdz£¼òµ¥£¬Ê¹µÃBTÄܹ㷺µÄ±»ÔËÓᣠ1.2¡¢²¿Êð ¾ö¶¨²ÉÓÃBitTorrentµÄÔÒòÊÇÒòΪÓÐһЩÎļþÐèÒª·¢²¼¡£¶øÏÂÔØÕßʹÓà BitTorrent£¬ÊÇÒòΪÕâÊÇËûÃÇ»ñÈ¡ËùÐèÒªµÄÎļþµÄΨһ;¾¶¡£ÏÂÔØÕß¾³£Ò»Íê³ÉÏÂÔØ£¬¾ÍֹͣΪ±ðÈËÉÏÔØ£¬ËäȻ˵£¬ÔÚBT ¿Í»§¶ËÍê³ÉÏÂÔØÖ®ºó£¬¼ÌÐøÎª±ðÈËÌṩһ¶Îʱ¼äµÄÉÏÔØÊÇÒ»ÖÖÀñòµÄÐÐΪ¡£±ê×¼µÄʵÏÖÊÇÈÿͻ§¶ËÒ»Ö±±£³ÖÉÏÔØ£¬³ý·Ç´°¿Ú±»¹Ø±Õ¡£ ÔÚÒ»¸öµäÐ͵IJ¿ÊðÖУ¬Î´Íê³ÉµÄÏÂÔØÕß Ò»Ì¨Ö÷»ú¸ºÔðÌṩÔʼµÄÎļþ£¬ÏÂÔØÕßͨ¹ýBTÀ´ÏÂÔØÕâ¸öÎļþ¡£ÏÂÔØÕßÔÚÏÂÔØµÄͬʱ£¬ÎªÆäËüÈËÌṩÉÏÔØ£¬×îºó£¬À뿪Õâ¸öϵͳ¡£ 2¡¢¼¼Êõ¿ò¼Ü 2.1·¢²¼ÄÚÈÝ ÎªÁ˲¿Êð BT£¬Ê×ÏȽ«Ò»¸öÀ©Õ¹ÃûΪ .torrent µÄÎļþ·ÅÔÚÒ»¸öÆÕͨµÄweb·þÎñÆ÷ÉÏ¡£.torrentÎļþ°üº¬ÁËÒª¹²ÏíµÄÎļþµÄÐÅÏ¢£¬°üÀ¨ÎļþÃû¡¢´óС¡¢ÎļþµÄÉ¢ÁÐÐÅÏ¢ºÍÒ»¸öÖ¸ÏòtrackerµÄurl¡£Tracker¸ºÔð°ïÖúÏÂÔØÕßÄܹ»»ñÈ¡ÆäËüÏÂÔØÕßµÄÐÅÏ¢¡£TrackerºÍÏÂÔØÕßÖ®¼äʹÓÃÒ»Öֺܼòµ¥µÄ»ùÓÚHTTPµÄÐÒé½øÐн»»¥£¬ÏÂÔØÕ߸æËßtracker×Ô¼ºÒªÏÂÔØµÄÎļþ¡¢×Ô¼ºÊ¹ÓõĶ˿ÚÒÔ¼°ÀàËÆµÄÐÅÏ¢£¬tracker¸æËßÏÂÔØÕ߯äËüÏÂÔØÍ¬ÑùÎļþµÄÏÂÔØÕßµÄÁªÏµÐÅÏ¢¡£ÏÂÔØÕßÀûÓÃÕâЩÐÅÏ¢Ï໥֮¼ä½¨Á¢Á¬½Ó¡£Ò»¸ö±»³ÉΪ¡°ÖÖ×Ó¡±µÄÏÂÔØÕߣ¬±ØÐëÊ×Ïȱ»Æô¶¯£¬ËüÖªµÀÍêÕûµÄÎļþÐÅÏ¢¡£¶ÔtrackerºÍweb·þÎñÆ÷µÄ´ø¿íÐèÇóºÜµÍ£¬¶øÖÖ×Ó±ØÐëÖÁÉÙ·¢ËÍÔʼÎļþµÄÒ»·ÝÍêÕû¿½±´¡£ Òë×¢£º P2PµÄºËÐÄ˼Ïë¾ÍÊÇûÓзþÎñÆ÷µÄ¸ÅÄÈκÎÒ»¸öÏÂÔØÕß¼ÈÊÇclient£¬ÓÖÊÇserver¡£ ÏÂÔØÕß´Ó±ðÈËÄÇÀïÈ¡ÎļþµÄʱºò£¬³ÆÎªÏÂÔØ£¬¶øÎª±ðÈËÌṩÎļþµÄʱºò£¬³ÆÎªÉÏÔØ£¨´«£©¡£ ΪÁËÍê³ÉÒ»´Î²¿Êð£¬ÖÁÉÙÐèÒªÒ»¸ö trackerºÍÒ»¸öseed¡£Ëùνtracker£¬ÊÇÒ»¸ö·þÎñÆ÷£¬¸ºÔð°ïÖúpeersÖ®¼äÏ໥½¨Á¢Á¬½Ó¡£¶øseed£¬Í¨³£ÊǵÚÒ»¸öÏòtracker×¢²á£¬È»ºóËü¾Í¿ªÊ¼½øÈëÑ»·£¬µÈ´ýΪ±ðÈËÌṩÎļþ£¬Ò²¾ÍÊÇ˵£¬µÚÒ»¸öseedÖ»¸ºÔðÉÏ´«Îļþ¡£Ò»µ©ÓÐÒ»¸öpeerÏòtracker×¢²áºó£¬¾Í¿ÉÒÔÈ¡µÃseedµÄÐÅÏ¢£¬´Ó¶øÓëseed½¨Á¢Á¬½Ó¡£´Óseed´¦¶ÁÈ¡Îļþ¡£ÓÉÓÚÔʼµÄÎļþ£¬Ö»ÓÐseedÓµÓУ¬ËùÓÐ˵£¬seedÖÁÉÙÒªÉÏ´«ÔʼÎļþµÄÒ»·ÝÍêÕû¿½±´¡£Èç¹ûÓÖÓÐÒ»¸öpeer¼ÓÈë½øÀ´£¬ÄÇôËü¿ÉÒÔͬʱºÍseedºÍǰһ¸öpeer½¨Á¢Á¬½Ó£¬È»ºó´ÓÕâÁ½Õß´¦»ñÈ¡Îļþ¡£ 2.2¶ÔµÈ·¢²¼ ËùÓкÍÎļþÏÂÔØÏà¹ØµÄÂß¼ÎÊÌ⣬ͨ¹ý peersÖ®¼äµÄ½»»¥À´½â¾ö¡£Ò»Ð©¹ØÓÚÏÂÔØºÍÉÏ´«µÄËÙÂʵÄÐÅÏ¢±»·¢Ë͸øtracker£¬trackerËѼ¯ÕâЩÐÅÏ¢ÓÃÓÚͳ¼Æ¡£TrackerµÄÖ°Ôð±»ÑϸñÏÞ¶¨Îª¡°°ïÖúpeersÏ໥·¢ÏÖ¶Ô·½¡±¡£ ¾¡¹ÜtrackerÊÇpeersÖ®¼äÏ໥·¢ÏÖµÄΨһ;¾¶£¬Ò²ÊÇpeersÖ®¼äÏ໥Ð×÷µÄΨһµØµã£¬±ê×¼µÄtrackerËã·¨·µ»ØÒ»¸öËæ»úµÄ peersµÄÁÐ±í¡£Ëæ»úͼ¾ßÓзdz£Ç¿´óµÄÌØÐÔ£¬Ðí¶àµÄpeerÑ¡ÔñËã·¨×îÖÕ²úÉúÁËÒ»¸öÃÝÂÉͼ£¬ÃÝÂÉͼÄÜÒÔÉÙÁ¿µÄ½Á°èÀ´»ñµÃ·ÖƬ¡£×¢Ò⣬peersÖ®¼äµÄÁ¬½Ó¶¼ÊÇË«Ïò´«ÊäµÄ¡£ ΪÁ˸ú×Ùÿ¸öpeers¶¼ÓµÓÐʲô£¬BT½«ÎļþÇиîΪ¹Ì¶¨´óСµÄƬ£¨µäÐ͵ĴóСÊÇ256k£©¡£Ã¿¸öÏÂÔØÕß±ØÐë֪ͨÆäËüpeers£¬ËüÓµÓÐÄÄЩƬ¡£ÎªÁËÑéÖ¤ÎļþµÄÍêÕûÐÔ£¬¶Ôÿ¸öƬ¶Ï¶¼Í¨¹ýSHA1Ëã·¨¼ÆËã³öËüµÄhashÐÅÏ¢£¬²¢±£´æÔÚtorrentÎļþÖС£PeersÖ»ÓÐÔÚ¼ì²éÁËÆ¬¶ÏµÄÍêÕûÐÔÖ®ºó£¬²Å»á֪ͨÆäËüpeersËüÓµÓÐÕâ¸öƬ¶Ï¡£É¾³ý´úÂëÊÇÒ»ÖÖ±»½¨ÒéʹÓõİïÖúÎļþ·Ö²¼µÄ¼¼Êõ£¬µ«ÊÇÕâÖÖ¸ü¼òµ¥µÄ·½·¨£¨¼È·ÖƬ£©Ò²ÊÇ¿ÉÓõġ£ Peers²»¶ÏµÄ´ÓËüÄÜÁ¬½Óµ½µÄpeersÄÇÀïÏÂÔØÎļþƬ¶Ï¡£µ±È»£¬Ëü²»ÄÜ´ÓûÓиúËü½¨Á¢Á¬½ÓµÄpeersÄÇÀïÏÂÔØÈκζ«Î÷¡£¼´Ê¹Êǽ¨Á¢ÁËÁ¬½ÓµÄpeers£¬ÓеÄÒ²²¢²»°üº¬ËüÏëÒªµÄƬ¶Ï£¬»òÕß»¹²»ÔÊÐíËüÈ¥ÏÂÔØ¡£¹ØÓÚ²»ÔÊÐíÆäËüpeers´ÓËüÄÇÀïÏÂÔØÎļþƬ¶ÏµÄ²ßÂÔ£¬±»³ÆÎª ×èÈûchoking£¬ºóÎĽ«½øÐÐÌÖÂÛ¡£ÆäËü¹ØÓÚÎļþ·Ö²¼µÄ·½·¨Í¨³£¶¼ÒªÓõ½Âé·³µÄÊ÷½á¹¹£¬¶øÇÒÊ÷Ò¶µÄÉÏÔØÄÜÁ¦²¢Ã»Óб»ÀûÓÃÆðÀ´¡£¼òµ¥µÄÈà peers Ðû²¼ËüÓµÓÐʲô»áµ¼Ö²»µ½ 10 % µÄ´ø¿í¿ªÖ§£¬È´¿ÉÒÔ¿É¿¿µÄʹÓÃËùÓеÄÉÏÔØÄÜÁ¦¡£ 2.3Á÷Ë®×÷Òµ ¹¹¼ÜÔÚTCPÖ®ÉϵÄÓ¦ÓòãÐÒ飬ÀýÈçBT£¬ºÜÖØÒªµÄÒ»µãÊÇÓ¦¸Ãͬʱ·¢ËͶà¸öÇëÇó£¬ÒÔ±ÜÃâÔÚÁ½¸öƬ¶Ï·¢ËÍÖ®¼äµÄÑÓ³Ù£¬ÒòΪÄÇÑù»áÑÏÖØÓ°Ïì´«ÊäËÙÂÊ¡£ÎªÁË´ïµ½ÕâÖÖÄ¿µÄ£¬BT½«Ã¿¸öƬ¶ÏÓÖ½øÒ»²½·ÖΪ×ÓÆ¬¶Ï£¬Ã¿¸ö×ÓÆ¬¶ÏµÄ´óСһ°ãÊÇ16k£¬Í¬Ê±£¬ËüÒ»Ö±±£³Ö¼¸¸öÇëÇó£¨Í¨³£ÊÇ5¸ö£©±»Á÷Ë®µÄͬʱ·¢ËÍ¡£Á÷Ë®×÷ÒµËùÑ¡ÔñµÄdata£¨Ó¦¸ÃÊÇÖ¸µÄͬʱ·¢Ë͵ÄÇëÇóÊýÄ¿£¬Ò²¾ÍÊÇ5¸örequest£©µÄÒÀ¾ÝÊÇÄÜʹµÃ´ó¶àÊýÁ¬½Ó±äµÃ±¥ºÍ¡£ Òë×¢£ºÒ²¾ÍÊÇ˵£¬Ã¿´Î·¢ËÍ5¸öÇëÇó£¬È»ºó¹ýÒ»¶Îʱ¼ä£¬ÓÖ·¢ËÍ5¸öÇëÇó¡£Á÷Ë®×÷ÒµÔÚHTTP ÐÒé1.1°æ±¾Öб»¹ã·ºÔËÓᣠ2.4Ƭ¶ÏÑ¡Ôñ Ñ¡ÔñÒ»¸öºÃµÄ˳ÐòÀ´ÏÂÔØÆ¬¶Ï£¬¶ÔÌá¸ßÐÔÄܷdz£ÖØÒª¡£Ò»¸ö²îµÄƬ¶ÏÑ¡ÔñËã·¨¿ÉÄܵ¼ÖÂËùÓÐµÄÆ¬¶Ï¶¼´¦ÓÚÏÂÔØÖУ¬»òÕßÁíÒ»ÖÖÇé¿ö£¬Ã»ÓÐÈÎºÎÆ¬¶Ï±»ÉÏÔØ¸øÆäËü peers¡£ 2.4.1ÑϸñµÄÓÅÏȼ¶ Ƭ¶ÏÑ¡ÔñµÄµÚÒ»¸ö²ßÂÔÊÇ£ºÒ»µ©ÇëÇóÁËij¸öƬ¶ÏµÄ×ÓÆ¬¶Ï£¬ÄÇô¸ÃƬ¶ÏʣϵÄ×ÓÆ¬¶ÏÓÅÏȱ»ÇëÇó¡£ÕâÑù£¬¿ÉÒÔ¾¡¿ÉÄÜ¿ìµÄ»ñµÃÒ»¸öÍêÕûµÄƬ¶Ï 2.4.2×îÉÙµÄÓÅÏÈ ¶ÔÒ»¸öÏÂÔØÕßÀ´Ëµ£¬ÔÚÑ¡ÔñÏÂÒ»¸ö±»ÏÂÔØµÄƬ¶Ïʱ£¬Í¨³£Ñ¡ÔñµÄÊÇËüµÄpeersÃÇËùÓµÓеÄ×îÉÙµÄÄǸöƬ¶Ï£¬Ò²¾ÍÊÇËùνµÄ¡°×îÉÙÓÅÏÈ¡±¡£ÕâÖÖ¼¼Êõ£¬È·±£ÁËÿ¸öÏÂÔØÕß¶¼ÓµÓÐËüµÄpeersÃÇ×îÏ£ÍûµÃµ½µÄÄÇЩƬ¶Ï£¬´Ó¶øÒ»µ©ÓÐÐèÒª£¬ÉÏÔØ¾Í¿ÉÒÔ¿ªÊ¼¡£ÕâҲȷ±£ÁËÄÇЩԽÆÕͨµÄƬ¶ÏÔ½·ÅÔÚ×îºóÏÂÔØ£¬´Ó¶ø¼õÉÙÁËÕâÑùÒ»ÖÖ¿ÉÄÜÐÔ£¬¼´Ä³¸öpeerµ±Ç°ÕýÌṩÉÏÔØ£¬¶øËæºóȴûÓÐÈκεı»±ðÈ˸ÐÐËȤµÄƬ¶ÏÁË¡£ Òë×¢£º Ò²¾Í˵˵£¬Ã¿¸öpeer¶¼ÓÅÏÈÑ¡ÔñÕû¸öϵͳÖÐ×îÉÙµÄÄÇЩƬ¶ÏÈ¥ÏÂÔØ£¬¶øÄÇЩÔÚϵͳÖÐÏà¶Ô½Ï¶àµÄƬ¶Ï£¬·ÅÔÚºóÃæÏÂÔØ£¬ÕâÑù£¬Õû¸öϵͳ¾ÍÇ÷ÏòÓÚÒ»ÖÖ¸üÓŵÄ״̬¡£Èç¹û²»ÓÃÕâÖÖËã·¨£¬´ó¼Ò¶¼È¥ÏÂÔØ×î¶àµÄÄÇЩƬ¶Ï£¬ÄÇôÕâЩƬ¶Ï¾Í»áÔÚϵͳÖзֲ¼µÄÔ½À´Ô½¶à£¬¶øÄÇЩÔÚϵͳÖÐÏà¶Ô½ÏÉÙµÄÆ¬¶ÏÈÔÈ»ºÜÉÙ£¬×îºó£¬Ä³Ð© peer ¾Í²»ÔÙÓµÓÐÆäËü peer ¸ÐÐËȤµÄƬ¶ÏÁË£¬ÄÇôϵͳµÄ²ÎÓëÕßÔ½À´Ô½ÉÙ£¬Õû¸öϵͳµÄÐÔÄܾÍϽµ¡£ ÔÚBTϵͳÖУ¬³ä·Ö¿¼ÂÇÁ˾¼ÃѧµÄ¸ÅÄ´¦´¦´ÓÕû¸öϵͳµÄÐÔÄܳö·¢£¬²ÎÓëÕßÔ½¶à£¬ÏµÍ³Ô½ÓÅ»¯¡£ ÐÅÏ¢ÀíÂÛÏÔʾ³ý·ÇÖÖ×ÓÉÏ´«ÁËÎļþµÄËùÓÐÆ¬¶Ï£¬·ñÔòûÓÐÈκÎÏÂÔØÕß¿ÉÒÔÍê³ÉËùÓÐÎļþµÄÏÂÔØ¡£Èç¹ûÔÚÒ»¸ö²¿ÊðÖУ¬Ö»ÓÐÒ»¸öÖÖ×Ó£¬¶øÇÒÖÖ×ÓµÄÉÏÔØÄÜÁ¦±ÈËüµÄ´ó¶àÊýÏÂÔØÕß¶¼Òª²î£¬ÄÇô£¬²»Í¬µÄÏÂÔØÕß´ÓÖÖ×ÓÄÇÀïÏÂÔØ²»Í¬µÄƬ¶Ï£¬ÐÔÄܾͻá±äµÃ±È½ÏºÃ£¬ÒòΪ£¬Öظ´µÄÏÂÔØÀË·ÑÁËÖÖ×Ó»ñÈ¡¸ü¶àÐÅÏ¢µÄ»ú»á¡£¡°×îÉÙÓÅÏÈ¡±Ê¹µÃÏÂÔØÕßÖ»´ÓÖÖ×Ó´¦ÏÂÔØÐÂµÄÆ¬¶Ï£¨Ò²¾ÍÊÇÕû¸öϵͳÖÐÆäËüpeer¶¼Ã»ÓÐµÄÆ¬¶Ï£©£¬ÒòΪ£¬ÏÂÔØÕßÄܹ»¿´µ½ÆäËüpeersÄÇÀïÒѾÓÐÁËÖÖ×ÓÒѾÉÏ´«µÄƬ¶Ï¡£ ÔÚijЩ²¿ÊðÖУ¬ÔʼµÄÖÖ×ÓÓÉÓÚijЩÔÒò×îÖչرգ¬Ö»ºÃÓÉʣϵÄÕâЩÏÂÔØÕßÃÇÀ´¸ºÔðÉÏ´«¡£ÕâÑùÏÔÈ»»á´øÀ´Ò»¸ö·çÏÕ£ºÄ³Ð©Æ¬¶ÏÈκÎÒ»¸öÏÂÔØÕß¶¼²»ÓµÓС£¡°×îÉÙÓÅÏÈ¡±Ò²ºÜºÃµÄ´¦ÀíÁËÕâÖÖÇé¿ö¡£Í¨¹ý¾¡¿ìµÄ¸´ÖÆ×îÉÙµÄÆ¬¶Ï£¬¼õÉÙÁËÕâÖÖÓÉÓÚµ±Ç°µÄpeersÍ£Ö¹ÉÏÔØºó´øÀ´µÄ·çÏÕ¡£ 2.4.3Ëæ»úµÄµÚÒ»¸öƬ¶Ï ¡°×îÉÙÓÅÏÈ¡±µÄÒ»¸öÀýÍâÊÇÔÚÏÂÔØ¸Õ¿ªÊ¼µÄʱºò¡£´Ëʱ£¬ÏÂÔØÕßûÓÐÈÎºÎÆ¬¶Ï¿É¹©ÉÏ´«£¬ËùÒÔ£¬ÐèÒª¾¡¿ìµÄ»ñȡһ¸öÍêÕûµÄƬ¶Ï¡£¶ø×îÉÙµÄÆ¬¶Ï£¬Í¨³£Ö»ÓÐijһ¸öpeerÓµÓУ¬ËùÒÔ£¬Ëü¿ÉÄܱȶà¸öpeers¶¼ÓµÓеÄÄÇЩƬ¶ÏÏÂÔØµÄÒªÂý¡£Òò´Ë£¬µÚÒ»¸öƬ¶ÏÊÇËæ»úÑ¡ÔñµÄ£¬Ö±µ½µÚÒ»¸öƬ¶ÏÏÂÔØÍê³É£¬²ÅÇл»µ½¡°×îÉÙÓÅÏÈ¡±µÄ²ßÂÔ¡£ 2.4.4×îºó½×¶Îģʽ ÓÐʱºò£¬´ÓÒ»¸öËÙÂʺÜÂýµÄpeerÄÇÀïÇëÇóÒ»¸öƬ¶Ï¡£ÔÚÏÂÔØµÄÖмä½×¶Î£¬Õâ²»ÊÇʲôÎÊÌ⣬µ«ÊÇÈ´¿ÉÄÜDZÔÚµÄÑÓ³ÙÏÂÔØµÄÍê³É¡£ÎªÁË·ÀÖ¹ÕâÖÖÇé¿ö£¬ÔÚ×îºó½×¶Î£¬peerÏòËüµÄËùÓеÄpeersÃǶ¼·¢ËÍijƬ¶ÏµÄ×ÓÆ¬¶ÏµÄÇëÇó£¬Ò»µ©Ä³Ð©×ÓÆ¬¶Ïµ½ÁË£¬ÄÇô¾Í»áÏòÆäËüpeer·¢ËÍcancel ÏûÏ¢£¬È¡Ïû¶ÔÕâЩ×ÓÆ¬¶ÏµÄÇëÇó£¬ÒÔ±ÜÃâ´ø¿íµÄÀË·Ñ¡£Êµ¼ÊÉÏ£¬ÓÃÕâÖÖ·½·¨²¢Ã»ÓÐÀ˷ѶàÉÙ´ø¿í£¬¶øÎļþµÄ½áÊø²¿·ÖÒ²Ò»Ö±ÏÂÔØµÄ·Ç³£¿ì¡£ 3 ×èÈû£¨choking£©Ëã·¨ BT²¢²»¼¯ÖзÖÅä×ÊÔ´¡£Ã¿¸öpeer×Ô¼ºÓÐÔðÈÎÀ´¾¡¿ÉÄܵÄÌá¸ßËüµÄÏÂÔØËÙÂÊ¡£Peers´ÓËü¿ÉÒÔÁ¬½ÓµÄpeers´¦ÏÂÔØÎļþ£¬²¢¸ù¾Ý¶Ô·½ÌṩµÄÏÂÔØËÙÂʸøÓèͬµÈµÄÉÏ´«»Ø±¨£¨Äã¾´ÎÒÒ»³ß£¬ÎÒ¾´ÄãÒ»ÕÉ£©¡£¶ÔÓÚºÏ×÷Õߣ¬ÌṩÉÏ´«·þÎñ£¬¶ÔÓÚ²»ºÏ×÷µÄ£¬¾Í×èÈû¶Ô·½¡£ËùÒÔ˵£¬×èÈûÊÇÒ»ÖÖÁÙʱµÄ¾Ü¾øÉÏ´«²ßÂÔ£¬ËäÈ»ÉÏ´«Í£Ö¹ÁË£¬µ«ÊÇÏÂÔØÈÔÈ»¼ÌÐø¡£ÔÚ×èÈûÍ£Ö¹µÄʱºò£¬Á¬½Ó²¢²»ÐèÒªÖØÐ½¨Á¢¡£ ×èÈûËã·¨²¢²»ÊôÓÚBT¶ÔµÈÐÒ飨ָpeers Ö®¼ä½»»¥µÄÐÒ飩µÄ¼¼Êõ²¿·Ö£¬µ«ÊǶÔÌá¸ßÐÔÄÜÊDZØÒªµÄ¡£Ò»¸öºÃµÄ×èÈûËã·¨Ó¦¸ÃÀûÓÃËùÓпÉÓõÄ×ÊÔ´£¬ÎªËùÓÐÏÂÔØÕßÌṩһÖ¿ɿ¿µÄÏÂÔØËÙÂÊ£¬²¢Êʵ±³Í·£ÄÇЩֻÏÂÔØ¶ø²»ÉÏ´«µÄpeers¡£ 3.1ÅÁÀÛÍÐÓÐЧ ÅÁÀÛÍÐÓÐЧÊÇÖ¸×ÊÔ´ÅäÖÃÒÑ´ïµ½ÕâÑùÒ»ÖÖ¾³µØ£¬¼´ÈκÎÖØÐ¸ıä×ÊÔ´ÅäÖõķ½Ê½£¬¶¼²»¿ÉÄÜʹһ²¿·ÖÈËÔÚûÓÐÆäËûÈËÊÜËðµÄÇé¿öÏÂÊÜÒæ¡£ÕâÒ»×ÊÔ´ÅäÖõÄ״̬£¬±»³ÆÎª¡°ÅÁÀÛÍÐ×îÓÅ¡±£¨Pareto optimum£©×´Ì¬£¬»ò³ÆÎª¡°ÅÁÀÛÍÐÓÐЧ¡±£¨Pareto efficient£© ÔÚ¼ÆËã»úÁìÓò£¬Ñ°ÇóÅÁÀÛÍÐÓÐЧÊÇÒ»ÖÖ±¾µØÓÅ»¯Ëã·¨ BitTorrentµÄ×èÈûËã·¨£¬ÓÃÒ»ÖÖÕë·æÏà¶ÔµÄ·½Ê½À´ÊÔͼ´ïµ½ÅÁÀÛÍÐ×îÓÅ¡££¨ÔÎIJ»Ì«ºÃ·Ò룬ÎÒ¼ò»¯ÁË£©¡£Peers¶ÔÄÇЩÏòËûÌṩÉÏ´«·þÎñµÄpeers¸øÓèͬÑùµÄ»Ø±¨£¬Ä¿µÄÊÇÏ£ÍûÔÚÈκÎʱºò¶¼ÓÐÈô¸É¸öÁ¬½ÓÕýÔÚ½øÐÐ×ÅË«Ïò´«Êä¡£ 3.2 BitTorrentµÄ×èÈûËã·¨ ´Ó¼¼Êõ²ãÃæÉÏ˵£¬BTµÄÿ¸öpeerÒ»Ö±Óë¹Ì¶¨ÊýÁ¿µÄÆäËü peers ±£³ÖÊèͨ£¨Í¨³£ÊÇ4¸ö£©£¬ËùÒÔÎÊÌâ¾Í±ä³ÉÁËÄÄЩpeersÓ¦¸Ã±£³ÖÊèͨ£¿ÕâÖÖ·½·¨Ê¹µÃTCPµÄÓµÈû¿ØÖÆÐÔÄÜÄܹ»¿É¿¿µÄ±¥ºÍÉÏ´«ÈÝÁ¿¡££¨Ò²¾ÍÊÇ˵£¬¾¡Á¿ÈÃÕû¸öϵͳµÄÉÏ´«ÄÜÁ¦´ïµ½×î´ó£©¡£ ÑϸñµÄ¸ù¾Ýµ±Ç°µÄÏÂÔØËÙÂÊÀ´¾ö¶¨ÄÄЩpeersÓ¦¸Ã±£³ÖÊèͨ¡£ÁîÈ˾ªÑȵÄÊÇ£¬¼ÆË㵱ǰÏÂÔØËÙÂÊÊǸö´óÄÑÌâ¡£µ±Ç°µÄʵÏÖʵÖÊÉÏÊÇÒ»¸öÿ¸ô20ÃëµÄÂÖѯ¡£¶øÔÀ´µÄËã·¨ÊǶÔÒ»¸ö³¤Ê±¼äµÄÍøÂç´«Êä½øÐÐ×ܼƣ¬µ«ÕâÖÖ·½·¨ºÜ²î¾¢£¬ÒòΪÓÉÓÚ×ÊÔ´¿ÉÓûòÕß²»¿ÉÓ㬴ø¿í»á±ä»¯µÄºÜ¿ì¡£ ΪÁ˱ÜÃâÒòΪƵ·±µÄ×èÈûºÍÊèͨ peersÔì³ÉµÄ×ÊÔ´ÀË·Ñ£¬BTÿ¸ô10Ãë¼ÆËãÒ»´ÎÄĸöpeerÐèÒª±»×èÈû£¬È»ºó½«ÕâÖÖ״̬±£³Öµ½ÏÂÒ»¸ö10Ãë¡£10ÃëÒѾ×㹻ʹµÃTCPÀ´µ÷ÕûËüµÄ´«ÊäÐÔÄܵ½×î´ó¡£ 3.3¡¢optimistic unchoking Èç¹ûÖ»ÊǼòµ¥µÄΪÌṩ×îºÃµÄÏÂÔØËÙÂʵÄpeersÃÇÌṩÉÏÔØ£¬ÄÇô¾ÍûÓа취À´·¢ÏÖÄÇЩ¿ÕÏеÄÁ¬½ÓÊÇ·ñ±Èµ±Ç°ÕýʹÓõÄÁ¬½Ó¸üºÃ¡£ÎªÁ˽â¾öÕâ¸öÎÊÌ⣬ÔÚÈκÎʱºò£¬Ã¿¸öpeer¶¼ÓµÓÐÒ»¸ö³ÆÎª¡°optimistic unchoking¡±µÄÁ¬½Ó£¬Õâ¸öÁ¬½Ó×ÜÊDZ£³ÖÊèͨ״̬£¬¶ø²»¹ÜËüµÄÏÂÔØËÙÂÊÊÇÔõÑù¡£Ã¿¸ô30Ãë£¬ÖØÐ¼ÆËãÒ»´ÎÄĸöÁ¬½ÓÓ¦¸ÃÊÇ¡°optimistic unchoking¡±¡£30Ãë×ãÒÔÈÃÉÏÔØÄÜÁ¦´ïµ½×î´ó£¬ÏÂÔØÄÜÁ¦Ò²ÏàÓ¦µÄ´ïµ½×î´ó¡£ÕâÖÖºÍÕë·æÏà¶ÔÀàËÆµÄ˼Ïë·Ç³£µÄΰ´ó¡£¡°optimistic unchoking¡±·Ç³£ºÍгµÄÓë¡°ÇôͽÀ§¾³¡±ºÏ×÷¡£ 3.4¡¢·´¶ÔÆçÊÓ Ä³Ð©Çé¿öÏ£¬Ò»¸öpeer¿ÉÄܱ»ËüËùÓеÄpeers¶¼×èÈûÁË£¬ÕâÖÖÇé¿öÏ£¬Ëü½«»á±£³Ö½ÏµÍµÄÏÂÔØËÙÂÊÖ±µ½Í¨¹ý¡°optimistic unchoking¡±ÕÒµ½¸üºÃpeers¡£ÎªÁ˼õÇáÕâÖÖÎÊÌ⣬Èç¹ûÒ»¶Îʱ¼ä¹ýºó£¬´Óij¸öpeerÄÇÀïÒ»¸öƬ¶ÏҲûÓеõ½£¬ÄÇôÕâ¸öpeerÈÏΪ×Ô¼º±»¶Ô·½¡°µ¡Âý¡±ÁË£¬ÓÚÊDz»ÔÙΪ¶Ô·½ÌṩÉÏ´«£¬³ý·Ç¶Ô·½ÊÇ¡°optimistic unchoking¡±¡£ÕâÖÖÇé¿öƵ·±·¢Éú£¬»áµ¼Ö¶àÓÚÒ»¸öµÄ²¢·¢µÄ¡°optimistic unchoking¡±¡£ 3.5½ö½öÉÏ´« Ò»µ©Ä³¸öpeerÍê³ÉÁËÏÂÔØ£¬Ëü²»ÄÜÔÙͨ¹ýÏÂÔØËÙÂÊ£¨ÒòΪÏÂÔØËÙÂÊÒѾΪ0ÁË£©À´¾ö¶¨ÎªÄÄЩ peers ÌṩÉÏÔØÁË¡£Ä¿Ç°²ÉÓõĽâ¾ö°ì·¨ÊÇ£¬ÓÅÏÈÑ¡ÔñÄÇЩ´ÓËüÕâÀïµÃµ½¸üºÃµÄÉÏÔØËÙÂʵÄpeers¡£ÕâÑùµÄÀíÓÉÊÇ¿ÉÒÔ¾¡¿ÉÄܵÄÀûÓÃÉÏÔØ´ø¿í¡£ 4¡¢ÕæÊµÊÀ½çµÄÌåÑé BitTorrent²»½ö½öÔçÒѾʵÏÖ£¬¶øÇÒÔçÒѾ±»¹ã·ºµÄʹÓã¬ËüΪÐí¶à²¢·¢µÄÏÂÔØÕßÌṩ³É°ÙÕ×µÄÎļþÏÂÔØ¡£ÒÑÖªµÄ×î´óµÄ²¿ÊðÖУ¬Í¬Ê±Óг¬¹ý1000¸öµÄÏÂÔØÕß¡£µ±Ç°µÄÆ¿¾±£¨Êµ¼Ê»¹Ã»Óдﵽ£©¿´À´ÊÇtrackerµÄ´ø¿í¡£Ëü£¨trakcerµÄ´ø¿í£©´ó¸ÅÕ¼ÓÃÁË´ø¿í×ÜÁ¿µÄǧ·ÖÖ®Ò»£¬Ò»Ð©Ð¡µÄÐÒéÀ©Õ¹¿ÉÄÜ»áʹËü½µµ½Íò·ÖÖ®Ò»¡£ ²Î¿¼×ÊÁÏ£º [1] E. Adar and B. A. Huberman. Free riding on gnutella. First Monday, 5(10), 2000. [2] A.-L. Barab´asi. Linked: The New Science of Networks.Perseus Publishing, 2002. [3] M. Castro, P. Druschel, A.-M. Kermarrec, A. Nandi, A. Rowstron, and A. Singh. Splitstream: High-bandwidth content distribution in cooperative environments. In Proceedings of IPTPS03, Berkeley, USA, Feb. 2003. [4] P. Maymounkov and D. Mazieres. Kademlia: A peer-to-peer information system based on the xormetric. In Proceedings of IPTPS02, Cambridge, USA, Mar. 2002. [ Last edited by »ÃÓ°ÎÞºÛ on 2006-11-20 at 16:28 ] |
» ²ÂÄãϲ»¶
297£¬¹¤¿Æµ÷¼Á?
ÒѾÓÐ10È˻ظ´
¿ÒÇëÓÐѧУÊÕÁô
ÒѾÓÐ5È˻ظ´
322Çóµ÷¼Á
ÒѾÓÐ14È˻ظ´
294Çóµ÷¼Á
ÒѾÓÐ8È˻ظ´
0854Çóµ÷¼Á
ÒѾÓÐ10È˻ظ´
Ò»Ö¾Ô¸AÇø211£¬22408 321Çóµ÷¼Á
ÒѾÓÐ7È˻ظ´
¼±Ðèµ÷¼Á
ÒѾÓÐ4È˻ظ´
300Çóµ÷¼Á
ÒѾÓÐ6È˻ظ´
291Çóµ÷¼Á
ÒѾÓÐ6È˻ظ´
ÇóÖúµ÷¼Á£¬¿çµ÷
ÒѾÓÐ20È˻ظ´














»Ø¸´´ËÂ¥