Почему в getdata есть поле для количества записей инвентаризации?

После того, как узел получит invсообщение, вы можете получить данные для каждого хэша tx/block, используя getdata:

getdata — запросить отдельный блок или транзакцию по хешу.

Итак, если вы можете получить только один tx или блок за раз, какой смысл иметь поле в сообщении getdataдля количества записей, которые вы запрашиваете?

Field Size  Description   Data type   Comments
----------  ------------  ----------  -------------
?           count         var_int     Number of inventory entries
36x?        inventory     inv_vect[]  Inventory vectors

https://wiki.bitcoin.com/w/Network#Сообщения https://en.bitcoin.it/wiki/Protocol_documentation#getdata

Ответы (1)

Документация, на которую вы ссылаетесь, тоже неверна, ссылка разработчика биткойнов указывает, что вы можете отправлять несколько инвентаризаций внутри GetDataсообщения.

Это не так, но, возможно, не очень клиент. После указывает [], inv_vectчто речь идет о массиве записей.
Не уверен, что вы подразумеваете под «самым клиентом», который вы имеете в виду, зависит от версии клиента?
Извините, "очень ясно"!
Извините, я говорил о копипасте спецификации протокола. Утверждение «Запросить отдельный блок или транзакцию по хешу» явно неверно.