Comprendre la latence réseau : causes et solutions
Découvrez ce qui cause la latence réseau, comment la mesurer avec précision, et des stratégies pratiques pour la réduire afin d'améliorer les performances des applications.
Latence réseau — le temps nécessaire pour que les données voyagent d'un point à un autre — est l'un des facteurs les plus critiques dans la performance des applications, l'expérience utilisateur et la communication en temps réel. Comprendre ce qui cause la latence et comment la mesurer est la première étape pour la réduire.
Qu'est-ce que la latence réseau ?
La latence est mesurée comme le temps aller-retour (RTT) pour qu'un paquet voyage de la source à la destination et revienne. Elle s'exprime généralement en millisecondes (ms). Une latence de 20ms signifie que vos données mettent 20 millisecondes pour effectuer le trajet complet aller-retour. À titre de référence :
- 1–10ms — Excellent. Typique pour un réseau local ou des connexions dans le même centre de données
- 10–50ms — Bon. Courant pour des connexions régionales à l'intérieur d'un continent
- 50–150ms — Acceptable. Typique pour des connexions intercontinentales
- 150ms+ — Notable. Les utilisateurs commencent à percevoir des délais dans les applications interactives
Causes courantes de la latence
1. Distance physique
La lumière voyage dans des câbles à fibre optique à environ 200 000 km/s (environ deux tiers de la vitesse de la lumière dans le vide). Un paquet voyageant de New York à Tokyo couvre environ 11 000 km de câble, ce qui entraîne une latence physique minimale d'environ 55ms dans un seul sens. C'est une limite inférieure absolue que aucune technologie ne peut éliminer.
2. Sauts réseau et routage
Chaque routeur par lequel un paquet passe ajoute un temps de traitement. Chaque saut ajoute généralement entre 0,5 et 5ms de latence selon la charge et la configuration du routeur. Un traceroute montrant 15 sauts avec une moyenne de 2ms chacun ajoute 30ms de surcharge de routage à la latence de propagation physique.
3. Congestion
Lorsqu'un lien réseau transporte plus de trafic que sa capacité, les paquets s'accumulent dans les buffers des routeurs. Ce délai d'attente peut être le plus grand contributeur à la latence, surtout pendant les heures de pointe. C'est aussi le plus variable, provoquant le jitter (incohérence de latence) qui dégrade les applications en temps réel.
4. Surcharge protocolaire
Les connexions TCP nécessitent une poignée de main en trois étapes avant le transfert de données, ajoutant une RTT complète de latence avant que toute charge utile ne soit envoyée. Le chiffrement TLS ajoute 1 à 2 RTT supplémentaires pour la poignée de main. La résolution DNS ajoute encore un aller-retour si le domaine n'est pas en cache. Ces surcharges s'accumulent à chaque nouvelle connexion.
5. Problèmes de dernière étape
La connexion entre un utilisateur final et le premier routeur de son fournisseur d'accès est souvent le maillon le plus faible. Le Wi-Fi ajoute 1 à 5ms contre l'Ethernet. Les anciennes technologies DSL et câble ajoutent beaucoup plus. Les connexions par satellite ajoutent 300 à 600ms en raison de la distance jusqu'à l'orbite géostationnaire.
Comment mesurer la latence
Un simple ping vous donne la RTT de référence. Un traceroute montre la latence à chaque saut, révélant où s'accumulent les délais. MTR combine les deux avec une surveillance continue. Pour une vue plus complète, des outils visuels comme TraceMapper superposent les données de latence sur une carte, rendant immédiatement évident où dans le monde vos paquets sont retardés.
Lors de la mesure, prenez toujours plusieurs échantillons à différents moments. La latence varie avec la charge du réseau, et une seule mesure peut être trompeuse.
Stratégies pour réduire la latence
- Utiliser un CDN — Les réseaux de distribution de contenu placent votre contenu plus près des utilisateurs, réduisant la distance physique
- Choisir des emplacements de serveurs stratégiques — Placer les serveurs près de votre base d'utilisateurs
- Activer la réutilisation des connexions — HTTP/2 et HTTP/3 multiplexent les requêtes sur une seule connexion, évitant les nouvelles poignées de main
- Optimiser DNS — Utiliser des résolveurs DNS rapides et activer la mise en cache DNS
- Réduire la taille des charges utiles — Des paquets plus petits traversent le réseau plus rapidement et passent moins de temps dans les buffers
- Surveiller en continu — Utiliser une surveillance basée sur traceroute pour détecter les changements de routage et les schémas de congestion avant que les utilisateurs ne se plaignent
La latence réseau est une contrainte physique fondamentale, mais comprendre ses composantes vous permet de minimiser ce que vous pouvez contrôler et de fixer des attentes réalistes pour ce que vous ne pouvez pas.