  While machine learning and artificial intelligence have long been applied in
networking research, the bulk of such works has focused on supervised learning.
Recently there has been a rising trend of employing unsupervised machine
learning using unstructured raw network data to improve network performance and
provide services such as traffic engineering, anomaly detection, Internet
traffic classification, and quality of service optimization. The interest in
applying unsupervised learning techniques in networking emerges from their
great success in other fields such as computer vision, natural language
processing, speech recognition, and optimal control (e.g., for developing
autonomous self-driving cars). Unsupervised learning is interesting since it
can unconstrain us from the need of labeled data and manual handcrafted feature
engineering thereby facilitating flexible, general, and automated methods of
machine learning. The focus of this survey paper is to provide an overview of
the applications of unsupervised learning in the domain of networking. We
provide a comprehensive survey highlighting the recent advancements in
unsupervised learning techniques and describe their applications for various
learning tasks in the context of networking. We also provide a discussion on
future directions and open research issues, while also identifying potential
pitfalls. While a few survey papers focusing on the applications of machine
learning in networking have previously been published, a survey of similar
scope and breadth is missing in literature. Through this paper, we advance the
state of knowledge by carefully synthesizing the insights from these survey
papers while also providing contemporary coverage of recent advances.
