An optimized algorithm for abstraction based routing in connection oriented networks Rouhollah Mostafaei Computer Engineering Department Islamic Azad University Khoy,Iran mostafaevn@iaukhoy.ac.ir Ali Habiboghli Computer Engineering Department Islamic Azad University Khoy,Iran habiboghli@iaukhoy.ac.ir Mohammad.R Maybodi Computer Engineering Department Amirkabir University of Technology Tehran,Iran meybodi@ce.aut.ac.ir Abstract—Communication networks are expected to offer a wide range of services to an increasingly large number of users, with a diverse range of quality of service. This calls for efficient control and management of these networks. We address the problem of quality-of-service routing, more specifically the planning of bandwidth allocation to communication demands. Shortest path routing is the traditional technique applied to this problem. However, this can lead to poor network utilization and even congestion. In this paper, we combine this technique with systematic search algorithm and heuristics which are derived from Artificial Intelligence (AI) to solve this problem more efficiently and empirical result shows that this algorithm works better than others in RAIN problem. Keywords- connection oriented networks, constraint-based routing, abstraction, constraint satisfaction I. INTRODUCTION The communication networks of the next millennium are expected to offer a wide range of services to an increasingly large number of users, with a diverse range of Quality of Service (QoS) requirements. This calls for efficient control and management of these high-speed networks. A central problem is the automatic routing of traffic through the network. Routing must be a very fast process, in order to guarantee customer satisfaction. Currently, shortest path routing is most often used to route traffic across a network. Although this ensures the best possible route for each particular demand, it can lead to ineffective use of the network as a whole and even congestion, especially in highly loaded networks. From the routing point of view, the key resource to manage in networks is bandwidth. Therefore, in order to make better use of available network resources, there is a need for planning bandwidth allocation to communication demands, to set up routing tables (or any other route selection criterion) more purposefully. This can be achieved by the use of global information, including not only the available link capacities but also the expected traffic profile [2]. Formally, we define the problem of resource allocation in networks (RAIN) as follows: Given a network composed of nodes and bidirectional links, where each link has a given bandwidth capacity, and a set of communication demands to allocate, where each demand is defined by a triple: (source node, destination node, requested bandwidth).Wang and Crowcroft [1] have shown that the allocation of every single demand is NP-complete by itself. This creates a new situation for the networking community, as traditional routing algorithms such as shortest paths do not perform very well on this problem. Constraint satisfaction [3][19] is a technique which has been shown to work well for solving certain NP-hard problems, and has been applied to a variety of domains [4]. A Constraint Satisfaction Problem (CSP) is defined by a triple (X, D, C), where X={x 1 ,x 2 ,…,x m }is a set of variables, D={D 1 ,D 2 ,…,D m }a set of finite domains associated with the variables and C={c 1 ,c 2 ,…,c m }a set of constraints. Solving a CSP amounts to finding a value of domain for each variable so that all constraints are satisfied. This may be done with a backtracking algorithm. The RAIN problem is easily formulated as a CSP in the following way: variables are demands, the domain of each variable is the set of all routes between the endpoints of the demand, and constraints on each link must ensure that the resource capacity is not exceeded by the demands routed through it. A solution is a set of routes, one for each demand, respecting the capacities of the links. However, this formulation presents severe complexity problems. It is too expensive to compute, represent, and store the domain of a variable, i.e., all the routes that join the endpoints of a demand. Since methods such as forward checking or dynamic variable ordering require explicit representation of domains, they would be very inefficient on a problem of realistic size. It has long been observed that the complexity of solving a problem can depend heavily on how it is formulated. Abstractions are naturally used by humans to solve problems[5]. Reducing problem complexity is a major reason for using abstraction techniques. A recent collection of papers addressing abstraction, reformulation, and approximation techniques in a variety of AI domains can be found in [6]. We can use an abstraction of the network called Blocking Islands; create a compact representation of the domains which allows the application of well-known CSP techniques such as forward checking, variable and value ordering to the RAIN problem with manageable complexity [2]. In this paper we not only use