A Fuzzy Algorithm for QoS-Based Routing in MPLS Network Nahid Ebrahimi Majd, Mohammad Hossien Yaghmaee Communication and Computer Research Lab.,Ferdowsi University of Mashhad Mashhad, Iran e-mails: {na_eb92@stu-mail.um.ac.ir, hyaghmae@ferdowsi.um.ac.ir} Abstract The current Internet provides best effort service. In the best effort services the Quality of Service (QoS) perceived by a user is inconsistent and unpredictable. The QoS based routing provides QoS guarantees to multimedia applications and an efficient utilization of the network resources. The key performance objectives associated with QoS based routing include the aspects that enhance the QoS of traffic streams like minimization of delay, maximization of throughput, minimization of blocking rate. In this paper, we propose a new QoS routing algorithm which uses a fuzzy logic controller to mixed link parameters. As it will be shown, the proposed algorithm has less bandwidth blocking ratio and more throughput than the traditional QoS routing algorithms which use other logics to mix parameters. This heuristic algorithm takes into account three metrics: available bandwidth, propagation delay and packet loss probability. We prove that this algorithm is solvable in polynomial time.. Introduction Current Internet is connectionless and stateless. IP is a connectionless protocol, which means there is not such a process to setup a connection between source and destination before packet transmission, as in ATM network and telephone network. Stateless means the routers along the path of the traffic flows do not maintain specific information about the state of each flow. The packets in a flow are routed according only to routers' routing table. While this scheme is simple and scalable, and leads to the success of the Internet, it's not enough to provide QoS. Different from above "best-effort" services, QoS service usually requires resource reservation. A path is pre-determined and associated resources (link bandwidth, buffer space, Sometimes it is desirable to force a packet to follow a particular route which is explicitly chosen rather than being chosen by the normal dynamic routing etc.) along the path are reserved before the actual transmission. In other words, the path or connection between source and destination is setup first. When the transmission finishes, the path and associated resources are released. To reserve the resources of a flow, the routers along the path need to keep track of the state of the flow. Some information is maintained in the routers regarding the state of the flow. In short, to provide QoS, both connection and state information are needed. To provide QoS in the Internet, many techniques have been proposed and studied, including Integrated Services(IntServ)[], Differential Services(DiffServ)[2], MPLS(MultiProtocol Label Switching)[3], Traffic Engineering and QoS-based Routing. Specific working groups are also organized under IETF (Internet Engineering Task Force)[4]. MPLS was first proposed as a fast forwarding scheme, but later found also useful for QoS. Similar to DiffServ domain, MPLS also has the concept of MPLS domain, which consists of the MPLS-capable routers. Packets are assigned labels at the ingress routers of the MPLS domain. Then inside the domain, classification, forwarding, and services for the packets are based on the labels. The labels will be removed when the packets leave the domain. QoS-based routing and MPLS can work together, too. QoS-based routing can select the path, and MPLS will do the packet forwarding along the path. MPLS can also provide more precise routing information for QoS-based routing, which may help QoS-based routing to select better paths[9]. In MPLS [5], the packet s path through the network is completely determined by initial label the ingress Label Switched Router (LSR) assigns it. This path is known as Label Switched Path (LSP). Each distinct flow traversing the LSP is known as a Forwarding Equivalent Class (FEC). The FEC of a packet can be determined by a number of parameters, i.e. DSCP, IP protocol ID, Source and/or destination IP addresses or network addresses[]. algorithm. This may be done as a matter of policy, or for traffic engineering. Conventional solutions include: -4244-574-2/6/$2. (C)26 IEEE
Source routing which requires the packet to carry an encoding of its route along with it. Network layer encapsulation which causes the packet to be tunneled. It is possible to implement tunnel as a LSP and use label switching rather than network layer encapsulation. The set of packet which are to be sent through the LSP tunnel, constitute a FEC. To put a packet into an LSP tunnel, the transmit endpoint just pushes a label for the tunnel onto the label stack and sends the labeled packet to the next hop in the tunnel[]. In this paper, we focus on QoS-based routing, which is an important component in the whole QoS framework in the Internet. The proposed algorithm uses explicit routing to transmit each flow in a particular FEC. So routing is done per-flow and each flow is sent in an explicit route to the destination. But in spite of saving information of each flow independently, this method is scalable and this scalability is for two reason: Firstly, it s algorithm is simple which is solvable in polynomial time. Secondly, the only information saved for a flow is it s utilized bandwidth. This paper briefly discusses the different approaches found in the literature for QoS routing and proposes a fuzzy approach, named Fuzzy Mixed Metric (). The was implemented in NS (Network Simulator Version 2)[6].The performance of is compared with that of other approaches that are also based on dijkstra s shortest path algorithm. The objective is to evaluate the bandwidth blocking rate and utilization of the proposed algorithm. The results show that is a promising algorithm for three-metric route computation, leaded decreasing the bandwidth blocking rate. The rest of the paper is organized as follows. Section 2 presents the proposed algorithm. The proposed approach was implemented and tested, as shown in Section 3. Section 4 presents some final considerations and future work. 2. The Proposed Algorithm Given the observations made above, a hybrid scheme can be proposed. This mechanism is simple and satisfies the user s Qos requirements. Some changes was maid to algorithm presented in [7] by means of a careful utilization of a single mixed metric. This algorithm assumes that routes are fixed after connection setup using some kind of explicit routing or pining. The key idea of is to execute a search in the network graph to eliminate of Dijkstra s algorithm. In this scheme, the source knows the network topology. uses a single mixed metric in Dijkstra s algorithm that combines propagation delay and loss probability. Instead of loss probability, the algorithm uses the logarithm of transmission-success probability function (slog) [8] to avoid complex composition rules. has the behavior of an additive metric, because it mixed from two other additive metrics. Furthermore, we assume that routes can not have more than 9% of loss probability, that is, slog [8]. Let G = ( N, A) be a network with N node and A arcs. Each arc (i,j) is assigned two numbers: b ij is the available bandwidth and f ij = fmm( slog ij, d ij ) is the fuzzy single mixed metric, where slog ij is the logarithmic transmission-success probability and d ij is the propagation delay.when arc (i,j) is inexistent b ij = and f ij =. Given a path p = (i,j,k,,q,r), the path width, w(p), is min[b ij, b jk,, b qr ] and its length is l(p) = f ij + f jk + + f qr. Given a constant B, the minimum bandwidth, the problem is to find a path, p, between i and r such that w(p) B and has the minimum l(p). Supposing that node is the source and node m is the destination, is as follows: Step : i,j : f ij = if b ij < B. Step 2 : L = {}; i, i : F i = f i. Step 3 : Find k L F k = min i L F i. If F k =, a path can not be found and the algorithm stops. If m L, the path was found and the algorithm stops. L := L {k}. Step 4 : i L : F i := min[f i, F k + f ki ]. Go to step 3. This algorithm should found a path with minimum delay and packet loss probability. Step consists of O(N 2 ) operations and is executed once. Step 2 requires O(N) operations and is also executed once. Step 3 and 4 require O(N) operations and are repeated N- times in the worst case. So the complexity of the above algorithm is O(N 2 ), the same as the original Dijkstra s algorithm.the membership functions and the rule base of fuzzy mixed metric are shown in fig.. Mamdaniminimum inference engine, singleton fuzzifier and center average defuzzifier were used in this fuzzy system. There are nine fuzzy rules used to define the relationship of the inputs and outputs as shown in fig.(d). Situations where the delay and slog of link are both low, fmm of link is very low and then that link has a big chance to select by Dijkstra algorithm. But when both of them are high, fmm is very high. It means that link is a very bad link for routing. And when one of them is for example low and the other one is high, the link is not bad.
3. Simulation Results In this section, we present some simulation results using NS2 simulator. The NS2 is a discrete event simulator widely accepted and used for the analysis of the computer networks. The Information Science Institute makes the whole package available in their site www.isi.edu. 2 3 (a) M em bership functions of link propagation delay log(- -6 ) log (- -4 ) log(- -2 ) (b) Membership functions of slog of link V ery Low Very High MNSv2 patch. The MPLS Network Simulator (MNS) has been developed to extend the NS2 capabilities with the primary purpose of developing a simulator that enables to simulate various MPLS applications without constructing a real MPLS network. This patch gives to simulator a good support to establishment of CR-LSP (Constraint based Routing-Label Switching Path) for QoS traffic as well as basic MPLS function and LDP (Label Distribution Protocol) and label switching. We implemented the algorithm in MNS. The queue length of each link was set to zero in some intervals related to packet loss probability. By this method the packet loss probability of links was really implemented. By measuring the bandwidth blocking rate and throughput we evaluate the efficiency of to increasing the network resource utilization. The performance of is compared with two other algorithms. The first one implements the proposal of Wang and Crowcraft (Bandwidth pruning and Delay Dijkstra search)[7]. The second one is the same as first approach, but the Dijkstra search is based on a Single Mixed Metric() of delay and loss probability obtained by adding the parameters(bandwidth pruning and mixed metric Dijkstra search)[8]. Fig.2 shows the topology used in our experiments. In this topology an exponential traffic source sends packets from source node A to destination node B. The Link bandwidths, propagation delays, and loss probabilities are uniformly distributed on the interval [min, max] as presented in table. 2 4 6 8 (c) Fuzzy output: Membership functions of of link ) IF Link Delay is LOW AND Link slog is LOW THEN Link is VERY LOW 2) IF Link Delay is LOW AND Link slog is MEDIUM THEN Link is LOW 3) IF Link Delay is LOW AND Link slog is HIGH THEN Link is MEDIUM 4) IF Link Delay is MEDIUM AND Link slog is LOW THEN Link is LOW 5) IF Link Delay is MEDIUM AND Link slog is MEDIUM THEN Link is MEDIUM 6) IF Link Delay is MEDIUM AND Link slog is HIGH THEN Link is HIGH 7) IF Link Delay is HIGH AND Link slog is LOW THEN Link is MEDIUM 8) IF Link Delay is HIGH AND Link slog is MEDIUM THEN Link is HIGH 9) IF Link Delay is HIGH AND Link slog is HIGH THEN Link is VERY HIGH (d) Fuzzy Rule Structure: Figure. Membership functions and rule base of :(a) membership function of link propagation delay (b) membership function of slog ij (c) Membership function of link propagation delay(d) fuzzy rule base We have used version 2.26all-in-one for linux with the addition of MNS version 2. patch to simulate the MPLS features. NS2 has been integrated with the Figure 2. The network topology used in simulation At the start of simulation, random numbers presented in intervals are set to these parameters. To simulate link loss probability, the queue size of link has set to zero in interval times related to it. In this simulation study, sequential calls were arrived at node A, in first 3 seconds, and they were held to the end of simulation. The QoS requirements of
each call are: requested bandwidth, minimum delay and drop. The amount of bandwidth available on a link is determined based on bandwidth reservations on this particular link, calculated and held in the code. Simulation lasts for seconds. The first objective is to evaluate the overall received and blocked bandwidth and the second one is to evaluate the delays. Fig.3 shows the results obtained from experiment. The X-axis represents the time. As it shown, yields the most throughput and performance and the least bandwidth blocking rate. This was expected, since the other approaches don t pay attention to loss probability as much as. Thus they may choose paths with high loss probability, so the bandwidth blocking rate has been increased in theme. In other words, because of increasing the drop, the throughput degrades. algorithm does not ensure that the transmission success probability is larger than the desired minimum (or smaller in log). It does not ensure that the delay is smaller than the desired minimum. But if there are two paths with the same delay, then it is guaranteed that transmission success probability will be maximum, and if there are two paths with the same transmission success probability, then it is guaranteed that delay will be minimum. In algorithm, the delay is guaranteed and is the minimum, but loss probability might be every value. Wang and Crowcraft algorithm has the most blocking rate, since it does not consider packet loss in route computation. In this approach, the best path is a path with demand bandwidth and minimum delay and packet loss probability. This could be shown in figure4. There are three paths from source to destination. The delay of paths,2 and 3 are 9ms,9ms and 9ms and the packet loss probability of them are.27,.25 and.2. Wang and Crowcraft algorithm should select the first path, because it's the first path with least delay. It doesn't pay any attention to the path packet loss probability, so it can't discern that the second path is better in packet loss probability. Because of the less packet loss probability in second path, it has been selected by algorithm instead of the first one. At last, fuzzy approach, selects the third path between three paths. This path doesn't have the least delay, but it's delay is not much different from the minimum delay, and lieu of it, the third path's packet loss probability is much less than the packet loss probability of others. Thus a path with minimum blocked bandwidth has been selected. Accordingly the fuzzy approach has been caused maximizing the throughput and more network performance, because of the less packet loss probability. 4. Conclusion Qos routing provides better QoS guarantees to applications and improves the network resource utilization. In this paper we proposed, a QoS routing algorithm capable of finding routes constrained on three QoS requirements, namely the available bandwidth, the minimum propagation delay, and the minimum loss probability. is based on a modified version of Dijkstra s shortest-path algorithm and it uses a fuzzy-based heuristic. We showed that the complexity of this approach is similar to previous algorithms, but it has more efficiency comparing with them and overall drop is minimum. Our future work contains classifying traffic flows to three classes. First, the flows needs required bandwidth and minimum delay and drop, second, the flows needs required bandwidth and minimum delay, third, the flows needs required bandwidth and minimum drop. We will propose a fuzzy approach to classify flows and mix metrics and make decision to route them based on their requirements. 5. Acknowledgment The authors would like to appreciate Iran Telecommunication Research Center (ITRC) for their financial support. 6. References [] R. Braden, D. Clark, S. Shenker, Integrated Services in the Internet Architecture: an Overview, RFC 633, Jun. 994, 33 pages, http://www.ietf.org/rfc/rfc633.txt [2] S.Blake, et. al., An Architecture for Differentiated Services, RFC 2475, Dec. 998, 36 pages ftp://ftp.isi.edu/innotes/rfc2475.txt [3] R. Callon, et. al., A Framework for Multiprotocol Label Switching, draft-ietf-mpls-framework-5.txt, Sep. 999, 69 pages, [4] Active IETF Working Groups, http://www.ietf.org/html.charters/wg-dir.html [5] E. Rosen, A. Viswanathan, and R. Callon, Multiprotocol Label Switching Architecture, RFC 33, IETF January 2 [6] K. Fall, K. Varadhan, NS notes and documentation. University of California at Berkely.edu/Lawrence Berkeley National Laboratory, Feb. 2. Available at http://wwwmash.cs.berkley.edu/ns.
[7] Z. Wang, J. Crowcroft, Quality of Service Routing for Supporting Multimedia Applications, IEEE JSAC, 4(7): pp. 288-234, Sep. 996 [8] L.H.M.K.Costa, O.C.M.B. Duarte, A scalable QoS-based routing mechanism for supporting multimedia applications, in IEEE International Conference on Multimedia Computing and Systems ICMCS 99, vol.2,pp.346-35, june 999 [9] S. Chen, K. Nahrstedt, An Overview of Quality-of- Service Routing for The Next Generation High-Speed Networks: Problems and Solutions, Department of Computer Science University of Illinois at urbana [] N.M.Din, N.Fisal, Dynamic Resource Allocation of IP Traffic for a Diffserv-MPLS Interface Using Fuzzy Logic, in IEEE 23 [] A.Singh, G.Mittal,S.K.Nand, QoS and Traffic Engineering: MOLS, Diffserv and Constraint based Routing, in Department of Computer Science & Engineering Indian Institute of technology Guwahat, May 2 Table. Characteristics of the simulated topology Min max traffic source burst time(ms).5 Link 2 traffic source idle time(ms).5 bandwidth(mb/s) link delay(ms) 3 number of nodes 2 link loss probability.. number of links 36 Throughput (MB/S) 2 8 6 4 2 8 6 4 2 2 4 6 8 Blocked Bandwidth (B/S) 8 6 4 2 2 4 6 8 (a) (b) Performance 25 2 5 5 2 4 6 8 Bandwidth Blocking Rate.5.4.3.2. 2 4 6 8 (c) (d) Figure 3. Simulation results: (a) throughput versus time, (b) blocked bandwidth versus time, (c) performance (utilization/drop) versus time, (d) bandwidth blocking rate versus time Path Path2 Path3 2 Figure 4. Three different paths for checking fmm approach delay