En informatique et plus spécifiquement sur les réseaux informatiques, la latence (aussi appelée lag) désigne le délai entre le moment où une information est envoyée et celui où elle est reçue. De façon plus générale, la latence peut aussi désigner l'intervalle entre la fin d'un événement et le début de la réaction à celui-ci, par exemple :
# le délai entre une requête d'un client et la réponse du serveur
Le lag peut être occasionné par plusieurs causes :
Capacité réseau insuffisante
La transmission des paquets de données est soit ralentie par un routeur parce que le réseau ne possède pas une bande passante suffisante, c’est-à-dire qu'il ne peut faire face au nombre de paquets envoyés ou demandés, soit parce les paquets passent par un grand nombre de routes différentes avant d'atteindre leur destination. La bande passante d'une zone où les paquets circulent normalement sans problème peut par exemple être réduite pendant les heures de plus grande activité, ainsi, un paquet devra être mis dans une file d'attente à chaque routeur avant de continuer son chemin. Les encombrements aux heures de pointe constituent une bonne analogie de la question.
Capacité de calcul inefficace ou insuffisante
Le lag peut être provoqué par une requête inhabituelle qui ne figure pas encore en mémoire cache, ou si la requête demande une importante quantité de capacité de calcul. Le délai n'est ainsi donc pas nécessairement lié à une distance géographique.
Contrainte technologique
En fonction de la technologie employée, le traitement et la transmission des signaux peut demander un délai variable. Les réseaux de transmission par satellite géostationnaire, par exemple, causent un délai minimal de l'ordre de 270 ms, il en va de même de réseaux câblés sur de très longues distances.
Réordonnancement des paquets
Avec IP, il est possible que les paquets arrivent à la destination finale dans un ordre différent de celui utilisé pour l'expédition. Certaines implémentations de protocoles (notamment le jeu en temps réel) exigent une arrivée ordonnée des paquets et rejetteront les paquets arrivés hors séquence, comptant alors sur les retransmissions pour reconstituer le flux de données original, ce qui cause des délais anormalement élevés.