У Azureus есть возможность получить первый и последний блоки файла, в первую очередь. Но это не на 100% надежно, так как вы не можете контролировать, какой узел начнет отправлять данные, фрист.
См. Здесь для спецификации протокола , в частности:
запрос:
Сообщение запроса имеет фиксированную длину и используется для запроса блока . Полезная нагрузка содержит следующую информацию:
Так что да, вы можете запросить конкретный блок (даже его часть). Это должно позволить запрашивать ровно первые 3% или 5% файла, независимо от размера блока.