  Routing is, arguably, the most fundamental task in computer networking, and
the most extensively studied one. A key challenge for routing in real-world
environments is the need to contend with uncertainty about future traffic
demands. We present a new approach to routing under demand uncertainty:
tackling this challenge as stochastic optimization, and employing deep learning
to learn complex patterns in traffic demands. We show that our method provably
converges to the global optimum in well-studied theoretical models of
multicommodity flow. We exemplify the practical usefulness of our approach by
zooming in on the real-world challenge of traffic engineering (TE) on wide-area
networks (WANs). Our extensive empirical evaluation on real-world traffic and
network topologies establishes that our approach's TE quality almost matches
that of an (infeasible) omniscient oracle, outperforming previously proposed
approaches, and also substantially lowers runtimes.
