We explore techniques for efficient Quality of Service Routing in the presence of multiple constraints. We first present a
polynomial time approximation algorithm for the unicast case. We then explore the use of optimization techniques in devising
heuristics for QoS routing both in the unicast and multicast settings using algorithmic techniques as well as techniques from
optimization theory. We present test results showing that our techniques perform very well in the unicast case. For multicast
with multiple constraints, we present the first results that we know of where one can quickly obtain near-optimal, feasible
trees.