Dans le cadre de la documentation associée à ce produit, nous nous efforçons d’utiliser un langage exempt de préjugés. Dans cet ensemble de documents, le langage exempt de discrimination renvoie à une langue qui exclut la discrimination en fonction de l’âge, des handicaps, du genre, de l’appartenance raciale de l’identité ethnique, de l’orientation sexuelle, de la situation socio-économique et de l’intersectionnalité. Des exceptions peuvent s’appliquer dans les documents si le langage est codé en dur dans les interfaces utilisateurs du produit logiciel, si le langage utilisé est basé sur la documentation RFP ou si le langage utilisé provient d’un produit tiers référencé. Découvrez comment Cisco utilise le langage inclusif.
Cisco a traduit ce document en traduction automatisée vérifiée par une personne dans le cadre d’un service mondial permettant à nos utilisateurs d’obtenir le contenu d’assistance dans leur propre langue. Il convient cependant de noter que même la meilleure traduction automatisée ne sera pas aussi précise que celle fournie par un traducteur professionnel.
Ce document décrit comment dépanner les problèmes avec la sélection de passerelle optimale (OGS). OGS est une fonctionnalité qui peut être utilisée afin de déterminer quelle passerelle a le temps de parcours aller-retour (RTT) le plus faible et de se connecter à cette passerelle. On peut utiliser la fonctionnalité OGS afin de minimiser la latence pour le trafic Internet sans intervention de l'utilisateur. Avec OGS, Cisco AnyConnect Secure Mobility Client (AnyConnect) identifie et sélectionne la passerelle sécurisée la mieux adaptée à la connexion ou à la reconnexion. L'OGS commence à la première connexion ou à la reconnexion au moins quatre heures après la déconnexion précédente. Vous trouverez plus d'informations dans le guide de l'administrateur.
Conseil : OGS fonctionne de manière optimale avec le client AnyConnect le plus récent et le logiciel ASA version 9.1(3)* ou ultérieure.
Une simple requête ping ICMP (Internet Control Message Protocol) ne fonctionne pas, car de nombreux pare-feu ASA (Cisco Adaptive Security Appliance) sont configurés pour bloquer les paquets ICMP afin d'empêcher la détection. Au lieu de cela, le client envoie trois requêtes HTTP/443 à chaque tête de réseau qui apparaît dans une fusion de tous les profils. Ces sondes HTTP sont appelées requêtes ping OGS dans les journaux, mais, comme expliqué précédemment, ce ne sont pas des requêtes ping ICMP. Afin de s'assurer qu'une (re)connexion ne prend pas trop de temps, OGS sélectionne la passerelle précédente par défaut si elle ne reçoit aucun résultat de requête ping OGS dans les sept secondes. (Recherchez les résultats de la requête ping OGS dans le journal.)
Remarque : AnyConnect doit envoyer une requête HTTP à 443, car la réponse elle-même est importante et non une réponse réussie. Malheureusement, le correctif pour la gestion du proxy envoie toutes les requêtes en HTTPS. Voir l'ID de bogue Cisco CSCtg38672 - OGS devrait envoyer une requête ping avec les requêtes HTTP.
Remarque : si le cache ne contient pas de têtes de réseau, AnyConnect envoie d'abord une requête HTTP afin de déterminer s'il existe un proxy d'authentification et s'il peut traiter la requête. Ce n'est qu'après cette requête initiale qu'il lance les requêtes ping OGS afin de sonder le serveur.
******************************************
Date : 10/04/2013
Time : 14:00:44
Type : Information
Source : acvpnui
Description : Function: ClientIfcBase::startAHS
File: .\ClientIfcBase.cpp
Line: 2785
OGS was already performed, previous selection will be used.
******************************************
Remarque : contrairement à la commande HTTP-ping, qui effectue une publication HTTP simple, puis affiche le RTT et le résultat, les calculs OGS sont légèrement plus compliqués. AnyConnect envoie trois sondes pour chaque serveur et calcule le délai entre le SYN HTTP qu’il envoie et le FIN/ACK pour chacune de ces sondes. Il utilise ensuite le plus petit des deltas afin de comparer les serveurs et faire sa sélection. Ainsi, même si les requêtes ping HTTP sont une assez bonne indication du serveur choisi par AnyConnect, elles ne correspondent pas nécessairement. Le reste du document contient plus d'informations à ce sujet.
Une fois le calcul terminé, les résultats sont stockés dans le fichier preference_global. Il y a eu des problèmes avec ces données n'étant pas stockées dans le fichier avant.
Référez-vous à l'ID de bogue Cisco CSCtj84626 pour plus de détails.
La mise en cache OGS fonctionne sur une combinaison du domaine DNS et des adresses IP des serveurs DNS individuels. Il fonctionne comme suit :
Voici quelques scénarios d'échec que les utilisateurs peuvent rencontrer :
Lorsque OGS est utilisé, si la connectivité à la passerelle à laquelle les utilisateurs sont connectés est perdue, AnyConnect se connecte aux serveurs de la liste des serveurs de sauvegardeetnon à l’hôte OGS suivant. L'ordre des opérations est le suivant :
Remarque : lorsque l'administrateur configure la liste des serveurs de sauvegarde, l'éditeur de profil actuel permet uniquement à l'administrateur d'entrer le nom de domaine complet (FQDN) pour le serveur de sauvegarde, mais pas le groupe d'utilisateurs comme c'est possible pour le serveur principal :
L'ID de bogue Cisco CSCud84778 a été classé afin de corriger ceci, mais l'URL complète doit être entrée dans le champ d'adresse d'hôte pour le serveur de sauvegarde, et cela devrait fonctionner : https://<ip-address>/usergroup.
Pour qu'OGS puisse s'exécuter après une reprise, AnyConnect doit avoir établi une connexion lorsque la machine a été mise en veille. OGS après une reprise n'est effectuée qu'après le test de l'environnement réseau, qui est destiné à confirmer que la connectivité réseau est disponible. Ce test inclut un sous-test de connectivité DNS.
Cependant, si le serveur DNS abandonne les requêtes de type A avec une adresse IP dans le champ de requête, au lieu de répondre avec "name not found" (le cas le plus courant, toujours rencontré pendant les tests), alors l'ID de bogue Cisco CSCti20768 "La requête DNS de type A pour l'adresse IP doit être PTR pour éviter le délai d'attente" s'applique.
Lorsque des versions d'ASA antérieures à la version 9.1(3) sont utilisées, les captures sur le client indiquent un délai persistant dans la connexion SSL. Ce qui est remarqué est que le client envoie son ClientHello, puis l'ASA envoie son ServerHello. Il est normalement suivi d'un message Certificate (facultatif Certificate Request) et d'un message ServerHelloDone. L'anomalie est double :
Cela se produit en raison de l'interaction entre TCP slow-start et TCP delay-ACK. Avant ASA version 9.1(3), l'ASA utilise une taille de fenêtre de démarrage lent de 1, tandis que le client Windows utilise une valeur de retard d'accusé de réception de 2. Cela signifie que l'ASA n'envoie qu'un seul paquet de données jusqu'à ce qu'il obtienne un ACK, mais cela signifie également que le client n'envoie pas d'ACK avant de recevoir deux paquets de données. L'ASA expire après 120 ms et retransmet ServerHello, après quoi le client ACK les données et la connexion se poursuit. Ce comportement a été modifié par l'ID de bogue Cisco CSCug98113 afin que l'ASA utilise une taille de fenêtre de démarrage lent de 2 par défaut au lieu de 1.
Cela peut avoir un impact sur le calcul des OGS lorsque :
Dans de telles situations, le délai introduit par le retard-ACK pourrait être suffisant pour amener le client à sélectionner le mauvais ASA. Si cette valeur diffère entre le client et l'ASA, il peut y avoir encore des problèmes. Dans de telles situations, la solution de contournement consiste à ajuster la taille de la fenêtre Accusés de réception différés.
Fenêtres
Remarque : le bogue Cisco ID CSCum19065 a été enregistré pour rendre les paramètres de réglage TCP configurables sur l'ASA.
Le cas d'utilisation le plus courant est lorsque l'utilisateur à domicile exécute OGS la première fois, il enregistre les paramètres DNS et les résultats de la requête ping OGS dans le cache (par défaut, un délai d'attente de 14 jours). Lorsque l'utilisateur retourne chez lui le soir suivant, OGS détecte les mêmes paramètres DNS, les trouve dans le cache et ignore le test ping OGS. Plus tard, lorsque l'utilisateur se rend dans un hôtel ou un restaurant qui offre un service Internet, OGS détecte différents paramètres DNS, exécute les tests ping OGS, sélectionne la meilleure passerelle et enregistre les résultats dans le cache.
Le traitement est identique lorsqu'il reprend à partir d'un état suspendu ou mis en veille prolongée, si les paramètres de reprise d'OGS et d'AnyConnect le permettent.
Afin d'effacer le cache OGS et de réévaluer le RTT pour les passerelles disponibles, supprimez simplement le fichier Global AnyConnect Preferences du PC. L'emplacement du fichier varie en fonction du système d'exploitation :
C:\ProgramData\Cisco\Cisco AnyConnect Secure Mobility Client\preferences_global.xml
Note: in older client versions it used to be stored in C:\ProgramData\Cisco\Cisco
AnyConnect VPN Client
C:\Documents and Settings\AllUsers\Application Data\Cisco\Cisco AnyConnect VPN
Client\preferences_global.xml
/opt/cisco/anyconnect/.anyconnect_global
Note: with older versions of the client it used to be /opt/cisco/vpn..
/opt/cisco/anyconnect/.anyconnect_global
Note: with older versions of the client it used to be /opt/cisco/vpn..
Conseil : la capture n'étant utilisée que pour tester OGS, il est préférable d'arrêter la capture dès qu'AnyConnect sélectionne une passerelle. Il est préférable de ne pas effectuer une tentative de connexion complète, car cela peut rendre la capture de paquets incompréhensible.
Afin de vérifier pourquoi OGS a sélectionné une passerelle particulière, complétez ces étapes :
******************************************
Date : 10/04/2013
Time : 14:21:27
Type : Information
Source : acvpnui
Description : Function: CHeadendSelection::CSelectionThread::Run
File: .\AHS\HeadendSelection.cpp
Line: 928
OGS starting thread named gw2.cisco.com
******************************************
******************************************Il est important de prêter attention à ces trois valeurs, car elles doivent correspondre aux résultats de capture.
Date : 10/04/2013
Time : 14:31:37
Type : Information
Source : acvpnui
Description : Function: CHeadendSelection::CSelectionThread::logThreadPingResults
File: .\AHS\HeadendSelection.cpp
Line: 1137
OGS ping results for gw2.cisco.com: (219 218 132 )
******************************************
******************************************
Date : 10/04/2013
Time : 12:29:38
Type : Information
Source : vpnui
Description : Function: CHeadendSelection::logPingResults
File: .\AHS\HeadendSelection.cpp
Line: 589
*** OGS Selection Results ***
OGS performed for connection attempt. Last server: 'gw2.cisco.com'
Results obtained from OGS cache. No ping tests were performed.
Server Address RTT (ms)
gw1.cisco.com 302
gw2.cisco.com 132 <========= As seen, 132 was the lowest delay
of the three probes from the previous DART log
gw3.cisco.com 506
gw4.cisco.com 877
Selected 'gw2.cisco.com' as the optimal server.
******************************************
Inspectez la capture pour les sondes TCP/SSL utilisées afin de calculer RTT. Voyez combien de temps la requête HTTPS prend sur une seule connexion TCP. Chaque requête d’exploration doit utiliser une connexion TCP différente. Pour ce faire, ouvrez la capture dans Wireshark et répétez ces étapes pour chacun des serveurs :
Si, après l'analyse des captures, les valeurs RTT déterminées sont calculées et comparées aux valeurs affichées dans les journaux DART et que tout est trouvé pour correspondre, mais qu'il semble toujours que la mauvaise passerelle est sélectionnée, alors cela est dû à l'un des deux problèmes suivants :
Q : OGS fonctionne-t-il avec l'équilibrage de charge ?
R : Oui. OGS ne connaît que le nom du maître de cluster et l'utilise pour déterminer la tête de réseau la plus proche.
Q : OGS fonctionne-t-il avec les paramètres proxy définis dans le navigateur ?
R : OGS ne prend pas en charge les fichiers PAC (Auto Proxy ou Proxy Auto Config), mais prend en charge un serveur proxy codé en dur. En tant que tel, l'opération OGS ne se produit pas. Le message de journal approprié est : "OGS ne sera pas exécuté car la détection automatique de proxy est configurée."
Révision | Date de publication | Commentaires |
---|---|---|
1.0 |
26-Oct-2013 |
Première publication |