You are currently viewing Comment réinitialiser BITS ?

Comment réinitialiser BITS ?

Le service de transfert intelligent en arrière-plan (BITS) est un composant essentiel chargé d’assister le système et les applications pendant les téléchargements entre la machine et un serveur distant, sans nuire à l’expérience réseau. Pour ce faire, il gère intelligemment la hiérarchisation, interrompt et reprend automatiquement les transferts de données. Nous allons voir qu’il est possible de réinitialiser BITS par Powershell. Cela permet de résoudre certains problèmes lors de déploiement d’application.

Qu’est-ce que BITS ?

BITS, pour Background Intelligent Transfer Service, est un élément de Windows. Il est principalement utilisé pour la hiérarchisation efficace et le transfert asynchrone de fichiers entre les périphériques qui utilisent la bande passante du réseau inoccupé, ainsi que pour la livraison de mises à jour logicielles, notamment par les versions modernes telles que Microsoft Update, Windows Update, Windows Server Update Services et SCCM.

Le transfert de fichiers par BITS se fait par un système asynchrone. L’application fait une demande de transfert au Background Intelligent Transfer Service et une fois cette demande effectuée, l’élément se termine ou est disponible pour une autre fonction. Le transfert demandé s’effectue alors en arrière-plan, bien que cela dépende de la disponibilité de la connexion réseau et du fait que le propriétaire de la tâche soit connecté ou non. En cas de perte de la connexion réseau, le transfert est suspendu jusqu’à ce que la reconnexion soit effectuée ultérieurement.

Propriétés d’une tâche BITS

Une tâche BITS typique se compose de six étapes : Une connexion est établie avec le service BITS, une tâche de transfert de fichiers est créée, des fichiers sont ajoutés à la tâche de transfert, la tâche de transfert de fichiers démarre, l’état de la tâche de transfert est vérifié, et lorsque le transfert est terminé ou annulé, la tâche se ferme. Les administrateurs peuvent ajuster le comportement de la tâche de transfert du BITS pour régler la priorité de la tâche, l’utilisation du proxy et les notifications des événements de la tâche. Les administrateurs peuvent créer et gérer les tâches BITS à l’aide des cmdlets PowerShell de Windows Remote Management (WinRM) et de Windows Management Instrumentation (WMI).

Comment réinitialiser BITS

Sur SCCM, vous pouvez parfois voir des clients qui sont dans un statut « En attente de contenu ». Vous pourriez bien évidemment penser qu’il s’agit d’u problème de limites (boundary). En effet, dans la plupart des cas, si de nombreux clients ont ce statut, il est possible qu’une boundary n’ait pas été déclarée. Vous vérifiez donc et confirmez que ce n’est pas ce problème cette fois. Si vous examinez le fichier execmgr.log, vous pouvez constater que le client attendait que le contenu soit téléchargé. Vous pouvez alors lancer une fenêtre Powershell via Recast sur le client et taper la commande suivante :

Get-BitsTransfer

Grâce à cette cmdlet, il est vraiment facile de voir tous les transferts de BITS qui sont actuellement en cours. Actuellement, le client ConfigMgr est exécuté en tant que compte Système local. Par conséquent, pour voir les transferts BITS à partir du client ConfigMgr, nous devons exécuter la commande suivante :

Get-BitsTransfer -AllUsers

Comme vous pouvez le voir dans l’image ci-dessous, il y a un problème avec BITS. Pour une raison quelconque, il n’avait pas réussi à télécharger un tas de tâches et beaucoup étaient en file d’attente.

Vous pouvez alors réinitialiser la file d’attente des transferts BITS sur le client dans ce cas. Pour ce faire, il est possible de procéder tâche par tâche ou de supprimer complètement la file d’attente. Vous pouvez bien sûr utiliser PowerShell pour ne supprimer que les tâches en état d’échec. Si vous souhaitez utiliser cette méthode, cette ligne unique devrait suffire :

Get-BitsTransfer -AllUsers | Where-Object <strong>{</strong> $_.JobState -like "TransientError" <strong>}</strong> | Remove-BitsTransfer

Vérifions à nouveau la file d’attente de transfert BITS en l’exécutant :

Get-BitsTransfer -AllUsers

La file d’attente de transfert du BITS était maintenant vide. Vous pouvez maintenant redéployer le package sur le client et confirmer qu’il a été téléchargé avec succès par BITS.

Cette publication a un commentaire

Laisser un commentaire