Routing in networks with QOS

Ahmed Qasim Lawey Al-Gashamy
Dr. Ihsan A. Al-Meshhedani

Quality of service (QoS) requirements for the delivery of real-time multimedia arise new challenges for the networking world. A key component of QoS is QoS routing which allows the selection of network routes with sufficient resources for requested QoS parameters. Several techniques have been proposed in the literature to compute QoS routes, most of which require dynamic update of link-state information across the Internet and differ in the circumstances at which they reach their optimum performance. In this work three well known routing algorithms are introduced: Shortest Path (SP), Widest Shortest Path (WSP) and Bandwidth Inversion Shortest Path (BSP) algorithms. Later a new algorithm based on the Network Graph Reduction technique (NGR) is introduced. This algorithm is referred to as the Network Graph Reduction based BSP algorithm (NGR-BSP algorithm) inside this thesis. Further another new algorithm called the Enhanced BSP Algorithm (EBSP algorithm) is introduced and analyzed also. These algorithms are studied and simulated to discuss their performance and then trying to enhance them by integrating them to produce the NGR-EBSP algorithm which outperforms all the previous algorithms. All these algorithms are called Source Routing Algorithms which need frequent link state updates to be implemented that may lead to inaccurate chosen paths when the network changes dynamically faster than the update period. Therefore the Selective Flooding (SF) technique which computes QoS routes on the Internet in a fast and efficient manner without any need for dynamic updates is introduced to be integrated with the NGR-EBSP algorithm to produce the SF-NGR-EBSP algorithm. Selective Flooding was implemented and evaluated, and then its performance was compared to source routing. The research shows clearly that Selective Flooding consistently outperforms Source Routing in terms of Call Blocking Rate. The proposed algorithms have been implemented using Microsoft C++ language