Delivering enclosures to IE7 and Windows

The feed syndication platform built-in to Internet Explorer 7 and Windows Vista may fail to download media enclosures larger than 15 MB. It’s a feature, not a bug, designed to prevent over consumption of computer bandwidth.

The automatic download engine built-in to Windows (BITS) tries to queue up audio, video, or other enclosure content in a user’s subscription updates. It tries to be polite and not consume all available bandwidth, throttling back its consumption while higher priority tasks such as e-mail and web browsing receive new data.

The download engine prefers to download large files in pieces, requesting an achievable bite-sized chunk of your content instead of trying to swallow the whole file at once. It’s also easier to start and resume a download when you request one small piece at a time.

The download engine sends a request to your server and hopes it supports sending files in chunks, more technically known as an HTTP Range. A server can advertise its support for chunked downloads by sending an Accept-Ranges response header value of bytes. If your server does not support chunked downloads and the requested file is less than 15 MB the download engine will attempt another request using HTTP GET.

Most modern web servers support range requests, but if you routinely deliver files larger than 15 MB you should double-check and possibly upgrade your server software to help insure your published data arrives at its intended destination.