Я получаю странное/неизвестное сообщение при попытке связаться с некоторыми одноранговыми узлами BitTorrent. В этом конкретном случае я нахожусь в процессе загрузки фрагментов, и вдруг это новое/странное сообщение появляется перед ответом на фрагмент. Сообщение нечетное, потому что оно не соответствует протоколу, предполагается, что все сообщения выглядеть так
'<length prefix><message ID><payload>
'
префикс длины — 4 байта, идентификатор сообщения — 1 байт и полезная нагрузка. Я включаю захват, чтобы показать, что я имею в виду, в строке 509 захвата вы увидите запрос на кусок, в строке 510 вы увидите начало ответа.
Первые 4 байта ответа — 00 00 00 00, то есть сообщение длиной 0 (что вызывает у меня проблемы), следующие 4 байта — фактическая длина сообщения, равная 30. Фактический ответ на запрос части начинается в строке 513, так что я получаю то, что просил, но это новое/странное сообщение сбивает меня с толку. Я уверен, что смогу найти обходной путь, но мне бы очень хотелось понять, что это значит.
Кроме того, я понятия не имею, что означает настоящее сообщение, и нигде не могу найти никакой информации об этом.
Вот захват Wireshark.