End2End-Azure Latenz

Auf der Seite Azure Speedtest habe ich einige Tools vorgestellt, die eine Latenzzeit zu verschiedenen Azure Rechenzentren testen. Allerdings laufen diese alle "interaktiv" und halten keine historischen Daten. Für Trend-Analysen oder längerfristige Aufgaben brauchen wir andere Werkzeuge. Allerdings reicht es mir natürlich nicht, einmal pro Minute einen Test zu machen. Wenn ich aber engmaschig überwache, wie dies bei anderen Ende zu Ende Monitoring-Checks gemacht habe, dann muss ich natürlich die Daten schon vorverarbeiten.

Diese Seite eine Beschreibung des Werkzeugs "AzureSpeed.com" von  Blair Chen(@blrchen), der den kompletten Code auf GitHub ( https://github.com/blrchen/AzureSpeed) bereit gestellt hat. Da der Download von Daten aus Azure Blobs aber Geld kostet, habe ich dessen URLs nicht als Basis für ein End2End-Skript genutzt. Blair hat in seinem GIT auch Code hinterlegt um eigene Gegenstellen aufzusetzen. Für die meisten meiner Zwecke reicht auch End2End-HTTP gegen die Services in die Datacenter, die mich interessieren.

Definition der Gegenstellen

Microsoft betreibt ja einige Azure-Standorte mit Servern, die auch immer weiter erweitert wird. Die Webseite azurespeed.com ist ein gutes Beispiel für eine interaktive Webseite, mit der jeder Anwender mal schnell alle hinterlegten Standorte ansprechen kann

Das sieht natürlich schon einmal beeindruckend aus und wir sehen auch schön die geografischen Entfernungen von dem Client. Hier bin ich in Europa und daher sind die beiden europäischen Azure-Standorte sehr schnell angebunden. Japan ist schon aufgrund der Entfernung viel langsamer. Sie sehen aber z.B.: bei der roten Linie auch eine deutlich größere Streuung als bei anderen Systemen. Aber auch die beiden untersten Linien für Europa schwanken in dem Fall zwischen 50ms und 180ms.

Vergleichswerte

Da stellt sich natürlich die Frage der "Vergleichswerte". Ich habe obiges Tool einfach bei mehreren Anbindungen getestet. Ein paar Vorbemerkungen dazu

  • Die Angaben zu Min/Avg/Max beziehen sich auf das schnellste und damit "nächste" Datacenter
  • Der Start verfälscht die Messung,
    da der erste Request immer deutlich länger braucht (DNS-Auflösung, TLS-Handshake etc.)
  • Browser misst Mist
    Versuchen Sie in der Zeit auch nicht ihren Browser zu stressen, da dies die Zeitmessung beeinflusst.
  • Alle Datacenter um das nächste zu finden
    Beim Test selbst sollten Sie aber alle Datacenter anwählen, damit sie auch das "nächste" finden. Das gilt um so mehr beim Einsatz von "Cloud Proxy Diensten" wie zScaler etc.

Sie können mir gerne eigene Messwerte überlassen:

Verbindung Min Average Max

DSL 100 Hövelhof

70ms

205ms

490ms

RRX Bahn Hotspot

80ms

110ms

170ms

Kunde DE) mit zScaler

80ms

400ms

>500ms

DSL50 Südpfalz

74

90

140

Telekom Hotspot WLAN Kassel Wilhelmshöhe (Free)

150

194

320

WifiOnICE (Kassel Frankfurt)

Hier zeigen sich natürlich die Probleme einer Momentaufnahme. Sicher ist die Verbindung per WLAN über einen LTE-Repeater bei 200+km/h nicht optimal. Aber dass Indien schneller sein soll, dürfte nur daran liegen, dass andere Messungen in genau dem Moment so extrem langsam waren. Auch können Ergebnisse wie 5ms nicht stimmen. Hier dürften dann Grenzen des Browsers bei einer Zeitmessung sichtbar werden.

5-50

350-550

2000+

Für den Betreiber eines Netzwerks mit der Nutzung von Azure-Diensten ist es schon interessant hier sowohl einen langfristigen Mittelwert zur Trenderkennung als auch eine engmaschige Überwachung für kurzfristiges Aussetzer zu haben.

Script für PRTG und Co?

Wie ich gleich anfangs geschrieben habe, verzichte ich auf die Entwicklung eines Skripts um wie dieses Webseite die Azure-Datacenter zu proben. Das Speichern und das Abrufen von Daten aus einem Azure DataCenter ist mit Kosten verbunden, die Blair Chen aktuell wohl aus seiner eigenen Tasche trägt. Er hat aber einen Teil der Dienste aufgrund von Missbrauch schon abschalten müssen:

Es ist ihnen natürlich nicht verboten ihren eigenen Azure Blob-Storage für ihre Tests aufzubauen. Für einen einfachen Office 365-Test nutze ich entsprechend ausgiebig z.B. End2End-HTTP oder End2End EWS. Selbst ein End2End-Ping kann schon Informationen liefern.

Weitere Links