Что означает upload_only=3 в расширенном рукопожатии BitTorrent

Мне нужна помощь, чтобы понять, что делает upload_only=3 Имею ввиду в расширенном рукопожатии BitTorrent.

Я знаю о http://www.bittorrent.org/beps/bep_0021.html, и в соответствии с этим расширенное рукопожатие может выглядеть так:

{m: {ut_pex=1, ut_metadata=2}, upload_only=1, metadata_size=31236}

Но я вижу рукопожатие как

{m: {ut_pex=1, ut_metadata=2, upload_only=3}, metadata_size=31236}

И даже больше, я видел рукопожатие, как

{m: {ut_pex=1, ut_metadata=2, upload_only=3}, upload_only=1, metadata_size=31236}

Может ли кто-нибудь объяснить, что делает upload_only=3 имеется в виду в расширенном рукопожатии BitTorrent?

2 ответа

Решение

upload_only=3 находится в словаре сообщения в рукопожатии расширения.
Это означает, что сообщение расширения с расширением id=3 определяется как upload_only сообщение.

К сожалению, BEP21 не отражает, как upload_only реализован на практике. Он должен быть устаревшим и заменен на лучший.

Из моего ответа на другой вопрос здесь:

Приложение:
uTorrent и большинство других клиентов реализация upload_only отличается от описанной здесь спецификации "устарела" ; alus = Грег Хейзел
Это определяется как сообщение расширения в рукопожатии расширения, где данные сообщения байта означают 1: 0x00 = false или <что-нибудь еще> = true. Это можно проверить с помощью Wireshark.

Согласно этому источнику любое значение, отличное от 0, интерпретируется так же: как True.

Другие вопросы по тегам