  Modern computer networks support interesting new routing models in which
traffic flows from a source s to a destination t can be flexibly steered
through a sequence of waypoints, such as (hardware) middleboxes or
(virtualized) network functions, to create innovative network services like
service chains or segment routing. While the benefits and technological
challenges of providing such routing models have been articulated and studied
intensively over the last years, much less is known about the underlying
algorithmic traffic routing problems. This paper shows that the waypoint
routing problem features a deep combinatorial structure, and we establish
interesting connections to several classic graph theoretical problems. We find
that the difficulty of the waypoint routing problem depends on the specific
setting, and chart a comprehensive landscape of the computational complexity.
In particular, we derive several NP-hardness results, but we also demonstrate
that exact polynomial-time algorithms exist for a wide range of practically
relevant scenarios.
