Menu Chiudi

Digital Experience e Packets Loss, qual’è la relazione ?

Introduzione

La Digital Experience, (vedi articoli specifici nel blog), è spesso valutata utilizzando metriche ottenute dall’analisi passiva del traffico, in particolare lo User Response Time è la metrica che ne esprime la sintesi.

Lo User Response Time ha l’obiettivo di evidenziare ciò che un utente percepisce, partendo dal momento in cui inizia una transazione sino al momento in cui quella transazione si conclude, quindi indica il tempo complessivo per l’esecuzione di una specifica transazione,.

Lo User Response Time è costituito dalle seguente sotto-metriche :
– Connection Setup Time
– Request Payload Transfer Time
– Response Payload Transfer Time
– Server Response Time
– Retransmission Delay

Il tempo complessivo è dunque influenzato dal contributo di tutte le latenze che si esprimono tra il client e l’applicazione, latenze che possono variare nel tempo per svariati motivi e che possono impattare lo User Response Time in maniera più o meno significativa.

Molto spesso le aziende/organizzazioni adottano soluzioni specifiche di APM a livello applicativo e soluzioni di network monitor che oltre ad analizzare il traffico di rete, ne misurano anche il packet loss ma non si preoccupano di correlare questi valori con quanto gli utenti percepiscono, ovvero analizzare l’incidenza degli stessi sullo User Response Time.

Stabilire delle soglie per ottenere un alert in caso di eventuale superamento, va bene ma non basta ad intercettare un problema sulla percezione che possono avere gli utenti nell’utilizzo di una specifica applicazione.
La percentuale di pacchetti persi/ritrasmetti di per se non indica il delay aggiuntivo che viene introdotto perché non considera la tipologia e la dimensione dei pacchetti persi.

Esempio pratico

Utilizziamo quale esempio, l’applicazione www.netperf.it, ovvero l’acceso al mio sito web istituzionale, misurato utilizzando la soluzione Alluvio AppResponse di Riverbed.

Il seguente grafico evidenzia la percentuale dei pacchetti totali ritrasmessi, in particolare evidenzia che il picco è di 4,21% alle 10:59 AM.

% Total Retransmission
Response Time Composition Chart

Grazie alle funzionalità di REST API, importiamo le metriche di interesse in un analytics come OpenSearch ed il grafico seguente evidenzia lo User Response Time.

User Response Time

Ovvero : 1.967,64 ms complessivi
– Connection Setup Time : 58,72 ms (3%)
– Request Payload Transfer Time : 1.552,50 ms (79%)
– Response Payload Transfer Time : 191,57 ms (9,7%)
– Server Response Time : 10,63 ms (0,54%)
– Retransmission Delay : 154,22 ms (7,8%)

Ueser Response Time Composition
User Response Time Composition Trending

E’ facilmente intuibile, basta guardare il grafico, come la metrica Retransmission Delay evidenzi valori significativi alle 10:59, alle 11:16 e alle 11:20, ma tramite i grafici seguenti, che ne evidenziano il valore nonchè l’incidenza, il tutto risulta molto più facilmente comprensibile.

Retransmission Delay Trending
Incidence Retransmission Delay over User Response Time Trending

In particolare :

Time    % Total Retrans.      Retrans. Delay        Incidence
10:59        4,21 %                2.488 ms            80%
11:16        2,14 %                1.934 ms            59% 
11:20        1,81 %                1.977 ms            60%  

Conclusioni

Possiamo affermare quanto segue :
– la percentuale massima di ritrasmissioni è stata del 4,21%
– Il delay massimo introdotto dalle ritrasmissioni è stato di 2,488 sec
– L’incidenza massima del delay per ritrasmissioni sullo User Response Time è stata del 80%

Non è sufficiente monitorare la sola percentuale di packet loss, perchè il valore espresso non è contestualizzato all’applicazione ed alla tipologia e dimensione dei pacchetti coinvolti.

Una corretta strategia deve contemplare oltre che una soluzione di APM a livello applicativo anche una che sia in grado di correlare metriche tipicamente di network con la digital experience percepita dagli utenti, mediante una efficace analisi passiva del traffico.