2013-05-10 4 views

ответ

0

Для этого есть несколько причин. Скорее всего:

  • Peer должен знать ваше состояние, поэтому убедитесь, что вы отправили сообщения «Заинтересованные», «Не заинтересованы», «Отброшенные», «Отключенные». Точно так же вы должны отслеживать состояние сверстников.
  • Вы не заинтересованы в том, чтобы сверстники или сверстники удушали вас или их обоих. Вы можете запросить только часть, когда вы заинтересованы в том, чтобы сверстники и сверстники не задушили вас. В противном случае сверст должен игнорировать ваш запрос.
  • У коллеги не имеется требуемой детали. В этом случае одноранговый узел также должен игнорировать запрос.

Это все от bittorrent specification. Вот часть журнала, который демонстрирует требуемые шаги, чтобы получить первую часть:

Openning a new session between peers. 
Connected to <peer addr> 
Handshaked with BitTorrent protocol uTorrent version 2040 
Received message: Bitfield 
Update 'peer have' bitfield. 
Received message: Have 572 
Mark piece 572 as available. 
... 
... here we receive many Have messages, I skip them 
... 
Sending message: Interested 
Received message: Unchoke 
Sending message: Request { piece index = 0, block offset = 0, block length = 16384 } 
Received message: Piece { piece index = 0, block offset = 0, block length = 16384 } 
... 

Как вы можете видеть Utorrent ответил Кусок сообщение.

Однако в этом случае нам повезло: эксперт не всегда отлучает нас от того, что у него ограниченное количество так называемых «отключенных слотов». Итак, один совет: используйте рой с небольшим отношением количества лексера к числу посевных единиц. Это должно облегчить процесс отладки, потому что один из нас с уверенностью откликнется на нас.

Смежные вопросы