iPXE discussion forum

Full Version: HTTP_ENC_PEERDIST - Any Documentation Or How to?
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
How this (HTTP_ENC_PEERDIST) feature can be utilized? Is there any specific iPXE scripts/cmdlets which helps doing/finding PeerDist?

BTW, a great tool, i was amazed to see to the speed of downloading data on http. Thank you very much for such piece of code.Smile

Regards,
Chandan
(2016-07-08 04:44)chandan Wrote: [ -> ]How this (HTTP_ENC_PEERDIST) feature can be utilized? Is there any specific iPXE scripts/cmdlets which helps doing/finding PeerDist?

It's fully automatic; if you have HTTP_ENC_PEERDIST enabled in the build then iPXE will use PeerDist as long as the server supports it.

If you look at a packet capture (or turn on DEBUG=httpcore:3), you should see that iPXE is sending an HTTP header of "Accept-Encoding: peerdist". A server which understands this (e.g. IIS with BranchCache enabled) may respond with "Content-Encoding: peerdist" and a response body that is in the format of a PeerDist Content Information (MS-PCCRC) description. iPXE will then parse the content description, perform peer discovery, and retrieve blocks as per the PeerDist specs.

Note that the server may choose not to use PeerDist, if it believes that the download will not benefit from PeerDist acceleration, e.g. because the file is relatively small anyway. The server will also not use PeerDist if it has not yet generated and cached hashes for the content. There are Windows commands available to forcibly override this server behaviour (which I used during development); I can look these up from my notes if needed.

Quote:BTW, a great tool, i was amazed to see to the speed of downloading data on http. Thank you very much for such piece of code.Smile

Thank you!

Michael
Reference URL's