For metadata only requests, it may prove quite useful to add a BlockSize field to metadata, so we can factor raw bytes into decisions about how far to look ahead with fetching untrusted blocks.
But we'd have to trust the peer to report the block size correctly, is that going to be a problem? I suppose we could check the size matches and abort requests if the peer reports anything wrong.
For metadata only requests, it may prove quite useful to add a BlockSize field to metadata, so we can factor raw bytes into decisions about how far to look ahead with fetching untrusted blocks.