Der Wettlauf um Millisekunden. So wÀhlen Sie einen Server mit der geringsten Latenz.

FĂŒr viele Anwendungen sind die Latenzen zwischen Client und Server von entscheidender Bedeutung, beispielsweise bei Online-Spielen, Video-/Voice-Konferenzen, IP-Telefonie, VPN usw. Wenn der Server auf IP-Ebene zu weit vom Client entfernt ist, können Verzögerungen (umgangssprachlich „Ping“, „Lag“) die Arbeit beeintrĂ€chtigen.

Die geografische NĂ€he eines Servers entspricht nicht immer der NĂ€he auf der Ebene der IP-Routing. So kann ein Server in einem anderen Land „nĂ€her“ an Ihnen sein als ein Server in Ihrer Stadt. Dies liegt an den Besonderheiten des Routings und des Netzaufbaus.

Der Wettlauf um Millisekunden. So wÀhlen Sie einen Server mit der geringsten Latenz.

Wie wÀhlt man einen Server aus, der möglichst nah an allen potenziellen Kunden ist? Was bedeutet IP-Netz-KonnektivitÀt? Wie leitet man einen Kunden zu dem nÀchstgelegenen Server? In diesem Artikel erfahren Sie mehr.

Latenzen messen

ZunĂ€chst lernen wir, Latenzen zu messen. Diese Aufgabe ist nicht so einfach, wie sie scheint, da die Latenzen je nach Protokoll und PaketgrĂ¶ĂŸe variieren können. Außerdem können kurzfristige PhĂ€nomene, wie zum Beispiel Verzögerungen von mehreren Millisekunden, unbemerkt bleiben.

ICMP — gewöhnliches Ping

Wir werden das Unix-Tool ping verwenden, das es ermöglicht, manuell die Intervalle zwischen den PaketĂŒbertragungen festzulegen, was die Windows-Version von ping nicht kann. Dies ist wichtig, da man bei langen Pausen zwischen den Paketen möglicherweise nicht sieht, was zwischen ihnen passiert.

PaketgrĂ¶ĂŸe (Option -s) — standardmĂ€ĂŸig sendet das Tool ping Pakete mit einer GrĂ¶ĂŸe von 64 Byte. Mit so kleinen Paketen können PhĂ€nomene, die sich bei grĂ¶ĂŸeren Paketen zeigen, unbemerkt bleiben. Daher werden wir die PaketgrĂ¶ĂŸe auf 1300 Byte einstellen.

Intervall zwischen den Paketen (Option -i) — die Zeit zwischen den DatenĂŒbertragungen. StandardmĂ€ĂŸig werden die Pakete einmal pro Sekunde gesendet, was zu lange ist; reale Programme senden Hunderte und Tausende von Paketen pro Sekunde. Daher setzen wir das Intervall auf 0,1 Sekunden. Weniger erlaubt das Programm nicht.

Das endgĂŒltige Kommando sieht so aus:

ping -s 1300 -i 0.1 yandex.ru

Diese Konstruktion ermöglicht es, ein realistischeres Bild der Latenzen zu sehen.

Ping ĂŒber UDP und TCP

In einigen FĂ€llen werden TCP-Verbindungen nicht auf die gleiche Weise wie ICMP-Pakete verarbeitet, was dazu fĂŒhren kann, dass die Messungen je nach Protokoll abweichen. Oft reagiert der Host auch einfach nicht auf ICMP, wodurch herkömmliches Ping nicht funktioniert. So verhĂ€lt es sich zum Beispiel bei einem Host. microsoft.com.

Dienstprogramm nping aus den Entwicklern des berĂŒhmten Scanners nmap, der in der Lage ist, beliebige Pakete zu generieren. Dies kann auch zur Messung von Latenzen verwendet werden.
Da UDP und TCP auf spezifischen Protokollen basieren, mĂŒssen wir einen bestimmten Port „pingen“. Lassen Sie uns versuchen, TCP Port 80, also den Port des Webservers, zu pingen:

$ sudo nping --tcp -p 80 --delay 0.1 -c 0 microsoft.com

Starte Nping 0.7.80 ( https://nmap.org/nping ) am 30.04.2020 um 13:07 MSK
GESENDET (0.0078s) TCP 10.0.0.1:63236 > 13.77.161.179:80 S ttl=64 id=49156 iplen=40  seq=3401731188 win=1480
GESENDET (0.1099s) TCP 10.0.0.1:63236 > 13.77.161.179:80 S ttl=64 id=49156 iplen=40  seq=3401731188 win=1480
EMPFANGEN (0.2068s) TCP 13.77.161.179:80 > 10.0.0.1:63236 SA ttl=43 id=0 iplen=44  seq=1480267007 win=64240 
GESENDET (0.2107s) TCP 10.0.0.1:63236 > 13.77.161.179:80 S ttl=64 id=49156 iplen=40  seq=3401731188 win=1480
EMPFANGEN (0.3046s) TCP 13.77.161.179:80 > 10.0.0.1:63236 SA ttl=43 id=0 iplen=44  seq=1480267007 win=64240 
GESENDET (0.3122s) TCP 10.0.0.1:63236 > 13.77.161.179:80 S ttl=64 id=49156 iplen=40  seq=3401731188 win=1480
EMPFANGEN (0.4247s) TCP 13.77.161.179:80 > 10.0.0.1:63236 SA ttl=42 id=0 iplen=44  seq=2876862274 win=64240 

Max rtt: 112.572ms | Min rtt: 93.866ms | Avg rtt: 101.093ms
Rohpakete gesendet: 4 (160B) | Empfangene: 3 (132B) | Verloren: 1 (25,00%)
Nping abgeschlossen: 1 IP-Adresse in 0,43 Sekunden angepingt

StandardmĂ€ĂŸig sendet nping 4 Pakete und stoppt. Die Option -c 0 ermöglicht das unendliche Senden von Paketen; um das Programm zu stoppen, drĂŒcken Sie Ctrl+C. Am Ende wird eine Statistik angezeigt. Wir sehen, dass der durchschnittliche Wert des RTT (Round-Trip-Time) 101 ms betrĂ€gt.

MTR — Traceroute auf Steroiden

Das Programm MTR (engl. My Traceroute) – ein erweitertes Tool zur Nachverfolgung von Routen zu einem entfernten Host. Im Gegensatz zu dem Standard-Systemtool traceroute (unter Windows ist dies die tracert-Anwendung), kann es die Latenz zu jedem Host in der Paketfolge anzeigen. Es ist auch in der Lage, Routen nicht nur ĂŒber ICMP, sondern auch ĂŒber UDP und TCP zu verfolgen.

$ sudo mtr microsoft.com

Der Wettlauf um Millisekunden. So wÀhlen Sie einen Server mit der geringsten Latenz.
(Klickbar) Das Interface des MTR-Programms. Die Routenverfolgung zu microsoft.com wurde gestartet.

MTR zeigt sofort den Ping zu jedem Host in der Kette an, und die Daten werden kontinuierlich aktualisiert, solange das Programm lĂ€uft, sodass kurzfristige Änderungen sichtbar sind.
Auf dem Screenshot ist zu sehen, dass am Knoten Nr. 6 Paketverluste auftreten, aber in Wirklichkeit ist das nicht ganz korrekt, da einige Router einfach Pakete mit abgelaufener TTL verwerfen und keinen Fehlerbericht zurĂŒcksenden. Daher können die Informationen zu Paketverlusten hier ignoriert werden.

WiFi gegen Kabel

Der Wettlauf um Millisekunden. So wÀhlen Sie einen Server mit der geringsten Latenz.
Dieses Thema gehört nicht ganz zum Artikel, ist meiner Meinung nach jedoch sehr wichtig im Kontext der Latenz. Ich liebe WiFi, aber wenn ich auch nur die geringste Möglichkeit habe, per Kabel mit dem Internet zu verbinden, nutze ich diese. Außerdem rate ich immer davon ab, WiFi-Kameras zu verwenden.
Wenn Sie ernsthafte Online-Shooter spielen, Streaming-Videos ĂŒbertragen oder an der Börse handeln: Bitte verwenden Sie eine kabelgebundene Internetverbindung.

Hier ist ein anschaulicher Test zum Vergleich von WiFi und kabelgebundener Verbindung. Dies ist der Ping zum WiFi-Router, also noch nicht einmal das Internet.

Der Wettlauf um Millisekunden. So wÀhlen Sie einen Server mit der geringsten Latenz.
(Klickbar) Vergleich des Pings zum WiFi-Router ĂŒber Kabel und ĂŒber WiFi

Es ist zu sehen, dass die Latenz ĂŒber WiFi um 1 ms höher ist und gelegentlich Pakete mit bis zu zehnmal höherer Verzögerung auftreten! Und das ist nur ein kurzer Zeitabschnitt. Dabei liefert derselbe Router stabile Latenzen <1 ms.

Im obigen Beispiel wird WiFi 802.11n auf 2,4 GHz verwendet, wobei nur ein Laptop und ein Telefon mit dem WiFi-Zugangspunkt verbunden sind. Wenn mehr Clients am Zugangspunkt wĂ€ren, wĂ€ren die Ergebnisse deutlich schlechter. Aus diesem Grund bin ich so gegen die Umstellung aller BĂŒrocomputer auf WiFi, wenn es die Möglichkeit gibt, sie kabelgebunden anzuschließen.

IP-KonnektivitÀt

Wir haben gelernt, die Latenzen zum Server zu messen, und versuchen nun, den nÀchstgelegenen Server zu finden. Dazu können wir uns ansehen, wie die Routing-Struktur bei unserem Anbieter aussieht. Dazu eignet sich der Dienst bgp.he.net

Der Wettlauf um Millisekunden. So wÀhlen Sie einen Server mit der geringsten Latenz.

Beim Besuch der Website sehen wir, dass unsere IP-Adresse zu einem autonomen System gehört AS42610.

Wenn wir das Diagramm der Interconnection autonomer Systeme betrachten, sehen wir, ĂŒber welche ĂŒbergeordneten Anbieter unser Anbieter mit dem Rest der Welt verbunden ist. Jeder Knoten ist anklickbar, sodass Sie mehr ĂŒber den jeweiligen Anbieter erfahren können.

Der Wettlauf um Millisekunden. So wÀhlen Sie einen Server mit der geringsten Latenz.
Diagramm der Interconnection autonomer Systeme des Anbieters

Mit diesem Tool kann man untersuchen, wie die Verbindungen eines jeden Anbieters, einschließlich Hosting-Anbieter, aufgebaut sind. Man kann sehen, mit welchen Anbietern er direkt verbunden ist. Dazu muss man die IP-Adresse des Servers in die Suche auf bgp.he.net eingeben und das Diagramm seines autonomen Systems betrachten. Es ist auch möglich zu verstehen, wie ein Rechenzentrum oder Hosting-Anbieter mit einem anderen verbunden ist.

Die meisten Internet-Knotenpunkte bieten ein spezielles Tool namens Looking Glass an, mit dem Sie einen Ping- oder Traceroute-Test von einem bestimmten Router am Knotenpunkt durchfĂŒhren können.

Hier zum Beispiel Looking Glass von MGTS

So können wir beim Auswahl eines Servers im Voraus sehen, wie er aus verschiedenen Knotenpunkten aussieht. Wenn sich unsere potenziellen Kunden in einer bestimmten geografischen Zone befinden, können wir den optimalen Standort fĂŒr den Server finden.

WÀhlen Sie den nÀchsten Server

Wir haben den Prozess zur Suche nach dem optimalen Server fĂŒr unsere Kunden vereinfacht und eine Seite mit einem automatischen Test der nĂ€chstgelegenen Standorte erstellt: RUVDS-Rechenzentren.
Beim Betreten der Seite misst ein Skript die Latenzen von Ihrem Browser zu jedem Server und zeigt diese auf einer interaktiven Karte an. Mit einem Klick auf das Rechenzentrum werden die Testergebnisse angezeigt.

Der Wettlauf um Millisekunden. So wÀhlen Sie einen Server mit der geringsten Latenz.

Der Wettlauf um Millisekunden. So wÀhlen Sie einen Server mit der geringsten Latenz.

Der Button fĂŒhrt zur Seite mit den Latenzen zu all unseren Rechenzentren. Um die Testergebnisse zu sehen, klicken Sie auf den Punkt des Rechenzentrums auf der Karte.

Der Wettlauf um Millisekunden. So wÀhlen Sie einen Server mit der geringsten Latenz.

Quelle: habr.com

ZuverlĂ€ssiges Webhosting mit DDoS-Schutz, VPS- und VDS-Server kaufen đŸ”„ ZuverlĂ€ssiges Webhosting mit DDoS-Schutz, VPS- und VDS-Server kaufen | ProHoster