Class-Based Constraint-Based Routing with Implemented Fuzzy Logic in MPLS-TE Networks

Thepaper dealswith constraint-based routing (CBR) inMPLS-TEnetworks and proposes a newCBRalgorithmbased on fuzzy logic called Fuzzy Class-Based Algorithm (FCBA).Multiprotocol label switching with traffic engineering (MPLS-TE) networks represent a popularmechanism to effectively use resources of service providers’ core networks.The paths can be either built by administrators (explicit routing) or built by using existing routing algorithms which mostly decide based on the shortest paths towards the destination which might not be sufficient in nowadays’ multimedia networks. To address this problem various CBR algorithms have emerged which take into consideration various aspects important to existing traffic like QoS parameters or administrative policies. FCBAmakes routing decisions based on traffic classes and by using fuzzy logic we can assign normalized values to various constraints based on the traffic class’ preferences (e.g., low delay paths for voice traffic) and network administrator’s preferences (e.g., avoiding congested links). The paper provides comparison of FCBA with existing CBR approaches based on their ability to provide QoS parameters loss.The simulations show that FCBA provides the best results for the highest priority traffic where it uses lower priority traffic to efficiently utilize the network.


Introduction
Nowadays the modern telecommunication networks should be able to transfer very varied multimedia traffic resulting in a fully converged network.Transferring data, voice, and video traffic in one network requires effective mechanisms which take the various traffics' requirements in consideration [1].Such requirements are in a form of quality of service (QoS) parameters.The proposed QoS mechanism should try to meet the desired delay, jitter, or loss values desired by the traffic flows [2].
Recently MPLS-TE networks have been widely implemented in the core networks of telecommunication operators.MPLS-TE provides connection-oriented approach in IP networks.It creates end-to-end paths (LSPs) where it can guarantee bandwidth and with traffic engineering it can truly optimize the network's resources.It enables using explicit routes which might not be ideal according to the routing algorithms but they enable using network's resources more efficiently.Otherwise MPLS-TE relies on the routing algorithms to build the LSPs.
The routing algorithms play an important role in terms of QoS ensuring and optimal resource allocation from the network's point of view.Routing based on the destination address using minimal hop count as the decision criteria is not sufficient anymore.Administrative policies, performance requirements, load balancing, and scalability are thus becoming increasingly significant factors in the routing decisions.Constraint-based routing (CBR) uses such parameters to make the routing decisions.
Many CBR algorithms were proposed which in most cases do not take into consideration various aspects important to various traffic types so we propose a class-based algorithm which ensures that delay-intolerant higher priority classes are treated differently from delay-tolerant lower priority classes.The algorithm uses multiple constraints to make the routing decision.The decision is based on fuzzy logic which allows the algorithm to take all the constraints into consideration using their normalized (fuzzificated) values by predefined membership functions which provide conversion between real and fuzzy values.We use additional class-based metric weights to differentiate how much impact the particular constraint has on the particular traffic priority to make sure that the high priority classes are treated as best as possible whereas the lower priority classes use higher weights for the metrics improving the overall network utilization.
The paper is divided as follows.In the following chapter we provide a brief survey of CBR and fuzzy logic.The existing CRB algorithms are represented in Section 3. In Section 4 we propose the new CBR algorithm called Fuzzy Class-Based Algorithm.Section 5 presents our simulation model and the simulation results are discussed in Section 6 where we focus on the differences in routing decisions of the proposed and compared CBR algorithms.We conclude the paper in Section 7.

Background
2.1.Constraint-Based Routing.Constraint-based routing (CBR) represents a class of routing algorithms that base path selection decisions on a set of requirements or constraints, in addition to the destination.These constraints may be imposed by administrative policies, or by QoS requirements.Constraints imposed by policies are referred to as policy constraints, and the associated routing is referred to as policy routing (or policy-based routing).Constraints imposed by QoS requirements, such as bandwidth, delay, or loss, are referred to as QoS constraints, and the associated routing is referred to as QoS routing [3].
QoS constraints are represented in the form of metrics.One metric for each constraint is to be specified like bandwidth metric, jitter (variation in delay) metric, delay metric, number of hops metric, packet loss ratio, and so forth for one node to all other nodes in the network.Metric for a complete path with respect to each parameter is determined by the composition rules of metrics.The metrics might have the following character.
(i) Additive Metric.The value of that constraint for a path is the addition of all links constituting path (delay, hop count, cost, and jitter).For example, overall delay of the path  path is represented as a sum of the partial delay values of the links forming the path (ii) Multiplicative Metric.Using this metric, the value for the complete path is multiplication of all its edges (reliability, loss ratio).For example, the overall reliability of the path  path is represented as (iii) Concave Metric.In this metric, we can take either min value or max value among all the edges for a path.
For example, bandwidth of the path  path can be represented as The constraints for a complete path may be in a constrained or in an optimization form.In constrained form, some condition is put on constraint value, for example, a path which has delay less than a desired value.The path satisfying the condition is called feasible.On the other hand optimization refers to path having minimum or maximum value for a constraint, for example, a path that has minimum delay among all the paths.This path is called optimal path [4].

Fuzzy Logic.
Fuzzy logic differs from the traditional Boolean logic by introducing terms like partial truth or partial lie so multiple truth values can be achieved as depicted in Figure 1.
A fuzzy logic system (FLS) is a system that is defined as the nonlinear mapping of an input data set to a scalar output data.A FLS (shown in Figure 2) involves four main sections: fuzzification, rules, inference engine, and defuzzification.First, a crisp set of input data is received and then is converted to a fuzzy set using fuzzy linguistic variables, fuzzy linguistic terms, and membership functions.This phase is called fuzzification.Thereafter, an inference is made using a set of rules.Finally, the resulted fuzzy output is mapped to a crisp output by the membership functions.This phase is called defuzzification [5].

Related Work
Multiple CBR algorithms were proposed.The basic CBR algorithms are Widest Shortest Path (WSP) and Shortest Widest Path (SWP).WSP first selects the path with maximum available bandwidth capacity of the bottleneck link among the paths having the least hop count.On the other hand SWP is optimized on the hop count first and, when there are multiple such paths, selects among them the one with the maximum available bottleneck bandwidth.Minimum Interference Routing Algorithm (MIRA) tries to route the new connection so that it interferes as little as possible with the possible future demands by calculating the critical links.Dynamic Online Routing Algorithm (DORA) is similar to MIRA but watches the number of the paths and not flows transmitting through the link.Profile Based Routing (PBR) algorithm is based on the preknown classes of the flows, named as profiles.The approach is splitting the domain resources into the profiles between ingress-egress pairs known a priori, which constitutes the first phase of the algorithm.In the second phase, the flows are admitted one at a time based on their resource requests and the remaining capacity in the traffic class they map into.Fuzzy Routing Algorithm (FRA) applies fuzzy logic to combine the desired goals into one condition.The goals are maximizing maxflow, for example, the capacity of the bottleneck link on the path, maximizing the residual bandwidth on the links other than the bottleneck link, and minimizing path length for its number of hops.It defines membership functions for these goals and combines them in the defined rule which finds the best compromised path [6,7].

Proposed CBR Algorithm
The aim of our proposed CBR algorithm called Fuzzy Class-Based Algorithm (FCBA) algorithm is to bring flexibility to the chosen routing constraints (metrics) and to make the routing decisions based on various needs of the traffic classes and/or the network itself.
Fuzzy logic represents an ideal tool to make the routing decisions based on multiple constraints by normalizing these constraints in interval between 0 and 1 by membership functions.This way the constraints can be treated in a single compromised rule which decides which path the traffic should be routed to.Similar approach could be seen with FRA (mentioned in Section 3) but the main difference is that FCBA makes class-based routing decisions by deciding which metric will have the biggest impact for the particular traffic class so at the same time various paths can be chosen for various traffic classes with the same computed metrics.
The routing decision of the proposed algorithm is based on three metrics.
(i) Hop Count.Shorter paths should be chosen to limit the delay.
(ii) Available Bandwidth of Bottleneck Link.Bottleneck links with low available bandwidth should be avoided.
(iii) Path Utilization.Paths with low utilization should be chosen to efficiently use the overall network's resources.
Unlike WSP or SWP algorithms the proposed algorithm does not make the first decision based on one metric and with the remaining feasible paths performs the routing decisions based on the other one.
Each metric is represented by its membership function.The membership function converts the real (crisp) values into the fuzzy values.This way FCBA does not have to deal with various measurement units like bit/s or number of hops and only deals with the normalized (fuzzificated) values which are all in the [0, 1] interval.Thanks to this, FCBA can combine the used metrics into one routing decision at the end.It applies that the higher value the particular membership function achieves the better the path appears from the point of view of the particular metric.
The hop count is represented by   membership function: Here ℎ represents the actual hop count of the particular path.This function achieves the highest value (=1) when only one hop is between the ingress LER and the destination (meaning that ingress and egress LERs are directly connected without any LSRs between them).It decreases linearly up to the ℎ max + 1 value, where ℎ max represents maximum possible hop count.
The available bandwidth of bottleneck link is represented by   membership function: Value  represents actual available bandwidth of the particular path's bottleneck link.This function linearly rises up to the  max value which represents maximum possible available bandwidth of the links in the network.The algorithm always uses the link with the lowest available bandwidth of the particular path.
The path utilization is represented by   membership function: First the algorithm calculates the average utilization   of all the links of the network and then assigns a value   to every link's utilization   based on the following function.Positive   value means that the link has lower than average utilization and the negative value means that its utilization is above average.For every path, the    value is computed which achieves the highest value when all the links of the path have utilization below the predefined minimum utilization value ( min ).The final   value is normalized in [0, 1] interval.The aim of   value is to route the traffic through the underutilized paths in the network.
The routing decision is then based on the computed cost cost  which combines these three metrics which leads to choosing a path which provides the best compromise of these metrics.Note that the algorithm calculates this cost for every possible path in the network: We define the weights  1, ,  2, , and  3, to take into consideration various needs of the traffic class .The weight  1, should be set high for those traffic classes which require low delay values (e.g., voice).For such classes the weight  2, should be set low because it enables these classes to use short paths with lower available bandwidth of bottleneck link and on the other hand tries to limit the delay tolerant classes to use such paths.The weight  3, should be set high for those traffic classes which can tolerate higher delay values (e.g., web traffic) and so there is higher chance that the longer and underutilized path will be chosen for these classes so the shorter ones can be later used by delay intolerant classes and the utilization in network is better distributed.
The best path for the incoming flow is then represented by the lowest cost  value.And consequentially the path (LSP) with this cost is chosen and explicitly established using CR-LDP protocol and the particular flow is mapped into this LSP.
For better visualization we provide the membership functions   and   and the function   in Figures 3, 4, and 5.As mentioned earlier note that the higher the function's value is, the better the path seems.

Simulation Model
The simulations were performed using Network Simulator 2 (NS-2).The network topology (Figure 6) consists of two label edge routers (LERs) and seven label switching routers (LSRs) forming twelve possible paths between the traffic source and the traffic receivers.These paths differ from each other in various link's bandwidth (from 2 Mbit/s to 4 Mbit/s), which is indicated by the numbers on the links, and in the hop count (from 2 to 5 hops).
We add Table 1 with available paths and their assigned path number which will be referred to in the next chapter.
We used three traffic classes representing voice, video, and web traffic.The simulation lasts for 20 seconds where each traffic class is represented by three flows.The flows' description and their star times are depicted in Table 2.We tried classical routing based on minimum hop count but we do not include detailed results of this implementation because routing based on a distance vector (DV) algorithm causes all the traffic to traverse through the same path (Path 2 in our case) resulting in very high loss rates which make the traffic unusable.
SWP algorithm makes routing decisions firstly based on available bandwidth (AB) of the bottleneck link so when Web1 flow starts to transmit, Path 4 is used because it has the highest AB.The remaining AB of Path 4 then drops to 3 Mbit/s which is the AB of Path 3 but because Path 3 has fewer hops, it is used when the next flow, Video1, arrives.We provide full path selection together with the actual AB of each path in Table 3.The flows in the table are queued as they arrive.We highlight the AB of the path which is to be selected for the arriving flow.For simplification only the paths which are chosen are shown in the table (Paths 1-4).Note that when the same AB occurs the path with fewer hops is chosen.
Implementing SWP in our scenario resulted in a better distributed traffic than using the DV algorithm.But we observed a packet loss of Voice2 flow because of Video3 flow which could not find a path with sufficient bandwidth (1.5 Mbit/s) and was forced to use Path 3 which only had AB = 1.4 Mbit/s.WSP algorithm makes routing decisions firstly based on the hop count which at the beginning of the simulation resulted in choosing Path 2 because its AB is higher than that of Path 3 which has the same hop count.The algorithm uses the higher hop count paths when the AB of the lower hop count paths is insufficient to the flows' requirements.The selection of the paths of the flows is depicted in Table 4 in the same manner as Table 3.
Implementing WSP resulted in a lossless transmission of all the flows.Note that Path 4 which has the highest AB is used after all the other paths are unable to fulfil the flows' requirements.
FCBA does not make two-step decisions as SWP and WSP but tries to find a path which has the best combined characteristics and consequently the best cost cost  .Figure 7 shows the   values of the paths; you can see that they range from 0.2 for Path 9 to 0.8 for Paths 2 and 3. Note that   and   values change rapidly over time so we do not include simplified figures.Also note that ℎ max from ( 4) is equal to 5 hops and  max from ( 5) is equal to 4 Mbit/s.The aim of the algorithm is to make the routing decision based on the classes' preferences, so with the same computed   ,   , and   values the path selection differs with regard to the traffic class.
For example, when the simulation starts, cost  for every class is different resulting in various possible path selections (see Table 5).
As you can see before the arrival of the first flow Path 2 is the most suitable for the voice traffic but for the video and web traffic the most suitable path is Path 4 and so it is selected for the first flow Web1.Selecting this path results in lowering the   and   values not just for Path 4 but also for Paths 9, 10, 11, and 12.The further path selection with the actual cost  values of the actually arriving traffic class is shown in Table 6.
Note that when the Video3 flow arrives Path 1 is chosen although it has only the fourth highest cost  value but the other paths with higher cost  value (marked with " * " in  We compare the three CBR algorithms based on the achieved QoS parameters delay, jitter, and loss rate.Regarding the loss rate, only SWP caused the traffic loss when the Video3 flow was unable to find a path with sufficient resources resulting in 13.8% loss rate of this flow which consequentially resulted in a lower packet delivery ratio compared to WSP and FCBA which is depicted in Table 7.
This had also a big impact on average jitter value of the video traffic.FCBA was able to achieve the best results regarding the delay and jitter values of the delay intolerant voice traffic.See Figures 8 and 9 for the achieved average delay and jitter values of the particular traffic classes with various CBR algorithms implemented.Table 8 then provides a comparison of maximum achieved delay and jitter values of each algorithm.

Conclusion
We proposed a new CBR algorithm called FCBA based on fuzzy logic which does not discard a path based on one metric although it can be optimal based on another metric as it is done with SWP and WSP algorithms.We introduced the metric weights which aim to fulfil various needs of the traffic classes.We implemented our approach in NS-2 and by performing multiple simulations we were able to observe that FCBA achieved the best average delay value for delay intolerant voice traffic which achieved average delay of 41.85 ms compared to 56.72 ms achieved by WSP and SWP's 62.60 ms.The best performance was also achieved regarding jitter values where FCBA achieved 0.374 ms jitter compared to 15.73 ms and 3.98 ms achieved by WSP and SWP, respectively.The reason for such results lies in the fact that the voice traffic

Figure 1 :Figure 2 :
Figure 1: Comparison of traditional and fuzzy logic.

Figure 7 :Figure 8 :
Figure 7: The values of ℎ  of the paths in the simulation scenario.

Table 3 :
The path selection and the available bandwidth of the paths using SWP.Traffic flow Path number AB Path 1 AB Path 2 AB Path 3 AB Path 4

Table 4 :
The path selection and the available bandwidth of the paths using WSP.

Table 5 :
The values of cost  at the beginning of the simulation.

Table 6 )
are unable to fulfil the bandwidth requirement of the Video3 flow.FCBA enables the delay intolerant voice traffic to use the shortest paths and utilizes the longer paths with the delay tolerant web traffic.