27. 04. 2017 Luca Di Stefano Uncategorized

Chi si sta mangiando la banda? Scoprilo con ntopng

Who is eating my bandwidth

Chi riesce a sapere veramente quali sono i protocolli utilizzati nella rete locale? Solitamente con i netflow si può distinguere il traffico attraverso le porte L4 (80=http,443=https,..) ma non è più sufficiente. Alcune applicazioni usano invece porte dinamiche (vedi nfs, ftp, routed sap, …), altre le porte stesse, come si può allora essere in grado di distinguerle?

Le applicazioni crescono e cambiano molto velocemente (come del resto qualsiasi componente in ambito IT) e non è semplice mantenere i sistemi di analisi di rete allineati alle novità più recenti.

Ntopng è in grado di distinguere automaticamente le applicazioni che stanno generando traffico senza dover impostare filtri.

Come è possibile capire quali sono le applicazioni che si stanno mangiando la banda?

Con ntopng si può disporre di una panoramica semplice e chiara dei protocolli delle applicazioni: sono sufficienti un paio di clic.

Selection_577

Ok ma… chi sta generando traffico? Facile, accediamo ai top downloaders e ordiniamoli per capacità di trasmissione:

Selection_581

È semplice quindi scoprire gli unexpected talkers.

Ntopng fornisce diverse statistiche su sotto reti, sistemi autonomi, matrici di flussi, geolocalizzazioni e molti altri. Se vengono abilitati plugin specifici si potranno vedere informazioni dettagliate sui protocolli come SIP, RTP, HTTP,BGP, DHCP, DNS, IMAP, RADIUS.

Ecco l’esempio di un flusso di protocollo RTP per la comunicazione vocale. Abbiamo tutte le metriche sulle prestazioni: jitter, pcchetti persi, tempo di interarrivo massimo, MOS, R-Factor.

Selection_583

Come mantenere tutto sotto controllo?

La soluzione non offre solo un frontend attraente per le statistiche sul traffico, ma anche un motore per mantenere costantemente la rete sotto controllo, definire allarmi e ricevere notifiche attraverso l’integrazione con NetEye.

Selection_582

Ci sono soglie standard che si possono impostare attraverso la GUI, per esempio i bytes throughput per ogni singolo host per poi ricevere i rispettivi allarmi in NetEye.

Selection_579

È possibile definire un host ntopng (example: ntopng-host) in NetEye e un servizio con un controllo passivo (per esempio: NtopngAlert). Poi si possono abilitare le preferenze per gli allarmi ntopng ed eseguire l’integrazione Nagios (come descritto in questo articolo).

Esistono allarmi predefiniti su problemi conosciuti come syn floods, connessioni con host nelle liste nere. Selection_586

Gli allarmi di default non sono mai abbastanza…

Grazie ad una Lua API è possibile definire regole completamente personalizzate per generare allarmi aggiuntivi, che possono ovviamente essere gestiti e monitorati con NetEye.

Consideriamo un esempio: se si vuole essere sicuri che alcune applicazioni specifiche, che potrebbero essere OneDrive, DropBox o altre, non si stanno mangiando troppa banda internet, sarà sufficiente scrivere una Lua callback che legge le statistiche sul traffic l7 e genera un allarme in caso di consumo eccessivo della banda.

In caso di necessità i nostri consulenti possono aiutarvi nel definire/implementare le regole Lua. Buon divertimento! 😉

Luca Di Stefano

Luca Di Stefano

Solution Architect at Würth Phoenix
Hi everyone, I’m Luca, graduated in electrical engineering from the University of Bologna. I am employed by Würth Phoenix since its foundation. I worked mainly as enterprise architect and quality assurance engineer. Previously I was involved in systems measurement and embedded systems programming. I have gained experience on Unix (Solaris, HPUX), Windows, and C, C + +, Java. I personally contribute to the Open Source community as beta tester and developer. During my spare time I love piloting airplanes fly over the beautiful Alps. I practice many sports: tennis, broomball, skiing, alpine skiing, volleyball, soccer, mountain biking, middle distance, none have a sample but the competition excites me! I love hiking, tracking and traveling.

Author

Luca Di Stefano

Hi everyone, I’m Luca, graduated in electrical engineering from the University of Bologna. I am employed by Würth Phoenix since its foundation. I worked mainly as enterprise architect and quality assurance engineer. Previously I was involved in systems measurement and embedded systems programming. I have gained experience on Unix (Solaris, HPUX), Windows, and C, C + +, Java. I personally contribute to the Open Source community as beta tester and developer. During my spare time I love piloting airplanes fly over the beautiful Alps. I practice many sports: tennis, broomball, skiing, alpine skiing, volleyball, soccer, mountain biking, middle distance, none have a sample but the competition excites me! I love hiking, tracking and traveling.

Leave a Reply

Your email address will not be published. Required fields are marked *

Archive