Traceflow injecte des paquets dans un port de vSphere Distributed Switch (VDS) et fournit différents points d'observation le long du chemin du paquet à mesure qu'il traverse des entités physiques et logiques (telles que des hôtes ESXi, des commutateurs logiques et des routeurs logiques) dans des réseaux superposés et sous-jacents. Cela vous permet d'identifier le(s) chemin(s) emprunté(s) par un paquet pour atteindre sa destination ou, à l'inverse, à quel endroit est déposé un paquet sur le chemin. Chaque entité signale le traitement du paquet en entrée et en sortie, ce qui vous permet de déterminer si des erreurs se produisent à sa réception ou à son transfert.

Gardez à l'esprit que Traceflow est différent d'une demande/réponse ping qui passe d'une pile de VM invitées à une autre. Traceflow observe un paquet marqué lorsqu'il traverse le réseau superposé. Chaque paquet est surveillé lorsqu'il traverse le réseau superposé jusqu'à ce qu'il atteigne la VM invitée de destination et qu'il puisse lui être remis. Toutefois, le paquet Traceflow injecté n'est jamais réellement remis à la VM invitée de destination. Cela signifie que Traceflow peut réussir même si la VM invitée est mise hors tension.

Traceflow prend en charge les types de trafic suivants :

  • Monodiffusion de couche 2
  • Monodiffusion de couche 3
  • Diffusion de couche 2
  • Multidiffusion de couche 2

Vous pouvez créer des paquets avec des champs d'en-tête et des tailles de paquet personnalisés. La source de Traceflow est toujours une carte réseau virtuelle (vNIC) de machine virtuelle. Le point de terminaison de destination peut être n'importe quel périphérique du réseau NSX superposé ou sous-jacent. Toutefois, vous ne pouvez pas sélectionner une destination à l'extérieur d'une passerelle Edge Services Gateway (ESG) NSX. La destination doit se trouver sur le même sous-réseau ou être accessible via des routeurs logiques distribués NSX.

L'opération Traceflow est considérée de couche 2 si les vNIC source et de destination se trouvent dans le même domaine de couche 2. Dans NSX, cela signifie qu'elles se trouvent sur le même identifiant réseau VXLAN (VNI ou ID de segment). C'est le cas, par exemple, lorsque deux machines virtuelles sont associées à un commutateur logique identique.

Si le pontage NSX est configuré, des paquets de couche 2 inconnus sont toujours envoyés au pont. Généralement, le pont transmet ces paquets à un VLAN et signale que le paquet Traceflow est livré. Un paquet signalé comme livré ne signifie pas nécessairement que le paquet de suivi a été remis à la destination spécifiée.

Pour le trafic en monodiffusion de l'instance de Traceflow de couche 3, les deux points de terminaison se situent sur deux commutateurs distincts et ont différents VNI et sont connectés à un routeur logique distribué (DLR).

Pour le trafic en multidiffusion, la source est une vNIC de machine virtuelle et la destination, une adresse de groupe de multidiffusion.

Les observations de Traceflow peuvent inclure des observations de paquets de Traceflow diffusés. L'hôte ESXi diffuse un paquet Traceflow s'il ne connaît pas l'adresse MAC de l'hôte de destination. Pour le trafic de diffusion, la source est une vNIC de machine virtuelle. L'adresse MAC de destination de couche 2 du trafic de diffusion est FF:FF:FF:FF:FF:FF. Pour créer un paquet valide pour l'inspection de pare-feu, l'opération Traceflow de diffusion nécessite une longueur de préfixe de sous-réseau. Le masque de sous-réseau permet à NSX de calculer une adresse réseau IP pour le paquet.

Attention : En fonction du nombre de ports logiques de votre déploiement, il se peut que des opérations Traceflow en multidiffusion ou de diffusion génèrent un volume de trafic élevé.

Vous pouvez utiliser Traceflow de deux manières : par l'intermédiaire de l'API et celle de l'interface utilisateur graphique. L'API est la même que celle que l'interface utilisateur graphique utilise, à la différence qu'elle vous permet de spécifier des paramètres précis dans le paquet, tandis que l'interface utilisateur graphique dispose de paramètres plus limités.

L'interface utilisateur graphique vous permet de définir les valeurs suivantes :

  • Le protocole : TCP, UDP, ICMP.
  • Durée de vie (TTL). La valeur par défaut est de 64 sauts.
  • Les numéros de ports source et destination TCP et UDP. Les valeurs par défaut sont de 0.
  • Les indicateurs TCP.
  • L'ID d'ICMP et le numéro de séquence. Les valeurs par défaut respectives sont de 0.
  • Un délai d'expiration, en millisecondes (ms), pour l'opération Traceflow. La valeur par défaut est de 10 000 ms.
  • La taille de trame de l'Ethernet. La valeur par défaut est 128 octets par trame. La taille de trame maximale est de 1 000 octets par trame.
  • Le codage de la charge utile. La valeur par défaut est Base64.
  • La valeur de la charge utile.