J'utilise la 3G comme connexion Internet principale, et TCP sur cette chose devient de plus en plus déroutant chaque jour. Par exemple:
Le téléchargement depuis kernel.org est extrêmement rapide:
$wget http://www.kernel.org/pub/linux/kernel/v3.0/linux-3.6.8.tar.bz2
augmente à ~ 500kB / s après quelques secondes!
Certains serveurs sont incroyablement lents, par exemple www.graphic-pc.com:
Même chose, télécharger un gros fichier avec wget commence à ~ 30kB / s pendant une fraction de seconde, puis s'effondre à 5-10k ou pire.La navigation sur le Web est décente mais peu fiable. Au hasard, une page prendra très longtemps à charger ou même ne se chargera pas, mais un rechargement peut réussir presque immédiatement.
Maintenant, par hasard, j'ai commencé à jouer avec OpenVPN sur UDP en plus de la connexion 3G, et OMG tout est extrêmement rapide!
Même www.graphic-pc.com tire maintenant à 100-200kB / s!
- Que se passe t-il ici ???
- Comment se fait-il que c'est tellement mieux avec le VPN qu'avec sans ??
- Et pourquoi graphic-pc.com rampe quand kernel.org vole?
Quelque chose à voir avec ma pile TCP (ou le serveur), ou un routeur buggy entre les deux ??
Remarques:
La configuration est un ordinateur portable exécutant Ubuntu Lucid et un dongle Huawei 3G (donc connexion directe pppd).
Je peux reproduire cela à peu près à tout moment de la journée et je ne bouge pas, donc ce n'est clairement pas l'environnement cellulaire ou la congestion Internet. (bien que kernel.org sans VPN fasse parfois pire le soir, environ 60 Ko - mais toujours 500 Ko avec VPN!)
Pour 2) Wireshark affiche des paquets retransmis, dup ack, même parfois en panne.
J'ai essayé de jouer avec différents paramètres / proc / sys / net / ipv4 (tcp_rmem, window_scaling, tcp_congestion ...) ne semble pas faire de différence.
Mise à jour:
essayé sous Windows 7 (pas de VPN) avec des résultats intéressants:
tcp settings : default tcp_optimizer
kernel.org : 10 kB/s 20 kB/s
graphic-pc.com: 8 kB/s 70 kB/s !
tcp_optimizer a activé ctcp entre autres. Je dois vérifier quel os graphic-pc.com fonctionne, mon pari est tcp_westwood de linux et ms ctcp ne se mélangent pas bien ici ...