RNDIS Connection Lag sur Windows, pas Linux

J'ai deux smartphones Android qui peuvent fournir leur connexion Internet à un ordinateur via USB via le protocole RNDIS (Remote Network Device Interface Specification). J'ai également deux ordinateurs à double démarrage Windows 7 Ultimate et une certaine saveur de Linux (l'un d'eux a Fedora 17, l'autre possède Ubuntu 12.04).

Lorsque je connecte un smartphone à l'ordinateur et que l'ordinateur exécute Windows, je dois attendre environ 90 secondes avant de pouvoir utiliser ma connexion Internet après avoir activé la connexion du téléphone.

Lorsque je connecte un smartphone à l'ordinateur et que l'ordinateur exécute Linux, je dois attendre environ 2,5 secondes avant de pouvoir utiliser ma connexion Internet.

Ma question est la suivante: pourquoi existe-t-il un tel délai énormément long sur Windows?

Sur Windows, il indique "Identifying …" sur l'adaptateur pendant environ 60 secondes, puis dit "Limited Or No Access", puis si je continue de rafraîchir mon navigateur, EVENTUELLEMENT il me permettra de parcourir. Après cela, c'est OK.

Sur Linux, il se connecte instantanément, tout comme le branchement d'un câble ethernet. Boom, fait.

Je ne pense pas que ce soit matériel lié parce que j'ai deux téléphones de différents fabricants (Motorola et HTC) exécutant deux versions différentes d'Android (2.3.6 et 4.0.4). Du côté de l'ordinateur, j'ai un Lenovo ThinkPad T530 et un ordinateur de bureau fait à la main. Je l'ai réellement essayé sur deux ordinateurs de bureau distincts; Un système Nehalem et un Ivy Bridge. Pour autant que je puisse le dire, ils n'ont absolument rien à voir les uns avec les autres.

Les choses que j'ai essayé d'améliorer les performances sur Windows:

  1. Installation CLEAN de Windows. Absolument rien, sauf les pilotes de base, SP1 et les mises à jour critiques. Aucun logiciel VPN, aucun logiciel de sécurité, aucun logiciel de virtualisation, aucun pilote NetFilt personnalisé, excepté ceux qui sont absolument obligés de se connecter au téléphone.

  2. Désélectionner tout sauf TCP / IPv4 dans les propriétés de connexion réseau (décochant QoS, Client pour Microsoft Networks, Topologie Link-Layer, etc.

  3. Définir des serveurs IP statiques et DNS statiques.

Rien de tout cela ne les aide. Je ne peux simplement pas naviguer n'importe où sur l'ordinateur jusqu'à environ 90 secondes après avoir activé la connexion sur le téléphone, et le problème SEULEMENT se produit sur Windows. Sur Linux, c'est bien.

Assez étonné à propos de ça. Pour ce qu'il vaut la peine, mon pilote RNDIS est la version 6.1.7600.16385 et le nom est "Dispositif de partage Internet basé sur NDIS à distance" suivi habituellement par un nombre comme # 2, n ° 9, etc. J'utilise une copie authentique de Windows dans tous les cas Et j'ai essayé à la fois une compilation OEM de Windows à partir de Lenovo (sur le ThinkPad) ainsi qu'une installation propre de Microsoft à partir du CD de vente au détail sur mes ordinateurs de bureau.

    J'avais un problème où un certain jeu (XCOM 2) ressentirait 3-5 secondes de congélation suivie d'environ 0,5 seconde de fonctionnement normal, à plusieurs reprises, en boucle, à partir de la partie où le menu principal effectue le rendu 3D du Scène d'ouverture. Les vidéos d'introduction rendent bien. De toute évidence, jouer au jeu à une vitesse de 0.5 secondes de jeu toutes les 5 secondes est inacceptable.

    J'ai finalement réduit ce problème pour ne pas se produire lorsque mon USB Verizon Hotspot (Jetpack) a été branché. Donc, je pensais que je pourrais soit jouer à XCOM 2 sans Internet, soit connecter mon Internet et ne pas jouer à XCOM 2. Puisque c'est mon principal Connexion Internet, je n'avais aucune alternative. Plutôt que ce problème a réapparu des années après que j'ai posé cette question sur SU.

    Sauf que le problème était dû à une mauvaise configuration du pilote! Les points d'accès USB (y compris les smartphones Android attachés via USB) s'exposent au système d'exploitation via un protocole appelé NDIS distant. NDIS a traversé diverses versions de Windows XP, Vista, 7, 8 et Windows 10. Le plus grand changement NDIS était de la version 5.x à la version 6.x.

    D'une certaine manière, lorsque j'ai branché mon Jetpack, Windows 10 (64 bits) a installé les drivers NDIS version 5.x pour mon Jetpack, même si les pilotes version 6.x sont également disponibles pour le système. Cela provoque en fait une série de problèmes graves avec des applications telles que l'applet de Panneau de configuration intégré "Connexions réseau", qui prend très longtemps à charger, mais certaines personnes n'utilisent jamais cette application pour ne pas avoir d'idée que ce soit un problème. Je n'ai jamais vu cela poser un problème pour les jeux, cependant.

    Les pilotes de la version 6 de NDIS se sont déroulés depuis Windows Vista, donc c'est un vrai capteur de tête pour savoir pourquoi le système d'exploitation les initialise avec NDIS version 5.x au lieu de 6. Cependant, lorsque vous suivez cette procédure manuelle pour l'obliger à charger le NDIS 6.x driver, mon problème avec XCOM 2 est parti complètement. Tout est génial maintenant!

    Les étapes détaillées pour résoudre ce problème se trouvent ici: http://forum.xda-developers.com/android/general/fix-usb-tethering-lags-freezes-windows-t3039183

    Bref, ce que vous devez faire est de mettre à jour le pilote sur votre périphérique NDIS distant, puis choisir manuellement un pilote sur votre ordinateur, puis sélectionner le fournisseur en tant que Microsoft et le pilote comme "USB RNDIS6". Cela mettra à jour votre pilote et provoquera votre connexion Internet. Après cela, XCOM 2 fonctionnera en douceur.

    Si la procédure que je viens de décrire ne fonctionne pas, dirigez-vous vers les forums XDA auxquels j'ai attaché plus haut et il existe d'autres méthodes alternatives pour obtenir et installer une version NDIS 6 du pilote NDIS distant.

    Félicitations à @DenisNikolaenko qui a posté la solution en janvier 2015 mais je n'ai pas vu son commentaire jusqu'à maintenant.