Facoltà di Ingegneria Corso di Studi in Ingegneria delle Telecomunicazioni Relatore Ch.mo prof. A. Pescapè Correlatori Ch.mo dott. M. Brescia Ing. G. Aceto Candidata Luna Di Colandrea N0/2 Anno Accademico 202/20
Analisi e monitoraggio del traffico di rete : Approcci di Machine Learning alla classificazione del traffico Studio di due innovativi algoritmi di Machine Learning - FMLPGA (Fast Multi Layer Perceptron with Genetic Algorithm) - GAME (Genetic Algorithm Modeling Experiment) Analisi e pre-processing delle tracce di traffico a livello pacchetto utilizzate Progetto e esecuzione di esperimenti sui due algoritmi Discussione dei risultati ottenuti 2
Con il termine classificazione del traffico di rete si intende l associazione ad una sequenza di pacchetti scambiati tra due dispositivi e due rispettive porte a livello trasporto, della presunta applicazione che li ha generati Importanza del tema sicurezza informatica servizi differenziati Studio di reti nei contesti reali Pianificazione e gestione di risorse di sistemi di TLC Principali tecniche Port-based Inspection of packet payload Flow-based ML based Ispezione dei 6-bit del numero di porta del livello Trasporto Pro: - Semplicità Contro: - porte non standardizzate -Tecniche per aggirare filtri o firewall -NAT -FTP Controllo bit a bit del carico del pacchetto alla ricerca delle firme del protocollo Pro: - precisione Contro: -privacy -crittografiae offuscamento del protocollo - nuove applicazioni - grandi pacchetti Controllo della sola intestazione, in cui sono contenuti i valori caratteristici Pro: - no violazione della privacy Contro: -Richiedela trasmissione di tutti i pacchetti del flusso Imparanoda dati empirici ad associare automaticamente ad un oggetto la classe di traffico Pro: - generalizzazione, - indipendenza da modelli teorici o tecniche complesse di trattamento dati Contro: -Dipendenzadalla disponibilità di tracce per l addestramento
algoritmi di ottimizzazione auto-adattativi Applicazione Classificazione: associazione ad un campione della corrispondente etichetta(o classe) Le fasi di classificazione : -Fase di Training -Fase di Testing -Fase di valutazione Paradigmi di apprendimento -MLsupervisionato -ML non supervisionato Esempi di metodologie di apprendimento supervisionato Perceptron: neurone di output e N neuroni di input(x) Multi-layer Perceptron :rete composta da uno o più livelli nascosti di neuroni, totalmente connessi tra i livelli di input e output - MSE & back propagation
L algoritmo genetico è un metodo di computazione ed ottimizzazione dei dati ispirato al processo evolutivo darwiniano. Fasi di esecuzione: ) Inizializzazione della popolazione 2) Selezione degli output ) Confronto dei risultati ) Evoluzione degli individui FMLPGA l algoritmo genetico viene impiegato come sistema di addestramento del modello MLP al posto della Back Propagation GAME E un algoritmo genetico puro appositamente progettato per risolvere problemi di ottimizzazione in relazione a funzionalità di classificazione. 5
Le tracce di flusso : file pcapcontente.0.65 pacchetti, fornitoci dall Università degli studi di Brescia. Da questo file sono stati estratti due file : uno riguardante la Ground Truth e uno contenente i biflussi estratti. Biflusso: insieme di pacchetti identificati dalla stessa quintupla: o ip sorgente o ip destinatario o porta sorgente o porta destinatario o protocollo a livello trasporto TCP/UDP in una comunicazione bidirezionale. In questo elaborato di tesi i biflussifanno riferimento al protocollo TCP. Costituzione del dataset: il dataset generale è costituito da 2025 biflussi composti da caratteristiche e applicazioni Targets. Specificazione dei parametri di studio : -caratteristiche di input : timeelapsed, byte, Up packet, Down packet -classi Targets:applicazioni generatrici del traffico http://www.ing.unibs.it/ntw/tools/traces/ 6
Dataset utilizzati : dalle applicazioni contenute nel dataset originario sono state ricavate, per accorpamento, 6 classi principali : Browser Web, Skype, Mail, Traffico cifrato, P2P e Other. Eliminati i biflussi appartenenti alla classe Other sono stati creati 0 dataset biclasse contenenti tutti i possibili confronti delle 5 classi individuate. Percentuali dei dataset : sono state usate sia le percentuali 70%(train)-0%(test) che 0%(train)-20%(test) per entrambi gli algoritmi. Tipi di esperimenti : esperimentiqualitativi (accuratezza) e Quantitativi (tempo) Scopo: capire quali classi di traffico sono più simili tra loro e quali invece risultano più facilmente classificabili. Numero di prove : per ogni esperimento eseguito sono state effettuate tre prove identiche per un totale di esperimenti per GAME e 2 esperimenti per FMLPGA. Parametri variati: -GAME : grado del polinomio 5,, 0 e funzione di selezione degli operatori genetici Roulette, Fitting, Ranking - FMLPGA: funzione di selezione degli operatori genetici Roulette(V_ e V_2), Fitting, Ranking 7
Analisi delle prestazioni di algoritmi di Machine Learningper la classificazione del traffico di rete NETWORK TRAFFIC CLASSIFICATION - TEST BASED ON GAME 70% train 0% test these columns report classification accuracy percentages (average on two classes) V P CASE FUNC Br-Ml Br-PP Br-Sk Br-TC Ml-PP Ml-Sk Ml-TC PP-Sk PP-TC Sk-TC ROULET. 7,75 6,6 57,2 6,02 7, 75,5 7,62 62, 6, 7,7 5 TEST FITTING 7,05 6,2 57,52 6,02 7,5 75,7 7,0 62,5 6, 7,2 C P TEST RANK. 7,05 6,2 57,2 67,2 7, 76,25 72,75 62,6 6, 72,0 ROULET.,5 66,76 57,2 6,7 5, 7, 0 6, 6,75 72, FITTING,06 67, 55,6 6,6 5,5 7, 0,7 70,75 6, 72,6 U RANK., 67, 5 60,, 7,7 0,7 70,52 6,7 72,6 ROULET.,5 66,7 5,2 6,6 5,25 6, 0,5 6,0 6,0 7, 0 TEST FITTING, 67, 5,7 66,22 5,6,, 6,25 62,7 7,25 RANK. 2, 66,57 5,7 65,2 5, 7, 0 6,55 6, 72,6 NUM PATTERNS 7 6 7 7 2 5 7 0 2
NETWORK TRAFFIC CLASSIFICATION -TEST BASED ON GAME 70% train 0% test CAS V P E FUNC C P U 5 TES T TES T 0 TES T B- Ml these columns report classification accuracy percentages (average on two classes) Br- Br- Br- Ml- Ml- Ml- PP- PP- PP Sk TC PP Sk TC Sk TC Sk- TC ROULE T. 7,75 6,6 57,2 6,02 7, 75,5 7,62 62, 6, 7,7 FITTIN G 7,05 6,2 57,52 6,02 7,5 75,7 7,0 62,5 6, 7,2 RANK. 7,05 6,2 57,2 67,2 7, 76,25 72,75 62,6 6, 72,0 ROULE T.,5 66,76 57,2 6,7 5, 7, 0 6, 6,75 72, FITTIN G,06 67, 55,6 6,6 5,5 7, 0,7 70,75 6, 72,6 RANK., 67, 5 60,, 7,7 0,7 70,52 6,7 72,6 ROULE T.,5 66,7 5,2 6,6 5,25 6, 0,5 6,0 6,0 7, FITTIN G, 67, 5,7 66,22 5,6,, 6,25 62,7 7,25 RANK. 2, 66,57 5,7 65,2 5, 7, 0 6,55 6, 72,6 NUM PATTERNS 7 6 7 7 2 5 7 0 2 Il dataset con i migliori risultati è Mail-Skype ROULET. FITTING RANK. Ml-PP Ml-Sk Ml-TC 5,25 6, 0,5 5,6,, 5, 7, 0 7 2 5 Matrice di Confusione caso Mail Skype TRAINING TEST P(C Sk) P(C2 Ml) P(C Sk) P(C2 Ml) target class 2 7 target class 0 target class 2 5 260 target class 2 7 05 total classification,5% total classification,27% class classification 2,0% class classification 5,2% Class 2 classification,555% Class 2 classification,75%
Analisi delle prestazioni di algoritmi di Machine Learningper la classificazione del traffico di rete NETWORK TRAFFIC CLASSIFICATION -TEST BASED ON FMLPGA 0% train-- 20% test classification accuracy percentages (average on two classes) V CASE FUNC Br-Ml Br-PP Br-Sk Br-TC Ml-PP Ml-Sk Ml-TC PP-Sk PP-TC Sk-TC ROULV,6 7,7, 7,5,7,,5 7,57 7,,6 C P TEST ROULV2,5,2 0,5 75,5,6,55 2,2 6,7 7, 2,6 FITTING,6 7,, 7,7 0, 0,2,5 7,5 72,6 2,6 U RANKING, 7,65,,6,6,55 2,2 5,7,,6 NUM PATTERNS 2 2 7 527 55 77 70 2 G P TEST ROULV 0,27 7,65 7,,6 2,6 2,,, 7,,6 ROULV2,6,2, 5,7,,,5,67 6,57 2,6 FITTING 0,27 0,5 0,5 7,5 2,0,,5 2,6 70 2,6 U RANKING,2 0,2,5,,5 2,7 2, 7,62 70,2 0, NUM PATTERNS 2 2 7 527 55 77 70 2 0
NETWORK TRAFFIC CLASSIFICATION -TEST BASED ON FMLPGA 0% train--20% test V CASE C TEST FUNC ROULV ROULV2 Br- Ml,6, 5 P FITTING,6 U RANKIN G, classification accuracy percentages (average on two classes) Br- PP 7,7, 2 7, 7,6 5 Br- Sk, 0,5,, Br- TC 7,5 75,5 7, 7,6 Ml- PP,7, 6 0,, 6 Ml- Sk,,5 5 0, 2,5 5 Ml- TC,5 2,2,5 2,2 PP- Sk 7,5 7 6,7 7,5 5,7 PP- TC 7, 7, 72, 6, Sk- TC, 6 2,6 2,6, 6 ROULV ROULV2 FITTING Ml-PP Ml-Sk Ml-TC PP-Sk 2,6 2,,,,,,5,67 2,0,,5 2,6 G P U NUM PATTERNS 2 2 7 527 55 77 70 2 TEST ROULV ROULV2 FITTING RANKIN G 0,2 7,6 0,2 7,2 7,6 5 7,, 2 0, 5 0, 2, 0,5,6 2,6 2, 5,7 7,5, 5,, 2,0, 5,, 2,7,,5,5 2,,,6 7 7, 6,5 7 2, 6 70 7,6 2 70, 2 NUM PATTERNS 2 2 7 527 55 77 70 2, 6 2,6 2,6 0, RANKING,5 2,7 2, 7,62 527 55 77 Le percentuali di classificazione risultano più omogenee rispetto a GAME
GAME FMLPGA Speed Up : 25x 2
In questo elaborato di tesi abbiamo: introdotto un pre-processingdelle tracce di traffico per poter utilizzare gli algoritmi di classificazione considerati analizzato le prestazioni di due algoritmi di MLper la classificazione del traffico di rete Esecuzione di esperimenti di tipo multiclasse Studio delle prestazioni di GAME su architetture GPU Esperimenti su altre tracce di traffico contenenti anche altre classi di traffico