You are here: Maschinenraum » Bandbreitentest

Wieviel Bandbreite haben unsere Supernodes?

Die Messungen sind vom 31.12.2019.

CPU Pinning ist wichtig für die Messmethode

Die Messung basiert auf einem Iperf-Dienst, der auf dem Supernode läuft. Gemessen wird der gelbe Graph. Dieser zeigt, wieviel Traffic in die bat-Devices rein geht.

Screenshot from 2019-12-31 01-17-20.png
  • Fastd ist nicht multi-core-fähig, sodass immer nur ein Kern ausgelastet wird. In Grafana wurde eine Statistik erstellt, die nur den Kern mit der maximalen Auslastung anzeigt.
  • Auf Multi-Core-Systemen sollte man zur Messung den fastd auf einen einzelnen Kern beschränken ("pinnen"), da sonst die Messwerte nicht erfassbar sind.
  • Im folgenden Graphen sind starke Unterschiede mit und ohne Pinning zu sehen, auch wenn der Nutztraffic Traffic (oben in gelb) gleich aussieht.
Screenshot from 2019-12-31 01-18-11.png

1. fastd PID für dom99 rausfinden:
[root@sn09]:~ # ps aux | grep fastd | grep 99 | grep -v announ
root      1164 0.4 1.1 656340 11300 ?        Ss   Dec29   8:53 /usr/bin/fastd --syslog-level info ...

2. Pinning des fastd-Prozesses auf ersten Kern

[root@sn09]:~ # taskset -p 0x01 1164

Zusammenhang der Bandbreite mit der CPU

Im folgenden ist eine Messung auf einem etwas CPU-stärkeren Supernode zu sehen.

Screenshot from 2019-12-31 01-36-01.png

Screenshot from 2019-12-31 01-36-25.png

Es ist sichtbar, dass der Client es nicht schafft, die CPU dieses Supernodes voll auszulasten. Die Maximale CPU-Auslastung liegt bei ~90% wo gleichzeitig Nutztraffic von 225 Mbit/s in die bat-Devices fließt. Durch einfachen Dreisatz kann man ausrechnen, dass der sn08 etwa 250 Mbit/s macht, wenn er bei 100% CPU-Auslastung ist.

supernode CPU-Taktrate Datenrate bei Vollauslastung Datenrate pro GHz
sn01 2.26 GHz 156 Mbit/s 69 Mbit/s
sn08 3.4 GHz 250 Mbit/s 73 Mbit/s
Damit lässt sich vermuten, dass die Datenrate ungefähr linear von der CPU-Taktrate abhängt:

Taktrate in GHz * 70 Mbit = Bandbreite

Die Messungen bei Hostway sind komisch

Screenshot from 2019-12-31 01-50-38.png

Screenshot from 2019-12-31 01-50-47.png

Es gibt einige Probleme bei diesen Messungen:

1. Die Maschine hat 2.6 GHz. Wenn unsere Erkenntnis von vorher stimmt, dann sollte das Bandbreitenlimit etwa bei 180 Mbit/s statt bei 139 Mbit/s liegen. Vielleicht ist das eine Messungenauigkeit?

2. Es gibt keine Korrelation zwischen CPU-Last und Traffic. Hier könnte es viele Erklärungen geben. Vielleicht funktioniert das Pinning nicht.

3. Es gibt bei sn09 schon eine "Grundlast" ohne den induzierten Traffic von etwa 40 Mbit/s. Der Supernode hat 2 VCPUs. Wenn sich der Traffic auf alle Domänen (und damit auch VCPUs) gleichzeitig verteilt, dann sind in der Grundlast 20Mbit/s auf der anderen VCPU, die wir nicht mit messen wollen. Also müssten wir von unserem Messwert nochmal ~20 Mbit/s abziehen und kämen auf 119 Mbit/s, was für eine CPU mit 2.6 GHz immer noch zu wenig wäre.

Screenshot from 2019-12-31 02-08-42.png

Bei sn10 kann man dieses Prinzip äquivalent anwenden. Die Grundlast beträgt etwa 120 Mbit/s. ohne die Messung. Zieht man wieder die Hälfte von dem Spitzenwert 181 Mbit/s ab, kommt man auf 121 Mbit/s für den einen Kern, so wie bei sn09 auch. Das ergibt Sinn, da die Hosts auf dem gleichen VMWare-Cluster laufen und sonst auch identisch sind.

Übersicht Messergebnisse

Standort supernode CPU-Taktrate Bandbreitenlimit pro CPU Bandbreitenlimit / GHz Virtualisierungstechnologie
Frankfurt am CIX sn01 2.26 GHz 156 Mbit/s 69 Mbit/s KVM
Hetzner sn08 3.4 GHz 250 Mbit/s 73 Mbit/s ?
Hostway sn09 2.6 GHz 119 Mbit/s 46 Mbit/s ESXI
Hostway sn10 2.6 GHz 121 Mbit/s 46 Mbit/s ESXI

THEORETISCHE Gesamtbandbreite pro Supernode

Es ist davon auszugehen, dass die Bandbreite pro CPU verfügbar ist. Aus jeder Domain ist allerdings nur maximal die Bandbreite abrufbar, die eine CPU zur Verfügung stellen kann, da fastd single-threaded ist. Ein einzelner Endnutzer kann so nur eine Bandbreite einer CPU nutzen. Dies ist allerdings nur eine theoretische Schlussfolgerung und wurde nicht gemessen.

Standort supernode CPU-Taktrate Bandbreitenlimit pro CPU Kerne Theoretische Gesamtbandbreite durch fastd Limitierung durch Anbindung
Frankfurt am CIX sn01 2.26 GHz 156 Mbit/s 12 1.8 GBit/s 10 GBit/s
Hetzner sn08 3.4 GHz 250 Mbit/s 7 1.7 GBit/s 1 Gbit/s
Hostway sn09 2.6 GHz 119 Mbit/s 2 240 Mbit/s 10 GBit/s
Hostway sn10 2.6 GHz 121 Mbit/s 2 240 Mbit/s 10 GBit/s

Mögliche Weiterentwicklungen des Tests

  • Speedtests die auch ins Internet gehen und nicht nur zwischen dem Supernode und dem Knoten stattfinden.

Testmethodik

Impressum -- Copyright © by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
This website is using cookies. More info. That's Fine