Je suis Charlie

Autres trucs

Accueil

Seulement les RFC

Seulement les fiches de lecture

Ève

Latence rigolote chez F-Contact

Première rédaction de cet article le 25 août 2013


Ah, les plaisirs de la fracture numérique. Pas besoin d'aller au fin fond de l'Afrique pour la tester, il suffit de partir en vacances au centre de la France, sur les bords de l'Indre, charmante région, aux excellents fromages de chèvre, mais à la connexion lamentable.

C'est une zone blanche. Très blanche. Au point que le seul opérateur mobile qu'on capte (parfois) est F-contact, opérateur collectif créé pour desservir ces zones blanches. La voix passe dans certains cas. Et les données ? Avec un abonnement Orange 3G, j'obtiens une connexion GPRS et admirez la latence :

% ping -i 30 -c 10 192.134.4.20
PING 192.134.4.20 (192.134.4.20) 56(84) bytes of data.
64 bytes from 192.134.4.20: icmp_req=1 ttl=45 time=12799 ms
64 bytes from 192.134.4.20: icmp_req=2 ttl=45 time=20330 ms
64 bytes from 192.134.4.20: icmp_req=3 ttl=45 time=10799 ms
64 bytes from 192.134.4.20: icmp_req=4 ttl=45 time=13417 ms
64 bytes from 192.134.4.20: icmp_req=5 ttl=45 time=13496 ms
64 bytes from 192.134.4.20: icmp_req=6 ttl=45 time=24128 ms
64 bytes from 192.134.4.20: icmp_req=7 ttl=45 time=34604 ms
64 bytes from 192.134.4.20: icmp_req=8 ttl=45 time=38724 ms
64 bytes from 192.134.4.20: icmp_req=9 ttl=45 time=34504 ms
64 bytes from 192.134.4.20: icmp_req=10 ttl=45 time=21644 ms

--- 192.134.4.20 ping statistics ---
10 packets transmitted, 10 received, 0% packet loss, time 270031ms
rtt min/avg/max/mdev = 10799.256/22445.025/38724.983/9779.967 ms, pipe 2

Dix secondes minimum, vingt-deux en moyenne, soit le temps pour la lumière de faire quinze fois le trajet de la Terre à la Lune. Faire le trajet de l'Indre à l'Internet est bien plus long... Mais pas une seule perte de paquet, par contre.

Pour comparer, dans une région mieux connectée, en UMTS, la même machine et la même clé 3G obtiennent :

% ping -c 10 -i 10 192.134.4.20
...
--- 192.134.4.20 ping statistics ---
10 packets transmitted, 10 received, 0% packet loss, time 90049ms
rtt min/avg/max/mdev = 60.149/289.710/959.800/296.908 ms

Avec une telle latence, quasiment aucun service ne marche (à part ping) comme vu plus haut. Pas TCP, c'est sûr, car il ne patiente jamais assez pour que la connexion puisse être établie. Mais le DNS ne marche pas non plus car le Unbound installé sur ma machine timeoute systématiquement (alors que la réponse arrive, on la voit avec tcpdump, mais horriblement tard). On comprend pourquoi les gens qui ont tenté une mise en œuvre du RFC 1149 n'ont jamais utilisé autre chose que ping. Il faudrait sans doute déployer des applications spécifiques, fondées sur des protocoles adaptés comme celui du RFC 5050.

Pierre Beyssac me fait remarquer que beaucoup d'applications Web auront leurs propres problèmes car elles chargent le code qui va après chercher des données en Ajax, avec leurs propres délais de garde, bien plus courts.

Désolé, je ne peux pas vous montrer un traceroute car les routeurs de l'opérateur trichent et envoient une réponse bidon. Mais si vous aimez la technique, j'ai découvert à cette occasion (merci à MarcBrice) l'excellent site http://www.antennesmobiles.fr/ qui donne accès à la localisation de toutes les antennes de France avec leurs caractéristiques. J'étais situé entre deux antennes Bouygues, distante chacune de six kilomètres.

Comment une telle latence est possible ? Je n'ai pas d'explications. Mais elle peut être volontaire, F-contact servant prioritairement à la voix, introduire une latence est un moyen de décourager son usage pour les données.

Version PDF de cette page (mais vous pouvez aussi imprimer depuis votre navigateur, il y a une feuille de style prévue pour cela)

Source XML de cette page (cette page est distribuée sous les termes de la licence GFDL)