"Christmas - the time to fix the computers of your loved ones" « Lord Wyrm

squid: miese performance

wergor 16.06.2020 - 09:17 3294 15
Posts

wergor

connoisseur de mimi
Avatar
Registered: Jul 2005
Location: graz
Posts: 4027
wir haben in der firma einen squid proxy, aber surfen über den ist eine qual. teilweise dauert es 3min bis webseiten geladen sind.

die squid.conf ist im vergleich zur default config kaum verändert:
Code:
acl netz0 src 001.001.001.0/25
acl netz1 src 012.012.012.0/19
acl netz2 src 123.123.123.0/24
acl netz3 src 234.234.234.0/24

acl SSL_ports port 443
acl Safe_ports port 80          # http
acl Safe_ports port 21          # ftp
acl Safe_ports port 443         # https
acl Safe_ports port 70          # gopher
acl Safe_ports port 210         # wais
acl Safe_ports port 1025-65535  # unregistered ports
acl Safe_ports port 280         # http-mgmt
acl Safe_ports port 488         # gss-http
acl Safe_ports port 591         # filemaker
acl Safe_ports port 777         # multiling http
acl CONNECT method CONNECT

[...]

http_access allow netz0
http_access allow netz1
http_access allow netz2
http_access allow netz3

# And finally deny all other access to this proxy
http_access deny all

[...]

refresh_pattern ^ftp:           1440    20%     10080
refresh_pattern ^gopher:        1440    0%      1440
refresh_pattern -i (/cgi-bin/|\?) 0     0%      0
refresh_pattern (Release|Packages(.gz)*)$      0       20%     2880
# example lin deb packages
#refresh_pattern (\.deb|\.udeb)$   129600 100% 129600
refresh_pattern .               0       20%     4320

[...]

dns_v4_first on
dns_v4_first on wird im internet oft als lösung vorgeschlagen, hat aber in unserem fall nicht geholfen.

squidclient zeigt das problem: HTTP requests dauern ewig, cpu + mem load ist aber quasi 0:
Code:
admin@server:~$ sudo squidclient mgr:info                                                                                                                                                                                                   [sudo] password for adminsms:
HTTP/1.1 200 OK
Server: squid/3.5.27
Mime-Version: 1.0
Date: Tue, 16 Jun 2020 06:58:38 GMT
Content-Type: text/plain;charset=utf-8
Expires: Tue, 16 Jun 2020 06:58:38 GMT
Last-Modified: Tue, 16 Jun 2020 06:58:38 GMT
X-Cache: MISS from server
X-Cache-Lookup: MISS from server:3128
Via: 1.1 server (squid/3.5.27)
Connection: close

Squid Object Cache: Version 3.5.27
Build Info: Ubuntu linux
Service Name: squid
Start Time:     Mon, 15 Jun 2020 14:36:40 GMT
Current Time:   Tue, 16 Jun 2020 06:58:38 GMT
Connection information for squid:
        Number of clients accessing cache:      19
        Number of HTTP requests received:       14243
        Number of ICP messages received:        0
        Number of ICP messages sent:    0
        Number of queued ICP replies:   0
        Number of HTCP messages received:       0
        Number of HTCP messages sent:   0
        Request failure ratio:   0.00
        Average HTTP requests per minute since start:   14.5
        Average ICP messages per minute since start:    0.0
        Select loop called: 3080244 times, 19.128 ms avg
Cache information for squid:
        Hits as % of all requests:      5min: 0.0%, 60min: 2.3%
        Hits as % of bytes sent:        5min: 0.0%, 60min: 1.0%
        Memory hits as % of hit requests:       5min: 0.0%, 60min: 100.0%
        Disk hits as % of hit requests: 5min: 0.0%, 60min: 0.0%
        Storage Swap size:      0 KB
        Storage Swap capacity:   0.0% used,  0.0% free
        Storage Mem size:       4888 KB
        Storage Mem capacity:    1.9% used, 98.1% free
        Mean Object Size:       0.00 KB
        Requests given to unlinkd:      0
Median Service Times (seconds)  5 min    60 min:
        HTTP Requests (All):  109.80356 37.30043
        Cache Misses:          0.01745  0.03241
        Cache Hits:            0.00000  0.00000
        Near Hits:             0.00000  0.00000
        Not-Modified Replies:  0.00000  0.00000
        DNS Lookups:           0.00669  0.01153
        ICP Queries:           0.00000  0.00000
Resource usage for squid:
        UP Time:        58917.479 seconds
        CPU Time:       132.685 seconds
        CPU Usage:      0.23%
        CPU Usage, 5 minute avg:        1.12%
        CPU Usage, 60 minute avg:       0.94%
        Maximum Resident Size: 291328 KB
        Page faults with physical i/o: 0
Memory accounted for:
        Total accounted:        14087 KB
        memPoolAlloc calls:   1255433
        memPoolFree calls:    1339517
File descriptor usage for squid:
        Maximum number of file descriptors:   65535
        Largest file desc currently in use:    488
        Number of file desc currently in use:  305
        Files queued for open:                   0
        Available number of file descriptors: 65230
        Reserved number of file descriptors:   100
        Store Disk files open:                   0
Internal Data Structures:
           368 StoreEntries
           368 StoreEntries with MemObjects
           367 Hot Object Cache Items
             0 on-disk objects
weis jemand was man da machen kann?

ENIAC

Do you Voodoo
Avatar
Registered: Sep 2003
Location: Klosterneuburg
Posts: 1743
Was ich auf die Schnelle gefunden habe könnte das Problem mit IPv6 zusammenhängen und den Squid Proxy verlangsamen.

Füge mal folgende Zeile in deine Config ein und probiere es noch einmal: tcp_outgoing_address 0.0.0.0 all

Edit:
Zitat aus einem Post von wergor
squidclient zeigt das problem: HTTP requests dauern ewig, cpu + mem load ist aber quasi 0:
HTTP requests dauern ewig aber du hast laut config http auf deny gesetzt? hmmm...
Testweise könntest du mal den http traffic erlauben.
http_access allow|deny all
Bearbeitet von ENIAC am 16.06.2020, 09:46

wergor

connoisseur de mimi
Avatar
Registered: Jul 2005
Location: graz
Posts: 4027
Zitat aus einem Post von ENIAC
Was ich auf die Schnelle gefunden habe könnte das Problem mit IPv6 zusammenhängen und den Squid Proxy verlangsamen.

Füge mal folgende Zeile in deine Config ein und probiere es noch einmal: tcp_outgoing_address 0.0.0.0 all
ich glaube das haben wir schon mal probiert aber ich schaue es mir nochmal an.

Zitat aus einem Post von ENIAC
HTTP requests dauern ewig aber du hast laut config http auf deny gesetzt? hmmm...
Testweise könntest du mal den http traffic erlauben.
http_access allow|deny all
bei dem setting gehts um den zugriff auf den proxy, der ist nur von den angegebenen netzen aus erlaubt.

wergor

connoisseur de mimi
Avatar
Registered: Jul 2005
Location: graz
Posts: 4027
Zitat aus einem Post von ENIAC
Füge mal folgende Zeile in deine Config ein und probiere es noch einmal: tcp_outgoing_address 0.0.0.0 all
die directive haben wir schon seit ein paar tagen drin, hat aber keine verbesserung gebracht.

ENIAC

Do you Voodoo
Avatar
Registered: Sep 2003
Location: Klosterneuburg
Posts: 1743
OK...
Hmmm... Wie schaut's eigentlich mit dem DNS Lookup Speed aus?

Auch könnte ein tcpdump nützlich sein, um mit Wireshark zu sehen/untersuchen wo der delay herkommt. Wobei 3min wirklich lang sind...
Baut sich die Seite eigentlich sukzessive auf - also einfach nur urrr zach oder wartest du ewig, ohne etwas zu sehen und zack plötzlich ist die Seite da?

wergor

connoisseur de mimi
Avatar
Registered: Jul 2005
Location: graz
Posts: 4027
DNS lookup speed habe ich gestern mit dig + den proxy in den systemeinstellungen getestet. war immer im bereich weniger ms. squidclient reported auch lookups mit median im ms- bereich.
Code:
Median Service Times (seconds)  5 min    60 min:
        [...]
        DNS Lookups:           0.00669  0.01153

die seite baut sich sukzessive auf. erst title, irgendwann dann mal layout mit text und die bilder seh ich dann nach ein paar minuten.

ENIAC

Do you Voodoo
Avatar
Registered: Sep 2003
Location: Klosterneuburg
Posts: 1743
Als nächstes würde ich einen Speedtest machen.
Einmal hinter dem Proxy und einmal davor.

Oder wisst ihr eh schon dass es definitiv am Proxy liegt? Dann wäre ich auch am Ende :D

wergor

connoisseur de mimi
Avatar
Registered: Jul 2005
Location: graz
Posts: 4027
es liegt definitiv am proxy :D wenn ich ihn deaktiviere rennt alles wie erwartet.
ich versuche jetzt gerade mit wireshark rauszufinden was das problem sein könnte. ich bin da kein experte :D aber mir ist aufgefallen dass es immer wieder mal mehrere sekunden lange pausen zwischen paketen gibt:
2020-06-16-14_46_48-window_244566.png

daisho

SHODAN
Avatar
Registered: Nov 2002
Location: 4C4
Posts: 19591
84.115.129.198 scheint irgendeine Nextcloud-Instanz zu sein.
Wenn ich das aus dem Screenshot richtig herauslese braucht die einfach 5 Sekunden um Daten zu schicken.

Den Proxy (falls der da überhaupt noch involviert ist) würde ich klarerweise einfach mal aus der Rechnung raus nehmen um zu sehen ob es daran liegt.

Ev. braucht das Nextcloud nur so lange um gewisse Daten lokal am Server zu suchen? (langsame Disk ev.)
Weil in der Regel sieht dass ansonsten normal aus (die Ack Pakete werden dann normal schnell abgehandelt)


/Edit: Ah, wenn eh schon klar ist dass der Proxy schuld ist ... mit dem kenne ich mich zuwenig aus um weiter Tipps zu geben.

wergor

connoisseur de mimi
Avatar
Registered: Jul 2005
Location: graz
Posts: 4027
Zitat aus einem Post von daisho
84.115.129.198 scheint irgendeine Nextcloud-Instanz zu sein.
Wenn ich das aus dem Screenshot richtig herauslese braucht die einfach 5 Sekunden um Daten zu schicken.
das ist mein server zuhause. ohne proxy gibts die denkpausen nicht, genau so wie bei jeder anderen website. ich habe den nur aus bequemlichkeit gewählt.

Zitat aus einem Post von daisho
Ist browsen auch so langsam, wenn es nicht z.B. das Nextcloud ist? (also random Website wie overclockers, orf, ... wo man weiß dass es normal nicht langsam ist)
ja, ist bei jeder website so, sei es oc.at, google, heise, orf, ...

roscoe

tinkerer
Avatar
Registered: Mar 2005
Location: 1050 Wien
Posts: 681
3.5 ist 5 Jahre alt wimre. Vielleicht hat der ein Problem mit Dingen wie TLS 1.3?

wergor

connoisseur de mimi
Avatar
Registered: Jul 2005
Location: graz
Posts: 4027
ah, danke für den hinweis, dann werde ich mal ein update vorschlagen.

roscoe

tinkerer
Avatar
Registered: Mar 2005
Location: 1050 Wien
Posts: 681
Ich hab gerade meine squids gecheckt und gesehen, dass mein ältester im Produktiveinsatz ein 2.7er ist :)

Ich glaub ich sollt ned anderen sagen, dass sie alte Software verwenden :]

ENIAC

Do you Voodoo
Avatar
Registered: Sep 2003
Location: Klosterneuburg
Posts: 1743
Zitat aus einem Post von roscoe
Ich hab gerade meine squids gecheckt und gesehen, dass mein ältester im Produktiveinsatz ein 2.7er ist :)

Ich glaub ich sollt ned anderen sagen, dass sie alte Software verwenden :]
:D Pssst! Da schweigt man besser ;) :D

wergor

connoisseur de mimi
Avatar
Registered: Jul 2005
Location: graz
Posts: 4027
Zitat aus einem Post von roscoe
Ich glaub ich sollt ned anderen sagen, dass sie alte Software verwenden :]

das passt schon - immerhin weißt du wovon du redest :p
Kontakt | Unser Forum | Über overclockers.at | Impressum | Datenschutz