Routing methods for optimal distribution of traffic in data networks that can also provide quality of service (QoS) for users is one of the challenges in recent years’ research on next generation networks. The major QoS requirement in most cases is an upper bound on end-to-end path delay. In this dissertation a distributed and iterative algorithm which will keep the end-to-end cost for individual paths below a required bound is introduced, which also minimizes the total average delay of all packets in the network. This algorithm is introduced based on analytical solution of a routing problem The routing problem is modeled as a multicommodity network flow problem with an extra constraint on end to end cost. Eventually The convergence of the algorithm is shown using analysis and simulations