Hide navigation sidebar
Hide table of contents sidebar
Skip to content
Quickstart Official documentation Setuphelpers Changelog FAQ
Back to top
View this page
Toggle table of contents sidebar

# 5. WAPT PEERCACHE

## 5.1. Introduction

Peercache est une fonctionnalité de WAPT qui permet aux postes de travail clients de partager les paquets WAPT et les mises à jour Windows au sein du même sous-réseau. Cela réduit la charge du serveur WAPT et accélère les téléchargements pour les clients.

Peercache présente plusieurs avantages significatifs, mais aussi quelques inconvénients.

Avantages | Inconvénients
--- | ---
Réduction de la bande passante : Les paquets sont téléchargés une seule fois depuis le serveur et partagés entre les postes de travail clients. | Ports ouverts supplémentaires : Peercache nécessite l’ouverture des ports UDP et TCP 8099, ce qui peut poser des problèmes de sécurité si le réseau n’est pas correctement configuré.
Téléchargements plus rapides : Les clients peuvent télécharger des paquets à partir d’autres postes de travail locaux, ce qui est généralement plus rapide qu’à partir du serveur WAPT central. | Configuration complexity : La mise en place et la configuration de peercache peut être complexe et nécessite une bonne compréhension de votre réseau.
Réduction de la charge du serveur : Le serveur WAPT est moins sollicité, ce qui améliore ses performances globales. |

## 5.2. Comment fonctionne Peercache

### 5.2.1. Principe de base

Peercache permet aux postes de travail clients de partager les paquets WAPT et les mises à jour Windows. Voici les principales étapes de son fonctionnement :

Activation de Peercache : Sur chaque poste client, peercache est activé en ajoutant la ligne peercache_enable=1 dans le fichier `wapt-get.ini`.

Rétention des paquets : Les paquets installés sur la machine sont conservés dans le répertoire cache de l’agent (C:\Program Files (x86)\wapt\private\cache). Ce répertoire contient des fichiers `.cache` avec une somme de contrôle(md5, sha1 ou sha256) spécifique à chaque paquet.

Diffusion d’informations : Un port (8099) est ouvert pour diffuser des informations sur les paquets que la machine a dans son peercache.

Téléchargement de paquets : Lorsqu’un poste de travail client a besoin d’un paquet, il envoie une requête à ses voisins pour voir si l’un d’entre eux possède le paquet. Le délai de diffusion par défaut est de 0,2 seconde. Si un voisin possède le paquet, il le télécharge à partir de ce voisin. Sinon, il le télécharge à partir du serveur WAPT. Par défaut, si plusieurs voisins disposent du paquet, le poste client sélectionne celui qui dispose de la meilleure bande passante.

### 5.2.2. Exemple de fonctionnement

> - Premier poste de travail : Le premier poste de travail récupère le paquet vlc sur le serveur WAPT et le conserve dans son cache non persistant.

> - Seconde station de travail : Le deuxième poste de travail a besoin du paquet vlc. Il consulte le fichier d’index du serveur WAPT pour obtenir des informations sur le paquet. Ensuite, il envoie une requête à ses voisins et attend 0,2 seconde pour voir si un voisin possède le paquet.

> - Téléchargement : Si un voisin possède le paquet, le deuxième poste de travail le télécharge à partir de ce voisin. Sinon, il le télécharge à partir du serveur WAPT.

## 5.3. Configuration de Peercache

Pour activer peercache, il y a deux façons de le faire : soit par le biais d’un paquet de configuration, soit en l’activant par défaut sur tous les agents.

Note

Cela ne s’applique qu’aux machines connectées à un réseau ou à un domaine privé, et non à un réseau ou à un domaine public.

### 5.3.1. Via la création de l’agent :

Ajouter peercache à tous les agents lors de la création de l’agent suite à une mise à jour de WAPT (Tools → Build WAPT Agent → Enable peercache on agent).

Construire l’agent avec peercache

Note

L’activation de peercache via l’agent ouvrira le port 8099 pour le trafic UDP et TCP entrant.

### 5.3.2. Via le paquet de configuration :

Ajouter peercache via un paquet de configuration (Packages inventory → Make package template from setup file → Host agent dynamic configuration → global → Use peercache).

Paquet de configuration pour activer peercache

Note

Pour permettre à peercache de fonctionner via un paquet de configuration, il est nécessaire d’ouvrir les ports UDP et TCP 8099.

Si vous utilisez le pare-feu Windows, vous pouvez utiliser les commandes suivantes

    run(r'netsh.exe advfirewall firewall add rule name="Waptget peercache UDP listener" program="C:\Program Files (x86)\wapt\wapt-get.exe" action=allow dir=in profile=private,domain protocol=udp localport=8099')
    run(r'netsh.exe advfirewall firewall add rule name="Waptget peercache HTTP server" program="C:\Program Files (x86)\wapt\wapt-get.exe" action=allow dir=in profile=private,domain protocol=tcp localport=8099')

La configuration du pare-feu est spécifique à chaque outil utilisé dans votre entreprise.

Cela ajoutera la configuration suivante au fichier `wapt-get.ini` de la station de travail cliente :

    [global]
    peercache_enable=1

## 5.4. Vérification du fonctionnement de Peercache

Pour vérifier que peercache fonctionne, voici une méthode simple.

Prérequis:

- Disposer de deux postes de travail sur le même sous-réseau.

- Créez un nouveau paquet WAPT vide.

- La fonction peercache est activée sur les postes de travail.

Mise en place :

1. Créez un nouveau paquet WAPT vide.

2. Installez le paquet sur le premier poste de travail. Dans les logs, vous devriez voir → downloading tis-test_peercache → (using Default).

   Using Default signifie que le paquet a été récupéré par le mode par défaut, c’est-à-dire via le serveur WAPT.

    Download completed for tis-message-user(=1-6). 13.94Kb/s https://srvwapt.jarnaud.tranquil.it/wapt/tis-message-user_1-6_PROD.wapt 951f584dfca4d264ed8e3d8d9c34a1de (using Default) Debug steps:["wgsUrlFile","wgsFileName","wgsHead","wgsFromScratch","wgsNewStream","wgsAlternateBroadcast","wgsAlternateGet","wgsAlternateSuccess","wgsAlternateCopiedInCache","wgsLastMod","wgsAlternateRename"]

3. Une fois le paquet installé avec succès sur le premier poste de travail, le fichier du paquet au format « .cache » devrait apparaître dans le répertoire de l’agent sous « C:\Program Files (x86)\wapt\private\cache emp ».

4. Ajoutez le paquet comme dépendance sur la deuxième machine et installez-le.

5. Dans le journal des tâches de la console WAPT, vous devriez voir ce qui suit : downloading tis-test_peercache → (using Peercache).

   Using Peercache signifie que le paquet a été récupéré avec succès via peercache.

    Download completed for tis-message-user(=1-6). 13.94Kb/s https://srvwapt.jarnaud.tranquil.it/wapt/tis-message-user_1-6_PROD.wapt 951f584dfca4d264ed8e3d8d9c34a1de (using Peercache) Debug steps:["wgsUrlFile","wgsFileName","wgsHead","wgsFromScratch","wgsNewStream","wgsAlternateBroadcast","wgsAlternateGet","wgsAlternateSuccess","wgsAlternateCopiedInCache","wgsLastMod","wgsAlternateRename"]

## 5.5. Audit de l’utilisation de PeerCache dans votre environnement

Pour évaluer l’efficacité de PeerCache après son déploiement sur votre réseau, vous pouvez utiliser la requête SQL suivante. Cette requête vous aidera à déterminer la proportion d’installations de paquets gérées par PeerCache par rapport à d’autres sources.

    SELECT
      value->>'source_type' AS source_type,
      COUNT(*)              AS nb,
      ROUND(100.0 * COUNT(*) / SUM(COUNT(*)) OVER (), 2) AS pct
    FROM HostAuditData
    WHERE value_section = 'host_metrics'
      AND value_key = 'peercache'
      AND (value->>'end_time')::timestamp >= timestamp '2024-01-01 00:00:00'
    GROUP BY value->>'source_type'
    ORDER BY nb DESC;

Résultat attendu :

L’exécution de cette requête générera un résultat similaire à celui-ci :

source_type | nb | pct
--- | --- | ---
Peercache | 35 | 38.46
Default | 25 | 27.47
AlreadyExisting | 21 | 23.08
LocalPeercache | 10 | 10.99

Interprétation des résultats :

Peercache (38,46 %) : les paquets ont été installés avec succès à l’aide de PeerCache, ce qui signifie qu’ils ont été récupérés à partir d’un autre ordinateur pair du réseau. Par défaut (27,47 %) : les paquets ont été téléchargés directement à partir du serveur WAPT à la demande de l’agent. Déjà existant (23,08 %) : les paquets étaient déjà installés sur l’ordinateur, aucun téléchargement ou installation supplémentaire n’était donc nécessaire. LocalPeercache (10,99 %) : les paquets ont été réinstallés à partir d’une copie mise en cache localement sur la machine elle-même.

Dans mon infrastructure depuis 2024 (Peercache activé en 2025), je peux noter que 30 % des paquets proviennent du processus agent-serveur traditionnel, tandis que près de 50 % des paquets distribués sont traités via PeerCache.