Présentation des tests de connectivité

Les tests de connectivité sont un outil de diagnostic qui vous permet de vérifier la connectivité entre les points de terminaison du réseau. Il analyse votre configuration et, dans certains cas, effectue une analyse du plan de données en direct entre les points de terminaison. Un point de terminaison est une source ou une destination de trafic réseau, telle qu'une VM, un cluster Google Kubernetes Engine (GKE), une règle de transfert de l'équilibreur de charge ou une adresse IP sur Internet.

Pour analyser les configurations réseau, Tests de connectivité simule le chemin de transfert attendu d'un paquet via votre réseau cloud privé virtuel (VPC), vos tunnels Cloud VPN ou vos rattachements de VLAN. Les tests de connectivité permettent également de simuler le chemin de transfert entrant attendu vers les ressources de votre réseau VPC.

Dans certaines configurations de connectivité, les tests de connectivité effectuent également une analyse du plan de données en direct. Cette fonctionnalité envoie des paquets sur le plan de données pour valider la connectivité et fournit des diagnostics de base relatifs à la latence à et la perte de paquets. En cas de compatibilité de la route avec la fonctionnalité, chaque test que vous exécutez inclut un résultat d'analyse du plan de données en direct.

Pour savoir comment créer et exécuter des tests pour différents scénarios, consultez Créer et exécuter des tests de connectivité.

L'API pour les tests de connectivité est l'API Network Management. Pour en savoir plus, consultez la documentation de l'API.

Pourquoi utiliser les tests de connectivité ?

Les tests de connectivité peuvent vous aider à résoudre les problèmes de connectivité réseau suivants :

  • Configurations incohérentes imprévues
  • Configurations obsolètes causées par des modifications de configuration de réseau ou des migrations
  • Erreurs de configuration de divers services et fonctions réseau

Lorsque vous testez des services gérés par Google, les tests de connectivité peuvent également vous aider à déterminer s'il y a un problème dans votre réseau VPC ou sur le réseau VPC appartenant à Google et utilisé pour les ressources de service.

Analyse des configurations par les tests de connectivité

Lors de l'analyse des configurations réseau, les tests de connectivité utilisent une machine d'état abstraite pour modéliser la manière dont un réseau VPC doit traiter les paquets.Google Cloud traite un paquet en plusieurs étapes logiques.

L'analyse peut prendre de nombreux chemins possibles

En raison de la diversité des services et fonctionnalités du réseau VPC compatibles avec l'analyse de configuration, un paquet de test passant une configuration de réseau VPC peut emprunter de nombreux chemins possibles.

Le schéma suivant montre un modèle de simulation du trafic de trace par l'analyse de configuration entre deux instances Compute Engine, l'une à gauche et l'autre à droite.

L'analyse dépend de votre infrastructure réseau

Selon vos configurations de réseau et de ressources Google Cloud , ce trafic peut passer par un tunnel Cloud VPN, un réseau VPC, un équilibreur de charge Google Cloud ou un réseau VPC appairé avant d'atteindre l'instance Compute Engine de destination.

Machine à états abstraits sur le réseau
Machine d'état abstraite du réseau (cliquez pour agrandir).

L'analyse suit l'un des nombreux états finis

Le nombre limité d'étapes entre des états discrets jusqu'à ce qu'un paquet ait été livré ou abandonné est modélisé en tant que machine d'état fini. Cette machine à états finis peut se trouver exactement dans un certain nombre d'états finis à la fois et avoir plusieurs états successeurs.

Par exemple, lorsque les tests de connectivité correspondent à plusieurs routes en fonction de la priorité des routes, Google Cloud peut choisir une route parmi plusieurs routes en fonction d'une fonction de hachage non spécifiée dans le plan de données. Si une route basée sur des règles est configurée, le test de connectivité achemine le paquet vers le prochain saut, qui est un équilibreur de charge interne.

Dans le cas précédent, la trace des tests de connectivité renvoie toutes les routes possibles, mais ne peut pas déterminer la méthode Google Cloud utilisée pour renvoyer les routes. En effet, cette méthode est interne à Google Cloudet est susceptible d'être modifiée.

Services gérés par Google

Les services gérés par Google, tels que Cloud SQL et Google Kubernetes Engine (GKE), allouent des ressources aux clients dans des projets et des réseaux VPC que Google possède et gère. Les clients ne sont pas autorisés à accéder à ces ressources.

L'analyse de configuration des tests de connectivité peut toujours exécuter un test et fournir un résultat de joignabilité global pour les services gérés par Google, mais elle ne fournit pas de détails sur les ressources testées dans le projet appartenant à Google.

Le schéma suivant montre un modèle de la façon dont l'analyse de configuration simule le trafic de trace d'une instance Compute Engine dans un réseau VPC client vers une instance Cloud SQL dans le réseau VPC appartenant à Google. Dans cet exemple, les réseaux sont connectés via l'appairage de réseaux VPC.

Comme pour un test standard entre deux instances Compute Engine, les étapes logiques incluent la vérification des règles de pare-feu de sortie pertinentes et la mise en correspondance de la route. Lorsque vous exécutez un test, l'analyse de configuration des tests de connectivité fournit des détails sur ces étapes. Toutefois, pour la dernière étape logique de l'analyse de la configuration dans le réseau VPC appartenant à Google, l'analyse ne fournit qu'un résultat d'accessibilité global. Les tests de connectivité ne fournissent pas de détails sur les ressources du projet appartenant à Google, car vous ne disposez pas des autorisations nécessaires pour les afficher.

Pour en savoir plus, consultez les exemples de test de la page Tester la connectivité vers et depuis les services gérés par Google.

Machine à états abstraits sur le réseau pour les services gérés par Google.
Machine d'état abstraite du réseau pour les services gérés par Google (cliquez pour agrandir).

Fonctionnement des tests de connectivité pour analyser le plan de données en direct

L'analyse du plan de données en direct teste la connectivité en envoyant plusieurs paquets de vérification TCP ou UDP du point de terminaison source vers la destination. Si la destination n'est pas une ressourceGoogle Cloud , la connectivité est testée entre le point de terminaison source et l'emplacement de périphérie du réseau.

Les résultats de l'analyse du plan de données en direct indiquent le nombre de vérifications envoyées, le nombre de vérifications ayant atteint la destination et l'état de joignabilité. Cet état est déterminé en fonction du nombre de vérifications remises avec succès, comme décrit dans le tableau suivant.

État Nombre de vérifications ayant atteint leur destination
Accessible Au moins 95 %
Inaccessible Aucun
Partiellement accessible Plus de 0 et moins de 95 %

En plus d'afficher le nombre de paquets ayant bien été distribués, l'analyse du plan de données en direct affiche également les informations médianes et les informations de latence à sens unique dans le 95e centile. Lorsque la destination est une adresse IP Internet, l'analyse du plan de données en direct envoie des vérifications et affiche les résultats pour chaque routeur de périphérie du réseau Google par lequel le trafic peut être acheminé.

L'analyse du plan de données en direct peut ne pas couvrir tous les chemins réseau possibles :

  • Si le point de terminaison de destination est un équilibreur de charge Google Cloud avec plusieurs backends, chaque vérification d'analyse du plan de données en direct est envoyée à un backend aléatoire. Certains backends peuvent être testés par de nombreuses vérifications, tandis que d'autres ne sont pas testés du tout.
  • En cas de routage ECMP (Equal-Cost Multi-Path), chaque sonde d'analyse du plan de données en direct est transmise par une route aléatoire. Certains chemins de routage peuvent être testés par de nombreuses vérifications, tandis que d'autres ne sont pas testés du tout.
  • Le nombre de vérifications de l'analyse du plan de données en direct ne dépend pas du nombre de chemins réseau existants, et il se peut qu'il n'y ait pas un nombre suffisant de vérifications de l'analyse du plan de données en direct pour tester chaque chemin possible.

Si vous constatez des écarts évidents entre les résultats de l'analyse de la configuration et ceux de l'analyse du plan de données en direct, consultez la page Résoudre les problèmes liés aux tests de connectivité.

Points de terminaison disponibles

Les tableaux des sections suivantes récapitulent les points de terminaison sources et de destination compatibles avec les tests de connectivité. Pour connaître lesGoogle Cloud configurations et fonctionnalités réseau que les tests de connectivité analysent lors de l'exécution des tests, consultez Configurations réseau compatibles.

Points de terminaison sources

Le tableau suivant récapitule les points de terminaison sources compatibles avec l'analyse de la configuration et du plan de données en direct des tests de connectivité.

Point de terminaison source Analyse de la configuration Analyse du plan de données en direct
Instance de VM Compute Engine
(uniquement pour les instances en cours d'exécution)
Plan de contrôle du cluster GKE
Pod GKE
Service Cloud Run 1
Job Cloud Run 1
Cloud Run Functions (1re génération) 1
Environnement standard App Engine 1
Instance Cloud SQL
Connexion privée Database Migration Service
Adresse IP interne dans un réseau VPC2
(uniquement pour les ressources Google Cloud compatibles)
Adresse IP externe3
(uniquement pour les ressources Google Cloud compatibles)
Adresse IP interne dans un réseau non-Google Cloud (connecté à un réseau VPC via Cloud Interconnect, Cloud VPN ou un appareil de routeur)
1 Compatible lorsque le point de terminaison source est configuré avec l'accès au VPC sans serveur.
2 : peut être une adresse IP non attribuée ou une adresse IP attribuée à une ressource Google Cloud dans ce tableau. Lorsque l'adresse IP est attribuée à une ressource, l'analyse du plan de données en direct est disponible si les tests de connectivité sont compatibles avec la ressource. L'analyse du plan de données en direct n'est pas disponible pour les adresses IP non attribuées.
3 Peut être une adresse IP Internet, une adresse IP pour les API et services Google globaux, ou une adresse IP externe attribuée à une ressource Google Cloud dans ce tableau. Lorsque l'adresse IP est attribuée à une ressource, l'analyse du plan de données en direct est disponible si les tests de connectivité sont compatibles avec la ressource. L'analyse du plan de données en direct n'est pas disponible pour les adresses IP Internet ni pour les adresses IP des API et services Google globaux.

Les considérations supplémentaires suivantes s'appliquent aux points de terminaison sources :

  • Pour les instances de VM Compute Engine, l'analyse de plan de données en direct n'est disponible que pour les instances en cours d'exécution. Il n'est pas compatible lorsque les points de terminaison source et de destination sont la même instance de VM.
  • Pour les plans de contrôle de cluster GKE et les instances Cloud SQL, les tests de connectivité n'acceptent que les points de terminaison qui n'utilisent pas Private Service Connect.
  • Cloud Run Functions, anciennement Cloud Functions (2nd gen), n'est pas compatible. Toutefois, vous pouvez tester la connectivité à partir d'une fonction Cloud Run en créant un test de connectivité pour la révision Cloud Run sous-jacente. Une révision Cloud Run est créée chaque fois qu'une fonction Cloud Run est déployée.

Points de terminaison de destination

Le tableau suivant récapitule les points de terminaison de destination compatibles avec l'analyse de la configuration et du plan de données en direct des tests de connectivité.

Point de terminaison de destination Analyse de la configuration Analyse du plan de données en direct
Instance de VM Compute Engine
(uniquement pour les instances en cours d'exécution)
Plan de contrôle du cluster GKE
(uniquement pour les adresses IP internes)
Pod GKE
Équilibreur de charge d'application interne et externe
Équilibreur de charge réseau proxy interne et externe
Équilibreur de charge réseau passthrough interne
Équilibreur de charge réseau passthrough externe
Point de terminaison Private Service Connect
(uniquement pour les services publiés avec un équilibreur de charge réseau passthrough interne du producteur)
Instance Cloud SQL
(uniquement pour les adresses IP internes)
Instance Memorystore pour Redis
Memorystore for Redis Cluster
Adresse IP interne dans un réseau VPC1
(uniquement pour les ressources Google Cloud compatibles)
Adresse IP externe2
(uniquement pour les adresses IP Internet et les ressources Google Cloudcompatibles)
Adresse IP interne dans un réseau non-Google Cloud (connecté à un réseau VPC via Cloud Interconnect)
Adresse IP interne dans un réseau non-Google Cloud (connecté à un réseau VPC via Cloud VPN ou un appareil de routeur)
1 Peut être une adresse IP attribuée à une ressource Google Cloud de ce tableau, y compris l'adresse IP d'une règle de transfert. L'analyse du plan de données en direct est disponible si les tests de connectivité sont compatibles avec la ressource.
2 Peut être une adresse IP Internet, une adresse IP pour les API et services Google globaux, ou une adresse IP externe attribuée à une ressource Google Cloud de ce tableau, y compris l'adresse IP d'une règle de transfert. L'analyse du plan de données en direct est disponible pour les adresses IP Internet et pour les ressources Google Cloud si les tests de connectivité sont compatibles avec la ressource. L'analyse du plan de données en direct n'est pas disponible pour les adresses IP des API et services Google globaux.

Les considérations supplémentaires suivantes s'appliquent aux points de terminaison de destination :

  • Pour les instances de VM Compute Engine, l'analyse de plan de données en direct n'est disponible que pour les instances en cours d'exécution. Il n'est pas compatible lorsque les points de terminaison source et de destination sont la même instance de VM.
  • Les tests de connectivité sont compatibles avec les instances répliquées de serveur externe Cloud SQL définies par des adresses IP.
  • Pour les adresses IP Internet et les adresses IP internes d'un réseau non-Google Cloud connecté via Cloud Interconnect, l'analyse du plan de données en direct teste la connectivité jusqu'à l'emplacement de périphérie du réseau ou au rattachement de VLAN pour Cloud Interconnect, respectivement.

Remarques et contraintes

Tenez compte des considérations suivantes lorsque vous décidez d'utiliser les tests de connectivité.

  • L'analyse de configuration effectuée par les tests de connectivité est entièrement basée sur les informations de configuration des ressources Google Cloud et peut ne pas représenter l'état réel du plan de données d'un réseau VPC.
  • Bien que les tests de connectivité acquièrent certaines informations de configuration dynamique, telles que l'état du tunnel Cloud VPN et les routes dynamiques sur Cloud Router, ils n'accèdent pas à l'état de l'infrastructure de production interne de Google et des composants du plan de données, et ne le gèrent pas.
  • L'état Packet could be delivered d'un test de connectivité ne garantit pas que le trafic peut passer par le plan de données. Le but du test est de valider les problèmes de configuration pouvant entraîner une baisse de trafic.

Pour les routes compatibles, les résultats de l'analyse du plan de données en direct complètent les résultats de l'analyse de la configuration en vérifiant si les paquets transmis arrivent à destination.

Les tests de connectivité ne reconnaissent pas les réseaux en dehors de Google Cloud

Les réseaux externes sont définis comme suit :

  • Réseaux sur site résidant dans votre centre de données ou autre installation dans laquelle vous exploitez vos périphériques matériels et applications logicielles
  • Autres fournisseurs de cloud sur lesquels vous exécutez des ressources
  • Hôte sur Internet qui envoie du trafic vers votre réseau VPC

Les tests de connectivité n'effectuent pas le suivi des connexions de pare-feu

Le suivi de connexion des pare-feu VPC stocke des informations sur les connexions nouvelles et établies et permet d'autoriser ou de limiter le trafic suivant en fonction de ces informations.

L'analyse de configuration des tests de connectivité n'est pas compatible avec le suivi de la connexion du pare-feu, car la table de connexion du pare-feu se trouve dans le plan de données d'une instance Compute Engine et est inaccessible. Cependant, l'analyse de configuration peut simuler le suivi des connexions en autorisant une connexion de retour qui serait normalement refusée par une règle de pare-feu d'entrée, à condition que la connexion sortante soit initiée par les tests de connectivité.

L'analyse du plan de données en direct n'est pas compatible avec le test du suivi de la connexion du pare-feu.

Les tests de connectivité ne peuvent pas tester les instances Compute Engine configurées pour modifier le comportement de transfert

Les tests de connectivité ne peuvent pas tester les instances Compute Engine qui ont été configurées pour agir dans le plan de données en tant que routeurs, pare-feu, passerelles NAT ou VPN. Ce type de configuration rend difficile l'évaluation de l'environnement s'exécutant sur l'instance Compute Engine. De plus, l'analyse du plan de données en direct n'est pas compatible avec ce type de scénario de test.

Les délais de résultat des tests de connectivité peuvent varier

L'obtention des résultats des tests de connectivité peut prendre de 30 secondes à 10 minutes. La durée d'un test dépend de la taille de la configuration de votre réseau VPC et du nombre de ressources Google Cloud que vous utilisez.

Le tableau suivant montre les temps de réponse attendus pour tous les utilisateurs exécutant un test par rapport à un exemple de configuration dans une requête. Cette configuration contient des instances Compute Engine, un tunnel Cloud VPN et des équilibreurs de charge Google Cloud.

Temps de réponse par requête
Envergure du projet Nombre de ressources Google Cloud Latence de réponse
Petit projet Moins de 50 60 secondes pour 95 % des requêtes de tous les utilisateurs
Projet moyen Supérieur à 50, mais inférieur à 5 000 120 secondes pour 95 % des requêtes de tous les utilisateurs
Grand projet Supérieur à 5 000 600 secondes pour 95 % des requêtes de tous les utilisateurs

L'analyse du plan de données en direct n'est pas conçue pour la surveillance continue

L'analyse du plan de données en direct effectue une vérification unique de la connectivité réseau à des fins de diagnostic. Pour une surveillance continue de la connectivité et de la perte de paquets, utilisez Performance Dashboard.

Compatibilité avec VPC Service Controls

VPC Service Controls fournit une sécurité supplémentaire pour les tests de connectivité afin de réduire le risque d'exfiltration de données. À l'aide de VPC Service Controls, vous pouvez ajouter des projets aux périmètres de service afin de protéger les ressources et les services des requêtes provenant de l'extérieur du périmètre.

Pour en savoir plus sur les périmètres de service, consultez la page Informations sur les périmètres de service et configuration de la documentation de VPC Service Controls.

Étapes suivantes