Link Fingerprints are intended for complete file downloads, but many download managers like DownThemAll request multiple chunks in parallel to increase throughput. The problem is what should be done with these partial Range requests for URIs that have a Link Fingerprint?
There's 2 choices of what to do with Link Fingerprints for Range requests as the provider of the network channel. 1) Ignore the Link Fingerprint 2) Enforce the Link Fingerprint (1) makes download manager providers' lives easier - things continue to work without any changes (2) forces download managers to be aware of Link Fingerprints. If they don't realize there's a concept of Link Fingerprints, transfers will mysteriously fail when doing Range requests. This means they need to explicitly remove the #fragment-id before requesting the transfer, but because of this, they make the active decision to either support Link Fingerprints by implementing it or choose not to compute the hash. Enforcing Link Fingerprints provides additional functionality in that Range requests can be Link Fingerprinted. This means assuming the hash of the specific range is known, the network channel can automatically compute the hash to ensure it was transferred correctly. This could be useful with resources that provide checksum data such as Metalinks, so not only would it let the download manager know what the overall file checksum should be, individual parts can be given a checksum - somewhat similar to how bittorrent has a checksum for each piece. Ed _______________________________________________ dev-tech-network mailing list [email protected] https://lists.mozilla.org/listinfo/dev-tech-network
