Application-layer overlay networks have recently emerged as a promising platform to deploy additional services over the Internet. A virtual network of overlay nodes can be used to regulate traffic flows of an underlay network, without modifying the underlay network infrastructure. As a result, an opportunity to redeem the inefficiency of IP routing and to improve end-to-end performance and availability of the Internet has arisen, by routing traffic over multiple overlay paths. However, to achieve these by means of overlay networks, a number of challenging issues, including limited knowledge of the underlay network characteristics, fluctuations of overlay path performance, and interactions between overlay and the underlay traffic must be addressed. This monograph is an attempt to tackle some of these issues.