Interface Performance Test
TS
- internet-anbindung
- webserver
Hello,
kann mir jemand einen guten Tipp geben, wie ich die Performance (Internetanbindung) meines Root-Servers per SSH vom Host aus testen kann?
Ich habe seit Tagen Probleme mit dem Download von diesem Host. Da kommt nicht mehr als ca. 5kByte/s.
Ich müsste also auf dem Host den Upload zu einem anderen Host testen.
Oder kann man man die Schnittstelle erstmal Hostintern testen?
ZUr Info: Der Hoster ist auch dran, hat aber seit Freitag noch keine Ursache feststellen können. Meine erste Idee war, Traffic-Limit ist erreicht. Aber der Hoster sagt nein.
Glück Auf
Tom vom Berg
Linux? Zweimal „iperf“ installieren.
Dann:
user@server > sudo iperf -s
user@host > sudo iperf -c
und visa versa.
Das zeigt aber auch nur an, was geht, nicht warum nicht.
Oder kann man man die Schnittstelle erstmal Hostintern testen?
Ja. Du kannst iperf -s
und iperf -c $IP-DES_SERVERS
natürlich auch auf dem Server (in zwei Terminals/ssh-Sitzungen) starten.
Dann arbeite Dich den Stack hoch: Mit curl oder wget ressource abrufen (und dabei die header sowie Geschwindigkeiten anzeigen), erst statische Ressource (groß genug für Messzwecke), dann das Zeug, welches die Skripte erzeugen.
Hello,
Oder kann man man die Schnittstelle erstmal Hostintern testen?
Ja. Du kannst
iperf -s
undiperf -c $IP-DES_SERVERS
natürlich auch auf dem Server (in zwei Terminals/ssh-Sitzungen) starten.Dann arbeite Dich den Stack hoch: Mit curl oder wget ressource abrufen (und dabei die header sowie Geschwindigkeiten anzeigen), erst statische Ressource (groß genug für Messzwecke), dann das Zeug, welches die Skripte erzeugen.
Danke, das liest sich schon brauchbar.
Der Host hat drei IPs für verschiedene Dienste. Da muss ich nochmal checken, ob ich das auch nutzen kann für iperf und insbesondere, wie ich die Schnittstelle dann identifozieren muss.
Ich warte jetzt noch bis heute Abend auf den Hoster. Dann wühle ich mich da selber durch.
Glück Auf
Tom vom Berg
Der Host hat drei IPs für verschiedene Dienste.
Hm. Diese Root-Server sind ja regelmäßig virtualisiert. Es kann also sein, die „Festplatten" sind auf einem NAS. Das Netz kann nicht schneller sein als die Datenquelle:
lsblk
.sudo hdparm -tT /dev/XXXXX
./dev/XXXXX meint „Disk“, nicht „Partition“.
Literatur:
Noch ein Test:
Teste auch etwas wie cd /var/www; time grep -nR 'html' | wc -l
.
Mit sowas kann man herausbekommen, ob das Dateisystem schnarcht…
Ich hoffe, Dein Server versucht nicht (z.B. zum Loggen) bei jedem Zugriff die Reverese-Auflösung der IP in einen Hostnamen. Ein derart nutzloser DNS-Zugriff wird sehr aufhalten.
SSD an SATA III:
Timing cached reads: 19780 MB in 2.00 seconds = 9903.79 MB/sec
Timing buffered disk reads: 1596 MB in 3.00 seconds = 531.44 MB/sec
Magnetplatte (HD) an SATA III:
Timing cached reads: 18834 MB in 2.00 seconds = 9429.07 MB/sec
Timing buffered disk reads: 754 MB in 3.00 seconds = 251.33 MB/sec
Magnetplatte (HD) via USB3:
Timing cached reads: 20050 MB in 2.00 seconds = 10038.58 MB/sec
Timing buffered disk reads: 586 MB in 3.00 seconds = 195.11 MB/sec
Hallo,
Magnetplatte (HD) an SATA III:
Timing cached reads: 18834 MB in 2.00 seconds = 9429.07 MB/sec Timing buffered disk reads: 754 MB in 3.00 seconds = 251.33 MB/sec
toll, mein Desktop-PC liefert da 2125 und 110 MB/s.
Live long and pros healthy,
Martin
Hallo,
Magnetplatte (HD) an SATA III:
Timing cached reads: 18834 MB in 2.00 seconds = 9429.07 MB/sec Timing buffered disk reads: 754 MB in 3.00 seconds = 251.33 MB/sec
toll, mein Desktop-PC liefert da 2125 und 110 MB/s.
Ich hätte erwähnen sollen, dass es bei mir keine 2,5-Zöller sondern große Desktoplatten mit 7200 RPM sind (Hast Du das auf einem Laptop gemacht?)
Hi,
Magnetplatte (HD) an SATA III:
Timing cached reads: 18834 MB in 2.00 seconds = 9429.07 MB/sec Timing buffered disk reads: 754 MB in 3.00 seconds = 251.33 MB/sec
toll, mein Desktop-PC liefert da 2125 und 110 MB/s.
Ich hätte erwähnen sollen, dass es bei mir keine 2,5-Zöller sondern große Desktoplatten mit 7200 RPM sind (Hast Du das auf einem Laptop gemacht?)
nein, ich meinte "Desktop-PC" schon wörtlich im herkömmlichen Sinn. Aber du hast insofern recht, als da tatsächlich eine 2½"-Platte rotiert. Hab ich so nicht ausgesucht; so war der PC beim Kauf ausgestattet[1]. Aber das ist schon okay so: Low Power und Low Noise.
Live long and pros healthy,
Martin
Abgesehen davon, dass ich die ursprünglich verbaute 250GB-Platte irgendwann mal gegen eine 500GB getauscht habe. ↩︎
Aber du hast insofern recht, als da tatsächlich eine 2½"-Platte rotiert.
Bootest Du davon? Du würdest echt staunen, wenn Du die mal gegen eine SSD eintauschst… Hint: Wenn Du die ganze Platte (also inklusive Bootsektor, Partitionstabelle, Partitionen) mit dd kopierst funktioniert auch eventuell ein Windows weiterhin... Kannst die alte mit einem USB-SATA-Adapter (um die 15 € für USB 3) weiter nutzen.
1 TB um die 100€…
Hallo,
Aber du hast insofern recht, als da tatsächlich eine 2½"-Platte rotiert.
Bootest Du davon?
ja, ab und zu. Ein- bis zweimal im Monat. 😉
Und der Bootvorgang bis zum Login-Prompt dauert rund 40s, davon entfallen aber schon rund 15s auf die ganzen BIOS-Selbsttests und Initialisierungen. Also etwa 25s für den eigentlichen Bootvorgang. Da versprüre ich ehrlich gesagt keinen Bedarf, das noch zu verkürzen.
Wenn ich aus irgendeinem Grund sowieso umbauen wollte - okay. Aber nur damit die Büchse schneller wird? Nö. Viel nützlicher wäre eine Verdopplung des Arbeitsspeichers von derzeit 4GB, um die andauernden Swap-Orgien beim Wechsel zwischen mehreren Anwendungen (Browser, Office-Suite, Mailclient, Konsole, Dateimanager) zu reduzieren. Aber das Mainboard unterstützt nicht mehr, auch wenn das Handbuch behauptet: 8GB.
Du würdest echt staunen, wenn Du die mal gegen eine SSD eintauschst
Ich habe den Wechsel vor etwa drei Jahren bei meinem Multimedia-PC im Wohnzimmer vollzogen - und ja, okay, bringt schon einen merklichen Tempo-Schub, aber jetzt auch nicht so dramatisch, wie immer wieder behauptet wird.
Hint: Wenn Du die ganze Platte (also inklusive Bootsektor, Partitionstabelle, Partitionen) mit dd kopierst funktioniert auch eventuell ein Windows weiterhin...
Windows? Was ist das? 😉
Live long and pros healthy,
Martin
und ja, okay, bringt schon einen merklichen Tempo-Schub, aber jetzt auch nicht so dramatisch, wie immer wieder behauptet wird.
Also auf dem hier ...
https://joerg-reinholz.blogspot.com/2012/01/gar-nicht-so-antik-ibm-lenovo-x60-1706.html
... war der Tempo-Schub anno 2012 dramatisch. Und der läuft sogar noch, dient aber als Museumsstück. Hab schon überlegt, ob man da einen Raspi hineinbauen kann.
Hello,
Aber du hast insofern recht, als da tatsächlich eine 2½"-Platte rotiert.
Bootest Du davon? Du würdest echt staunen, wenn Du die mal gegen eine SSD eintauschst… Hint: Wenn Du die ganze Platte (also inklusive Bootsektor, Partitionstabelle, Partitionen) mit dd kopierst funktioniert auch eventuell ein Windows weiterhin... Kannst die alte mit einem USB-SATA-Adapter (um die 15 € für USB 3) weiter nutzen.
1 TB um die 100€…
Das haben wir (vor Corona) am PC von meinem Vater (90) gemacht. Der wollte einen neuen kaufen, weil er so langsam war. Nach dem Umbau war das Teil viermal so schnell und hat ca. siebenmal so schnell gebootet.
Seine Daten hat er trotzdem auf den alten mechanischen SATA-Platten behalten.
Glück Auf
Tom vom Berg
Seine Daten hat er trotzdem auf den alten mechanischen SATA-Platten behalten.
Daran ist nichts falsches. Ich habe das hier so geregelt, dass Massendaten wie Downloads (z.B. ISOs für Betriebssysteme und auch Windows), Videos, Musik und Fotos, archivierte virtuelle Maschinen auf einer Magnetplatte liegen, das eigentliche /home aber auf der SSD - die entsprechenden Ordner sind ganz stumpf als Links angelegt.
Grund dafür, das /home auf der SSD zu halten, sind die vielen kleinen Dateien in versteckten Ordnern, Snaps und dergleichen. Wenn ich mal Videos schneiden oder konvertieren sollte kann ich die direkt nach /home, also die SSD kopieren oder das Ergebnis dahin wegschreiben lassen.
Dazu habe ich noch die Magnet-Platte(n) mit den Backups im Wechselrahmen.
Hello,
unter bitworks.de/corona
liegen ein paar PNGs und PDFs.
Da kannst Du beim Runterladen selbst des nur 2MB großen PDFs dem Ladebalken im Firefox zusehen.
und unter bilderbuch gibt's eine kleine Bildergalerie mit vielen JPGs. Die schleichen auch nur so übers Netz.
Ich habe mal versucht, eine große Datei (13MB) im Speicher aufzubauen, um erst einmal Schittstelle versa Filesystem testen zu können.
Aber da muss ich wohl nochmal ran. Da hat mir wohl die Kompression des Apache beom Ausliefern das File auf ca. 1MB runtergerechnet. Es muss also ein Zufallsfile sein.
Glück Auf
Tom vom Berg
Hm. 675KB/s (laut wget) wären nicht direkt berauschend.
Das ist es (für eine 2 MB große Datei auch nicht...)
Was mir aufgefallen ist:
In den Antwortzeilen steht:
Server: Apache/2.2.22 (Debian)
Warum das? Der 2.4er ist doch gut „abgehangen“?
Also Ping, und Tracroute (MTR) sind nicht berauschend aber unauffällig. Dein Host steht im Vautron-Rechenzentrum (wohl: Regensburg). Die Leitung geht von mir in Kassel erst mal nach Hamburg, dann nach München, dann also nach scharf nach links und ein paar hundert Kilometer geradeaus. 30ms sind an der Grenze aber (vor allem ohne Paketverlust, den ich auch nach 1 Minute des Wartens nicht sehe) noch akzeptabel:
Hallo,
30ms sind an der Grenze aber (vor allem ohne Paketverlust, den ich auch nach 1 Minute des Wartens nicht sehe) noch akzeptabel
solche Maßstäbe muss man je nach DSL-Anbieter sehr gnädig sehen. An meinem früheren Wohnort hatte ich DSL vom großen blauen Erzrivalen der Telekom, und da waren Ping-Zeiten von 50..70ms durchaus die Regel, in die Nähe von 30ms bin ich nur selten gekommen.
Bei meinem derzeitigen Anbieter und Anschluss sind 30ms ein typischer Wert.
Aber vielleicht ändert sich das in zwei Wochen - ich habe einen Wechsel von ADSL mit 16/1Mbit auf VDSL mit 50/10 beauftragt. Dabei wird sich (so die Auskunft des Kundendienstes) für mich auch der "Leitungsweg" ändern, weil ich derzeit über rund 3km Leitungslänge am DSLAM hänge.
Live long and pros healthy,
Martin
Ich habe einst der Hamburger Lady im roten Kleid einmalig(!) um die 4 Euro bezahlt und „schnelle Pings“. Das merkt man auch bei Webseiten mit vielen Ressourcen, der DNS-Auflösung und an der schnellen Reaktion bei der Nutzung z.B. von SSH.
Google.de oder andere ausgesuchte CDNs sind natürlich ein Idealfall, weil die ihre Server direkt in die Knoten/Rechenzentren der Zugangsprovider stellen.
Aber Du hast recht: 30ms zu einem deutschen Rechenzentrum ist schon „nicht schlecht“. In Potsdam bin ich neuerdings auch nicht schneller.
Hi,
Ich habe einst der Hamburger Lady im roten Kleid einmalig(!) um die 4 Euro bezahlt und „schnelle Pings“.
du meinst diese Lady? - Mir ist zwar der Kontext klar, aber ich glaube, die hat mit Hamburg etwa so viel zu tun wie ich mit Marseille.
Aber Du hast recht: 30ms zu einem deutschen Rechenzentrum ist schon „nicht schlecht“. In Potsdam bin ich neuerdings auch nicht schneller.
😉
Live long and pros healthy,
Martin
Ich habe einst der Hamburger Lady im roten Kleid einmalig(!) um die 4 Euro bezahlt und „schnelle Pings“.
du meinst diese Lady? - Mir ist zwar der Kontext klar, aber ich glaube, die hat mit Hamburg etwa so viel zu tun wie ich mit Marseille.
Keine Ahnung was Du mit Marseille zu tun hast, aber die Lady hatte einen Vertrag mit einer Firma A., die nicht im Wunderland sondern in einem anheimelnden Gewerbegebiet im Norden von Hamburg lo[gc]ierte, welche später an T. (ohne weitere Punkte) verkauft wurde und bis heute keinen Sauerstoff produziert.
Ich bin mit der Firma übrigens insoweit zufrieden, als das ich nicht die Hoffnung hege, dass eine andere mir besser dienen würde…
Hello,
es tut sich 'was.
Wie durch ein Wunder hat es sich die Platte gestern Nacht wieder überlegt:
/dev/sda:
Timing buffered disk reads: 638 MB in 3.01 seconds = 212.26 MB/sec
/dev/sda:
Timing cached reads: 3586 MB in 2.00 seconds = 1793.45 MB/sec
Zuvor hat sie etwa in Stundenabständen aber immer noch die 5.77MB/s buffered angezeigt.
Am Download hat das aber zunächst nichts geändert. Die gleichen beschissenen ca. 600kBits/s.
Witzigerweise konnte ich beim Upload vom Tablet über WLAN trotzdem ca. 10MBit/s schaffen.
Der Service ist nun dran.
Technikus meint, meine ca. 17.000 Einträge in der IP-Tables wären da Schuld (Ok, die muss ich mal endlich zusammenfassen zu Ranges). Kann ich auch nicht ganz glauben, denn dann müsste der Upload gleichartig betroffen sein.
Der Download hat allerdings eben auch wieder funktioniert. Man wird sehen.
Ich vermute da eher noch eine weitere Macke in der Schnittstelle oder im Switch. Hab eich auch schon mal gehabt bei einem Semiprofi-Teil. Der ging an einigen Ports in eine Richtung auch nur noch humpelnd, in die andere ganz normal.
Ich wart's mal ab, was nachher dabei herauskommt. Der Service will's bis heute Nachmittag richten und sichheitshalber auch die Platte tauschen in dem alten Hobel.
Demnächst gibt es dann hoffentlich einen neuen Host mit neuem OS und neuem Apache, PHP8, usw.
Da habe ich allerdings schon ein Bisschen Bammel, dass mir beim Umzug irgendwas verloren geht.
Glück Auf
Tom vom Berg
Der Service ist nun dran.
Ah ja: Aktuell 6,02MB/s. Scheint so als hätten wir das Problem identifiziert bzw. eingegrenzt.
Technikus meint, meine ca. 17.000 Einträge in der IP-Tables wären da Schuld
Mir reichen die hier:
#!/bin/bash
_urlIList='
https://lists.blocklist.de/lists/strongips.txt
https://api.blocklist.de/getlast.php?time=24h
https://check.torproject.org/torbulkexitlist
';
### Programm:
umask 177
rulesFile=`mktemp`;
listFile=`mktemp`;
# Holen der bösen IPs
zeilen=0;
for url in ${_urlIList}; do
echo "Action: Hole ${url}";
wget --no-check-certificate -q -O- "${url}" >> $listFile;
zeilen=$(($(wc -l < $listFile)-zeilen));
echo "${zeilen} Zeilen von ${url} geholt.";
if [ 0 -lt $? ]; then
echo "Fehler: Download von $url hat nicht funktioniert";
fi
done
# Test auf Daten, ggf. Abbruch:
if [ 0 -eq `wc -l < $listFile` ]; then
echo "Es konnten keine Daten empfangen werden";
less $listFile;
exit 2;
fi
# Ausfiltern und Liste in Variable laden
ipList=`sort -u -V < "${listFile}" | grep -P '\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}' | grep -Pv "^[ \t]*$" | tr "\n" ' ';`;
#letztes Komma löschen:
ipList=${ipList:0:${#ipList}-1};
iptables-save > /etc/iptables.rules;
echo -n "# Generated by $0 on " > $rulesFile;
date >> $rulesFile;
echo '*filter' >> $rulesFile;
grep ':INPUT ACCEPT \[' < /etc/iptables.rules >> $rulesFile;
grep ':FORWARD ACCEPT \[' < /etc/iptables.rules >> $rulesFile;
grep ':OUTPUT ACCEPT \[' < /etc/iptables.rules >> $rulesFile;
echo ':f2b-sshd - [0:0]' >> $rulesFile;
echo ':BLOCKLIST - [0:0]' >> $rulesFile;
echo '-A INPUT -j BLOCKLIST' >> $rulesFile;
echo '-A FORWARD -j BLOCKLIST' >> $rulesFile;
echo '-A OUTPUT -j BLOCKLIST' >> $rulesFile;
grep '^-A INPUT -s' < /etc/iptables.rules >> $rulesFile;
# IPs an neue Chain anhängen
for ip in ${ipList}; do
echo -n '-A BLOCKLIST -s ' >> $rulesFile;
echo -n $ip >> $rulesFile;
echo '/32 -j DROP' >> $rulesFile;
done
echo 'COMMIT' >> $rulesFile;
echo -n '# Completed on ' >> $rulesFile;
date >> $rulesFile;
iptables-restore < $rulesFile;
if [ 0 = $? ]; then
iptables-save > /etc/iptables.rules
chmod 644 /tmp/fwlist.txt
fi
rm $rulesFile;
rm $listFile;
iptables-save > /etc/iptables.rules
3x am Tag als Root per cronjob... bei mir arbeitet das, für alle anderen gilt: erst nachdenken, anpassen …
Hello,
das sieht nicht so gut aus, wie bei Dir
icke:/dev# hdparm -i /dev/sda
/dev/sda:
Model=ST1000VX000-1ES162, FwRev=CV27, SerialNo=Z4YDV1EV
Config={ HardSect NotMFM HdSw>15uSec Fixed DTR>10Mbs RotSpdTol>.5% }
RawCHS=16383/16/63, TrkSize=0, SectSize=0, ECCbytes=4
BuffType=unknown, BuffSize=unknown, MaxMultSect=16, MultSect=off
CurCHS=16383/16/63, CurSects=16514064, LBA=yes, LBAsects=1953525168
IORDY=on/off, tPIO={min:120,w/IORDY:120}, tDMA={min:120,rec:120}
PIO modes: pio0 pio1 pio2 pio3 pio4
DMA modes: mdma0 mdma1 mdma2
UDMA modes: udma0 udma1 udma2 udma3 udma4 udma5 *udma6
AdvancedPM=yes: unknown setting WriteCache=enabled
Drive conforms to: Reserved: ATA/ATAPI-4,5,6,7
* signifies the current active mode
icke:/dev# hdparm -T /dev/sda
/dev/sda:
Timing cached reads: 3474 MB in 2.00 seconds = 1737.82 MB/sec
Sollte aber immer noch schnell genug sein, dass man bei einem Download eines 2MB großen PDFs über eine 100/40-Leitung nicht anfangen muss, Erdnüsse zu knacken!
Scheint also doch die Schnittstelle/Anbindung zu sein?
Ach nee:
/dev/sda:
Timing buffered disk reads: 24 MB in 4.16 seconds = 5.77 MB/sec
Glück Auf
Tom vom Berg
Ach nee:
/dev/sda: Timing buffered disk reads: 24 MB in 4.16 seconds = 5.77 MB/sec
Naja, Da haben wir wohl das (oder: ein) Problem identifiziert.
In einer VM mit Debian 10 (die Platte ist aber, pysikalisch gesehen, lokal) messe ich:
/dev/sda:
Timing cached reads: 22128 MB in 2.00 seconds = 11081.20 MB/sec
Timing buffered disk reads: 1030 MB in 3.00 seconds = 342.91 MB/sec
Hello,
Linux? Zweimal „iperf“ installieren.
Dann:
user@server > sudo iperf -s
user@host > sudo iperf -c
und visa versa.
Soweit war ich schon :-O
Aber ich bräuchte ja einen zweiten Host dafür, möglichst auch erstmal im selben RZ.
Glück Auf
Tom vom Berg
Aber ich bräuchte ja einen zweiten Host dafür, möglichst auch erstmal im selben RZ.
Oder erst mal einen Kumpel der mit misst und so z.B. ausschließt, dass die Chose an Deinem Host oder Netzwerk @home oder @firma oder an einem Provider liegt, der das Zeug partout über ein Peering in Afrika routet bzw. switcht.