  Recently, machine learning has been used in every possible field to leverage
its amazing power. For a long time, the net-working and distributed computing
system is the key infrastructure to provide efficient computational resource
for machine learning. Networking itself can also benefit from this promising
technology. This article focuses on the application of Machine Learning
techniques for Networking (MLN), which can not only help solve the intractable
old network questions but also stimulate new network applications. In this
article, we summarize the basic workflow to explain how to apply the machine
learning technology in the networking domain. Then we provide a selective
survey of the latest representative advances with explanations on their design
principles and benefits. These advances are divided into several network design
objectives and the detailed information of how they perform in each step of MLN
workflow is presented. Finally, we shed light on the new opportunities on
networking design and community building of this new inter-discipline. Our goal
is to provide a broad research guideline on networking with machine learning to
help and motivate researchers to develop innovative algorithms, standards and
frameworks.
