270 likes | 392 Views
Applicazione di metodi statistici alla classificazione del traffico in reti dati. Alessandro Finamore. Marco Mellia Fabio Neri. Relatori:. Il problema della classificazione. Traffico generico. Internet Service Provider. Qual è il protocollo della comunicazione ?. 1/17.
E N D
Applicazione di metodi statistici alla classificazione del traffico in reti dati Alessandro Finamore Marco Mellia Fabio Neri Relatori:
Il problema della classificazione Traffico generico Internet Service Provider Qual è il protocollo della comunicazione? 1/17
Il problema della classificazione Skype Bittorrent ? ? Porta: Porta: Internet Service Provider ? Payload: “bittorrent” Payload: Gtalk eMule ? ? Porta: Porta: 4662/4672 Payload: Payload: E4/E5 protocollo RTP 2/17
Classificazione statistica Fase 3 Fase 1 Fase 2 Testing Traffico noto Statistiche Predizione • Caratterizzazione statistica delle comunicazioni • Sviluppo del sistema di predizione • Analisi degli errori di classificazione 3/17
Classificazione statistica Fase 3 Fase 1 Fase 2 Testing Traffico noto Statistiche Predizione • Caratterizzazione statistica delle comunicazioni • Test c 2 4/17
Chunking e Frequenze dei valori assunti dai chunk Distribuzione uniforme UDP header Primi N byte C chunks da b bits c c c 2 2 2 [ ] , … , 1 C Vettore di statistiche 5/17
Esempio di chunk di 4bit random 6/17
Esempio di chunk di 4bit deterministico random 6/17
Esempio di chunk di 4bit deterministico mixed random 6/17
Classificazione statistica Fase 3 Fase 1 Fase 2 Testing Traffico noto Statistiche Predizione • Caratterizzazione statistica delle comunicazioni • Test • Sviluppo del sistema di predizione • Distanza geometrica tra punti in uno spazio c 2 8/17
Classificazione geometrica [ ] , … , j 1 C Iperspazio classe Regioni di classificazione ? classe non nota classe Distanza Euclidea Support Vector Machine c c c c 2 2 2 2 i 9/17
Distanza Euclidea j • Centroide • media aritmetica c c 2 2 i 10/17
Distanza Euclidea j • Centroide • media aritmetica Veri Neg. “lontani” Veri Pos. “vicini” c c 2 2 i 10/17
Distanza Euclidea j • Centroide • media aritmetica Falsi Positivi • Ipersfera c c 2 2 i 10/17
Distanza Euclidea j • Centroide • media aritmetica • Ipersfera Falsi Negativi c c 2 2 i 10/17
Distanza Euclidea j • Centroide • media aritmetica • Ipersfera • min { Falsi Pos. } • min { Falsi Neg. } • Affidabilità • distanza euclidea c c 2 2 i 10/17
Support Vector Machine • Kernel functions • Clusterizzazione più • semplice Spazio dei campioni (dim. D) Kernelfunction Spazio delle feature (dim. ∞) 11/17
Support Vector Machine Support vectors • Kernel functions • Clusterizzazione più • semplice • Margine • Massimizzazione • Bordo di classificazione • Support Vector • LibSVM Support vectors 11/17
Support Vector Machine • Kernel functions • Clusterizzazione più • semplice • Margine p ( classe ) • Massimizzazione • Bordo di classificazione • Support Vector • LibSVM • Classificazione • Distanza dal bordo • Probabilità 11/17
Classificazione statistica Fase 3 Fase 1 Fase 2 Testing Traffico noto Statistiche Predizione • Caratterizzazione statistica delle comunicazioni • Test • Sviluppo del sistema di predizione • Distanza geometrica tra punti in uno spazio c 2 • Analisi degli errori di classificazione • Analisi dei Falsi Positivi e Falsi Negativi 12/17
Analisi delle tracce dati Internet Traccia circa 1 giorno di cattura RTP eMule DNS other Traffico noto Traffico generico 20 GByte di traffico UDP Modello • Training + Other Falsi Negativi • Traffico noto Falsi Positivi • Traffico generico Fastweb 13/17
Errori % per alcuni casi critici Distanza euclidea SVM Traf. noto (Falsi Neg.) Traf. gen. (Falsi Pos.) • Le SVM descrivono bene la geometria delle nuvole • … ma è difficile eliminare lo spazio non rappresentativo • Introduzione di una classe complementare 14/17
Errori % per alcuni casi critici SVM con classe complementare Distanza euclidea SVM 15/17
Prestazioni • Effettuate solo analisi offline • Valutazione puntuale difficile • Il calcolo del può richiedere molta memoria • Numero di bit per chunk • Numero di chunk 2 c • La tempistica di predizione è lineare • Numero di bit per chunk • Numero di chunk • Numero di protocolli • Numero di Support Vector • Attraverso ottimizzazione mirate è possibile ottenere • risultati anche online 16/17
Conclusioni • Il è un utile operatore di classificazione • Un semplice classificatore a distanza euclidea può • essere efficace • Le SVM danno risultati migliori ma richiedono l’uso di una • classe complementare c 2 17/17