Traceflow consente di inserire un pacchetto nella rete e monitorarne il flusso al suo interno. Questo flusso consente di monitorare la rete e identificare i problemi, ad esempio i colli di bottiglia o le interruzioni delle attività.

Traceflow consente di identificare il percorso (o i percorsi) che un pacchetto segue per raggiungere la sua destinazione o, viceversa, dove un pacchetto viene rilasciato durante la procedura. Ogni entità segnala la gestione dei pacchetti in input e output, in modo da poter determinare se si verificano problemi durante la ricezione o l'inoltro del pacchetto.

L'interfaccia di NSX Manager visualizza graficamente la route di tracciamento in base ai parametri impostati (tipo di indirizzo IP, tipo di traffico, origine e destinazione). Questa pagina di visualizzazione consente inoltre di modificare i parametri, ritrasmettere il Traceflow o crearne uno nuovo.
Figura 1. Diagramma di Traceflow di esempio
Esempio di Traceflow.

Che cos'è Traceflow?

Traceflow non è lo stesso di una richiesta/risposta ping che passa dallo stack di una macchina virtuale guest all'altro. Traceflow osserva un pacchetto contrassegnato mentre attraversa la rete overlay e ogni pacchetto viene monitorato mentre supera la rete overlay finché non raggiunge una macchina virtuale guest di destinazione o un uplink Edge. Si noti che il pacchetto immesso contrassegnato non viene mai recapitato effettivamente alla macchina virtuale guest di destinazione.

Traceflow può essere utilizzato nei nodi di trasporto e supporta entrambi i protocolli IPV4 e IPv6, tra cui: ICMP, TCP, UDP, DHCP, DNS e ARP/NDP.

Parametri di Traceflow

È possibile creare pacchetti con campi di intestazione e dimensioni dei pacchetti personalizzati. L'origine o la destinazione per il Traceflow possono essere una porta del commutatore logico, una porta di uplink del router logico, un CSP o una porta DHCP. L'endpoint di destinazione può essere qualsiasi dispositivo nell'overlay o nell'underlay di NSX. Tuttavia, non è possibile selezionare una destinazione a nord di un nodo NSX Edge. La destinazione deve trovarsi nella stessa subnet o essere raggiungibile tramite i router logici distribuiti di NSX.

Se è configurato il bridging di NSX, i pacchetti con indirizzi MAC di destinazione sconosciuti vengono sempre inviati al bridge. In genere, il bridge inoltra questi pacchetti a una VLAN e segnala il pacchetto Traceflow come consegnato. Un pacchetto segnalato come consegnato non significa necessariamente che il pacchetto di tracciamento sia stato recapitato alla destinazione specificata.

Per un pacchetto Traceflow unicast, è possibile osservare la replica del pacchetto e/o il flooding nel Traceflow.

  • Un pacchetto Traceflow viene replicato se il commutatore logico non conosce i TEP a cui il pacchetto è destinato.
  • Un pacchetto Traceflow viene inoltrato (flood) se VDS non conosce le porte del commutatore virtuale a cui il pacchetto è destinato.

È possibile specificare pacchetti multicast e broadcast come pacchetti Traceflow.

  • Per il traffico multicast, l'origine è una vNIC della macchina virtuale o una porta logica e la destinazione è un indirizzo IP multicast.
  • Per il traffico broadcast, l'origine è una vNIC della macchina virtuale o una porta logica e l'indirizzo MAC di destinazione di livello 2 è FF:FF:FF:FF:FF.

Per creare un pacchetto valido per l'ispezione del firewall, l'operazione di Traceflow di broadcast richiede la lunghezza del prefisso della subnet. La subnet mask consente a NSX di calcolare un indirizzo di rete IP per il pacchetto. Un pacchetto Traceflow multicast o broadcast può essere distribuito a più vNIC di macchine virtuali o uplink Edge, determinando la generazione di più istanze consegnate.