Machine Learning for Networks and Security: Fast Bottleneck Bandwidth Measurement
In Fall 2020, I took a class called CS 598: Machine Learning for Systems, Networks, and Security with Prof. Gang Wang. This was primarily a seminar class where we studied the use of machine learning approaches for computer security, network classification, and computer system optimization. As described on the class website, exciting progress has been made in various machine learning applications ranging from vulnerability discovery and security defense to network protocol design, software testing, and system optimization. In this class, we examined the most creative and "crazy" ideas of applying machine learning to solve system and security problems. In addition to reading, presenting, and discussing research papers, we paired up in the class to conduct original research.
My partner and I chose the topic of bottleneck bandwidth measurement. Fast, accurate bottleneck bandwidth (BB) knowledge acquisition is of interest to researchers and industry alike due to the need to provide performance guarantees for critical network applications. For example, sensor networks used in security surveillance, industrial automation, or military operations are very sensitive to bandwidth limiting performance.
In this study, we investigated the bottleneck bandwidth measurement problem using machine learning methods. We experimented with the Support Vector Regression (SVR) method to directly estimate the bottleneck bandwidth based on traces captured at the receiver. Since traditional methods often relied on identifying and removing noisy gaps, we also explored the possibility of applying classification methods to better identify clean and noisy gaps and improve the performance of traditional methods. We used a Support Vector Classifier (SVC) to identify clean gaps, then took the average of these clean gaps to estimate the BB. Our source of training and testing data comes from simulation utilizing the ns-3 discrete network simulator. This simulator is commonly used to simulate network traffic without requiring access to actual real-world networks, and allows us to much easily test a variety of different network configurations and probing techniques. Our goal was to provide the network measurement community with a fast, efficient and accurate way of BB measurement, which will help network users and system administrators alike with network issues diagnosing and troubleshooting.
Check out the full report and presentation below!