A Comprehensive Survey on Machine Learning for Networking: Evolution, Applications and Research Opportunities Raouf Boutaba1*, Mohammad A
Total Page:16
File Type:pdf, Size:1020Kb
Boutaba et al. Journal of Internet Services and Applications (2018) 9:16 Journal of Internet Services https://doi.org/10.1186/s13174-018-0087-2 and Applications RESEARCH Open Access A comprehensive survey on machine learning for networking: evolution, applications and research opportunities Raouf Boutaba1*, Mohammad A. Salahuddin1, Noura Limam1, Sara Ayoubi1, Nashid Shahriar1, Felipe Estrada-Solano1,2 and Oscar M. Caicedo2 Abstract Machine Learning (ML) has been enjoying an unprecedented surge in applications that solve problems and enable automation in diverse domains. Primarily, this is due to the explosion in the availability of data, significant improvements in ML techniques, and advancement in computing capabilities. Undoubtedly, ML has been applied to various mundane and complex problems arising in network operation and management. There are various surveys on ML for specific areas in networking or for specific network technologies. This survey is original, since it jointly presents the application of diverse ML techniques in various key areas of networking across different network technologies. In this way, readers will benefit from a comprehensive discussion on the different learning paradigms and ML techniques applied to fundamental problems in networking, including traffic prediction, routing and classification, congestion control, resource and fault management, QoS and QoE management, and network security. Furthermore, this survey delineates the limitations, give insights, research challenges and future opportunities to advance ML in networking. Therefore, this is a timely contribution of the implications of ML for networking, that is pushing the barriers of autonomic network operation and management. Keywords: Machine learning, Traffic prediction, Traffic classification, Traffic routing, Congestion control, Resource management, Fault management, QoS and QoE management, Network security 1 Introduction Recent advances in ML have made these techniques Machine learning (ML) enables a system to scrutinize data flexible and resilient in their applicability to various real- and deduce knowledge. It goes beyond simply learning or world scenarios, ranging from extraordinary to mundane. extracting knowledge, to utilizing and improving knowl- For instance, ML in health care has greatly improved edge over time and with experience. In essence, the goal of the areas of medical imaging and computer-aided diag- ML is to identify and exploit hidden patterns in “training” nosis. Ordinarily, we often use technological tools that data. The patterns learnt are used to analyze unknown are founded upon ML. For example, search engines data, such that it can be grouped together or mapped to extensively use ML for non-trivial tasks, such as query the known groups. This instigates a shift in the traditional suggestions, spell correction, web indexing and page rank- programming paradigm, where programs are written to ing. Evidently, as we look forward to automating more automate tasks. ML creates the program (i.e. model)that aspects of our lives, ranging from home automation to fits the data. Recently, ML is enjoying renewed interest. autonomous vehicles, ML techniques will become an Early ML techniques were rigid and incapable of tolerating increasingly important facet in various systems that aid in any variations from the training data [134]. decision making, analysis, and automation. Apart from the advances in ML techniques, various *Correspondence: [email protected] other factors contribute to its revival. Most importantly, 1David R. Cheriton School of Computer Science, University of Waterloo, the success of ML techniques relies heavily on data [77]. Waterloo, Canada Undoubtedly, there is a colossal amount of data in todays’ Full list of author information is available at the end of the article networks, which is bound to grow further with emerging © The Author(s). 2018 Open Access This article is distributed under the terms of the Creative Commons Attribution 4.0 International License (http://creativecommons.org/licenses/by/4.0/), which permits unrestricted use, distribution, and reproduction in any medium, provided you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons license, and indicate if changes were made. Boutaba et al. Journal of Internet Services and Applications (2018) 9:16 Page 2 of 99 networks, such as the Internet of Things (IoT) and its In this paper, we discuss the advances made in the billionsofconnecteddevices[162]. This encourages the application of ML in networking. We focus on traffic engi- application of ML that not only identifies hidden and neering, performance optimization and network security. unexpected patterns, but can also be applied to learn and In traffic engineering, we discuss traffic prediction, clas- understand the processes that generate the data. sification and routing that are fundamental in providing Recent advances in computing offer storage and pro- differentiated and prioritized services. In performance cessing capabilities required for training and testing ML optimization, we discuss application of ML techniques in models for the voluminous data. For instance, Cloud the context of congestion control, QoS/QoE correlation, Computing offers seemingly infinite compute and storage and resource and fault management. Undoubtedly, secu- resources, while Graphics Processing Units [342] (GPUs) rity is a cornerstone in networking and in this regard, and Tensor Processing Units [170](TPUs)provideaccel- we highlight existing efforts that use ML techniques for erated training and inference for voluminous data. It network security. is important to note that a trained ML model can The primary objective of this survey is to provide a be deployed for inference on less capable devices e.g. comprehensive body of knowledge on ML techniques smartphones. Despite these advances, network opera- in support of networking. Furthermore, we complement tions and management still remains cumbersome, and the discussion with key insights into the techniques network faults are prevalent primarily due to human employed, their benefits, limitations and their feasibility error [291]. Network faults lead to financial liability and to real-world networking scenarios. Our contributions are defamation in reputation of network providers. There- summarized as follows: fore, there is immense interest in building autonomic (i.e. self-configuring, self-healing, self-optimizing and self- – A comprehensive view of ML techniques in network- protecting) networks [28] that are highly resilient. ing. We review literature published in peer-reviewed Though, there is a dire need for cognitive control in net- venues over the past two decades that have high work operation and management [28], it poses a unique impact and have been well received by peers. The set of challenges for ML. First, each network is unique works selected and discussed in this survey are com- and there is a lack of enforcement of standards to attain prehensive in the advances made for networking. The uniformity across networks. For instance, the enterprise key criteria used in the selection is a combination of network from one organization is diverse and disparate the year of publication, citation count and merit. For from another. Therefore, the patterns proven to work in example, consider two papers A and B published in one network may not be feasible for another network of the same year with citation counts x and y, respec- the same kind. Second, the network is continually evolving tively. If x is significantly larger than y, A would be and the dynamics inhibit the application of a fixed set of selected for discussion. However, upon evaluating B, patterns that aid in network operation and management. if it is evidenced that it presents original ideas, criti- It is almost impossible to manually keep up with network cal insights or lessons learnt, then it is also selected for administration, due to the continuous growth in the num- discussion due to its merit, despite the lower citation ber of applications running in the network and the kinds count. of devices connected to the network. – A purposeful discussion on the feasibility of the ML Key technological advances in networking, such as net- techniques for networking. We explore ML tech- work programmability via Software-Defined Networking niques in networking, including their benefits and (SDN), promote the applicability of ML in networking. limitations. It is important to realize that our coverage Though, ML has been extensively applied to problems in of networking aspects are not limited to a specific net- pattern recognition, speech synthesis, and outlier detec- work technology (e.g. cellular network, wireless sensor tion, its successful deployment for network operations and network (WSN), mobile ad hoc network (MANET), management has been limited. The main obstacles include cognitive radio network (CRN)). This gives readers what data can be collected from and what control actions a broad view of the possible solutions to networking can be exercised on legacy network devices. The ability to problems across network technologies. program the network by leveraging SDN alleviates these – Identification of key challenges and future research obstacles. The cognition from ML can be used to aid in opportunities. The presented discussion on ML- the automation of network operation and management based techniques in networking uncovers fundamen- tasks. Therefore, it