Abstract:
With the growth of modern networks in size and complexity, traffic identification and load balancing is becoming a more important issue. Traditional ways of load balancing, such as Round-Robin DNS would sometimes be insufficient because they do not consider that the different backend servers had different capacities and there are many types of network traffic. This thesis investigates the application of machine learning algorithms that can classify network traffic in real time to be integrated with weighted load balancing techniques. Five machine learning algorithms, K-Nearest Neighbors, Decision Trees, Random Forest, XGboost and Neural Networks are used to classify network traffic into classes like benign traffic (normal) bulk data transfers (real-time applications which are latency sensitive) etc. We then assess these algorithms in enhancing the accuracy and efficiency of traffic classification, allowing for improved decision making on resource allocation. This work also studies Weighted Load Balancing, a theoretical technique to balance blood across network using server capability so that no servers stay overloaded and other under-utilized. A set of these simulations are conducted on XGBoost, Random Forest and Neural Networks to determine the impact of intelligent load balancing strategies. While the load balancing component does not really exist, it gives a good idea of how traffic classification using machine learning could help improve all sorts of systems responsible for managing loads. Results emerging from this study serve as guidance for utilizing machine learning to build network traffic management solutions that are more adaptive and effective. These results provide evidence to support the theoretical justifications for implementing such intelligent load balancing methods in large-scale network infrastructures