Apri la finestra di stato del client e i numeri sembrano rassicuranti: i byte salgono, il tunnel è connesso. Chiudi la finestra e l'applicazione di ufficio continua a fallire, il che significa che i contatori hanno risposto a una domanda che nessuno aveva posto. Contare i byte su un'interfaccia misura il traffico in quel punto di osservazione e nulla di più. Passa dal numero che stai guardando al livello di cui riferisce, e poi al risultato che l'applicazione ti ha effettivamente dato.

Scegli l'interfaccia prima di scegliere il numero

Parti da dove viene mostrato il numero e leggi l'etichetta accanto. Una finestra client può mostrare i totali di sessione, un'interfaccia tunnel può mostrare i byte dell'IP interno e un adattatore fisico può mostrare i byte esterni cifrati; tre contatori diversi che per caso sono espressi in byte. Sulla riga di comando, netstat -ibn stampa una riga per indirizzo su ciascuna interfaccia, quindi un tunnel può comparire più volte. Abbina la riga all'interfaccia che il client possiede davvero e confermala con la rotta scelta dalla destinazione. Un dispositivo chiamato utun può appartenere alla VPN, a un altro tunnel o a qualcosa che non ti riguarda.

Non sostituirlo con un contatore Wi-Fi solo perché è più facile da leggere. Un punto di osservazione diverso risponde a una domanda diversa.

Prendi un delta, non un totale dall'avvio

Leggi la riga, fai una piccola richiesta autorizzata, poi rileggi la stessa riga. La differenza è la prova, perché un totale dall'avvio include tutto ciò che la macchina ha fatto. Mantieni l'intervallo breve così il traffico di fondo ha meno occasioni di contaminarlo. Su una macchina occupata, nettop può attribuire il throughput a un processo, il che restringe il campo prima di tornare ai contatori di interfaccia.

Accetta che la differenza non sia pulita. Posta, aggiornamenti e i messaggi di keepalive del client contribuiscono tutti, quindi tratta il numero come un limite superiore e non come una misura. Se l'applicazione è stata l'unica cosa che hai fatto durante l'intervallo, il limite di solito è abbastanza stretto da essere utile.

I contatori interni ed esterni misurano cose diverse

L'adattatore fisico conta i pacchetti cifrati comprese le loro intestazioni esterne, mentre l'interfaccia del tunnel contabilizza il payload che riceve o consegna. Sommare i due conta due volte un solo trasferimento. L'overhead, le ritrasmissioni e l'incapsulamento rendono impossibile anche una semplice uguaglianza.

Due contatori che si muovono in direzioni opposte sono una scoperta, non una contraddizione. Di solito significa che il traffico è entrato in uno strato e non ha mai lasciato l'altro.

Abbina il contatore al risultato dell'applicazione

Un totale ricevuto può salire per le chiacchiere del protocollo mentre il servizio che volevi continua a fallire. Un aumento della trasmissione dice ancora meno: dimostra che il kernel ha accettato un pacchetto, non che qualcosa abbia risposto.

Annota il risultato esatto accanto ai contatori: risoluzione dei nomi fallita, connessione scaduta, TLS rifiutato o una risposta HTTP arrivata. Sono quattro guasti diversi e solo uno riguarda il tunnel. Se la prova deve andare oltre, il punto di osservazione successivo è il gateway o il confine del servizio, dove qualcuno può vedere se la richiesta è arrivata. Reimpostare le preferenze di rete del Mac distrugge lo stato che stavi misurando e non ti dice nulla.

Scrivi la nota che serve alla persona successiva

Nome dell'interfaccia, etichetta del contatore, intervallo, valori prima e dopo e risultato dell'applicazione. Basta a un collega per riprodurre l'osservazione senza ripetere il tuo pomeriggio. Aggiungi la versione del client e quella di macOS, perché la semantica dei contatori può cambiare tra versioni.

Salta la cattura completa dei pacchetti e il dump del sistema. Servono raramente per spiegare quale contatore locale si è mosso durante una richiesta, e rallentano chiunque legga il rapporto. Se il client espone le proprie statistiche, cita la sua etichetta alla lettera invece di tradurla nella tua. Lo scopo della nota è registrare cosa è stato misurato, non discutere cosa significa.

Articoli correlati