A New Localized Multi-Constraint QoS Routing Algorithm

In this paper, we proposed a new localized QoS routing algorithm, BDP, to choose paths using only flow information collected locally at the source node. We have done simulation experiments to compare the performance of BDP (with dynamic path set and with static path set), with the BRB, LDCR, PSR and WSP algorithms. These experiments have already shown a better performance of BDP which uses three parameters of QoS to be criteria with better time complexity and very low communication overhead. We have also proposed a flow chart and a pseudo code of the BDP algorithm with bandwidth, delay and packet-errorrate metrics to route flows through the network. We collect the local information of blocking probability to update the path index. This index directly decides the routing, hence makes better quality of routing, and hence better working of the network. It is of interest to investigate the effect of using more QoS parameters at nodes, especially when the telecommunication services require very high quality. From that, we will adjust the algorithm to make routing more flexible. Another possible development of this algorithm is to investigate network balancing in building routing policies. The algorithm should take care of it, and the balancing factor should be considered as a new parameter in routing. Finally, it is of interest in the way of building sets of candidate paths, based on knowledge of network as well as reduction of computing at nodes. With more sophisticated selection of set of paths, the algorithm will operate more effectively and more reliably.

pdf11 trang | Chia sẻ: huongthu9 | Lượt xem: 418 | Lượt tải: 0download
Bạn đang xem nội dung tài liệu A New Localized Multi-Constraint QoS Routing Algorithm, để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
nhnc@ptit.edu.vn Correspondence: Tran Minh Anh Communication: received 3 June 2016, revised 31 May 2017, accepted 31 June 2017 Abstract: The scheme of Quality of Service (QoS) routing algorithms based on local state information has recently been proposed as an alternative approach to the traditional QoS routing algorithms. By implementing this localized QoS routing algorithm, each source node predetermines and main- tains a set of candidate paths for each destination. These sets of paths will help the source node to decide the most appropriate path for a connection request. Hence, it helps to avoid the problems associated with the maintenance of the global network state information. In this paper, we propose a new and effective localized QoS routing algorithm, compare its performance with those of other localized algorithms and a traditional QoS routing algorithm under the same type of network topology, QoS requirements and traffic patterns. The simulations results show that our proposed algorithm can perform better than other routing algorithms. Keywords: Localized algorithm, packet delay, packet loss, quality of service (QoS), multi-constraint routing. I. INTRODUCTION Nowadays, telecommunication networks develop very strongly and guaranteeing quality for large-scale networks becomes more and more difficult. Therefore, the approach of using local information about congestion probability, network statistics, etc., to build sets of paths for routing information is an effective way of communicating in a network. Because of using local information, this routing technique will decrease the average overall blocking proba- bility of packets transmitted through the network, and make the overall performance of the network better than that by global QoS routing algorithms which update the network state periodically by a link-state algorithm and maintain it up-to-date. The way that global QoS routing algorithms do will lead to a large communication overhead, and inaccurate and out-of-date information of the global state due to large update intervals. Localized QoS routing helps to avoid these problems by routing based on local information. It means that it performs flow routing using the localized view of the network QoS state. By this approach, each node maintains a predeter- mined set of candidate paths to each possible destination and routes flows along these paths. The localized routing algorithm will perform differently for each different type of sets of the candidate paths. Therefore, investigating efficient methods to build sets of paths for localized routing algorithms is an important task at present. In this paper, we first survey some QoS routing ap- proaches and related works. Then we consider the global QoS routing algorithms which need to periodically update the network state, and some other routing algorithms which use local information to route flows. We review the basic problem of QoS routing and then introduce a new rout- ing algorithm which uses some local information such as bandwidth, delay and packet error rate for routing. This algorithm uses an index based on the probability of flow transmit success as a criterion to route as well. We also study the types of sets of paths (and some concerned no- tions), and use them in our proposed routing algorithm for implementing experiments. We compare the performance of the proposed routing algorithm with some other localized routing algorithms and the traditional global QoS routing algorithm – Widest Shortest Path (WSP) – under the same types of topology, traffic patterns and the same range of traffic loads. Besides, we analyze the impact of types of path sets on the performance of localized routing algorithm through the simulations. The rest of the paper is organized as follows. Section II introduces some QoS routing approaches and some related works like PSR, BRB, LDCR, etc. Section III describes our novel routing algorithm with its flowchart and pseudo- code, and studies the path set types. Section IV presents the simulation results which show that our routing algorithm can perform better than other routing algorithms. Finally, Section V gives conclusion remarks and address some future works. 34 Vol. E–3, No. 14, Sep. 2017 II. QOS ROUTING AND RELATED WORKS In modern large-scale networks, providing quality guar- anteed services is becoming a standard demand for most operators. QoS routing is currently the key concept to achieve such requirements. In QoS routing algorithms described in [1–12] and references therein, finding a feasible path to satisfy the flow requirements demands some knowledge of the network state; this knowledge should be kept up-to-date and as accurate as possible. It is the job of routing protocols to make this information available for nodes when making routing decisions. A routing strategy consists of two basic tasks. The first task is to collect the link-state information and keep it up-to-date. The second task is to compute the most feasible path for each flow based on the collected state information. The efficiency of any routing strategy depends greatly on the way in which the network state information is collected and maintained. This means that maintaining network state information plays an essential role in any routing process. In global QoS routing algorithms, nodes need to ex- change network state information to get a global view of the network state. Based on the collected information and the current state information, a node can compute a feasible path for the current flow towards the intended destination. Many currently deployed routing algorithms follow this approach, and implement different methods to compute feasible paths. Global routing algorithms usually make a trade-off between the network state update and the accuracy of state information. They also tend to achieve optimal performance by balancing the traffic load across the network and efficiently utilizing available resources. One of the most popular global QoS routing algorithms is the WSP algorithm [2, 5]. WSP was proposed to improve minimum hop (minhop) algorithms. It tries to balance the traffic across the network by finding a feasible path with minhop count. If more than one path with the same hop count is found, the one with the largest residual bandwidth is selected. WSP is a link-constrained path-optimization routing algorithm as it finds the shortest feasible path. The widest path criterion is used only when there are several paths with the same hop count to choose from. WSP minimizes the usage of network resources by preferring shorter paths over longer ones, which leaves more resources to handle other flows. WSP will be used to compare with our proposed algorithm in Section IV. Like the above WSP algorithm, the routing algorithm proposed in [9] also uses the Dijkstra algorithm proposed in [13] to choose the path for routing. It builds a new single mixed metric which contains some QoS metrics to evaluate whether a path satisfies for flow or not. It then operates as a modified version of the Dijkstra’s shortest path algorithm. It is proved that it will gains a better result against some traditional routing algorithms as showed in [9]. But it must use the global information for computing feasible paths as Dijkstra algorithm requires. Hence, it still causes a large communication overhead as analyzed in Section I. One more routing algorithm using multi-constraint crite- ria is QoS routing with Depth-First Search (DFS) [12]. Like the algorithm described in [9], DFS scheme is an source routing algorithm using global network state information. That means that DFS must infer the information from all the network for each demand of QoS attributes (QAs) coming to node. DFS first finds paths that are most likely to be feasible, and then explores these paths. By that way, DFS will help to diminish the Erroneous Decision Rate (EDR) down to a reasonable time limit. However, comparing to localized routing algorithms surveyed below, DFS must collect information from global network state information for each time of path computing like any other global algorithms, and thus it will commit some weak points like [9] as analyzed above, such as large communication overhead and inaccurate and out-of-date information. All the QoS routing algorithms proposed so far require frequent exchange of QoS network state information, which adds considerable overhead and inaccuracy implications to the routing process. As previously discussed, localized QoS routing has recently been proposed as a viable alternative to global QoS routing [14–21]. In localized QoS routing, nodes make routing decisions using only local state in- formation, that is, no global state information needs to be exchanged, thus reducing the overhead computation. It follows a completely different approach to compute feasible paths where each node constructs its own local view about the network and its available resources by monitoring and analyzing local feedback. The basic concept of localized routing is that a source node infers the network state based on feedback and statistics it has collected locally. Routing decisions are then made with this localized view of the network. Each node is required to maintain a predetermined set of candidate paths to each possible destination. On the arrival of a flow request, the flow is routed along one of these candidate paths with the most feasible path among the path set. We now survey some localized QoS routing algorithms. The first algorithm discussed here is the Proportional Sticky Routing (PSR) algorithm [16–19]. The main idea behind PSR is that every source node predetermines and maintains a set of candidate paths, P, created by the set of minhop paths, Pmin, and the set of alternative paths, Palt. Then, based on statistics of the number of blocked flows and their flow blocking probability available to it, the source node 35 Research and Development on Information and Communication Technology distributes proportionally the traffic load to a destination among the candidate paths in this predetermined set. The PSR algorithm works in observation periods with varied-length cycles. In each period, based on the flow proportion and the flow blocking probability information, the source node selects path for routing flows. The more the number of times a path is selected, the higher its proportion is given, which affects the next selection for flow-in. At the source node, the set of eligible paths, Peli, is set at first based on the set of candidate paths. For each cycle, the flow-in can be routed among paths from Peli. A parameter γr , namely flow blocking, is set to determine the number of times of blocking a connection request of a path. If a path has the number of times of blocking in excess of γr , that path becomes ineligible. When all the paths Peli become ineligible, the cycle will end and the next cycle begins. PSR selects a path based on its flow proportions as mentioned above. The more the number of times the path is chosen, the higher the chance of selection. After each observation period, the minhop path flow proportions are adjusted to equalize the blocking probability among paths. For the alternative paths with (minhop + 1), the minimum blocking probability among the minimum hop paths is also used to control their flow proportion. After that, another period begins. With the proportional distribution like that, the PSR algorithm helps to better bal- ance the network, and more efficiently utilize the network than traditional algorithms. However, PSR delivers the load proportionally to the paths in the determined set. So, it may commit a high congestion when the load is too fragmented at the destination. Another QoS routing algorithm using local information is Best Reserved Bandwidth (BRB) routing, proposed in [20]. This algorithm also uses the set of candidate paths like PSR, determines and maintains the set of minhop and (minhop+1) paths from the source to the destination at each node. The main idea behind the BRB algorithm is that it first reserves bandwidth for all the links of a candidate path. Then, it compares among these values of all the paths after the reservation. When a flow is arriving, BRB chooses a path for it, with the maximum value of residual bandwidth in any link in the path. We can see that the BRB algorithm has reserved all the paths for the flow-in. If that value of residual bandwidth satisfies the flow QoS requirements, the path is accepted for flow and the algorithm will reserve for the next flow. If the link does not satisfy the QoS requirements of that flow, bandwidth will be released and returned to the previous links. To have the path which has the highest minimum resid- ual bandwidth link, the BRB algorithm will continuously compare the value of minimum residual bandwidth in each path among the set of candidate paths. The path that has the largest value will be selected for the next incoming flow. This procedure of BRB helps it to have a good result, but the network can become congested when there are too many paths between the pair of source and destination node, and when there is a large load along these paths. Using end-to-end delay as a constraint, other localized routing algorithms have recently been proposed in [21], one of which is the Localized Delay-Constrained QoS Routing (LCDR) algorithm. Like other localized routing algorithms, LDCR needs all source nodes to predetermine and maintain the set of candidate paths. Being a source routing algorithm, LDCR requires a source node to select from the candidate path set a path for flows. The path which has the best quality is selected by LDCR to route flow if it satisfies the flow QoS requirements. To specify the best path, the LDCR algorithm uses the value of average end-to-end delay of that path to decide whether the path is good for routing. It collects all infor- mation (blocking probabilities, flow blocking, etc.) at the source node itself. Besides, the value of end-to-end delay of each candidate path is the main metric for comparison. Based on that, the path with the lowest value of average end-to-end delay is selected to route that flow, and that average end-to-end path delay is a constraint for estimating path quality. After a flow is routed, LDCR updates the average delay of that path, and the loop continues with this value of delay. Thanks to this mechanism, LDCR can assure the end-to-end QoS delay for users and optimize the network performance. However, at the same time it causes a higher probability of congestion. The localized routing algorithms above have some ad- vantages including low time complexity, low flow blocking probability, etc., but they also commit some disadvantages as analyzed above. Next, we will propose a new localized routing algorithm with improved aspects. III. PROPOSED QOS ROUTING ALGORITHM 1. Methodology QoS routing uses network state information and resource availability, in addition to the QoS requirements, to meet such demands. QoS routing algorithms that select paths with sufficient residual resources to meet the QoS con- straints have played a critical role in meeting the required service level. Furthermore, they should also compromise between resource utilization and network traffic balancing in order to achieve high routing performance. QoS requirements of a network flow are given as a set of constraints that the routing algorithm should meet to find out a feasible path with path metrics. Metrics 36 Vol. E–3, No. 14, Sep. 2017 TABLE I CLASSES OF SERVICES AND QOS STANDARDS Class Application/Examples Mean Delay upper bound Delay variance Loss Ratio Class 0 Real-time, jitter-sensitive, high interaction (VoIP, Video Teleconference) 100 ms < 50 ms 1.00 × 10−3 Class 1 Real-time, jitter-sensitive, high interaction (VoIP, Video Teleconference) 400 ms < 50 ms 1.00 × 10−3 Class 2 Highly interactive, transaction data (e.g signaling) 100 ms Unspecified 1.00 × 10−3 Class 3 Interactive transaction data 400 ms Unspecified 1.00 × 10−3 Class 4 Low loss only (Short transactions, bulk data, video streaming) 1 s Unspecified 1.00 × 10−3 Class 5 Default IP networks applications Unspecified Unspecified Unspecified define the type of QoS guarantees that the network can support. No requirements can be satisfied if they cannot be mapped onto one metric or a combination of metrics. QoS metrics are generally divided into three types, namely additive, multiplicative and concave (or convex), which are defined below. Consider a network (N, L), where N is the set of nodes and L is the set of links in the network. Denote by Li j the link from node i to node j. A path that consists of s links from node a to node b is symbolized as Pab = (a, p1, p2, . . . , ps−1, b), with s > 1. When node a connects directly to node b, s = 1 and Pab = (a, b). Denote by w(i, j) the weight of link Li j corresponding to the metric of QoS that can be used as a constraint in routing algorithm. Then, the weight of the whole path, denoted by w(Pab), is defined, respectively for metric of additive, multiplica- tive, concave or convex type, as: w(Pab) = w(a, p1) + w(p1, p2) + · · · + w(ps−1, b), (1) w(Pab) = w(a, p1) × w(p1, p2) × · · · × w(ps−1, b), (2) w(Pab) = min [w(a, p1),w(p1, p2), . . . ,w(ps−1, b)] , (3) w(Pab) = max [w(a, p1),w(p1, p2), . . . ,w(ps−1, b)] . (4) In reality, bandwidth is a metric of concave type. It means that the bandwidth of Pab (used in comparison in the next section) is the minimum bandwidth of all links which take part in that path. Delay, cost and hop count are metrics of additive type, and reliability is a metric of multiplicative type. A QoS routing algorithm usually uses one or more of the above metrics as constraints for the routing problem. If it uses only one metric, it will be a mono-constraint routing algorithm, which compares the value of only one QoS metric of flow-in to the value of that metric from the network. For example, a bandwidth-constrained routing finds a path whose bottleneck bandwidth can satisfy the required bandwidth value. If it uses more than one metric, it will use the results from comparisons of all those metrics between demands from service and support from the net- work. For example, a bandwidth-delay constrained problem finds the path that meets the required bandwidth and has the least delay which is better than the required value of flow-in delay. 2. Requirements for QoS Routing Nowadays, new telecom services need high level of QoS parameters such as interactive services, multimedia, Video on Demand (VoD), etc. Therefore, network providers must assure the quality of the network for customers who use these high quality services, support the increasing demands by applications and provide different classes of services to meet diverse QoS requirements. These service requirements impose strict constraints on transporting networks to ensure end-to-end performance guarantee. The QoS requirements are in a set of constraints for which a routing algorithm must satisfy to find out feasible paths for flows. A QoS parameter specifies types of network quality (i.e., bandwidth, delay, etc). If there is no QoS re- quirement, there is no corresponding constraint for routing. To analyze the characteristics of services and their QoS requirements, the ITU-T, in its Recommenda- tion Y.154x [22], has proposed the requirements for QoS standards as given in Table I. We can see that the telecom networks are now carried out with a large mix of traffic and various QoS requirements. Therefore, QoS routing has to select paths which satisfy QoS requirements. For a very large and complex network, path selection is much complicated and challenging, be- cause multiple QoS constraints must be met while ongoing 37 Research and Development on Information and Communication Technology dynamic changes in the network resources and topology must be kept track. It is the responsibility of routing algorithms to tackle these problems while achieving high routing performance. Among various QoS performance metrics, bandwidth, delay and packet loss are currently the most significant ones [22]. Although using many metrics will make computation become a burden, it will help make routing more flexible and effective. Hence, in this paper, we use bandwidth, delay and packet-error-rate metrics from local information in our algorithm. Accordingly, we call the proposed QoS routing algorithm, to be described next, Bandwidth-Delay-PacketErrorRate (BDP). 3. Proposed BDP Algorithm The proposed routing algorithm– BDP– also requires every nodes to maintain a predetermined set of candidate paths to each possible destination, and keeps track of only one set of candidate paths, R, (the result of finding shortest paths). Previous localized QoS routing algorithms use different information for routing. In particular, BRB reserves the whole path for the current flow and the next flow deals with the residual bandwidth after the reservation in any link in the path. PSR uses the number of blocked flows as the only available information at the source node. LDCR relies on the average end-to-end path delay in order to make routing decisions, update the average delay of the selected path, which directly reflects the actual quality of the path. Unlike the above algorithms, our BDP algorithm uses the values of bandwidth, delay and packet-error-rate from local node information to be criteria for choosing path. Hence, BDP becomes more flexible than BRB, LDCR or PSR, which will be used for later performance comparison. In BDP, we propose to associate every path P ∈ R with a variable P.Criteria[1, 2, 3] = P.[Bandwidth, Delay,PER], and a path index, Ptindex. The way to build Ptindex will be discussed later. The set R will be sorted for the index Ptindex, denoted by R(Ptindex). Upon flow arrival, BDP performs routing by taking the following steps: 1) Select path P with max(Ptindex) from the set R (first place in the set R, after sorting). 2) Check the demand of the flow from Service Level Agreement, SLA, and use it for choosing path. Denote SLA.[Bandwidth,Delay,PER], or SLA. 3) Compare P.Criteria with SLA. • If P.Criteria ≥ SLA, then choose this P. The way to compare will be discussed in Section III.5. • If P.Criteria < SLA: select the next P from the set R (the max(Ptindex) of the rest of R). The loop will be exited when finding out the path which BEGIN Flow in Sort R.(Ptindex) Select P(max Ptindex) Select SLA Have SLA? No Yes There is any path in R? Yes Compare P.Criteria ≥ SLA?Decrease Ptindex No Yes Route through P Route P is accepted? Yes No Increase Ptindex END Deny this flow No Range R(Ptindex) Figure 1. Flowchart of BDP. has P.Criteria ≥ SLA. If no path has quality satisfying SLA, the arriving flow is cancelled, obviously. • Increase Ptindex if route P is accepted, or decrease Ptindex otherwise. The flowchart of the BDP algorithm is illustrated in Figure 1 and its pseudo-code is given in Algorithm 1. Unlike other localized routing algorithms, BDP only changes the index Ptindex of this path. When the flow is accepted or unaccepted along the selected path, Ptindex is updated increment or decrement accordingly. The path index Ptindex is initially set to 1 at first. When the path is selected and P.Criteria > SLA.[Bandwidth, Delay,PER], indicating that the candidate path has good (or bad) quality, we increase (or decrease) Ptindex. After that, the flow that follows will use this value of Ptindex as criterion to choose path, and the next loop re-begins. Mathematically, if the flow is transmitted well through a path, then Ptindex = Last Ptindex + 1∑ times be selected . (5) 38 Vol. E–3, No. 14, Sep. 2017 Algorithm 1: Pseudo-code of BDP algorithm Initialize Building Set Ptindex = 1, ∀ P ∈ R; Set T = 100 procedure BDP Range R{Ptindex} for flow-in Set P.success = false Collect SLA for flow-in P = first {P.Ptindex : P ∈ R} while !(P.success or R(end)) do if (P.Criteria ≥ SLA) then Route flow along path P if P is accepted then Compute P.Ptindex (increase Ptindex(≤ 1)) P.success = true else if P = next{P.Ptindex : P ∈ R} then Compute P.Ptindex (decrease Ptindex(≥ 0)) end if else P = next {P.Ptindex : P ∈ R} Compute P.Ptindex (decrease Ptindex(≥ 0)) end if end while end procedure Otherwise, if it is discarded, then Ptindex = Last Ptindex − 1∑ times be selected, (6) where 0 ≤ Ptindex ≤ 1. After the above calculation, if Ptindex becomes greater than 1 then set it to 1, or if smaller than 0 then set to 0. Once the path has been selected more than T times (T is pre-determined), the path increases 1/T for each time being chosen, and decreases 1/T for each time being discarded. Moreover, the value T will be set first in accordance with the ability of the network. A higher T gives more accurate Ptindex. Typically, we set T = 100 and hence the interval becomes 0.01. It means that when the path P is selected more than 100 times, each time of being selected after that, Ptindex increases 0.01 (but not exceeding 1), or decreases 0.01 (not below 0) vice versa. Therefore, after one flow has been processed, Ptindex changes accordingly to the success/fail of that path, and the “value” of that path changed correspondingly. It affects the probability of being chosen for the next as well. 4. Static and Dynamic Sets of Paths This section will present some notions which concern path sets mentioned above. In localized routing algorithms, path sets play a big role to route flow along. 1) Depth of connection: Consider a network G(N, L), where N is the number of nodes and L is the number of links. Consider two nodes i and j in G(N, L) and assume that there are many con- nectable paths between them. Using the Dijsktra algorithm, we find out easily the shortest path between i and j. Denote by minhopi j the minimum of hops of that shortest path, and by d the depth of connection which decides the length of that path. Let r be the number of paths between i and j that have the number of hops not greater than (minhopi j +d). The set of these r paths is denoted by Rdij = R d ij(1, . . . , r), which is just the predetermined set of candidate paths used in localized routing. We note the following: • The connection (or path) does not contain any re- peated node; • minhopi j ≥ 1; • For 0 ≤ d ≤ (N − 2): When d = 0, we have the set R0i j as the set of shortest paths between i and j. When d increases, the set R0i j enlarges the number of paths as well. 2) Using d to build set of paths: A node will use network information to build all sets of paths between all pairs of two nodes with the fixed value of the depth of connection d. In the BDP algorithm, we set d = 0 at the beginning, because we do not have any information about the load in the network. Accordingly, this value of d is used to first build the sets of paths. Then, under some concrete conditions (as mentioned next), the node will collect new information from the global network to rebuild the set of candidate paths between that pair with a new depth of connection: dnew = dold + α, with α is an integer. This update will enlarge the set, and thus help achieve better routing. 3) Static path set: If a localized routing algorithm, e.g. BDP, uses one fixed value of d to build the set of paths, then the path set is said to be static. In that case, the algorithm works without changing d, that is α = 0 and hence dnew = dold. 4) Dynamic path set: If d is not set unchanged, then the path set is said to be dynamic, and its size changes depending on real condition of the network. The algorithm will rebuild the path set with changing the depth of connection d. In this case, dnew > dold, because α , 0. With α = 1, typically, we have dnew = dold + 1. This will assure better satisfaction for demands of users. 5) Impact of path set type on the performance: Clearly, we can confirm that a dynamic set of paths will make the algorithm more flexible than a static one (in case 39 Research and Development on Information and Communication Technology of no new node or no shutdown node). In spite of using the same condition of rebuilding, using a dynamic set allows the algorithm to enlarge the path set, i.e. to use more paths (although they are “longer”, they are “possibly better”) and this will give better performance. An important thing to be discussed next is the con- dition of rebuilding. The condition must be designed in compliance with each algorithm. For BDP, we propose the following: if half of path set has Ptindex = 0 (i.e., half number of paths has relatively “weak” quality), then the set of paths should be rebuilt. We will see the effect of rebuilding in the next section, where at one node i there are largely different values of d, corresponding to each destination in the network. The comparison of static and dynamic path sets will be shown by simulation later, and we will see their impact on the operation of the localized routing algorithm. 5. Metric Selection and Comparison As previously mentioned, we choose bandwidth, delay, and bit(packet)-error-rate as the three main metrics for com- parison to choose paths. There are some ways to compare, but the relevant and popular way will be discussed below. We make the comparison of three metrics independently. First, we compare the bandwidth of the path with the de- manded bandwidth of the flow-in. If it is true, we then com- pare the delay of that path with the demanded delay for that flow. Finally, we compare the value of bit(packet)-error-rate of the path with the value of the flow request. If we have three values being true, the path is proved to have “enough” quality for flow, and thus will be chosen. It is noted that P.Bandwidth ≥ F .Bandwidth, P.Delay ≤ F .Delay and P.PER ≤ F .PER, where Bandwidth is determined as the minimum residual bandwidth of any link on path, Delay is the sum of all delay of propagation from all links on this path, and PER is the sum of all PER on all links of path, as illustrated in Algorithm 2. IV. PERFORMANCE EVALUATION In this section, we study the performance of the BDP algorithm (with dynamic and static path sets) and compare it with the performance of the BRB, LDCR and PSR algorithms. Besides, we also compare it with the popular global QoS routing algorithm, WSP, which searches for a feasible path with shortest path. All the experiments will be set under the same condition. 1. Simulation Model We use OMNeT++ [23] which is a commonly used simulator. To evaluate the performance, we collect all of Algorithm 2: Comparison with Three Constraints procedure COMPARE3(p, f ) if p.Bandwidth ≥ f .Bandwidth then if p.Delay ≤ f .Delay then if p.PER ≤ f .PER then p is chosen else p is discarded end if else p is discarded end if else p is discarded end if end procedure Figure 2. Network topology of 32 nodes. simulation parameters as vectors, scalars and histograms to compare. The setup of simulation experiments is the same as in [16–21]. In particular, the network is built with 32 nodes. Network links are all bidirectional with the same capacity C = 150 Mbps in each direction, the same value of delay D = 20 ms, and packet error rate PER = 200 × 10−6. Flows arrive to each source node according to a Poisson process with rate λ. Destination nodes are selected randomly (each node can be source or destination). The flow duration is exponentially distributed with mean 1/µ, flow bandwidths are uniformly distributed within [0.5–4] MB. The required value set for the delay of each packet is randomly distributed between 20 ms and 250 ms, and the PER of each packet as 1.000 × 10−3. The network topology is shown in Figure 2. 40 Vol. E–3, No. 14, Sep. 2017 As analyzed in [24, 25], the offered network load is ρ = λNbh µLC , where N is the number of nodes, b is the average bandwidth required by a flow, h is the average path length (in number of hops) and L is the number of links in the network. In the experiments, we set N = 32, L = 108, h = 3.137, 1/µ = 60 s. Since the performance of routing algorithms may vary across different load conditions, our simulation experiments consider several load conditions by varying the value of λ to create experiments with load from low to high. To compare the performance, we choose the flow block- ing probability, Pblock, as the performance criterion, similar to [16–19]. The flow blocking probability is calculated based on the most recent 100.000 flows. The time of simulation is set about of 20 minutes, which corresponds to more than 2.5 million of flows emitted. The flow block probability is calculated as Pblock = |B| |T | , (7) where |T | is the total number of flows and |B| is total number of blocked flows. We also calculate the overall end-to-end delay of the network when using the BDP algorithm with both types of path sets and compare with WSP under low and high load scenarios. 2. Simulation Results Figure 3 shows the performance of BDP (with dynamic path set) against BRB, LDCR, PSR and WSP in terms of flow blocking probability under load ρ, ranging from 0.2 to 0.5. We can see that, under a low load (ρ ≤ 0.25), the dif- ference in the performance among the routing algorithms is rather small, because finding available path with sufficient bandwidth is easy and flows are almost accepted. When the load is high (ρ > 0.3), some differences reveal. Many flows drop or/and fail to reach the destination node, then the flow blocking probability grows rapidly. The reason is in the case of the BDP algorithm, paths are selected based on the probability of predetermined paths, then the index of that path increases, assuring that this path is good and may support relatively the next flow. It means that it has all-ready available quality in the links on the path selected. Unlike BRB, BDP uses delay and PER as criteria to compare, so all chosen flows almost satisfy the demand of delay and PER at destination. It helps diminish the flow blocking probability of that path and the value of end-to-end delay of those flows. Moreover, the index value which is set for choosing path helps to avoid the congestion of flows that come at nodes 0.2 0.25 0.3 0.35 0.4 0.45 0.5 0 0.02 0.04 0.06 0.08 0.1 0.12 0.14 0.16 BDP (dynamic path set) PSR WSP BRB LDCR Load, ρ Fl ow Bl oc ki ng Pr ob ab ili ty ,P bl oc k Range Figure 3. Performance in terms flow blocking probability. 0.2 0.3 0.4 0.5 0.6 0.7 0.8 61 62 63 64 65 66 67 68 69 BDP (SPS) BDP (DPS) WSP Load, ρ Av er ag e en d- to -e nd D el ay (m s) Range Figure 4. Performance in terms of average end-to-end delay of flows. simultaneously, particularly when the load increases and the links begin to become congested. If congestion happens, flows will be redirected to other paths and the index decreases at once. Then, the source node might reduce the use of these paths which have low index values. Therefore, the flow blocking probability of BDP is considerably lower than that of BRB, LDCR, PSR and WSP. In the next experiments, we compare the performance of BDP, with dynamic path set (DPS) and static path set (SPS), with that of WSP (using Dijkstra algorithm with weighted links to route). We evaluate the performance in terms of the average end-to-end delay under different load (ρ = 0.2 to 0.8), as showed in Figure 4. It can be seen that as the load augments, the value of end-to-end delay increases as well. When ρ < 0.4, the three algorithms perform similarly, with an end-to-end delay of about 64 ms and 65 ms. When 41 Research and Development on Information and Communication Technology 50 350 650 900 1200 1500 1800 2100 63 64 65 66 67 68 69 70 BDP (SPS) BDP (DPS) WSP Number of Flows (×1000) Av er ag e en d- to -e nd D el ay (m s) Range Figure 5. Performance in terms of average end-to-end delay of flows at fixed load ρ = 0.8. ρ > 0.4, the BDP algorithm, in both cases of DPS and SPS, works more efficiently. In Figure 5, we evaluate the end-to-end delay perfor- mance at a fixed load, ρ = 0.8. It can be seen that when the number of flows increases in the load ρ of 0.8, the average end-to-end delay increases gradually until a stable value. In our two cases of using BDP, with both dynamic and static path sets, the average end-to-end delay is high but kept in a margin of 66.3–67.3 ms, as compared to the margin of 68– 68.8 ms in the case of WSP. It means that with high load, the congestion happens more frequently, and hence this value increase highly, especially in the case of WSP. In the case of BDP, the flows must change path frequently based on the index Ptindex. When congestion happens, the index of the regular path diminishes, then, the path is changed. Therefore, the average end-to-end delay is better. Next, we will observe the change of the average hop count, HCavg, when using the BDP algorithm, with both static and dynamic path sets, under low load (ρ = 0.4) and high load (ρ = 0.8). Under a low load at ρ = 0.4, both cases show only a small change of HCavg, as shown in Figure 6. They both starts around 3.137 (which is the average path length h) and the static path set achieves its maximum of around 3.156. The change is mainly from “short” paths (with 1 or 2 hops) or from path set which has one or two paths between a pair of source-destination nodes. On the other hand, the use of “long” paths (with more than 4 hops) which happen frequently has made HCavg longer than the average path length of the network. At a high load of ρ = 0.8, the difference between the two cases is significant, as shown in Figure 7. The average hop count when the dynamic path set is used is high because 50 350 650 900 1200 1500 1800 2100 3.125 3.13 3.135 3.14 3.145 3.15 3.155 3.16 BDP (SPS) BDP (DPS) Number of Flows (×1000) Av er ag e ho p co un t, H C a vg Range Figure 6. Performance in terms of average hop count at ρ = 0.4. 50 350 650 900 1200 1500 1800 2100 3.08 3.1 3.12 3.14 3.16 3.18 3.2 3.22 3.24 3.26 BDP (SPS) BDP (DPS) Number of Flows (×1000) Av er ag e ho p co un t, H C a vg Range Figure 7. Performance in terms of average hop count at ρ = 0.8. it must rebuild the path set many times when it commits congestion. When the load is high, the congestion happens more frequently and it makes the routing algorithm rebuild more times. That leads to the change of the path length, as well as the average hop count. When the static path set is used, HCavg is almost kept around 3.15, slightly greater than the average path length (h = 3.137) and achieves its maximum of around 3.238. We now observe the change of the depth of connection, d, after the experiments (which use BDP with the dynamic path set) have run for 20 minutes. Generally, we observe the value d of 31 pairs from source node 0 (viewed in Figure 2) to the other 31 destination nodes. First, we take the value of minhop between each pair (it means at d = 0). After 20 minutes of operation, we pause all the processes and record the values of all d of all pairs from source node 42 Vol. E–3, No. 14, Sep. 2017 4 5 6 7 A x i s 1 2 3T i t l 0 0‐1 0‐2 0‐3 0‐4 0‐5 0‐6 0‐7 0‐8 0‐9 0‐10 0‐11 0‐12 0‐13 0‐14 0‐15 0‐16 0‐17 0‐18 0‐19 0‐20 0‐21 0‐22 0‐23 0‐24 0‐25 0‐26 0‐27 0‐28 0‐29 0‐30 0‐31 e minhop value d value D ep th of co nn ec tio n Range R(Ptindex) Figure 8. Depth of connection from path set of node 0. 0. The simulation result is shown in Figure 8. It can be seen that the pairs, which have minhop equal to 1 or 2, tend to augment the depth of connection d. Conversely, the long paths (with high minhop) or pairs which have lots of paths connected among them do not often change d. In other words, they do not often commit congestion. Clearly, with the mechanism of changing the depth of connection like dynamic path set, we can see that the bandwidth blocking probability goes down. That involves the better quality of the network. Therefore, we can have better performance than the case when we use the static path set or other case such as WSP in some experiments which have been done. Overall, BDP (with both types of path sets) has better performance than other state-of-the-art algorithms (BRB, LDCR, PSR or WSP) in the simulation experiments. 3. Complexity and Overhead The overhead of global QoS routing can be attributed to two factors: (i) the computation complexity required to find feasible paths, and (ii) the excessive signaling overhead resulting from the exchange of network state information. And as analyzed in [1–3], the global QoS routing algorithm like WSP, which uses Dijkstra algorithm, takes at least O(N log N + E) time, where N is the number of nodes, and E is the number of links (edges) from that network. Localized routing algorithms select path from the pre- determined set of candidate paths R whose size is |R|. In the PSR algorithm [16–19], the path selection is an invocation of a Weighted-Round-Robin like Path Selector (WRRPS), whose worst-case time complexity is O(|R|). The BRB and BDP algorithms require order of better than that, because they use only the shortest paths as explained above. In addition these localized routing algorithms require updating information, which takes a constant time O(1). Hence, regarding the communication overhead, BDP and other localized routing algorithms require very little over and above computing the blocking probability based on acceptance or rejection of a path, while at the same time, global algorithms require a huge amount of overhead to keep the link state information updated. In conclusion, the computation of our case at source node is much smaller than the traditional WSP. V. CONCLUSION AND FUTURE WORKS In this paper, we proposed a new localized QoS routing algorithm, BDP, to choose paths using only flow informa- tion collected locally at the source node. We have done simulation experiments to compare the performance of BDP (with dynamic path set and with static path set), with the BRB, LDCR, PSR and WSP algorithms. These experiments have already shown a better performance of BDP which uses three parameters of QoS to be criteria with better time complexity and very low communication overhead. We have also proposed a flow chart and a pseudo code of the BDP algorithm with bandwidth, delay and packet-error- rate metrics to route flows through the network. We collect the local information of blocking probability to update the path index. This index directly decides the routing, hence makes better quality of routing, and hence better working of the network. It is of interest to investigate the effect of using more QoS parameters at nodes, especially when the telecommu- nication services require very high quality. From that, we will adjust the algorithm to make routing more flexible. Another possible development of this algorithm is to inves- tigate network balancing in building routing policies. The algorithm should take care of it, and the balancing factor should be considered as a new parameter in routing. Finally, it is of interest in the way of building sets of candidate paths, based on knowledge of network as well as reduction of computing at nodes. With more sophisticated selection of set of paths, the algorithm will operate more effectively and more reliably. 43 Research and Development on Information and Communication Technology REFERENCES [1] C. Pornavalai, G. Chakraborty, and N. Shiratori, “QoS based routing algorithm in integrated services packet networks,” in Proceedings of International Conference on Network Protocols. IEEE, 1997, pp. 167–174. [2] S. Chen and K. Nahrstedt, “An overview of quality of service routing for next-generation high-speed networks: problems and solutions,” IEEE Network, vol. 12, pp. 64–79, 1998. [3] ——, “Distributed quality-of-service routing in high-speed networks based on selective probing,” in Proceedings of 23rd Annual Conference on Local Computer Networks (LCN’98). IEEE, 1998, pp. 80–89. [4] F. A. Kuipers and P. F. Van Mieghem, “Conditions that impact the complexity of QoS routing,” IEEE/ACM Trans- actions on Networking, vol. 13, no. 4, pp. 717–730, 2005. [5] R. Guerin, A. Orda, and D. Williams, “QoS routing mecha- nisms and OSPF extensions,” in Global Telecommunications Conference. IEEE, 1997, pp. 1903–1908. [6] Z. Wang and J. Crowcroft, “Quality-of-service routing for supporting multimedia applications,” IEEE Journal on Se- lected Areas in Communications, vol. 14, no. 7, pp. 1228– 1234, 1996. [7] R. A. Guerin and A. Orda, “QoS routing in networks with inaccurate information: theory and algorithms,” IEEE/ACM Transactions on Networking, vol. 7, no. 3, pp. 350–364, 1999. [8] Q. Ma and P. Steenkiste, “Quality-of-Service Routing for Traffic with Performance Guarantees,” in IFIP International Workshop on Quality of Service, 1997, pp. 115–126. [9] P. Khadivi, S. Samavi, T. Todd, and H. Saidi, “Multi- constraint QoS routing using a new single mixed metric,” in IEEE International Conference on Communications, 2004, pp. 2042–2046. [10] A. Kulhari, C. Gandhi, and A. Jaiswal, “Multi-constraint Multipath QoS Routing Using Swarm Intelligence,” in In- ternational Conference on Computational Intelligence and Communication Networks. IEEE, 2014, pp. 468–471. [11] X. Wang, S.-H. Yu, J. Dai, and T. Luo, “A Multiple Constraint Quality of Service Routing Algorithm Base on Dominating Tree,” in International Conference on Compu- tational Intelligence and Software Engineering (CiSE 2009). IEEE, 2009, pp. 1–4. [12] D.-W. Shin, E. K. Chong, and H. J. Siegel, “A multi- constraint QoS routing scheme using the depth-first search method with limited crankbacks,” in IEEE Workshop on High Performance Switching and Routing. IEEE, 2001, pp. 385–389. [13] “Dijkstra Algorithm.” [Online]. Available: https://www.cs. auckland.ac.nz/software/AlgAnim/dijkstra.html [14] N. C. Trinh and T. M. Anh, “About a new localized multi- criterion routing algorithm–a solution to assure quality of network,” in Proceedings of the International Conference on Communications, Management and Telecommunications (ComManTel). IEEE, 2015, pp. 223–228. [15] ——, “Dynamic set of paths for localized QoS routing with bandwidth-constraint,” in Proceedings of the International Conference on Electronics, Information, and Communica- tions (ICEIC). IEEE, 2016, pp. 1–6. [16] S. Nelakuditi, Z.-L. Zhang, and D. H. Du, “On selection of candidate paths for proportional routing,” Computer net- works, vol. 44, no. 1, pp. 79–102, 2004. [17] S. Nelakuditi, Z.-L. Zhang, R. P. Tsang, and D. H.-C. Du, “Adaptive proportional routing: a localized QoS routing approach,” IEEE/ACM Transactions on networking, vol. 10, no. 6, pp. 790–804, 2002. [18] S. Nelakuditi and Z. L. Zhang, Localized Quality of Service Routing for the Internet. Kluwer Academic, June 2003. [19] S. Nelakuditi and Z.-L. Zhang, “On selection of paths for multipath routing,” in International Workshop on Quality of Service. Springer, 2001, pp. 170–184. [20] T. A. Al Ghamdi and M. E. Woodward, “Novel localized QoS routing algorithms,” in IEEE 9th Malaysia International Conference on Communications, 2009, pp. 199–204. [21] F. M. Aldosari and F. Alradady, “Localized QoS routing with end-to-end delay guarantees,” in Tenth International Conference on Information Technology: New Generations (ITNG). IEEE, 2013, pp. 464–472. [22] ITU, Internet protocol aspects – Quality of service and network performance, ITU-T Std. Y.1500–Y.1599, 1999. [Online]. Available: recommendations/index.aspx?ser=Y [23] A. Varga, “The OMNeT++ Discrete Event Simulation Sys- tem, the European Simulation Multiconference,” Prague, Czech Republic, 2001. [24] A. Shaikh, J. Rexford, and K. G. Shin, “Load-sensitive Routing of Long-lived IP Flows,” in Proceedings of the Con- ference on Applications, Technologies, Architectures, and Protocols for Computer Communication, ser. SIGCOMM ’99. ACM, 1999, pp. 215–226. [25] J. L. Rexford and A. Shaikh, “Efficient precomputation of quality-of-service routes,” Oct. 14 2003, US Patent 6,633,544. Tran Minh Anh received his B.Eng. de- gree in Electronics and Telecommunication Engineering from Danang University of Technology in 1995. In 2001, he received his M.Sc. degree in Telecommunication En- gineering from Hanoi University of Science and Technology. His research interests in- clude New Generation Networks (NwGN) Trends, telecom engineering, network load balancing, network routing techniques. Nguyen Chien Trinh is a Professor of Electro-Communication Engineering at the Posts and Telecoms Institute of Technology (PTIT), Hanoi, Vietnam. He received his B.E. degree from the University of Electro- Communications, Odessa, Ukraine in 1989, M.Eng. and Ph.D. degrees in University of Electro-Communications, Tokyo, Japan, in 1999 and 2005, respectively. His research interests include new generation networks (NwGN) technologies, network traffic analysis and modeling, network resource allocation, network QoS, and network security. 44

Các file đính kèm theo tài liệu này:

  • pdfa_new_localized_multi_constraint_qos_routing_algorithm.pdf