Dernière version : 2.0.2-1

|
Aperçu rapide |
|
|
Catalogue |
Système |
|
Catégorie |
Misc. Appliances |
|
Volumes d'utilisateur |
Oui |
|
Min. mémoire |
96M |
|
SE |
Linux |
|
Contraintes |
non |
|
Questions/commentaires |
|
SQUID est une appliance de proxy inverse ou de transfert en cache. SQUID fait office d'agent en acceptant les requêtes HTTP des clients sur son terminal in et en les transférant au serveur approprié connecté au terminal out. Il stocke une copie des données renvoyées dans une mémoire et dans un cache sur le disque et dans celui-ci. Lorsque les mêmes données sont demandées plusieurs fois, les données mises en cache sont renvoyées au client, accélérant ainsi leur accès et diminuant la charge sur le serveur source.
SQUID prend en charge deux modes de fonctionnement : proxy et accélérateur Web.
Mode proxy
En mode proxy, SQUID fait office de proxy de transfert en cache et est généralement installé entre un ou plusieurs clients et Internet. Il garde en local des copies de données fréquemment demandées et renvoie du contenu mis en cache le cas échéant, accélérant ainsi les demandes de service et réduisant la bande passante en amont.
Mode Accélérateur Web
En mode accélérateur Web, SQUID fait office de proxy inverse en cache et est généralement installé avant un ou plusieurs serveurs Web. Tout le trafic ciblé sur les serveurs Web passe par SQUID. SQUID garde en local des copies de données fréquemment demandées et renvoie du contenu mis en cache le cas échéant, diminuant ainsi le temps de réponse et la charge sur les serveurs principaux.
|
Ressource |
Minimum |
Maximum |
Valeur par défaut |
Testé |
|
UC |
0.05 |
2 |
0.2 |
2 |
|
Mémoire |
96 Mo |
4 Go |
256 Mo |
4 Go |
|
Bande passante |
1 Mbit/s |
2 Gbits/s |
250 Mbits/s |
1,5 Gbit/s |
La quantité de mémoire requise par SQUID dépend de la taille du volume de cache et du nombre de requêtes simultanées. SQUID utilise jusqu'à 10 mégaoctets de mémoire pour indexer 1 gigaoctet de stockage de cache. Ainsi, si vous utilisez 100 Go de volume de cache, vous aurez besoin d'1 Go de mémoire supplémentaire. De même, une certaine quantité de mémoire est utilisée pour traiter chaque connexion. SQUID utilise jusqu'à 20 mégaoctets de mémoire pour traiter 1000 connexions simultanées. Ainsi, si 5000 connexions simultanées sont prévues, la mémoire de SQUID doit être augmentée de 100 Mo.
Important : Si la quantité de mémoire disponible n'est pas suffisante, SQUID risque de ne pas fonctionner correctement.
|
name |
dir |
Protocole |
description |
|
in |
in |
HTTP |
Accepte les requêtes entrantes. |
|
sortie |
sortie |
HTTP |
Envoie tout le trafic aux serveurs de destination et réceptionne les réponses. |
|
log |
sortie |
CIFS |
Accède à un système de fichiers réseau basé sur CIFS pour le stockage de journaux. Le serveur connecté doit autoriser les connexions anonymes et avoir un partage lecture-écriture nommé share. Si ce terminal n'est pas utilisé, il peut rester déconnecté. |
|
MON |
sortie |
CCE |
Envoie des statistiques de performances et d'utilisation des ressources. Si ce terminal n'est pas utilisé, il peut rester déconnecté. |
|
name |
description |
|
cache |
Volume pour le stockage des fichiers en cache. Ce volume est obligatoire. La taille minimum du volume de cache est de 100 Mo. |
Remarques :
|
name |
type |
description |
|
mode |
Chaîne |
Mode de fonctionnement. Les valeurs valides sont proxy ou web_accelerator. |
|
listen_port |
Entier |
Port pour accepter les requêtes des clients internes en mode proxy ou des utilisateurs de sites Web externes en mode web_accelerator. |
|
hostname |
Chaîne |
Nom d'hôte à utiliser dans les messages d'erreur. |
|
connect_timeout |
Entier |
Délai en secondes pendant lequel SQUID attend que TCP se connecte au serveur demandé. Passé ce délai, SQUID répond par le message d'erreur "Connection timed out" sur le client. |
|
name |
type |
description |
|
log_enable |
Chaîne |
Active ou désactive le journal d'accès |
|
log_filename |
Chaîne |
Nom de fichier du journal d'accès, par rapport au système de fichiers accessible sur le terminal de journal. Le nom de fichier peut inclure un chemin d'accès, par exemple, une valeur pour access.log. Le nom du fichier journal devient alors /mnt/log/access.log, tandis qu'une valeur /proxy_logs/squid1_access.log modifie le nom du fichier journal en /mnt/log/proxy_logs/squid1_access.log. |
|
log_format |
Chaîne |
Format du journal d'accès. |
L'appliance SQUID signale les compteurs personnalisés suivants via le terminal mon.
|
Nom du compteur SNMP |
Nom du compteur |
Description |
|
SQUID-MIB::cacheSysVMsize |
SysVMsize |
Taille de cache de la mémoire en Ko. |
|
SQUID-MIB::cacheSysStorage |
SysStorage |
Taille de cache du disque en Ko. |
|
SQUID-MIB::cacheUptime |
Uptime |
Durée de disponibilité de SQUID en 1/100 de seconde. |
|
SQUID-MIB::cacheSysPageFaults |
SysPageFaults |
Erreurs de page avec E/S physique. |
|
SQUID-MIB::cacheSysNumReads |
SysNumReads |
Nombre de lectures E/S HTTP. |
|
SQUID-MIB::cacheMemUsage |
MemUsage |
Mémoire totale utilisée par SQUID en Ko. |
|
SQUID-MIB::cacheCpuTime |
CpuTime |
Quantité de secondes d'UC utilisées. |
|
SQUID-MIB::cacheCpuUsage |
CpuUsage |
Pourcentage de l'utilisation de l'UC. |
|
SQUID-MIB::cacheMaxResSize |
MaxResSize |
Taille résidente maximum en Ko. |
|
SQUID-MIB::cacheNumObjCount |
NumObjCount |
Nombre d'objets stockés dans le cache. |
|
SQUID-MIB::cacheCurrentUnlinkRequests |
CurrentUnlinkRequests |
Requêtes envoyées à unlinkd. |
|
SQUID-MIB::cacheCurrentUnusedFDescrCnt |
CurrentUnusedFDescrCnt |
Nombre de descripteurs de fichier disponibles. |
|
SQUID-MIB::cacheCurrentResFileDescrCnt |
CurrentResFileDescrCnt |
Nombre de descripteurs de fichier réservés. |
|
SQUID-MIB::cacheCurrentFileDescrCnt |
CurrentFileDescrCnt |
Nombre de descripteurs de fichier utilisés. |
|
SQUID-MIB::cacheCurrentFileDescrMax |
CurrentFileDescrMax |
Nombre maximum de descripteurs de fichier utilisés. |
|
SQUID-MIB::cacheProtoClientHttpRequests |
ProtoClientHttpRequests |
Nombre de requêtes HTTP reçues. |
|
SQUID-MIB::cacheHttpHits |
HttpHits |
Nombre de résultats HTTP en cache. |
|
SQUID-MIB::cacheHttpErrors |
HttpErrors |
Nombre d'erreurs HTTP en cache. |
|
SQUID-MIB::cacheHttpInKb |
HttpInKb |
Trafic HTTP reçu, en kilo-octets. |
|
SQUID-MIB::cacheHttpOutKb |
HttpOutKb |
Trafic HTTP envoyé, en kilo-octets. |
|
SQUID-MIB::cacheServerRequests |
ServerRequests |
Nombre de requêtes du client pour le serveur de cache. |
|
SQUID-MIB::cacheServerErrors |
ServerErrors |
Toutes les erreurs des requêtes clients pour le serveur de cache |
|
SQUID-MIB::cacheServerInKb |
ServerInKb |
Trafic entrant dans les serveurs, en kilo-octets. |
|
SQUID-MIB::cacheServerOutKb |
ServerOutKb |
Trafic sortant des serveurs, en kilo-octets. |
|
SQUID-MIB::cacheClients |
Clients |
Nombre de clients accédant au cache |
|
SQUID-MIB::cacheHttpAllSvcTime.1 |
HttpAllSvcTime1 |
Temps UC exprimé en secondes consacré au traitement des requêtes HTTP (au cours de la dernière minute). |
|
SQUID-MIB::cacheHttpAllSvcTime.5 |
HttpAllSvcTime5 |
Temps UC exprimé en secondes consacré au traitement des demandes HTTP (au cours des 5 dernières minutes). |
|
SQUID-MIB::cacheHttpAllSvcTime.60 |
HttpAllSvcTime60 |
Temps UC exprimé en secondes consacré au traitement des requêtes HTTP (au cours des 60 dernières minutes). |
|
SQUID-MIB::cacheHttpMissSvcTime.1 |
HttpMissSvcTime1 |
Temps UC exprimé en secondes consacré au traitement des absences dans le cache (au cours de la dernière minute). |
|
SQUID-MIB::cacheHttpMissSvcTime.5 |
HttpMissSvcTime5 |
Temps UC exprimé en secondes consacré au traitement des absences dans le cache (au cours des 5 dernières minutes). |
|
SQUID-MIB::cacheHttpMissSvcTime.60 |
HttpMissSvcTime60 |
Temps UC exprimé en secondes consacré au traitement des absences dans le cache (au cours des 60 dernières minutes). |
|
SQUID-MIB::cacheHttpNmSvcTime.1 |
HttpNmSvcTime1 |
Temps UC exprimé en secondes consacré au traitement des présences dans le cache (contenu inchangé) (au cours de la dernière minute). |
|
SQUID-MIB::cacheHttpNmSvcTime.5 |
HttpNmSvcTime5 |
Temps UC exprimé en secondes consacré au traitement des présences dans le cache (contenu inchangé) (au cours des 5 dernières minutes). |
|
SQUID-MIB::cacheHttpNmSvcTime.60 |
HttpNmSvcTime60 |
Temps UC exprimé en secondes consacré au traitement des présences dans le cache (contenu inchangé) (au cours des 60 dernières minutes). |
|
SQUID-MIB::cacheHttpHitSvcTime.1 |
HttpHitSvcTime1 |
Temps UC exprimé en secondes consacré au traitement des présences dans le cache (au cours de la dernière minute). |
|
SQUID-MIB::cacheHttpHitSvcTime.5 |
HttpHitSvcTime5 |
Temps UC exprimé en secondes consacré au traitement des présences dans le cache (au cours des 5 dernières minutes). |
|
SQUID-MIB::cacheHttpHitSvcTime.60 |
HttpHitSvcTime60 |
Temps UC exprimé en secondes consacré au traitement des présences dans le cache (au cours des 60 dernières minutes). |
|
SQUID-MIB::cacheDnsSvcTime.1 |
DnsSvcTime1 |
Temps UC exprimé en secondes consacré au traitement des requêtes DNS (au cours de la dernière minute). |
|
SQUID-MIB::cacheDnsSvcTime.5 |
DnsSvcTime5 |
Temps UC exprimé en secondes consacré au traitement des demandes DNS (au cours des 5 dernières minutes). |
|
SQUID-MIB::cacheDnsSvcTime.60 |
DnsSvcTime60 |
Temps UC exprimé en secondes consacré au traitement des demandes DNS (au cours des 5 dernières minutes). |
|
SQUID-MIB::cacheRequestHitRatio.1 |
RequestHitRatio1 |
Taux de réussite des requêtes exprimé en pourcentage (au cours de la dernière minute), sur une échelle de 0 à 100. |
|
SQUID-MIB::cacheRequestHitRatio.5 |
RequestHitRatio5 |
Taux de réussite des requêtes exprimé en pourcentage (au cours des 5 dernières minutes), sur une échelle de 0 à 100 |
|
SQUID-MIB::cacheRequestHitRatio.60 |
RequestHitRatio60 |
Taux de réussite des requêtes exprimé en pourcentage (au cours des 60 dernières minutes), sur une échelle de 0 à 100. |
|
SQUID-MIB::cacheRequestByteRatio.1 |
RequestByteRatio1 |
Taux d'utilisation des octets exprimé en pourcentage (au cours de la dernière minute), sur une échelle de 0 à 100. |
|
SQUID-MIB::cacheRequestByteRatio.5 |
RequestByteRatio5 |
Taux d'utilisation des octets exprimé en pourcentage (au cours des 5 dernières minutes), sur une échelle de 0 à 100. |
|
SQUID-MIB::cacheRequestByteRatio.60 |
RequestByteRatio60 |
Taux d'utilisation des octets exprimé en pourcentage (au cours des 60 dernières minutes), sur une échelle de 0 à 100. |
|
SQUID-MIB::cacheHttpNhSvcTime.1 |
HttpNhSvcTime1 |
Temps UC exprimé en secondes consacré au traitement des présences dans le cache (rafraîchissement du contenu) (au cours de la dernière minute). |
|
SQUID-MIB::cacheHttpNhSvcTime.5 |
HttpNhSvcTime5 |
Temps UC exprimé en secondes consacré au traitement des présences dans le cache (rafraîchissement du contenu) (au cours des 5 dernières minutes). |
|
SQUID-MIB::cacheHttpNhSvcTime.60 |
HttpNhSvcTime60 |
Temps UC exprimé en secondes consacré au traitement des présences dans le cache (rafraîchissement du contenu) (au cours des 60 dernières minutes). |
|
SQUID-MIB::cacheIpEntries |
IpEntries |
Entrées de cache IP. |
|
SQUID-MIB::cacheIpRequests |
IpRequests |
Nombre de requêtes de cache IP. |
|
SQUID-MIB::cacheIpHits |
IpHits |
Nombre de présences dans le cache IP. |
|
SQUID-MIB::cacheIpPendingHits |
IpPendingHits |
Nombre de présences en attente dans le cache IP. |
|
SQUID-MIB::cacheIpNegativeHits |
IpNegativeHits |
Nombre de présences négatives dans le cache IP. |
|
SQUID-MIB::cacheIpMisses |
IpMisses |
Nombre d'absences dans le cache IP. |
|
SQUID-MIB::cacheBlockingGetHostByName |
BlockingGetHostByName |
Nombre de requêtes de blocage gethostbyname. |
|
SQUID-MIB::cacheAttemptReleaseLckEntries |
AttemptReleaseLckEntries |
Nombre de tentatives de déverrouillage des entrées de cache IP verrouillées. |
|
SQUID-MIB::cacheFqdnEntries |
FqdnEntries |
Entrées de cache FQDN. |
|
SQUID-MIB::cacheFqdnRequests |
FqdnRequests |
Nombre de requêtes de cache FQDN. |
|
SQUID-MIB::cacheFqdnHits |
FqdnHits |
Nombre de présences dans le cache FQDN. |
|
SQUID-MIB::cacheFqdnPendingHits |
FqdnPendingHits |
Nombre de présences en attente dans le cache FQDN. |
|
SQUID-MIB::cacheFqdnNegativeHits |
FqdnNegativeHits |
Nombre de présences négatives dans le cache FQDN. |
|
SQUID-MIB::cacheFqdnMisses |
FqdnMisses |
Nombre d'absences dans le cache FQDN. |
|
SQUID-MIB::cacheBlockingGetHostByAddr |
BlockingGetHostByAddr |
Nombre de requêtes de blocage gethostbyaddr. |
|
SQUID-MIB::cacheDnsRequests |
DnsRequests |
Nombre de requêtes dnsserver externes. |
|
SQUID-MIB::cacheDnsReplies |
DnsReplies |
Nombre de réponses dnsserver externes. |
|
SQUID-MIB::cacheDnsNumberServers |
DnsNumberServers |
Nombre de traitements dnsserver externes. |
|
SQUID-MIB::cachePeerRtt |
PeerRtt |
Dernière durée connue des boucles vers l'homologue (en millisecondes). |
En cas d'échec de démarrage de l'appliance, les erreurs suivantes peuvent être consignées dans le journal système :
|
Message d'erreur |
Description |
|
Cache volume is not accessible. |
L'appliance ne peut pas accéder au volume de cache, probablement parce que le système de fichiers est endommagé. |
|
Access log is enabled, but log terminal is not connected. |
Le terminal de journal n'est pas connecté, mais log_enable est défini sur Oui. |
|
Failed to run squid. |
L'appliance ne peut pas démarrer peut-être en raison d'une erreur dans la configuration définie par l'utilisateur. |
Le tableau ci-dessous contient des résultats d'évaluation de performances exprimés en requêtes par seconde (rps) obtenus lorsque la journalisation est désactivée. Les performances SQUID peuvent se détériorer lorsque la journalisation est activée. Les performances ont été évaluées à l'aide de l'utilitaire Apache Benchmark fourni avec Apache Web Server 2.0 et 2.2. Un complément d'informations sur Apache Benchmark est disponible sur le site Web d'Apache. Les tests d'évaluation des performances ont été effectués à l'aide des paramètres suivants : bw=500M mem=2G cpu=2.
Cache HIT
|
simultanéité |
rps |
|
simultanéité sur 1 client |
1500-1800 rps |
|
simultanéité sur 10 clients |
5800-6200 rps |
|
simultanéité sur 100 clients |
7400-7800 rps |
|
simultanéité sur 500 clients |
5300-5500 rps |
|
simultanéité sur 1000 clients |
5300-5500 rps |
Cache MISS
|
simultanéité |
rps |
|
simultanéité sur 1 client |
700-800 rps |
|
simultanéité sur 10 clients |
2000-2200 rps |
|
simultanéité sur 100 clients |
1900-2100 rps |
|
simultanéité sur 500 clients |
1800-2000 rps |
|
simultanéité sur 1000 clients |
1600-1800 rps |
SQUID est utilisé pour réduire la charge sur un serveur AppServer en traitant tous les documents statiques. Remarque : Si les applications Java ont définies sur Expires: HTTP pour les documents générés, SQUID les traite pendant leur durée de vie.
Appliances en cours d'utilisation :
Exemple de configuration de propriété :
|
Nom de propriété |
Value (Valeur) |
Commentaires |
|
mode |
web_accelerator |
SQUID fonctionne en mode Accélérateur Web comme un proxy inverse de mise en cache. |
|
listen_port |
80 |
Port par défaut pour les requêtes HTTP. |
|
hostname |
www.host.com |
Nom d'hôte utilisé dans des messages d'erreur. |
SQUID est utilisé pour accélérer la vitesse de nombreux serveurs Web. Dans cet exemple, une appliance URLSW distribue des requêtes à différents serveurs Web par URL. Appliances en cours d'utilisation :
Exemple de configuration de propriété pour SQUID :
|
Nom de propriété |
Value (Valeur) |
Commentaires |
|
mode |
web_accelerator |
SQUID fonctionne en mode Accélérateur Web comme un proxy inverse de mise en cache. |
|
listen_port |
80 |
Port par défaut pour les requêtes HTTP. |
|
hostname |
www.host1.com |
Nom d'hôte utilisé dans des messages d'erreur. |
Configuration du commutateur :
|
Nom de propriété |
Value (Valeur) |
Commentaires |
|
out1_type |
hostname |
|
|
out1_value |
host1.com |
Les requêtes pour host1.com sont traitées par server1. |
|
out2_type |
hostname |
|
|
out2_value |
host2.com |
Les requêtes pour host2.com sont traitées par server2. |
|
out3_type |
hostname |
|
|
out3_value |
host3.com |
Les requêtes pour host3.com sont traitées par server3. |
|
out4_type |
hostname |
|
|
out4_value |
host4.com |
Les requêtes pour host4.com sont traitées par server4. |
Pour les tâches de traitement de contenu, SQUID peut accélérer la récupération des requêtes en double en réduisant la charge sur les serveurs Web cibles ainsi que l'utilisation de la bande passante. Dans cet exemple, si du contenu Internet, comme une page Web, un document PDF ou une image, a déjà été demandé par crawler1, d'autres robots d'indexation reçoivent des résultats mis en cache pour le même contenu.

Appliances en cours d'utilisation :
Exemple de configuration de propriété :
|
Nom de propriété |
Value (Valeur) |
Commentaires |
|
mode |
proxy |
SQUID fonctionne en mode proxy, en agissant comme un proxy de transfert en cache. |
|
listen_port |
3128 |
Port sur quel SQUID écoute les requêtes HTTP. |
|
hostname |
proxy.enterprise.local |
Nom d'hôte utilisé dans des messages d'erreur. |
Logiciels Open Source et tiers utilisés au sein de l'appliance
SQUID utilise les packages Open Source tiers suivants en plus des packages Open Source tiers utilisés par sa classe de base LUX5.
|
Logiciel |
Version |
Modifié |
Licence |
Commentaires |
|
net-snmp |
5.3.2.2-9.el5_5.1 |
Non |
BSD |
N/D |
|
net-snmp-libs |
5.3.2.2-9.el5_5.1 |
Non |
BSD |
N/D |
|
net-snmp-utils |
5.3.2.2-9.el5_5.1 |
Non |
BSD |
N/D |
|
samba-client |
3.0.33-3.29.el5_5.1 |
Non |
GPLv2 |
N/D |
|
samba-common |
3.0.33-3.29.el5_5.1 |
Non |
GPLv2 |
N/D |
|
libsmbclient |
3.0.33-3.29.el5_5.1 |
Non |
GPLv2 |
N/D |
|
squid |
3.1.8-1.el5 |
Non |
GPLv2 |
N/D |
|
lm_sensors |
2.10.7-9.el5 |
Non |
GPLv2 |
N/D |
|
dmidecode |
2.10-3.el5 |
Non |
GPLv2 |
N/D |
|
perl-DBI |
1.52-2.el5 |
Non |
GPLv2 |
N/D |
| Copyright © 2012 CA. Tous droits réservés. |
|