Notre système est conçu pour être déployé dans des régions présentant des connexions réseau non fiables et/ou insuffisantes. Nous construisons nos propres services de réplication de données tolérant les défaillances qui utilisent BITS. En raison de certaines exigences de sécurité et de maintenance, nous avons implémenté notre propre service de téléchargement de fichiers ASP.NET du côté du serveur, au lieu de simplement laisser IIS en charge les fichiers. Lorsque le client BITS effectue une requête de téléchargement HTTP avec la plage spécifiée du fichier, notre page ASP.NET extrait le segment de fichier demandé en mémoire et le remplace par la réponse HTTP. C'est la théorie. ;) Cette théorie échoue dans les scénarios de laboratoire artificiels, mais je ne laisserais pas le système se déployer dans des scénarios de la vie réelle à moins que nous puissions surmonter cela.Le client BITS ne parvient pas à spécifier l'en-tête de plage HTTP
Scénario de laboratoire: J'ai le client BITS et l'IIS sur la même machine de développement, donc j'ai pratiquement une énorme "bande passante" réseau et BITS est assez intelligent pour détecter cela. Comme le client BITS découvre la bande passante illimitée, il devient de plus en plus "gourmand". A chaque requête HTTP, BITS veut saisir de plus en plus de gammes de fichiers (il s'agit de télécharger des fichiers iso CD, des vidéos), exigeant 20-40 Mo dans une seule requête HTTP, taille que je ne suis pas à l'aise de mémoriser sur le côté serveur comme un aller. Je peux surmonter cela simplement en donnant moins que demandé. C'est bon.
Cependant, BITS devient vraiment « confiant » et « arrogant » exigeant des fichiers sans spécifier la plage de téléchargement, à savoir, il veut que le dossier complet en une seule demande, et c'est là que les choses vont mal. Je ne sais pas comment répondre à cette réponse dans le cas d'un fichier de 600 Mo. Si je fournis simplement la plage de démarrage de 1 Mo du fichier, le client BITS continue d'envoyer des requêtes HTTP pour le même fichier sans plage de téléchargement pour continuer, cela martèle le fait qu'il veut le fichier entier en une fois. Comme je suis réticent à fournir l'intégralité du fichier, BITS abandonne après plusieurs essais et signale des erreurs.
Des pensées?
merci pour le partage de cette information. –